12345678910111213141516171819202122232425262728293031 |
- /**
- * Created by Zhong on 2017/9/28.
- */
- let mongoose = require('mongoose');
- const optionsModel = mongoose.model('options');
- class OptionsDao {
- async getOptions(user_id, compilation_id){
- let rst = await optionsModel.find({user_id: user_id, compilation_id: compilation_id});
- rst = rst.length > 0 && typeof rst[0].options !== 'undefined' ? rst[0].options : null;
- return rst;
- }
- async getOptionsByType(user_id, compilation_id, optsType){
- let rst = await optionsModel.findOne({user_id: user_id, compilation_id: compilation_id});
- if(rst){
- return rst.options[optsType] !== undefined && rst.options[optsType] !== null ? rst.options[optsType] : null;
- }
- }
- async saveOptions(user_id, compilation_id, optSetting){
- let optionsData = await optionsModel.find({user_id: user_id, compilation_id: compilation_id});
- if(optionsData.length === 0){
- await optionsModel.create({user_id: user_id, compilation_id: compilation_id, options: optSetting});
- }
- await optionsModel.update({user_id: user_id, compilation_id: compilation_id}, optSetting);
- let rst = await optionsModel.find({user_id: user_id, compilation_id: compilation_id});
- return rst.length > 0 && typeof rst[0].options !== 'undefined' ? rst[0].options : null;
- }
- }
- module.exports = OptionsDao;
|