后台:修改更新活动

This commit is contained in:
luying
2022-07-30 17:21:31 +08:00
parent f38c8b0fc8
commit 347c2ce7ed
10 changed files with 207 additions and 185 deletions

View File

@@ -1,8 +1,9 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose';
import { CounterModel } from './Counter';
import { CounterAllModal } from './CounterAll';
import { COUNTER } from '../consts';
import { ActivityGroupModel } from './ActivityGroup';
import { UpdateActivityParam } from '../domain/backEndField/params';
/**
* 活动系统
@@ -90,25 +91,25 @@ export default class Activity extends BaseModel {
}
//新增活动
public static async addActivity(aids: number[], groupId: number, beginTime: Date, endTime: Date, type: number, data: string, timeType: number, days: number, delayDay: number, interval: number, name: string, hideDayByServer: number, effectDay: number, uid = 1) {
public static async updateActivity(aids: number[], param: UpdateActivityParam, uid = 1) {
let result: ActivityModelType[] = [];
let newAids = [];
for (let activityId of aids) {
if (!activityId) activityId = await CounterModel.getNewCounter(COUNTER.ACTIVITY);
if (!activityId) activityId = await CounterAllModal.getNewCounter(COUNTER.ACTIVITY);
newAids.push(activityId);
let update = { type, data, timeType, days, delayDay, interval, groupId, name, hideDayByServer, effectDay }
if (beginTime != undefined) {
update["beginTime"] = beginTime;
if (!param.beginTime) {
delete param["beginTime"];
}
if (endTime != undefined) {
update["endTime"] = endTime;
if (!param.endTime) {
delete param["endTime"];
}
let rec: ActivityModelType = await ActivityModel.findOneAndUpdate({ activityId }, { $set: { ...update, updatedBy: uid }, $setOnInsert: { isEnable: true, createdBy: uid } },
let rec: ActivityModelType = await ActivityModel.findOneAndUpdate({ activityId }, { $set: { ...param, updatedBy: uid }, $setOnInsert: { isEnable: true, createdBy: uid } },
{ new: true, upsert: true }).lean(true);
result.push(rec);
}
if (groupId != undefined) {
if (groupId == 0) {
if (param.groupId != undefined) {
let groupId = param.groupId;
if (param.groupId == 0) {
let newGroup = await ActivityGroupModel.createGroup(uid);
groupId = newGroup.groupId;
}

View File

@@ -1,6 +1,6 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose';
import { CounterModel } from './Counter';
import { CounterAllModal } from './CounterAll';
import { COUNTER } from '../consts';
import { ActivityModel } from './Activity';
@@ -28,7 +28,7 @@ export default class Activity_Group extends BaseModel {
//查询组
public static async createGroup(uid = 1) {
let groupId = await CounterModel.getNewCounter(COUNTER.ACTIVITY_GROUP);
let groupId = await CounterAllModal.getNewCounter(COUNTER.ACTIVITY_GROUP);
let result: ActivityGroupModelType = await ActivityGroupModel.findOneAndUpdate({ groupId }, {
$setOnInsert: { groupName: `活动组${groupId}`, activities: [], serverIds: [], createdBy: uid, type: 0 }, $set: { updatedBy: uid }

View File

@@ -1,6 +1,6 @@
import BaseModel from './BaseModel';
import { index, getModelForClass, prop, DocumentType, ReturnModelType, mongoose } from '@typegoose/typegoose';
import { CounterModel } from './Counter';
import { CounterAllModal } from './CounterAll';
import { COUNTER, ACTIVITY_TYPE } from '../consts';
/**
@@ -42,7 +42,7 @@ export default class Activity_GroupType extends BaseModel {
let activityTypes = types.map((value, index) => {
return { index: index + 1, activityType: value };
});
let groupType = await CounterModel.getNewCounter(COUNTER.ACTIVITY_GROUP_TYPE);
let groupType = await CounterAllModal.getNewCounter(COUNTER.ACTIVITY_GROUP_TYPE);
let result: ActivityGroupTypeInter = await ActivityGroupTypeModel.findOneAndUpdate({ groupType }, {
$setOnInsert: { groupTypeName, activityTypes, createdBy: uid }, $set: { updatedBy: uid }