kpiplus
Version:
KPI+
1 lines • 3.47 kB
JavaScript
var validAccount=require("../libs/validator-account"),validator=require("../libs/validator"),detailSchema=new Schema({ma_nguon_von:{type:String,uppercase:!0,default:""},nguyen_gia:{type:Number,default:0},gia_tri_da_kh:{type:Number,default:0},gia_tri_con_lai:{type:Number,default:0},gia_tri_kh_ky:{type:Number,default:0},exfields_detail:Schema.Types.Mixed,line:{type:Number,default:0}});detailSchema.validate={ma_nguon_von:validator.existsNguonvon};var phutungSchema=new Schema({ten_phu_tung:{type:String,required:!0,default:""},so_luong:{type:Number,default:0},gia_tri:{type:Number,default:0},line:{type:Number,default:0}}),qtsSchema=new Schema({id_app:{type:String,required:!0},ma_dvcs:{type:String,required:!0},ma_ct:{type:String,default:"QTS",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},so_the_ts:{type:String,required:!0,uppercase:!0,trim:!0},ngay_tang:{type:Date,default:Date.now,required:!0},ten_ts:{type:String,required:!0},ma_loai_ts:{type:String,uppercase:!0,required:!0},ma_tang_giam_ts:{type:String,uppercase:!0,required:!0},ma_bp:{type:String,uppercase:!0,required:!0},pp_tinh_kh:{type:String,default:"1"},ngay_kh:{type:Date,default:Date.now,required:!0},so_ky_kh:{type:Number,default:0},lam_tron_kh:{type:Number,default:0},tinh_kh_gia_tri_con_lai:{type:Boolean,default:!0},tk_ts:{type:String,uppercase:!0,required:"Tài khoản tài sản(tk_ts) không được trống"},tk_kh:{type:String,uppercase:!0,required:"Tài khoản khấu hao(tk_kh) không được trống"},tk_cp:{type:String,uppercase:!0,required:"Tài khoản chi phí(tk_cp) không được trống"},so_hieu:String,thong_tin_ky_thuat:String,nuoc_san_xuat:String,nam_san_xuat:String,ngay_su_dung:{type:Date},ngay_dinh_chi:{type:Date},lu_do_dinh_chi:{type:String},ngay_giam:{type:Date},ly_do_giam:{type:String},so_ct_giam:{type:String},ngay_thoi_kh:{type:Date},exfields:Schema.Types.Mixed,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]},phutungs:{type:[phutungSchema]}});qtsSchema.validate={ma_dvcs:validator.existsDvcs,ma_nt:validator.existsNt,ma_bp:validator.existsBp,tk_ts:validAccount.existsTk,tk_cp:validAccount.existsTk,tk_kh:validAccount.existsTk,ma_loai_ts:validator.existsLts,ma_tang_giam_ts:validator.existsTgts,pp_tinh_kh:[function(e,t,a){a("1"==t)},"Phương pháp tính khấu hao(pp_tinh_kh): 1-Đường thẳng"],ma_gd:[function(e,t,a){a("1"==t||"2"==t)},"Kiểu (ma_gd): 1-tài sản,2-công cụ, dụng cụ"]},qtsSchema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1,so_the_ts:1}),qtsSchema.index({ma_ct:1}),qtsSchema.index({user_created:1,date_created:-1}),qtsSchema.index({date_updated:-1});var model=mongoose.model("qts",qtsSchema);model.exists=[function(e,t,a){t?model.findOne({id_app:e,so_the_ts:t},function(e,t){return a(!(e||!t))}):a(!0)},"Số thẻ tài sản ({PATH}) {VALUE} không tồn tại"],model.idExists=[function(e,t,a){t?model.findOne({id_app:e,_id:t},function(e,t){return a(!(e||!t))}):a(!0)},"Tài sản ({PATH}) {VALUE} không tồn tại"],module.exports=model;