store.js 6.0 KB

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