feedback.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../feedback/list',
  4. datatype: "json",
  5. colModel: [
  6. {label: 'msgId', name: 'msgId', index: 'msg_id', key: true, hidden: true},
  7. {label: '商户编号', name: 'merchSn', index: 'merchSn', align: 'center',width: 240},
  8. {label: '门店名称', name: 'storeName', index: 'storeName',width: 180},
  9. {label: '会员名称', name: 'userName', index: 'user_name', width: 180},
  10. {label: '手机', name: 'mobile', index: 'mobile',align: 'center', width: 140},
  11. {
  12. label: '反馈类型', name: 'feedType', index: 'feed_Type', width: 120, formatter: function (value) {
  13. if (value == 1) {
  14. return '商品相关';
  15. } else if (value == 2) {
  16. return '物流状况';
  17. } else if (value == 3) {
  18. return '客户服务';
  19. } else if (value == 4) {
  20. return '优惠活动';
  21. } else if (value == 5) {
  22. return '功能异常';
  23. } else if (value == 6) {
  24. return '产品建议';
  25. } else if (value == 7) {
  26. return '其他';
  27. }
  28. return '';
  29. }
  30. },
  31. {label: '详细内容', name: 'content', index: 'content', width: 220},
  32. {label: '反馈时间', name: 'addTime', index: 'add_time',align: 'center', width: 160,formatter:function (value) {
  33. return transDate(value);
  34. }}],
  35. viewrecords: true,
  36. height: 550,
  37. rowNum: 10,
  38. rowList: [10, 30, 50],
  39. rownumbers: true,
  40. rownumWidth: 25,
  41. autowidth: true,
  42. shrinkToFit: false,
  43. autoScroll: true, //开启水平滚动条
  44. width: 1500,
  45. multiselect: true,
  46. pager: "#jqGridPager",
  47. jsonReader: {
  48. root: "page.list",
  49. page: "page.currPage",
  50. total: "page.totalPage",
  51. records: "page.totalCount"
  52. },
  53. prmNames: {
  54. page: "page",
  55. rows: "limit",
  56. order: "order"
  57. },
  58. gridComplete: function () {
  59. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "scroll"});
  60. }
  61. });
  62. });
  63. let vm = new Vue({
  64. el: '#rrapp',
  65. data: {
  66. showList: true,
  67. title: null,
  68. feedback: {},
  69. ruleValidate: {
  70. name: [
  71. {required: true, message: '名称不能为空', trigger: 'blur'}
  72. ]
  73. },
  74. q: {
  75. userName: ''
  76. }
  77. },
  78. methods: {
  79. query: function () {
  80. vm.reload();
  81. },
  82. add: function () {
  83. vm.showList = false;
  84. vm.title = "新增";
  85. vm.feedback = {};
  86. },
  87. update: function (event) {
  88. let msgId = getSelectedRow();
  89. if (msgId == null) {
  90. return;
  91. }
  92. vm.showList = false;
  93. vm.title = "修改";
  94. vm.getInfo(msgId)
  95. },
  96. saveOrUpdate: function (event) {
  97. let url = vm.feedback.msgId == null ? "../feedback/save" : "../feedback/update";
  98. $.ajax({
  99. type: "POST",
  100. url: url,
  101. contentType: "application/json",
  102. data: JSON.stringify(vm.feedback),
  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 msgIds = getSelectedRows();
  116. if (msgIds == null) {
  117. return;
  118. }
  119. confirm('确定要删除选中的记录?', function () {
  120. $.ajax({
  121. type: "POST",
  122. url: "../feedback/delete",
  123. contentType: "application/json",
  124. data: JSON.stringify(msgIds),
  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 (msgId) {
  138. $.get("../feedback/info/" + msgId, function (r) {
  139. vm.feedback = r.feedback;
  140. });
  141. },
  142. reload: function (event) {
  143. vm.showList = true;
  144. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  145. $("#jqGrid").jqGrid('setGridParam', {
  146. postData: {'userName': vm.q.userName},
  147. page: page
  148. }).trigger("reloadGrid");
  149. vm.handleReset('formValidate');
  150. },
  151. handleSubmit: function (name) {
  152. handleSubmitValidate(this, name, function () {
  153. vm.saveOrUpdate()
  154. });
  155. },
  156. handleReset: function (name) {
  157. handleResetForm(this, name);
  158. }
  159. }
  160. });