import BaseModel from './BaseModel'; import { index, getModelForClass, prop } from '@typegoose/typegoose'; /** * 短信字段接口 */ @index({ name: 1 }) export default class Counter extends BaseModel { @prop({ required: true }) name: string; @prop({ required: true, default: 1 }) seq: number; public static async getNewCounter(name: string) { const counter = await CounterModel.findOneAndUpdate({name}, {$inc: {seq: 1}}, {new: true, upsert: true}).lean(); return counter?.seq; } } export const CounterModel = getModelForClass(Counter);