flexbiz-server
Version:
Flexible Server
10 lines (9 loc) • 4.32 kB
JavaScript
const taskSchema=new Schema({id_app:{type:String,required:!0},ten_cv:{type:String,required:!0},id_link:{type:String},id_job:{type:String},id_ct:{type:String},id_kh:{type:String,default:""},id_dt:{type:String,default:""},ten_kh:String,id_bp:{type:String,default:""},ten_bp:String,id_lh:{type:String,default:""},id_dokho:{type:String},diem_toi_thieu:Number,diem_toi_da:Number,diem_du_tinh:Number,chia_diem:Boolean,he_so_chia_diem:Schema.Types.Mixed,mieu_ta:{type:String},ghi_chu:{type:String},nh_cv:{type:String},
ten_nh_cv:String,ma_loai_cv:String,phu_trach:{type:String,lowercase:!0},ten_phu_trach:String,location:{type:String},attends:[String],attend_groups:[String],nguoi_kiem_tra:String,nguoi_thuc_hien:String,start_date:{type:Date},due_date:{type:Date},finished_date:{type:Date},estimate_complete_hour:Number,complete_hour:Number,nhac_nho_truoc:{type:Number,default:60},reminder:{type:Date},repeat:{type:Number,default:0},priority:{type:Number,default:1},progress:{type:Number,default:0},percent:{type:Number,
default:0,max:100},exfields:Schema.Types.Mixed,labels:[String],todos:Schema.Types.Mixed,stt:{type:Number,default:0},saved:Boolean,ma_ct:{type:String,uppercase:!0},so_ct:{type:String,uppercase:!0},ngay_ct:Date,ma_nt:{type:String,uppercase:!0},ty_gia:Number,thu_phi:Number,da_thu:Number,tk_no:{type:String,uppercase:!0},tk_co:{type:String,uppercase:!0},phi_dich_vu_1_lan:Number,ty_le_hoa_hong:Number,tien_hoa_hong:Number,tk_no_hh:{type:String,uppercase:!0},tk_co_hh:{type:String,uppercase:!0},ma_dvcs:String,
group_id_link:String,group_name_link:String,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]});
(global.configs||{}).createIndexes&&(taskSchema.index({id_app:1,start_date:-1}),taskSchema.index({id_app:1,start_date:-1,due_date:-1}),taskSchema.index({id_app:1,start_date:-1,ten_cv:1}),taskSchema.index({id_app:1,start_date:-1,nh_cv:1}),taskSchema.index({id_app:1,start_date:-1,phu_trach:1,ten_phu_trach:1}),taskSchema.index({id_app:1,start_date:-1,user_created:1}),taskSchema.index({id_app:1,start_date:-1,date_created:-1}),taskSchema.index({id_app:1,start_date:-1,labels:1}),taskSchema.index({id_app:1,
start_date:-1,nguoi_thuc_hien:1,nguoi_kiem_tra:1}),taskSchema.index({id_app:1,start_date:-1,ma_loai_cv:1}),taskSchema.index({id_app:1,id_ct:1}),taskSchema.index({id_app:1,id_kh:1,ten_kh:1}),taskSchema.index({id_app:1,id_bp:1,ten_bp:1}),taskSchema.index({id_app:1,so_ct:1}),taskSchema.index({id_link:1}),taskSchema.index({id_app:1,id_job:1}),taskSchema.index({id_app:1,progress:1}),taskSchema.index({id_app:1,saved:1}),taskSchema.index({id_app:1,attends:1}),taskSchema.index({id_app:1,status:1}),taskSchema.index({id_app:1,
start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1}),taskSchema.index({id_app:1,start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,due_date:-1}),taskSchema.index({id_app:1,start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,ten_cv:1}),taskSchema.index({id_app:1,start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,id_kh:1,ten_kh:1}),taskSchema.index({id_app:1,start_date:-1,
progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,id_bp:1,ten_bp:1}),taskSchema.index({id_app:1,start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,saved:1}),taskSchema.index({id_app:1,start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,nh_cv:1}),taskSchema.index({id_app:1,start_date:-1,progress:1,phu_trach:1,user_created:1,visible_to:1,visible_to_users:1,ma_loai_cv:1}),taskSchema.index({id_app:1,ten_cv:"text",phu_trach:"text",
ten_phu_trach:"text",ten_nh_cv:"text",ten_bp:"text",ten_kh:"text"},{name:"task_index_text"}));const model=mongoose.models.task||mongoose.model("task",taskSchema);if((global.configs||{}).createIndexes)model.on("index",async function($err$$){$err$$?Logger.error("task index error",$err$$):console.info("task indexing complete")});model.calcCompleteHours=$obj$$=>$obj$$.complete_hour;module.exports=model;