flexbiz-server
Version:
Flexible Server
5 lines (4 loc) • 1.52 kB
JavaScript
;const newsfeedSchema=new Schema({id_app:{type:String,required:!0},model_name:{type:String,required:!0},id:{type:String,required:!0},exfields:Schema.Types.Mixed,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&&(newsfeedSchema.index({id_app:1,model_name:1,id:1}),newsfeedSchema.index({date_updated:-1}),newsfeedSchema.index({date_created:-1}),newsfeedSchema.index({user_created:1}),newsfeedSchema.index({model_name:"text"}),newsfeedSchema.index({model_name:1}),newsfeedSchema.index({status:1}),newsfeedSchema.index({user_created:1,visible_to:1,visible_to_users:1}));const model=mongoose.models.newsfeed||mongoose.model("newsfeed",newsfeedSchema);
model.add=async($modelName$$,$obj$$)=>{await model.delete($obj$$._id.toString());let $newsfeed$$=new model({id_app:$obj$$.id_app,model_name:$modelName$$,id:$obj$$._id.toString(),status:$obj$$.status,date_created:$obj$$.date_created,date_updated:$obj$$.date_updated,user_created:$obj$$.user_created,user_updated:$obj$$.user_updated});return new Promise(($resolve$$,$reject$$)=>{$newsfeed$$.save(($e$$,$rs$$)=>{if($e$$)return $reject$$(Error($e$$.message));$resolve$$($rs$$.toObject())})})};
model.delete=async $id$$=>new Promise(($resolve$$,$reject$$)=>{model.remove({id:$id$$},($e$$,$rs$$)=>{if($e$$)return $reject$$(Error($e$$.message));$resolve$$($rs$$)})});module.exports=model;