UNPKG

flexbiz-server

Version:

Flexible Server

3 lines (2 loc) 1.01 kB
const optionsSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},id_func:{type:String,required:!0,lowercase:!0},option:{},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:""}});(global.configs||{}).createIndexes&&(optionsSchema.index({id_app:1,id_func:1}),optionsSchema.index({status:1}),optionsSchema.index({user_created:1,visible_to:1,visible_to_users:1})); const model=mongoose.models.options||mongoose.model("options",optionsSchema);model.getInfo=async($id_app$$,$condition$$,$fields$$)=>{$condition$$.id_app=$id_app$$;return new Promise(($resolve$$,$reject$$)=>{model.findOne($condition$$).lean().then($rs$$=>{if($fields$$&&$fields$$==="option")return $resolve$$($rs$$?$rs$$.option||{}:{});if(!$rs$$)return $reject$$(Error("Can't find option"));$resolve$$($fields$$?$rs$$[$fields$$]:$rs$$)}).catch($e$$=>{$reject$$($e$$)})})};module.exports=model;