37 lines
1.4 KiB
TypeScript
37 lines
1.4 KiB
TypeScript
import BaseModel from './BaseModel';
|
||
import { index, getModelForClass, prop, DocumentType, modelOptions } from '@typegoose/typegoose';
|
||
import { ShopItem } from '../domain/dbGeneral';
|
||
|
||
/**
|
||
* 分红记录表
|
||
**/
|
||
@modelOptions({ schemaOptions: { id: false } })
|
||
@index({ shopId: 1 })
|
||
|
||
export default class DicShopList extends BaseModel {
|
||
@prop({ required: true })
|
||
shopId: number; // 商店id dic_zyz_shopList内的id
|
||
|
||
@prop({ required: true, default: false })
|
||
useJson: boolean; // 如果为true,则会随dic_zyz_shop表内商品增加而增加,items只提供顺序折扣等;为false,则只提供items里的商品
|
||
|
||
@prop({ required: true, default: [], _id: false, type: () => ShopItem })
|
||
items: ShopItem[]; // 商店id dic_zyz_shopList内的id
|
||
|
||
// public static async findByShopId(shopId: number) {
|
||
// const rec: DicShopListType = await DicShopListModel.findOne({ shopId }).lean();
|
||
// return rec;
|
||
// }
|
||
|
||
// public static async createShop(shopId: number, useJson: boolean, item: ShopItem) {
|
||
// const rec: DicShopListType = await DicShopListModel.findOneAndUpdate({ shopId }, { useJson, $push: { items: item } }, { new: true, upsert: true }).lean();
|
||
// return rec;
|
||
// }
|
||
|
||
}
|
||
|
||
export const DicShopListModel = getModelForClass(DicShopList);
|
||
|
||
export interface DicShopListType extends Pick<DocumentType<DicShopList>, keyof DicShopList>{}
|
||
export type DicShopListParam = Partial<DicShopListType>;
|