UNPKG

flexbiz-server

Version:

Flexible Server

3 lines (2 loc) 1.01 kB
'use strict';const optionsSchema=new Schema({id_app:{type:String,required:!0,maxlength:1024},id_func:{type:String,required:!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().exec(($e$$,$rs$$)=>{if($fields$$&&"option"===$fields$$)return $resolve$$($rs$$?$rs$$.option||{}:{});if($e$$||!$rs$$)return $reject$$(Error($e$$?$e$$.message:"Can't find option"));$resolve$$($fields$$?$rs$$[$fields$$]:$rs$$)})})};module.exports=model;