增加admin生成箱子码的功能
This commit is contained in:
parent
afe8c4ed90
commit
afb3317e05
@ -9,7 +9,46 @@ import { BASE52_ALPHABET } from 'common/Constants'
|
||||
/**
|
||||
* 礼品券相关接口
|
||||
*/
|
||||
const adminAddress = ['0x7d60b9e6c836214b836a7e26a104c7937a6859e7', '0x50a7e4f330f948888d174caa063a6aa655555555']
|
||||
class VoucherController extends BaseController {
|
||||
@router('get /api/admin/generate/:batch/:num')
|
||||
async generateTestVoucher2(req) {
|
||||
logger.db('admin generate_test_voucher', req)
|
||||
const user = req.user
|
||||
if (!adminAddress.includes(user.address.toLowerCase())) {
|
||||
throw new ZError(10, 'no access')
|
||||
}
|
||||
let { num, batch } = req.params
|
||||
if (!num || num <= 1) {
|
||||
num = 1
|
||||
}
|
||||
let results = []
|
||||
const nanoid = customAlphabet(BASE52_ALPHABET, 8)
|
||||
for (let i = 0; i < num; i++) {
|
||||
let code = batch + nanoid()
|
||||
// check if code exists
|
||||
let record = await VoucherRecord.findOne({ code })
|
||||
if (record) {
|
||||
i--
|
||||
continue
|
||||
}
|
||||
let voucher = new VoucherRecord({
|
||||
batch,
|
||||
code,
|
||||
scoreInit: 0,
|
||||
chestLevel: 1,
|
||||
chestNum: 1,
|
||||
deliverTime: Date.now(),
|
||||
activity: user.activity,
|
||||
status: VoucherStatusEnum.NORMAL,
|
||||
source: SourceEnum.TEST,
|
||||
creator: user.id,
|
||||
})
|
||||
await voucher.save()
|
||||
results.push(voucher.code)
|
||||
}
|
||||
return results
|
||||
}
|
||||
@router('post /api/voucher/generate')
|
||||
async generateTestVoucher(req) {
|
||||
logger.db('generate_test_voucher', req)
|
||||
|
Loading…
x
Reference in New Issue
Block a user