options_view.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /**
  2. * Created by Zhong on 2017/9/28.
  3. */
  4. let optionsOprObj = {
  5. options: null,
  6. optionsTypes: {GENERALOPTS: 'GENERALOPTS'},
  7. rationQuanACToBillsQuan: $('#generalOpts1'),
  8. rationQuanACToRationUnit: $('#generalOpts2'),
  9. getOptions: function () {
  10. let me = this;
  11. CommonAjax.post('/options/getOptions', [], function (rstData) {
  12. me.options = rstData;
  13. for(let i = 0, len = me.options.length; i < len; i++){
  14. let optsType = me.options[i].type,
  15. opts = me.options[i].opts;
  16. if(optsType === me.optionsTypes.GENERALOPTS){
  17. for(let attr in opts){
  18. me[attr][0].checked = opts[attr];
  19. }
  20. }
  21. }
  22. });
  23. },
  24. saveOptions: function (optsType, opts) {
  25. CommonAjax.post('/options/saveOptions', {optsType: optsType, opts: opts});
  26. },
  27. //更新optionsOprObj对象options数据
  28. updateOptions: function (options, updateObj) {
  29. for(let i = 0, len = options.length; i < len; i++){
  30. if(options[i].type === updateObj.type){
  31. options[i].opts[updateObj.opt] = updateObj.value;
  32. break;
  33. }
  34. }
  35. },
  36. getOptsByType: function (options, type) {
  37. let rst = null;
  38. for(let i = 0, len = options.length; i < len; i++){
  39. if(options[i].type === type){
  40. rst = options[i].opts;
  41. }
  42. }
  43. return rst;
  44. },
  45. getOption: function (type, optionName) {
  46. let opts = this.getOptsByType(this.options, type);
  47. return opts[optionName];
  48. }
  49. };
  50. optionsOprObj.getOptions();
  51. optionsOprObj.rationQuanACToBillsQuan.click(function () {
  52. let value = this.checked;
  53. optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToBillsQuan', value: value});
  54. optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS));
  55. });
  56. optionsOprObj.rationQuanACToRationUnit.click(function () {
  57. let value = this.checked;
  58. optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToRationUnit', value: value});
  59. optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS));
  60. });