|
@@ -59,27 +59,34 @@ class integralService extends Service {
|
|
|
throw error;
|
|
|
}
|
|
|
}
|
|
|
- async increase({ openid, integral }) {
|
|
|
+ async increase({ openid, name, integral }) {
|
|
|
assert(openid, 'openid不存在');
|
|
|
+ assert(name, '姓名不存在');
|
|
|
+ assert(integral, '积分不存在');
|
|
|
try {
|
|
|
+ await this.service.integralLog.create({ openid, name, integral });
|
|
|
const one = await this.model.findOne({ openid });
|
|
|
if (one) {
|
|
|
- const total = integral + one.integral;
|
|
|
+ const total = Number(integral) + Number(one.integral);
|
|
|
await this.model.updateOne({ openid }, { integral: total });
|
|
|
return { errcode: 0, errmsg: 'ok', data: '' };
|
|
|
}
|
|
|
- return { errcode: -1001, errmsg: '未查询到用户', data: '' };
|
|
|
+ await this.model.create({ openid, name, integral });
|
|
|
+ return { errcode: 0, errmsg: 'ok', data: '' };
|
|
|
} catch (error) {
|
|
|
throw error;
|
|
|
}
|
|
|
}
|
|
|
- async reduce({ openid, integral }) {
|
|
|
+ async reduce({ openid, name, integral }) {
|
|
|
assert(openid, 'openid不存在');
|
|
|
+ assert(name, '姓名不存在');
|
|
|
+ assert(integral, '积分不存在');
|
|
|
try {
|
|
|
const one = await this.model.findOne({ openid });
|
|
|
if (one) {
|
|
|
- const total = one.integral - integral;
|
|
|
+ const total = Number(one.integral) - Number(integral);
|
|
|
await this.model.updateOne({ openid }, { integral: total });
|
|
|
+ await this.service.integralLog.create({ openid, name, integral });
|
|
|
return { errcode: 0, errmsg: 'ok', data: '' };
|
|
|
}
|
|
|
return { errcode: -1001, errmsg: '未查询到用户', data: '' };
|