充值返利使用参数表

This commit is contained in:
luying
2022-09-14 15:09:41 +08:00
parent aac07fada1
commit 04cb3ffe55
4 changed files with 15 additions and 12 deletions
@@ -4,7 +4,7 @@ import Role, { RoleModel, RoleType, WarCount } from '../db/Role'
import { getLvByExp, getExpByLv, gameData, getDicApByLv } from '../pubUtils/data'; import { getLvByExp, getExpByLv, gameData, getDicApByLv } from '../pubUtils/data';
import { updateRoleOnlineInfo, updateUserInfo } from './redisService'; import { updateRoleOnlineInfo, updateUserInfo } from './redisService';
// import { switchOnFunc } from './funcSwitchService'; // import { switchOnFunc } from './funcSwitchService';
import { FUNC_OPT_TYPE, TASK_TYPE, WAR_TYPE, STATUS, KING_EXP_RATIO_TYPE, ITEM_CHANGE_REASON, POP_UP_SHOP_CONDITION_TYPE, HERO_SYSTEM_TYPE, PUSH_ROUTE, REBATE_LV } from '../consts'; import { FUNC_OPT_TYPE, TASK_TYPE, WAR_TYPE, STATUS, KING_EXP_RATIO_TYPE, ITEM_CHANGE_REASON, POP_UP_SHOP_CONDITION_TYPE, HERO_SYSTEM_TYPE, PUSH_ROUTE } from '../consts';
import { BackendSession, pinus } from 'pinus'; import { BackendSession, pinus } from 'pinus';
import { REDIS_KEY } from '../consts'; import { REDIS_KEY } from '../consts';
import { Rank } from './rankService'; import { Rank } from './rankService';
@@ -19,7 +19,7 @@ import { checkPopUpCondition } from './activity/popUpShopService';
import { calculateCeWithRole } from './playerCeService'; import { calculateCeWithRole } from './playerCeService';
import { sendMessageToUserWithSuc } from './pushService'; import { sendMessageToUserWithSuc } from './pushService';
import { ActionPointModel } from '../db/ActionPoint'; import { ActionPointModel } from '../db/ActionPoint';
import { GK_MAIN, GK_MAINELITE } from '../pubUtils/dicParam'; import { GK_MAIN, GK_MAINELITE, RECHARGE } from '../pubUtils/dicParam';
import { rebateHistoryOrder } from './orderService'; import { rebateHistoryOrder } from './orderService';
export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kingExp: number = 0, session: BackendSession) { export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kingExp: number = 0, session: BackendSession) {
@@ -53,7 +53,7 @@ export async function roleLevelup(type: KING_EXP_RATIO_TYPE, roleId: string, kin
await updateRoleOnlineInfo(roleId, { lv: newLv }); await updateRoleOnlineInfo(roleId, { lv: newLv });
// 达到等级返利 // 达到等级返利
if(lv < REBATE_LV && newLv >= REBATE_LV) { if(lv < RECHARGE.RECHARGE_RMB_RETURN_LEVEL_LIMITED && newLv >= RECHARGE.RECHARGE_RMB_RETURN_LEVEL_LIMITED) {
rebateHistoryOrder(roleId, role.userInfo?.uid); rebateHistoryOrder(roleId, role.userInfo?.uid);
} }
} }
+10 -3
View File
@@ -1,5 +1,5 @@
import { UserOrderModel, UserOrderModelType } from '../db/UserOrder'; import { UserOrderModel, UserOrderModelType } from '../db/UserOrder';
import { ACTIVITY_TYPE, DEBUG_PRICE, MAIL_TYPE, ORDER_STATE, PAY_TYPE, PUSH_ROUTE, REBATE_RATIO, REFUND_PRICE_TO_GOLD, STATUS, TASK_TYPE, TA_EVENT, TA_USERSET_TYPE } from '../consts'; import { ACTIVITY_TYPE, DEBUG_PRICE, MAIL_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 { dicRMB } from '../pubUtils/dictionary/DicRMB';
import { makeYuanbaoShopReward } from './activity/yuanbaoService'; import { makeYuanbaoShopReward } from './activity/yuanbaoService';
import { RoleModel } from '../db/Role'; import { RoleModel } from '../db/Role';
@@ -17,7 +17,7 @@ import { makeSelfServerShop } from './activity/selfServiceShopActivityService';
import { makeRefreshShopReward } from './activity/refreshShopService'; import { makeRefreshShopReward } from './activity/refreshShopService';
import { ActivityMonopolyModel, ActivityMonopolyModelType } from '../db/ActivityMonopoly'; import { ActivityMonopolyModel, ActivityMonopolyModelType } from '../db/ActivityMonopoly';
import { ActivityMonopolyLandModel, ActivityMonopolyLandModelType } from '../db/ActivityMonopolyLand'; import { ActivityMonopolyLandModel, ActivityMonopolyLandModelType } from '../db/ActivityMonopolyLand';
import { resResult } from '../pubUtils/util'; import { parseGoodStr, resResult } from '../pubUtils/util';
import { checkOrderWX } from './pay/weixinPay'; import { checkOrderWX } from './pay/weixinPay';
import { addRechargeMoney } from './activity/rechargeMoneyService'; import { addRechargeMoney } from './activity/rechargeMoneyService';
import { addVipRechargeMoney } from './activity/vipRechargeMoneyService'; import { addVipRechargeMoney } from './activity/vipRechargeMoneyService';
@@ -38,6 +38,7 @@ import { UserModel } from '../db/User';
import { HistoryOrderModel } from '../db/HistoryOrder'; import { HistoryOrderModel } from '../db/HistoryOrder';
import { sendMailByContent } from './mailService'; import { sendMailByContent } from './mailService';
import { getGoldObject } from './role/rewardService'; import { getGoldObject } from './role/rewardService';
import { RECHARGE } from '../pubUtils/dicParam';
export async function checkOrderCanBuy(roleId: string, serverId: number, activityData: ActivityModelType, productID: string, paramStr: string) { export async function checkOrderCanBuy(roleId: string, serverId: number, activityData: ActivityModelType, productID: string, paramStr: string) {
let activityId = activityData.activityId; let activityId = activityData.activityId;
@@ -362,7 +363,13 @@ export async function rebateHistoryOrder(roleId: string, uid: number) {
if(historyOrder && !historyOrder.isReceived) { if(historyOrder && !historyOrder.isReceived) {
let totalPay = historyOrder.totalPay; let totalPay = historyOrder.totalPay;
if(totalPay > 0) { if(totalPay > 0) {
await sendMailByContent(MAIL_TYPE.REBATE, roleId, { goods: [getGoldObject(totalPay * REBATE_RATIO)] }); let gold = 0;
let goods = parseGoodStr(RECHARGE.RECHARGE_RMB_RETURN_RATIO).map(({ id, count }) => {
let result = Math.floor(count * totalPay)
gold += result;
return { id, count: result }
});
await sendMailByContent(MAIL_TYPE.REBATE, roleId, { goods, params: [`${totalPay}`, `${gold}`] });
await HistoryOrderModel.receive(user.channelId, roleId); await HistoryOrderModel.receive(user.channelId, roleId);
} }
} }
+1 -5
View File
@@ -1145,8 +1145,4 @@ export enum SYSTEM_OPEN_ID {
EXPEDITION = 36, // 远征 EXPEDITION = 36, // 远征
} }
export const DEBUG_PRICE = 0.01; export const DEBUG_PRICE = 0.01;
// 返利等级
export const REBATE_LV = 10;
export const REBATE_RATIO = 10;
+1 -1
View File
@@ -35,7 +35,7 @@ export default class HistoryOrder extends BaseModel {
} }
public static async receive(channelId: string, roleId: string) { public static async receive(channelId: string, roleId: string) {
let result: HistoryOrderModelType = await HistoryOrderModel.findOneAndUpdate({ channelId }, { $set: { isReceived: true, roleId } }, { new: true }).lean(); let result: HistoryOrderModelType = await HistoryOrderModel.findOneAndUpdate({ channelId }, { $set: { isReceived: true, receiveRoleId: roleId } }, { new: true }).lean();
return result; return result;
} }
} }