options_view.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  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. $.ajax({
  12. type: 'post',
  13. url: '/options/getOptions',
  14. dataType: 'json',
  15. success: function (result) {
  16. if(!result.error){
  17. me.options = result.data;
  18. for(let i = 0, len = me.options.length; i < len; i++){
  19. let optsType = me.options[i].type,
  20. opts = me.options[i].opts;
  21. if(optsType === me.optionsTypes.GENERALOPTS){
  22. for(let attr in opts){
  23. me[attr][0].checked = opts[attr];
  24. }
  25. }
  26. }
  27. }
  28. }
  29. });
  30. },
  31. saveOptions: function (optsType, opts) {
  32. $.ajax({
  33. type: 'post',
  34. url: '/options/saveOptions',
  35. data: {optsType: optsType, opts: JSON.stringify(opts)},
  36. dataType: 'json',
  37. success: function (result) {
  38. }
  39. })
  40. },
  41. //更新optionsOprObj对象options数据
  42. updateOptions: function (options, updateObj) {
  43. for(let i = 0, len = options.length; i < len; i++){
  44. if(options[i].type === updateObj.type){
  45. options[i].opts[updateObj.opt] = updateObj.value;
  46. break;
  47. }
  48. }
  49. },
  50. getOptsByType: function (options, type) {
  51. let rst = null;
  52. for(let i = 0, len = options.length; i < len; i++){
  53. if(options[i].type === type){
  54. rst = options[i].opts;
  55. }
  56. }
  57. return rst;
  58. }
  59. };
  60. optionsOprObj.getOptions();
  61. optionsOprObj.rationQuanACToBillsQuan.click(function () {
  62. let value = this.checked;
  63. optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToBillsQuan', value: value});
  64. optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS));
  65. });
  66. optionsOprObj.rationQuanACToRationUnit.click(function () {
  67. let value = this.checked;
  68. optionsOprObj.updateOptions(optionsOprObj.options, {type: optionsOprObj.optionsTypes.GENERALOPTS, opt: 'rationQuanACToRationUnit', value: value});
  69. optionsOprObj.saveOptions(optionsOprObj.optionsTypes.GENERALOPTS, optionsOprObj.getOptsByType(optionsOprObj.options, optionsOprObj.optionsTypes.GENERALOPTS));
  70. });