flexbiz-server
Version:
Flexible Server
10 lines (9 loc) • 3.83 kB
JavaScript
;const validVt=require("../libs/validator-vt"),validator=require("../libs/validator"),detailSchema=new Schema({ma_vt:{type:String,required:!0,uppercase:!0,maxlength:1024},ma_dvt:{type:String,required:!0,maxlength:32},so_luong:{type:Number,default:0},gia:{type:Number,default:0},gia_nt:{type:Number,default:0},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},ty_le_ck:{type:Number,default:0},tien_ck:{type:Number,default:0},tien_ck_nt:{type:Number,default:0},tt:{type:Number,default:0},
tt_nt:{type:Number,default:0},promotion:Schema.Types.Mixed,dien_giai:{type:String,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_tt1:{type:String,default:"",uppercase:!0,maxlength:32},ma_tt2:{type:String,default:"",uppercase:!0,maxlength:32},ma_tt3:{type:String,
default:"",uppercase:!0,maxlength:32},exfields_detail:Schema.Types.Mixed,line:{type:Number,default:0}});detailSchema.validate={ma_vt:validVt.existsVt,ma_dvt:validator.existsDvt};
const sale_contractSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,maxlength:1024},ma_ct:{type:String,default:"SALE_CONTRACT",required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"0",maxlength:32},ong_ba:{type:String,default:"",maxlength:1024},so_ct:{type:String,uppercase:!0,trim:!0,maxlength:32},ngay_ct:{type:Date,default:Date.now,required:!0},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},trang_thai:{type:String,default:"1",maxlength:32},ma_kh:{type:String,uppercase:!0,maxlength:32},ten_kh:String,ma_kho:{type:String,uppercase:!0,maxlength:32},ma_nv:{type:String,uppercase:!0,default:"",maxlength:32},ma_hd:{type:String,uppercase:!0,required:"Y\u00eau c\u1ea7u nh\u1eadp s\u1ed1 h\u1ee3p \u0111\u1ed3ng",maxlength:32},id_bao_gia:{type:String,maxlength:1024},ma_thue:{type:String,uppercase:!0,maxlength:32},thue_suat:{type:Number,default:0},t_thue:{type:Number,
default:0},t_thue_nt:{type:Number,default:0},ty_le_ck_hd:{type:Number,default:0},tien_ck_hd:{type:Number,default:0},dien_giai:{type:String,default:"",maxlength:1024},exfields:Schema.Types.Mixed,dot_thanh_toan:[],ma_dt:{type:String,uppercase:!0,default:"",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]},promotion:Schema.Types.Mixed});sale_contractSchema.validate={ma_nt:validator.existsNt,ngay_ct:validator.unlockBook,ma_kh:validator.existsKh};
(global.configs||{}).createIndexes&&(sale_contractSchema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1}),sale_contractSchema.index({dien_giai:"text",so_ct:"text",ma_kh:"text",ten_kh:"text",ma_hd:"text"},{name:"sale_contract_index_text"}),sale_contractSchema.index({ma_ct:1}),sale_contractSchema.index({ma_hd:1}),sale_contractSchema.index({ma_kh:1}),sale_contractSchema.index({user_created:1,date_created:-1}),sale_contractSchema.index({date_updated:-1}),sale_contractSchema.index({status:1}),sale_contractSchema.index({user_created:1,
visible_to:1,visible_to_users:1}),sale_contractSchema.index({trang_thai:1}));const model=mongoose.models.sale_contract||mongoose.model("sale_contract",sale_contractSchema);model.referenceKeys={_id:[{model:"hd2",key:"id_contract",error:"H\u1ee3p \u0111\u1ed3ng n\u00e0y \u0111\u00e3 xu\u1ea5t h\u00e0ng"}]};module.exports=model;