UNPKG

flexbiz-server

Version:

Flexible Server

11 lines (10 loc) 4.4 kB
'use strict';const validator=require("../libs/validator"),detailSchema=new Schema({department_code:{type:String,required:!0,uppercase:!0,maxlength:32},ma_dvt:{type:String,required:!0,maxlength:32},sl_xuat:{type:Number,default:1},gia_ban:{type:Number,default:0},gia_ban_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:{type:Number,default:0},tien_nt:{type:Number, default:0},so_nguoi:{type:Number,default:1},gia_ban_thuc:{type:Number,default:0},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},exfields_detail:Schema.Types.Mixed,line:{type:Number,default:0}});detailSchema.validate={ma_dvt:validator.existsDvt}; const ctcpbhSchema=new Schema({ma_cp:{type:String,uppercase:!0,required:!0},dien_giai:{type:String,maxlength:1024},tien_cp_nt:{type:Number,default:0},tien_cp:{type:Number,default:0},line:{type:Number,default:0}}),so2Schema=new Schema({id_app:{type:String,required:!0,maxlength:1024},ma_dvcs:{type:String,maxlength:1024},ma_ct:{type:String,default:"SO2",required:!0,uppercase:!0},ma_gd:{type:String,default:"0",maxlength:32},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"},ma_kh:{type:String,uppercase:!0,required:!0},ten_kh:String,ten_nguoi_nhan:{type:String,maxlength:1024},dien_thoai:{type:String,maxlength:1024},email:{type:String,maxlength:1024},dia_chi:{type:String,maxlength:1024},xa_phuong:{type:String,maxlength:1024},quan_huyen:{type:String,maxlength:1024},tinh_thanh:{type:String, maxlength:1024},quoc_gia:{type:String,default:"Vi\u1ec7t Nam",maxlength:1024},post_code:{type:String,maxlength:1024},location:Schema.Types.Mixed,note_ship:{type:String,maxlength:1024},pt_giao_hang:{type:String,default:"1"},dich_vu_giao_hang:{type:String},trang_thai_giao_hang:{type:String},ma_kiem_soat:{type:String},ly_do_that_bai:{type:String},ly_do_huy:{type:String},ngay_giao_hang:Date,ngay_hoan_thanh:Date,ngay_tra_lai:Date,dien_giai:{type:String,default:"",maxlength:1024},exfields:Schema.Types.Mixed, stt_rec:String,ma_dt:{type:String,uppercase:!0,default:"",maxlength:32},ngay_den:{type:Date,required:!0,default:Date.now},ngay_di:{type:Date,required:!0,default:Date.now},profile:Schema.Types.Mixed,discout_code:String,ty_le_ck_hd:{type:Number,default:0},tien_ck_hd:{type:Number,default:0},sender_email:{type:String},id_trans:{type:String},paymentByPoints:{type:Number,default:0},exchangeRate:Number,tien_paymentByPoints:{type:Number,default:0},evouchers:[Schema.Types.Mixed],tien_evoucher:Number,da_tra:{type:Number, default:0},tien_con_lai:{type:Number,default:0},pt_thanh_toan:{type:String},note_payment:String,virtual_payment_client_url:{type:String,maxlength:2024},again_link:{type:String,maxlength:2024},payemnt_service:String,payment_getway_lang:{type:String,maxlength:1024},cho_phep_gia_han:{type:Boolean,default:!0},details:{type:[detailSchema]},ctcpbhs:[ctcpbhSchema],shared:{type:Boolean,default:!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],update_right:[String],delete_right:[String]});so2Schema.validate={ma_nt:validator.existsNt,ngay_ct:validator.unlockBook,ma_kh:validator.existsKh}; (global.configs||{}).createIndexes&&(so2Schema.index({id_app:1,ma_dvcs:1,so_ct:-1,ngay_ct:-1}),so2Schema.index({dien_giai:"text",so_ct:"text",ma_kh:"text",ten_kh:"text"},{name:"so2_index_text"}),so2Schema.index({ma_ct:1}),so2Schema.index({ma_kh:1}),so2Schema.index({user_created:1,date_created:-1}),so2Schema.index({date_updated:-1}),so2Schema.index({status:1}),so2Schema.index({user_created:1,visible_to:1,visible_to_users:1}),so2Schema.index({trang_thai:1})); let model=mongoose.models.so2||mongoose.model("so2",so2Schema);module.exports=model;