UNPKG

flexbiz-server

Version:

Flexible Server

7 lines (6 loc) 2.53 kB
const validAccount=require("../libs/validator-account"),validator=require("../libs/validator"),detailSchema=new Schema({tk_no:{type:String,required:!0,uppercase:!0,maxlength:32},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},dien_giai:{type:String,default:"",maxlength:1024},ma_bp:{type:String,uppercase:!0,default:"",maxlength:32},ma_phi:{type:String,uppercase:!0,default:"",maxlength:32},ma_hd:{type:String,uppercase:!0,default:"",maxlength:32},ma_dt:{type:String,uppercase:!0,default:"", maxlength:32},ma_nv:{type:String,uppercase:!0,default:"",maxlength:32},ma_kho:{type:String,uppercase:!0,default:"",maxlength:32},exfields_detail:Schema.Types.Mixed,bang_luong:Schema.Types.Mixed,line:{type:Number,default:0}});detailSchema.validate={tk_no:validAccount.existsTk}; const pclSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,default:"PCL",required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},so_ct:{type:String,required:!0,uppercase:!0,trim:!0,maxlength:32},ngay_ct:{type:Date,default:Date.now,required:!0},ky:{type:Number,required:!0},nam:{type:Number,required:!0},dot:{type:Number,required:!0},ty_le:{type:Number,required:!0},tk_co:{type:String,required:!0, uppercase:!0,maxlength:32},ma_nt:{type:String,required:"ma_nt is required",default:"VND",trim:!0,uppercase:!0,maxlength:32},ty_gia:{type:Number,required:!0,min:0,default:1},dien_giai:{type:String,default:"",maxlength:1024},exfields:Schema.Types.Mixed,trang_thai:{type:String,maxlength:32},status:{type:Boolean,default:!0},date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""},visible_to:{type:Number, default:0},visible_to_users:[String],update_right:[String],delete_right:[String],details:{type:[detailSchema]},ma_kho:String,ten_kho:String});pclSchema.validate={ma_dvcs:validator.existsDvcs,ma_nt:validator.existsNt,ngay_ct:validator.unlockBook}; (global.configs||{}).createIndexes&&(pclSchema.index({id_app:1,ma_ct:1,so_ct:-1,ngay_ct:-1}),pclSchema.index({id_app:1,dien_giai:"text",so_ct:"text"}),pclSchema.index({id_app:1,nam:-1,ky:-1}),pclSchema.index({id_app:1,nam:-1,ky:-1,"details.ma_nv":1}),pclSchema.index({id_app:1,status:1}),pclSchema.index({id_app:1,user_created:1,visible_to:1,visible_to_users:1,trang_thai:1}),pclSchema.index({id_app:1,trang_thai:1}));module.exports=mongoose.models.pcl||mongoose.model("pcl",pclSchema);