活动:任务积分支持多活动id

This commit is contained in:
qiaoxin
2021-07-01 19:58:43 +08:00
parent c94e2a40e5
commit 9cf142d95b
2 changed files with 17 additions and 17 deletions

View File

@@ -10,7 +10,7 @@ import { DicDailyTask, DicAchievement, DicMainTask } from "../../../pubUtils/dic
import { getMainTask, refDailyTaskBox, removeHistoryTask, getCurTask, checkTask } from "../../../services/taskService";
import { TASK } from "../../../pubUtils/dicParam";
import { newHeroGiftPoint } from "../../../services/activity/newHeroGiftsService";
import { ActivityTaskPointModel } from "../../../db/ActivityTaskPoint";
import { ActivityTaskPointModel, ActivityTaskPointModelType } from "../../../db/ActivityTaskPoint";
import { ItemInter } from "../../../pubUtils/interface";
import { RoleModel } from "../../../db/Role";
import { roleLevelup } from "../../../services/normalBattleService";
@@ -63,7 +63,7 @@ export class ShopHandler {
point = userTask.dailyTaskPoint;
weeklyPoint = userTask.dailyTaskPointWeekly;
let { lv } = await RoleModel.findByRoleId(roleId, 'lv');
expItem = { id: dic.exp.id, count: dic.exp.count * gameData.taskExp.get(lv)};
expItem = { id: dic.exp.id, count: dic.exp.count * gameData.taskExp.get(lv) };
} else if (type == TASK_FUN_TYPE.ACHIEVEMENT) {
let dic = <DicAchievement>dicTask;
let userTask = await UserTaskModel.incInfo(roleId, { achievementPoint: dic.point });
@@ -71,15 +71,15 @@ export class ShopHandler {
}
//任务完成后关联活动的积分
let activityTaskPoint = await ActivityTaskPointModel.findData(type, id);
if (activityTaskPoint) {
await newHeroGiftPoint(serverId, activityTaskPoint.activityId, roleId, activityTaskPoint.point);
let activityTaskPoint: ActivityTaskPointModelType[] = await ActivityTaskPointModel.findData(type, id);
for (let obj of activityTaskPoint) {
await newHeroGiftPoint(serverId, obj.activityId, roleId, obj.point);
let uids = [{ uid: roleId, sid }];
this.app.get('channelService').pushMessageByUids('addPoint', resResult(STATUS.SUCCESS, { activityId: activityTaskPoint.activityId, addPoint: point }), uids);
this.app.get('channelService').pushMessageByUids('addPoint', resResult(STATUS.SUCCESS, { activityId: obj.activityId, addPoint: point }), uids);
}
let goods = await addItems(roleId, roleName, sid, taskReward);
if(expItem) {
if (expItem) {
await roleLevelup(roleId, expItem.count, session);
goods.push(expItem);
}

View File

@@ -29,7 +29,7 @@ export default class Activity_Task_Point extends BaseModel {
//查询数据
public static async findData(taskType: number, taskId: number) {
let result: ActivityTaskPointModelType = await ActivityTaskPointModel.findOne(
let result: ActivityTaskPointModelType[] = await ActivityTaskPointModel.find(
{ taskType, taskId }).lean(true);
return result;
}
@@ -46,20 +46,20 @@ export default class Activity_Task_Point extends BaseModel {
return result;
}
private static getSearchObj(form: {taskType?: number, taskId?: number, activityId?: number}) {
private static getSearchObj(form: { taskType?: number, taskId?: number, activityId?: number }) {
let searchObj = {};
if(form['taskType']) searchObj['taskType'] = form.taskType;
if(form['taskId']) searchObj['taskId'] = form.taskId;
if(form['activityId']) searchObj['activityId'] = form.activityId;
if (form['taskType']) searchObj['taskType'] = form.taskType;
if (form['taskId']) searchObj['taskId'] = form.taskId;
if (form['activityId']) searchObj['activityId'] = form.activityId;
return searchObj
}
}
public static async findByCondition(page: number, pageSize: number, sortField: string = 'updatedAt', sortOrder: string = 'descend', form: {taskType?: number, taskId?: number, activityId?: number} = {}) {
public static async findByCondition(page: number, pageSize: number, sortField: string = 'updatedAt', sortOrder: string = 'descend', form: { taskType?: number, taskId?: number, activityId?: number } = {}) {
let searchObj = this.getSearchObj(form);
let sort = {};
if(sortField && sortOrder) {
if(sortOrder == 'ascend') {
if (sortField && sortOrder) {
if (sortOrder == 'ascend') {
sort[sortField] = 1;
} else if (sortOrder == 'descend') {
sort[sortField] = -1;
@@ -70,7 +70,7 @@ export default class Activity_Task_Point extends BaseModel {
}
public static async countByCondition(form: {taskType?: number, taskId?: number, activityId?: number} = {}) {
public static async countByCondition(form: { taskType?: number, taskId?: number, activityId?: number } = {}) {
let searchObj = this.getSearchObj(form);
const result = await ActivityTaskPointModel.count(searchObj);