From 8985065b0e85d9a98f8be2a0c73ed26dc7c0f3db Mon Sep 17 00:00:00 2001 From: liangtongchuan Date: Sat, 6 May 2023 18:14:33 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat(db):=20=E7=BB=99UserGachaRec?= =?UTF-8?q?=E8=A1=A8=E6=B7=BB=E5=8A=A0=E5=8F=AA=E8=AF=BB=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gm-server/app/service/Log.ts | 4 ++-- shared/db/UserGachaRec.ts | 11 +++++++++-- shared/db/index.ts | 2 ++ 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/gm-server/app/service/Log.ts b/gm-server/app/service/Log.ts index 03f3d879a..6a9be0f3c 100644 --- a/gm-server/app/service/Log.ts +++ b/gm-server/app/service/Log.ts @@ -3,7 +3,7 @@ import { STATUS } from '@consts'; import { SearchLogParam, SearchUserLogParam } from '@domain/backEndField/search'; import { GMRecordModel } from '@db/GMRecord'; import { UserLogModel } from '@db/UserLog'; -import { UserGachaRecModel } from '@db/UserGachaRec'; +import UserGachaRec from '@db/UserGachaRec'; /** * Test Service @@ -36,7 +36,7 @@ export default class Log extends Service { public async getGachaLog(page: number, pageSize: number, form: SearchUserLogParam) { const {ctx} = this; - let list = await UserGachaRecModel.findByCondition(page, pageSize, form); + let list = await UserGachaRec.findByCondition(page, pageSize, form); return ctx.service.utils.resResult(STATUS.SUCCESS, { list: list.map(cur => ({...cur, env: ctx.app.config.realEnv})) }); } } diff --git a/shared/db/UserGachaRec.ts b/shared/db/UserGachaRec.ts index aece35946..10b978e57 100644 --- a/shared/db/UserGachaRec.ts +++ b/shared/db/UserGachaRec.ts @@ -1,5 +1,5 @@ import BaseModel from './BaseModel'; -import { index, getModelForClass, prop, DocumentType, modelOptions } from '@typegoose/typegoose'; +import { index, getModelForClass, prop, DocumentType, modelOptions, ReturnModelType, mongoose } from '@typegoose/typegoose'; import { GachaResultIndb } from '../domain/activityField/gachaField'; import { genCode } from '../pubUtils/util'; import { SearchGachaLogParam } from '../domain/backEndField/search'; @@ -50,12 +50,19 @@ export default class UserGachaRec extends BaseModel { public static async findByCondition(page: number, pageSize: number, form: SearchGachaLogParam = {}) { let searchObj = UserGachaRecModel.getSearchObj(form); - const result: UserGachaRecType[] = await UserGachaRecModel.find(searchObj).limit(pageSize).skip((page - 1) * pageSize).sort({ createdAt: -1 }).select('-_id').lean({ getters: true, virtuals: true }); + const result: UserGachaRecType[] = await UserGachaRecROModel.find(searchObj).limit(pageSize).skip((page - 1) * pageSize).sort({ createdAt: -1 }).select('-_id').lean({ getters: true, virtuals: true }); return result; } } export const UserGachaRecModel = getModelForClass(UserGachaRec); +export let UserGachaRecROModel: ReturnModelType; +export function loadUserGachaRecROModel(connect: mongoose.Connection) { + UserGachaRecROModel = getModelForClass(UserGachaRec, { + existingConnection: connect + }); +} + export interface UserGachaRecType extends Pick, keyof UserGachaRec> { } export type UserGachaRecParam = Partial; \ No newline at end of file diff --git a/shared/db/index.ts b/shared/db/index.ts index 25c60f1d6..d5a53f2ec 100644 --- a/shared/db/index.ts +++ b/shared/db/index.ts @@ -17,6 +17,7 @@ import { loadUserLog } from "./UserLog"; import { loadRoleROModel } from "./Role"; import { loadHeroROModel } from "./Hero"; import { loadItemROModel } from "./Item"; +import { loadUserGachaRecROModel } from "./UserGachaRec"; export function loadGmDb(connect: mongoose.Connection) { // console.log('************') @@ -45,4 +46,5 @@ export function loadRODb(connect: mongoose.Connection) { loadRoleROModel(connect); loadHeroROModel(connect); loadItemROModel(connect); + loadUserGachaRecROModel(connect); } \ No newline at end of file