后台:添加玩家日志
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
import BaseModel from './BaseModel';
|
||||
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
|
||||
import { SearchUserLogParam } from '../domain/backEndField/search';
|
||||
|
||||
class Reward {
|
||||
@prop({ required: true })
|
||||
@@ -105,6 +106,26 @@ export default class UserLog extends BaseModel {
|
||||
const r = await UserLogModel.insertMany(params);
|
||||
return r;
|
||||
}
|
||||
|
||||
private static getSearchObj(form: SearchUserLogParam) {
|
||||
let searchObj = {};
|
||||
if (form.type) searchObj['type'] = form.type;
|
||||
if (form.serverId) searchObj['serverId'] = form.serverId;
|
||||
if (form.uid) searchObj['uid'] = form.uid;
|
||||
if (form.roleId) searchObj['roleId'] = form.roleId;
|
||||
if(form.roleName) searchObj['roleName'] = { $regex: new RegExp(form.roleName.toString(), 'i') };
|
||||
if (form.createTimeStart && form.createTimeEnd) {
|
||||
searchObj['createdAt'] = { $lte: new Date(form.createTimeEnd * 1000), $gte: new Date(form.createTimeStart * 100) };
|
||||
}
|
||||
return searchObj
|
||||
}
|
||||
|
||||
public static async findByCondition(page: number, pageSize: number, form: SearchUserLogParam = {}) {
|
||||
let searchObj = UserLogModel.getSearchObj(form);
|
||||
const result: UserLogModelType[] = await UserLogModel.find(searchObj).limit(pageSize).skip((page - 1) * pageSize).sort({ createdAt: -1 }).select('-_id').lean({ getters: true, virtuals: true });
|
||||
return result;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
export let UserLogModel = getModelForClass(UserLog);
|
||||
|
||||
Reference in New Issue
Block a user