添加数据库类型别名

This commit is contained in:
luying
2020-12-15 18:08:29 +08:00
parent 1565dd206a
commit 2d774fc0e4
38 changed files with 393 additions and 321 deletions

View File

@@ -1,7 +1,7 @@
import { COUNTER } from './../consts';
import { CounterModel } from './Counter';
import BaseModel from './BaseModel';
import { index, getModelForClass, prop } from '@typegoose/typegoose';
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
import { genCode } from '../pubUtils/util';
/**
@@ -68,7 +68,7 @@ export default class User extends BaseModel {
auth: number;
public static async updateToken(tel: string, token: string, platform: string, pkgName: string, serverType: string, lean = true) {
let user = await UserModel.findOne({ tel }).lean();
let user: UserType = await UserModel.findOne({ tel }).lean();
const curTime: Date = new Date();
let update = {};
if (!user) {
@@ -83,17 +83,17 @@ export default class User extends BaseModel {
}
public static async findUserByToken(token: string, lean = true) {
const user = await UserModel.findOne({ token }).select('uid token serverType auth').lean(lean);
const user: UserType = await UserModel.findOne({ token }).select('uid token serverType auth').lean(lean);
return user;
}
public static async findUserByTel(tel: string, lean = true) {
const user = await UserModel.findOne({ tel }).select('uid tel').lean(lean);
const user: UserType = await UserModel.findOne({ tel }).select('uid tel').lean(lean);
return user;
}
public static async findUserByUid(uid: number, lean = true) {
const user = await UserModel.findOne({ uid }).select('uid tel').lean(lean);
const user: UserType = await UserModel.findOne({ uid }).select('uid tel').lean(lean);
return user;
}
@@ -105,9 +105,11 @@ export default class User extends BaseModel {
$in: value
};
}
const user = await UserModel.find(searchObj).select('uid tel username').lean(lean);
const user: UserType[] = await UserModel.find(searchObj).select('uid tel username').lean(lean);
return user;
}
}
export const UserModel = getModelForClass(User);
export interface UserType extends Pick<DocumentType<User>, keyof User>{};