🐞 fix(gvg): 任务修改为周期制刷新

This commit is contained in:
luying
2023-03-22 16:51:14 +08:00
parent d67f7df302
commit 85197ffc31

View File

@@ -1,6 +1,5 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType, } from '@typegoose/typegoose';
import { getZeroPointD } from '../pubUtils/timeUtil';
import { TASK_FUN_TYPE } from '../consts';
import { UpdateTaskParam } from '../domain/roleField/task';
@@ -29,20 +28,17 @@ export default class GVGUserTask extends BaseModel {
status: number; // 1-未领取 2-已领取
public static async findByRole(configId: number, leagueCode: string, roleId: string) {
let today = getZeroPointD();
const result: GVGUserTaskType[] = await GVGUserTaskModel.find({ configId, leagueCode, roleId, createdAt: { $gte: today } }, { _id: 0, id: 1, count: 1, status: 1 }).lean();
const result: GVGUserTaskType[] = await GVGUserTaskModel.find({ configId, leagueCode, roleId }, { _id: 0, id: 1, count: 1, status: 1 }).lean();
return result;
}
public static async setTaskRec(configId: number, leagueCode: string, roleId: string, taskType: number, taskId: number, count: number) {
let today = getZeroPointD();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOneAndUpdate({ configId, leagueCode, roleId, id: taskId, createdAt: { $gte: today } }, { $setOnInsert: { taskType, status: 1 }, $set: { count } }, { new: true, upsert: true }).lean();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOneAndUpdate({ configId, leagueCode, roleId, id: taskId }, { $setOnInsert: { taskType, status: 1 }, $set: { count } }, { new: true, upsert: true }).lean();
return rec;
}
public static async incTaskRec(configId: number, leagueCode: string, roleId: string, taskType: number, taskId: number, count: number) {
let today = getZeroPointD();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOneAndUpdate({ configId, leagueCode, roleId, id: taskId, createdAt: { $gte: today } }, { $setOnInsert: { taskType, status: 1 }, $inc: { count } }, { new: true, upsert: true }).lean();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOneAndUpdate({ configId, leagueCode, roleId, id: taskId }, { $setOnInsert: { taskType, status: 1 }, $inc: { count } }, { new: true, upsert: true }).lean();
return rec;
}
@@ -55,14 +51,12 @@ export default class GVGUserTask extends BaseModel {
}
public static async findByTaskId(configId: number, leagueCode: string, roleId: string, taskId: number) {
let today = getZeroPointD();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOne({ configId, leagueCode, roleId, id: taskId, createdAt: { $gte: today } }).lean();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOne({ configId, leagueCode, roleId, id: taskId }).lean();
return rec;
}
public static async receiveTask(configId: number, leagueCode: string, roleId: string, taskId: number) {
let today = getZeroPointD();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOneAndUpdate({ configId, leagueCode, roleId, id: taskId, createdAt: { $gte: today } }, { $set: { status: 2 } }, { new: true }).lean();
let rec: GVGUserTaskType = await GVGUserTaskModel.findOneAndUpdate({ configId, leagueCode, roleId, id: taskId }, { $set: { status: 2 } }, { new: true }).lean();
return rec;
}
}