flexbiz-server
Version:
Flexible Server
15 lines (14 loc) • 6.15 kB
JavaScript
'use strict';const validAccount=require("../libs/validator-account"),validator=require("../libs/validator"),detailSchema=new global.Schema({tk_no:{type:String,required:!0,uppercase:!0,maxlength:32},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32},tien:{type:Number,default:0},tien_nt:{type:Number,default:0},ma_bp:{type:String,uppercase:!0,maxlength:32},ma_phi:{type:String,uppercase:!0,maxlength:32},ma_hd:{type:String,uppercase:!0,maxlength:32},ma_dot_tt:{type:Number},ma_dt:{type:String,uppercase:!0,
maxlength:32},ma_nv:{type:String,uppercase:!0,maxlength:32},ma_sp:{type:String,uppercase:!0,maxlength:32},dien_giai:String,exfields_detail:global.Schema.Types.Mixed,ma_td1:Schema.Types.Mixed,ma_td2:Schema.Types.Mixed,ma_td3:Schema.Types.Mixed,ma_td4:Schema.Types.Mixed,ma_td5:Schema.Types.Mixed,ma_td6:Schema.Types.Mixed,ma_td7:Schema.Types.Mixed,ma_td8:Schema.Types.Mixed,ma_td9:Schema.Types.Mixed,line:{type:Number,default:0}});detailSchema.validate={tk_no:validAccount.existsTk,ma_kh:validator.existsKh};
const vatvaoSchema=new global.Schema({ma_hoa_don:{type:String,default:"",uppercase:!0,trim:!0,maxlength:32},ky_hieu_hoa_don:{type:String,default:"",uppercase:!0,trim:!0,maxlength:32},ma_tc:{type:String,default:"1",uppercase:!0,trim:!0,maxlength:32},so_hd:{type:String,default:"",required:!0,uppercase:!0,trim:!0,maxlength:32},so_seri:{type:String,default:"",uppercase:!0,trim:!0,maxlength:32},ngay_hd:{type:Date,required:!0},t_tien:{type:Number,default:0},t_tien_nt:{type:Number,default:0},ma_thue:{type:String,
required:!0,uppercase:!0,maxlength:32},thue_suat:{type:Number,default:0},tk_thue_no:{type:String,required:!0,uppercase:!0,maxlength:32},tk_du_thue:{type:String,required:!0,uppercase:!0,maxlength:32},t_thue:{type:Number,default:0},t_thue_nt:{type:Number,default:0},t_hd:{type:Number,default:0},t_hd_nt:{type:Number,default:0},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32},ma_kh_cn:{type:String,default:"",maxlength:32},ten_kh_cn:{type:String,default:"",maxlength:1024},ten_kh:{type:String,default:"",
maxlength:1024},dia_chi:{type:String,default:"",maxlength:1024},ma_so_thue:{type:String,default:"",maxlength:32},ten_vt:{type:String,default:"",maxlength:1024},exfields_detail:global.Schema.Types.Mixed,line:{type:Number,default:0}});vatvaoSchema.validate={tk_thue_no:validAccount.existsTk,tk_du_thue:validAccount.existsTk,ma_kh:validator.existsKh,ma_thue:validator.existsVat};
const tdttco_ttSchema=new global.Schema({line:{type:Number,default:0},id_hd:{type:String,required:!0,maxlength:1024},id_tdtt:{type:String,maxlength:1024},ngay_hd:{type:Date,required:!0},so_hd:{type:String,required:!0,uppercase:!0,maxlength:32},ma_nt_hd:{type:String,required:!0,maxlength:32},ty_gia_hd:{type:Number,default:1},tien_hd_nt:{type:Number,default:0},da_thanh_toan_nt:{type:Number,default:0},con_lai_nt:{type:Number,default:0},tien_nt:{type:Number,default:0},tien:{type:Number,default:0},thanh_toan_qd:{type:Number,
default:0},ma_kh:{type:String,uppercase:!0,default:"",maxlength:32},tk_no:{type:String,required:!0,maxlength:32},ma_bp:{type:String,uppercase:!0,maxlength:32},ma_phi:{type:String,uppercase:!0,maxlength:32},ma_hd:{type:String,uppercase:!0,maxlength:32},ma_dot_tt:{type:Number},ma_dt:{type:String,uppercase:!0,maxlength:32},ma_nv:{type:String,uppercase:!0,maxlength:32},ma_sp:{type:String,uppercase:!0,maxlength:32},dien_giai:String,exfields_detail:global.Schema.Types.Mixed});
tdttco_ttSchema.validate={tk_no:validAccount.existsTk,ma_kh:validator.existsKh};
const pc1Schema=new global.Schema({ct_ngan_hang:{type:Boolean,default:!1},id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,required:!0,maxlength:1024},ma_ct:{type:String,default:"PC1",required:!0,uppercase:!0,maxlength:32},ma_gd:{type:String,default:"1",enum:["1","2"],maxlength:32},kieu_tt:{type:String,default:"1"},so_ct:{type:String,required:!0,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},tk_co:{type:String,uppercase:!0,required:!0,maxlength:32},ong_ba:{type:String,maxlength:1024},ma_kh:{type:String,uppercase:!0,required:!0,maxlength:32},ten_kh:String,dien_giai:{type:String,default:"",maxlength:1024},id_pc0:String,id_dn0:String,id_pn6:String,id_asscashwithdraw:String,exfields:global.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]},vatvaos:[vatvaoSchema],tdttcos:[tdttco_ttSchema],ma_bp:{type:String,uppercase:!0,maxlength:32},ma_phi:{type:String,uppercase:!0,maxlength:32},ma_hd:{type:String,uppercase:!0,maxlength:32},ma_dt:{type:String,uppercase:!0,maxlength:32},ma_nv:{type:String,
uppercase:!0,maxlength:32},ma_kho:String,ten_kho:String});pc1Schema.validate={ma_dvcs:validator.existsDvcs,ma_nt:validator.existsNt,ngay_ct:validator.unlockBook,tk_co:validAccount.existsTk,ma_gd:[function($id_app$$,$value$$,$callback$$){return"1"!=$value$$&&"2"!=$value$$?$callback$$(!1):$callback$$(!0)},"ma_gd:1-Thu chi m\u1eb7t, 2- B\u00e1o n\u1ee3"]};
(global.configs||{}).createIndexes&&(pc1Schema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1}),pc1Schema.index({dien_giai:"text"}),pc1Schema.index({ma_ct:1}),pc1Schema.index({ma_kh:1}),pc1Schema.index({kieu_tt:1}),pc1Schema.index({trang_thai:1}),pc1Schema.index({id_pc0:1}),pc1Schema.index({id_dn0:1}),pc1Schema.index({id_pn6:1}),pc1Schema.index({id_asscashwithdraw:1}),pc1Schema.index({user_created:1,date_created:-1}),pc1Schema.index({date_updated:-1}),pc1Schema.index({so_ct:"text",ma_kh:"text",ten_kh:"text",
dien_giai:"text",ong_ba:"text"},{name:"pc1_index_text"}),pc1Schema.index({status:1}),pc1Schema.index({user_created:1,visible_to:1,visible_to_users:1}));module.exports=global.mongoose.models.pc1||global.mongoose.model("pc1",pc1Schema);