merch.js 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../merch/list',
  4. datatype: "json",
  5. colModel: [
  6. {label: 'id', name: 'id', index: 'id', key: true, hidden: true},
  7. {label: '商户编号', name: 'merchSn', index: 'merch_sn', align: 'center',width: 220},
  8. {label: '商户名称', name: 'merchName', index: 'merch_name', align: 'center',width: 180},
  9. {label: '商户简称', name: 'merchShortName', index: 'merch_short_name', width: 100},
  10. {label: '排序', name: 'sortOrder', index: 'sort_order', width: 100},
  11. {
  12. label: '显示',
  13. name: 'isShow',
  14. align: 'center',
  15. index: 'is_show',
  16. width: '120px',
  17. formatter: function (value) {
  18. return transIsNot(value);
  19. }
  20. },
  21. {label: '备注', name: 'remark', index: 'remark', width: 220}],
  22. viewrecords: true,
  23. height: 550,
  24. rowNum: 10,
  25. rowList: [10, 30, 50],
  26. rownumbers: true,
  27. rownumWidth: 25,
  28. autowidth: true,
  29. shrinkToFit: false,
  30. autoScroll: true, //开启水平滚动条
  31. width: 1500,
  32. multiselect: true,
  33. pager: "#jqGridPager",
  34. jsonReader: {
  35. root: "page.list",
  36. page: "page.currPage",
  37. total: "page.totalPage",
  38. records: "page.totalCount"
  39. },
  40. prmNames: {
  41. page: "page",
  42. rows: "limit",
  43. order: "order"
  44. },
  45. gridComplete: function () {
  46. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "scroll"});
  47. }
  48. });
  49. });
  50. let vm = new Vue({
  51. el: '#rrapp',
  52. data: {
  53. showList: true,
  54. title: null,
  55. merch: {merchSn:'',merchName:'',merchShortName:'',sortOrder:'',isShow:1},
  56. ruleValidate: {
  57. merchSn: [
  58. {required: true, message: '商户编号不能为空', trigger: 'blur'},
  59. {max: 32, message: '商户编号长度不能超过32', trigger: 'blur'}
  60. ],
  61. merchName: [
  62. {required: true, message: '商户名称不能为空', trigger: 'blur'},
  63. {max: 32, message: '商户名称长度不能超过32', trigger: 'blur'}
  64. ],
  65. merchShortName: [
  66. {required: true, message: '商户简称不能为空', trigger: 'blur'},
  67. {max: 10, message: '商户简称长度不能超过10', trigger: 'blur'}
  68. ],
  69. remark: [
  70. {max: 32, message: '备注长度不能超过32', trigger: 'blur'}
  71. ]
  72. },
  73. q: {
  74. merchName: '',
  75. merchSn: ''
  76. }
  77. },
  78. methods: {
  79. query: function () {
  80. vm.reload();
  81. },
  82. add: function () {
  83. vm.showList = false;
  84. vm.title = "新增";
  85. vm.merch = {isShow:1};
  86. },
  87. update: function (event) {
  88. let id = getSelectedRow();
  89. if (id == null) {
  90. return;
  91. }
  92. vm.showList = false;
  93. vm.title = "修改";
  94. vm.getInfo(id)
  95. },
  96. saveOrUpdate: function (event) {
  97. let url = vm.merch.id == null ? "../merch/save" : "../merch/update";
  98. $.ajax({
  99. type: "POST",
  100. url: url,
  101. contentType: "application/json",
  102. data: JSON.stringify(vm.merch),
  103. success: function (r) {
  104. if (r.code === 0) {
  105. alert('操作成功', function (index) {
  106. vm.reload();
  107. });
  108. } else {
  109. alert(r.msg);
  110. }
  111. }
  112. });
  113. },
  114. del: function (event) {
  115. let ids = getSelectedRows();
  116. if (ids == null){
  117. return;
  118. }
  119. confirm('确定要删除选中的记录?', function () {
  120. $.ajax({
  121. type: "POST",
  122. url: "../merch/delete",
  123. contentType: "application/json",
  124. data: JSON.stringify(ids),
  125. success: function (r) {
  126. if (r.code == 0) {
  127. alert('操作成功', function (index) {
  128. $("#jqGrid").trigger("reloadGrid");
  129. });
  130. } else {
  131. alert(r.msg);
  132. }
  133. }
  134. });
  135. });
  136. },
  137. getInfo: function(id){
  138. $.get("../merch/info/"+id, function (r) {
  139. vm.merch = r.merch;
  140. });
  141. },
  142. reloadSearch: function() {
  143. vm.q = {
  144. merchName: '',
  145. merchSn:''
  146. }
  147. vm.reload();
  148. },
  149. reload: function (event) {
  150. vm.showList = true;
  151. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  152. $("#jqGrid").jqGrid('setGridParam', {
  153. postData: {'merchName': vm.q.merchName,'merchSn': vm.q.merchSn},
  154. page: page
  155. }).trigger("reloadGrid");
  156. vm.handleReset('formValidate');
  157. },
  158. handleSubmit: function (name) {
  159. handleSubmitValidate(this, name, function () {
  160. vm.saveOrUpdate()
  161. });
  162. },
  163. handleReset: function (name) {
  164. handleResetForm(this, name);
  165. }
  166. }
  167. });