推送:对单人推送函数抽象

This commit is contained in:
luying
2022-04-09 10:28:21 +08:00
parent f486a8d8a5
commit 26a649b213
32 changed files with 146 additions and 703 deletions
+6 -10
View File
@@ -1,5 +1,5 @@
import { UserOrderModel, UserOrderModelType } from '../db/UserOrder';
import { ACTIVITY_TYPE, ORDER_STATE, PAY_TYPE, REFUND_PRICE_TO_GOLD, STATUS, TASK_TYPE, TA_EVENT, TA_USERSET_TYPE } from '../consts';
import { ACTIVITY_TYPE, ORDER_STATE, PAY_TYPE, PUSH_ROUTE, 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';
@@ -31,6 +31,7 @@ import { savePayLog } from '../pubUtils/logUtil';
import { recordFirstGift } from './activity/firstGiftService';
import { makeTaskPass } from './activity/taskPassService';
import { addGuildPay } from './activity/guildPayService';
import { sendMessageToUser } from './pushService';
/**
@@ -148,9 +149,7 @@ export async function makeOrder(orderInfo: UserOrderModelType, sid: string) {
await recordFirstGift(roleInfo, orderInfo.serverId);
}
pinus.app.get('channelService').pushMessageByUids('onPlayerDataChange', resResult(STATUS.SUCCESS, {
totalPay: roleInfo.totalPay
}), [{ uid: roleId, sid }]);
sendMessageToUser(roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { totalPay: roleInfo.totalPay }, sid);
return {...rewardResult, roleInfo}
}
@@ -171,12 +170,11 @@ export async function settleOrder(order: UserOrderModelType, serverId: number, s
//推送
console.log('***** settleOrder', order.roleId, sid)
if(!!sid) {
pinus.app.channelService.pushMessageByUids('onOrder', resResult(STATUS.SUCCESS, {
sendMessageToUser(order.roleId, PUSH_ROUTE.ORDER, {
...result.data,
price: order.price,
state: order.state,
localOrderID: order.localOrderID
}), [{ uid: order.roleId, sid }]);
localOrderID: order.localOrderID}, sid);
}
//活动统计
addRechargeMoney(order.roleId, serverId, order.price);
@@ -308,9 +306,7 @@ export async function refundOrderFromRedisPub(message: string) {
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}]);
sendMessageToUser(order.roleId, PUSH_ROUTE.PLAYER_DATA_CHANGE, { gold: role.gold }, sid);
await UserOrderModel.refund(order.roleId, order.localOrderID, message);
return true