UNPKG

flexbiz-server

Version:

Flexible Server

5 lines (4 loc) 1.68 kB
const mongoose=require("mongoose"),{Schema}=mongoose,kpiSchema=new Schema({metric_name:String,type:{type:String,enum:["count","sum","conversion_rate"]},apiCode:String,target_value:Number}),StepSchema=new Schema({step_order:{type:Number,required:!0,description:"Th\u1ee9 t\u1ef1 c\u1ee7a b\u01b0\u1edbc trong quy tr\u00ecnh"},title:{type:String,required:!0,description:"T\u00ean b\u01b0\u1edbc (VD: \u0110\u1ea7u gi\u1edd s\u00e1ng)"},time_block:{type:String,description:"Khung gi\u1edd g\u1ee3i \u00fd (VD: 08:00 - 09:30)"}, objective:{type:String,description:"M\u1ee5c ti\u00eau c\u1ee7a b\u01b0\u1edbc n\u00e0y (VD: \u0110\u1ea3m b\u1ea3o doanh thu n\u1ec1n t\u1ea3ng)"},description:{type:String,description:"H\u01b0\u1edbng d\u1eabn chi ti\u1ebft / Thao t\u00e1c h\u1ec7 th\u1ed1ng"},dashboard_config:Schema.Types.Mixed}),WorkflowSchema=new Schema({id_app:{type:String,required:!0},code:{type:String,required:!0,uppercase:!0,description:"M\u00e3 quy tr\u00ecnh (VD: SOP_SALES_B2B)"},title:{type:String,required:!0,description:"T\u00ean quy tr\u00ecnh"}, ma_bp:{type:String,description:"Ph\u00f2ng ban \u00e1p d\u1ee5ng"},cong_viec:{type:String,description:"V\u1ecb tr\u00ed \u00e1p d\u1ee5ng (VD: Nh\u00e2n vi\u00ean kinh doanh B2B)"},status:{type:Boolean,default:!0,description:"Tr\u1ea1ng th\u00e1i ho\u1ea1t \u0111\u1ed9ng"},steps:[StepSchema],kpi_configs:[kpiSchema],date_created:{type:Date,default:Date.now},date_updated:{type:Date,default:Date.now},user_created:{type:String,default:""},user_updated:{type:String,default:""}}); (global.configs||{}).createIndexes&&WorkflowSchema.index({id_app:1,code:1},{unique:!0});module.exports=mongoose.model("workflow",WorkflowSchema);