sdk:退款扣除元宝逻辑
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { UserOrderModel, UserOrderModelType } from '../db/UserOrder';
|
||||
import { ACTIVITY_TYPE, ORDER_STATE, PAY_TYPE, STATUS, TASK_TYPE, TA_EVENT, TA_USERSET_TYPE } from '../consts';
|
||||
import { ACTIVITY_TYPE, ORDER_STATE, PAY_TYPE, REFUND_PRICE_TO_GOLD, STATUS, TASK_TYPE, TA_EVENT, TA_USERSET_TYPE } from '../consts';
|
||||
import { dicRMB } from '../pubUtils/dictionary/DicRMB';
|
||||
import { makeYuanbaoShopReward } from './activity/yuanbaoService';
|
||||
import { RoleModel } from '../db/Role';
|
||||
@@ -303,6 +303,14 @@ export async function refundOrderFromRedisPub(message: string) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let price = order.price;
|
||||
let refundGold = price * REFUND_PRICE_TO_GOLD;
|
||||
let role = await RoleModel.incRoleInfo(order.roleId, { gold: -refundGold }, {});
|
||||
let onlineUser = await getRoleOnlineInfo(order.roleId);
|
||||
let sid = onlineUser.sid;
|
||||
pinus.app.get('channelService').pushMessageByUids('onPlayerDataChange', resResult(STATUS.SUCCESS, {
|
||||
gold: role.gold
|
||||
}), [{uid: order.roleId, sid}]);
|
||||
await UserOrderModel.refund(order.roleId, order.localOrderID, message);
|
||||
|
||||
return true
|
||||
|
||||
@@ -1101,4 +1101,6 @@ export enum TALENT_RELATION_TYPE {
|
||||
NORMAL = 1, // 正常
|
||||
CONFLICT = 2, // 冲突
|
||||
REPLACE = 3, // 替换
|
||||
}
|
||||
}
|
||||
|
||||
export const REFUND_PRICE_TO_GOLD = 10; // 退款以价格*10扣除元宝
|
||||
Reference in New Issue
Block a user