/** * Created by Zhong on 2017/9/28. */ let optionsOprObj = { options: null, optionsTypes: {GENERALOPTS: 'GENERALOPTS', COLOROPTS: 'COLOROPTS'}, rationQuanACToBillsQuan: $('#generalOpts1'), rationQuanACToRationUnit: $('#generalOpts2'), getOptions: function () { let me = this; CommonAjax.post('/options/getOptions', [], function (rstData) { me.options = rstData; let gOpts = me.options[me.optionsTypes.GENERALOPTS]; if(isDef(gOpts)){ for(let attr in gOpts){ me[attr][0].checked = gOpts[attr]; } } }); }, saveOptions: function (type, opts) { let optSettingType = 'options.' + type; let postData = Object.create(null); postData[optSettingType] = opts; CommonAjax.post('/options/saveOptions', {optSetting: postData}); }, //更新optionsOprObj对象options数据 updateOptions: function (options, updateObj) { if(isDef(options[updateObj.type])){ options[updateObj.type][updateObj.opt] = updateObj.value; } }, getOptsByType: function (options, type) { return isDef(options[type]) ? options[type] : null; }, getOption: function (type, optionName) { if(!isDef(optionName)){ return isDef(this.options[type]) ? this.options[type] : null; } else { return isDef(this.options[type][optionName]) ? this.options[type][optionName] : optionName === this.optionsTypes.GENERALOPTS ? true : null; } } }; optionsOprObj.getOptions(); optionsOprObj.rationQuanACToBillsQuan.click(function () { let value = this.checked; optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToBillsQuan', value: value}); optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS)); }); optionsOprObj.rationQuanACToRationUnit.click(function () { let value = this.checked; optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToRationUnit', value: value}); optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS)); }); /*let optionsOprObj = { options: null, optionsTypes: {GENERALOPTS: 'GENERALOPTS'}, rationQuanACToBillsQuan: $('#generalOpts1'), rationQuanACToRationUnit: $('#generalOpts2'), getOptions: function () { let me = this; CommonAjax.post('/options/getOptions', [], function (rstData) { me.options = rstData; for(let i = 0, len = me.options.length; i < len; i++){ let optsType = me.options[i].type, opts = me.options[i].opts; if(optsType === me.optionsTypes.GENERALOPTS){ for(let attr in opts){ me[attr][0].checked = opts[attr]; } } } }); }, saveOptions: function (optsType, opts) { CommonAjax.post('/options/saveOptions', {optsType: optsType, opts: opts}); }, //更新optionsOprObj对象options数据 updateOptions: function (options, updateObj) { for(let i = 0, len = options.length; i < len; i++){ if(options[i].type === updateObj.type){ options[i].opts[updateObj.opt] = updateObj.value; break; } } }, getOptsByType: function (options, type) { let rst = null; for(let i = 0, len = options.length; i < len; i++){ if(options[i].type === type){ rst = options[i].opts; } } return rst; }, getOption: function (type, optionName) { let opts = this.getOptsByType(this.options, type); return opts[optionName]; } }; optionsOprObj.getOptions(); optionsOprObj.rationQuanACToBillsQuan.click(function () { let value = this.checked; optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToBillsQuan', value: value}); optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS)); }); optionsOprObj.rationQuanACToRationUnit.click(function () { let value = this.checked; optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToRationUnit', value: value}); optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS)); });*/