kpiplus
Version:
KPI+
1 lines • 4.98 kB
JavaScript
var validAccount=require("../libs/validator-account"),validVt=require("../libs/validator-vt"),validator=require("../libs/validator"),detailSchema=new Schema({ma_vt:{type:String,required:!0,uppercase:!0},ma_dvt:{type:String,required:!0},ma_kho:{type:String,required:!0,uppercase:!0},tk_vt:{type:String,required:!0,uppercase:!0},tk_co:{type:String,uppercase:!0},so_luong:{type:Number,default:0},sl_da_nhap:{type:Number,default:0},sl_nhap:{type:Number,default:0},gia_von:{type:Number,default:0},gia_von_nt:{type:Number,default:0},tien_hang:{type:Number,default:0},tien_hang_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},tien_phi:{type:Number,default:0},tien_phi_nt:{type:Number,default:0},gia_von_nk:{type:Number,default:0},gia_von_nk_nt:{type:Number,default:0},tien_hang_nk:{type:Number,default:0},tien_hang_nk_nt:{type:Number,default:0},thue_suat_nk:{type:Number,default:0},tien_thue_nk:{type:Number,default:0},tien_thue_nk_nt:{type:Number,default:0},tk_thue_nk:{type:String,required:"Yêu cầu nhập TK thuế nhập khẩu"},tien_nhap:{type:Number,default:0},tien_nhap_nt:{type:Number,default:0},dien_giai:String,ma_kh:{type:String,uppercase:!0,default:""},ma_bp:{type:String,uppercase:!0,default:""},ma_phi:{type:String,uppercase:!0,default:""},ma_hd:{type:String,uppercase:!0,default:""},ma_dt:{type:String,uppercase:!0,default:""},ma_nv:{type:String,uppercase:!0,default:""},ma_lo:{type:String,default:"",uppercase:!0},han_sd:{type:Date},ma_tt1:{type:String,default:"",uppercase:!0},ma_tt2:{type:String,default:"",uppercase:!0},ma_tt3:{type:String,default:"",uppercase:!0},exfields_detail:Schema.Types.Mixed,line:{type:Number,default:0}});detailSchema.validate={tk_vt:validAccount.existsTk,ma_kh:validator.existsKh,ma_vt:validVt.existsVt,ma_kho:validVt.existsKho,ma_dvt:validator.existsDvt};var vatvaoSchema=new Schema({ma_hoa_don:{type:String,default:"",uppercase:!0,trim:!0},ky_hieu_hoa_don:{type:String,default:"",uppercase:!0,trim:!0},ma_tc:{type:String,default:"",required:!0,uppercase:!0,trim:!0},so_hd:{type:String,default:"",required:!0,uppercase:!0,trim:!0},so_seri:{type:String,default:"",required:!0,uppercase:!0,trim:!0},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},thue_suat:{type:Number,default:0},tk_thue_no:{type:String,required:!0},tk_du_thue:{type:String,required:!0},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:""},ten_kh:{type:String,default:""},dia_chi:{type:String,default:""},ma_so_thue:{type:String,default:""},ten_vt:{type:String,default:""},dien_giai:{type:String,default:""},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};var ctcpmhSchema=new Schema({ma_cp:{type:String,uppercase:!0,required:!0},tien_cp_nt:{type:Number,default:0},tien_cp:{type:Number,default:0},line:{type:Number,default:0}}),pn9Schema=new Schema({id_app:{type:String,required:!0},ma_dvcs:{type:String,required:!0},ma_ct:{type:String,default:"PN9",required:!0,uppercase:!0},ma_gd:{type:String,default:"0"},so_ct:{type:String,required:!0,uppercase:!0,trim:!0},ngay_ct:{type:Date,default:Date.now,required:!0},ma_nt:{type:String,required:"ma_nt is required",default:"VND",trim:!0,uppercase:!0},ty_gia:{type:Number,required:!0,min:0,default:1},ma_kh:{type:String,uppercase:!0,required:!0,default:""},ma_kho:{type:String,uppercase:!0,required:!0,default:""},tk_co:{type:String,uppercase:!0,required:!0,default:""},ong_ba:{type:String,default:""},dien_giai:{type:String,default:""},han_tt:{type:Number,default:0},hinh_thuc_tt:{type:String},exfields:Schema.Types.Mixed,trang_thai:String,id_contract:String,ma_dt:{type:String,uppercase:!0,default:""},ma_nv:{type:String,uppercase:!0,default:""},ma_bp:{type:String,uppercase:!0},ma_phi:{type:String,uppercase:!0},ma_hd:{type:String,uppercase:!0},ma_lo:{type:String,uppercase:!0},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],details:{type:[detailSchema]},vatvaos:[vatvaoSchema],ctcpmhs:[ctcpmhSchema]});pn9Schema.validate={ma_dvcs:validator.existsDvcs,ma_nt:validator.existsNt,ngay_ct:validator.unlockBook,ma_kh:validator.existsKh,ma_kho:validVt.existsKho,tk_co:validAccount.existsTk},pn9Schema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1}),pn9Schema.index({dien_giai:1}),pn9Schema.index({ma_ct:1}),pn9Schema.index({ma_kh:1}),pn9Schema.index({ma_kho:1}),pn9Schema.index({user_created:1,date_created:-1}),pn9Schema.index({date_updated:-1});var model=mongoose.model("pn9",pn9Schema);module.exports=model;