mallpaymentorderdata.js 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../mallpaymentorderdata/list',
  4. datatype: "json",
  5. colModel: [
  6. {
  7. label: '操作', width: 180, sortable: false,align: 'center', frozen: true,
  8. formatter: function (value, col, row) {
  9. let htmlStr = '';
  10. if (row.payFlag == 'weixin') {
  11. htmlStr='<button class="btn btn-outline btn-info" onclick="vm.lookDetailwx(' + row.payOrderId + ')"><i class="fa fa-info-circle"></i>详情</button>&nbsp;';
  12. }else {
  13. htmlStr='<button class="btn btn-outline btn-info" onclick="vm.lookDetailali(' + row.payOrderId + ')"><i class="fa fa-info-circle"></i>详情</button>&nbsp;';
  14. }
  15. return htmlStr;
  16. }
  17. },
  18. {label: '编号', name: 'payOrderId', index: 'pay_order_id', key: true, hidden: true},
  19. {label: '商品名称', name: 'merchantName', index: 'merchant_name', width: 80},
  20. {label: '商户订单号', name: 'outTradeNo', index: 'out_trade_no', width: 80},
  21. {label: '微信订单/支付宝交易号', name: 'transactionOrder', index: 'transaction_order', width: 80},
  22. {label: '订单/收入金额', name: 'payMoney', index: 'pay_money', width: 80},
  23. {label: '退款/支出金额', name: 'refundMoney', index: 'refund_money', width: 80},
  24. {label: '支付方式', name: 'payFlag', index: 'pay_flag', width: 80,formatter:function(value){
  25. if(value == "weixin"){
  26. return "微信支付";
  27. }else if(value == "alipay"){
  28. return "支付宝支付";
  29. }else{
  30. return value;
  31. }
  32. }},
  33. {label: '交易/入账时间', name: 'timeStr', index: 'time_str', width: 80},
  34. {label: '添加人', name: 'createrSn', index: 'creater_sn', width: 80},
  35. {label: '上传时间', name: 'createTime', index: 'create_time', width: 80, formatter: function (value) {
  36. return transDate(value,'yyyy-MM-dd hh:mm:ss');
  37. }}
  38. ],
  39. viewrecords: true,
  40. height: 550,
  41. rowNum: 10,
  42. rowList: [10, 30, 50],
  43. rownumbers: true,
  44. rownumWidth: 25,
  45. autowidth: true,
  46. multiselect: true,
  47. pager: "#jqGridPager",
  48. jsonReader: {
  49. root: "page.list",
  50. page: "page.currPage",
  51. total: "page.totalPage",
  52. records: "page.totalCount"
  53. },
  54. prmNames: {
  55. page: "page",
  56. rows: "limit",
  57. order: "order"
  58. },
  59. gridComplete: function () {
  60. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"});
  61. }
  62. });
  63. // 启动冻结列
  64. $("#jqGrid").jqGrid("setFrozenColumns");
  65. });
  66. let vm = new Vue({
  67. el: '#rrapp',
  68. data: {
  69. showList: true,
  70. title: null,
  71. payFlag:'',
  72. showDiv:'',
  73. mallpaymentorderdata: {},
  74. machineCodeTypes:[],
  75. ruleValidate: {
  76. name: [
  77. {required: true, message: '名称不能为空', trigger: 'blur'}
  78. ]
  79. },
  80. q: {
  81. payFlag: '',
  82. startTime:'',
  83. endTime:'',
  84. outTradeNo:'',
  85. },
  86. flag : true,
  87. },
  88. methods: {
  89. query: function () {
  90. vm.reload();
  91. },
  92. add: function () {
  93. vm.showList = false;
  94. vm.title = "新增";
  95. vm.mallpaymentorderdata = {};
  96. },
  97. update: function (event) {
  98. let payOrderId = getSelectedRow();
  99. if (payOrderId == null) {
  100. return;
  101. }
  102. vm.showList = false;
  103. vm.title = "修改";
  104. vm.getInfo(payOrderId)
  105. },
  106. saveOrUpdate: function (event) {
  107. let url = vm.mallpaymentorderdata.payOrderId == null ? "../mallpaymentorderdata/save" : "../mallpaymentorderdata/update";
  108. $.ajax({
  109. type: "POST",
  110. url: url,
  111. contentType: "application/json",
  112. data: JSON.stringify(vm.mallpaymentorderdata),
  113. success: function (r) {
  114. if (r.code === 0) {
  115. alert('操作成功', function (index) {
  116. vm.reload();
  117. });
  118. } else {
  119. alert(r.msg);
  120. }
  121. }
  122. });
  123. },
  124. del: function (event) {
  125. let payOrderIds = getSelectedRows();
  126. if (payOrderIds == null){
  127. return;
  128. }
  129. confirm('确定要删除选中的记录?', function () {
  130. $.ajax({
  131. type: "POST",
  132. url: "../mallpaymentorderdata/delete",
  133. contentType: "application/json",
  134. data: JSON.stringify(payOrderIds),
  135. success: function (r) {
  136. if (r.code == 0) {
  137. alert('操作成功', function (index) {
  138. $("#jqGrid").trigger("reloadGrid");
  139. });
  140. } else {
  141. alert(r.msg);
  142. }
  143. }
  144. });
  145. });
  146. },
  147. getInfo: function(payOrderId){
  148. $.get("../mallpaymentorderdata/info/"+payOrderId, function (r) {
  149. vm.mallpaymentorderdata = r.mallPaymentOrderData;
  150. });
  151. },
  152. lookDetailwx: function (rowId) { //第三步:定义编辑操作
  153. vm.showDiv = 2;
  154. vm.title = "账单详情";
  155. vm.showList =false;
  156. vm.getInfo(rowId);
  157. },
  158. lookDetailali: function (rowId) { //第三步:定义编辑操作
  159. vm.showDiv = 1;
  160. vm.title = "账单详情";
  161. vm.showList =false;
  162. vm.getInfo(rowId);
  163. },
  164. reloadSearch: function() {
  165. vm.q = {
  166. name: '',
  167. payFlag: '',
  168. startTime:'',
  169. endTime:'',
  170. outTradeNo:'',
  171. }
  172. vm.reload();
  173. },
  174. reload: function (event) {
  175. vm.showList = true;
  176. vm.showDiv='';
  177. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  178. $("#jqGrid").jqGrid('setGridParam', {
  179. postData: {'name': vm.q.name,
  180. 'payFlag': vm.q.payFlag,
  181. 'startTime': vm.q.startTime,
  182. 'endTime': vm.q.endTime,
  183. 'outTradeNo':vm.q.outTradeNo},
  184. page: page
  185. }).trigger("reloadGrid");
  186. vm.handleReset('formValidate');
  187. },
  188. handleSubmit: function (name) {
  189. handleSubmitValidate(this, name, function () {
  190. vm.saveOrUpdate()
  191. });
  192. },
  193. handleReset: function (name) {
  194. handleResetForm(this, name);
  195. },
  196. uploadExcelSuccess: function () {
  197. alert('上传成功', function (index) {
  198. $("#jqGrid").trigger("reloadGrid");
  199. });
  200. setTimeout(exportMsg, 100);
  201. },
  202. uploadExcelError: function () {
  203. alert('上传出现异常');
  204. setTimeout(exportMsg, 100);
  205. },
  206. uploadExcelProgress:function(event, file, fileList){
  207. console.log("上传中")
  208. console.log(event)
  209. console.log(file)
  210. console.log(fileList)
  211. console.log("上传中")
  212. exportMsg = this.$Message.loading({
  213. content: 'Loading...',
  214. duration: 0
  215. });
  216. // setTimeout(msg, 3000);
  217. },
  218. uploadExcelSuccess: function (data) {
  219. if(data.code==0){
  220. alert('导入成功', function (index) {
  221. vm.reload();
  222. });
  223. }else{
  224. if(data.msg == '导入成功!'){
  225. alert(data.msg);
  226. vm.reload();
  227. }else {
  228. alert(data.msg);
  229. }
  230. }
  231. },
  232. uploadExcelError: function (data) {
  233. console.log(data);
  234. alert('上传出现异常,请重试!');
  235. setTimeout(exportMsg, 100);
  236. },
  237. uploadExcelFormatError: function (file) {
  238. this.$Notice.warning({
  239. title: '文件格式不正确',
  240. desc: '文件 ' + file.name + ' 格式不正确,请上传 xls 或 xlsx 格式的文件。'
  241. });
  242. setTimeout(exportMsg, 100);
  243. },
  244. upload: function (){
  245. $('#salesDataFormDiv').modal('show');
  246. },
  247. uploadFormSubmit: function () {
  248. if(!vm.q.payFlag){
  249. alert("请选择支付类型");
  250. return ;
  251. }
  252. let fileName = $('#file').val();
  253. if(!fileName){
  254. alert("选择上传文件");
  255. return ;
  256. }
  257. if(fileName.lastIndexOf(".xlsx") == -1 && fileName.lastIndexOf(".xls") == -1){
  258. fileName = fileName.substring(fileName.lastIndexOf("\\")+1);
  259. alert("文件 " + fileName + " 格式不正确,请上传 xls 或 xlsx 格式的文件。");
  260. return ;
  261. }
  262. let formData = new FormData();
  263. formData.append("file", document.getElementById("file").files[0]);
  264. formData.append("payFlag", vm.q.payFlag);
  265. // 显示loading提示
  266. dialogLoading(true);
  267. var stamp = document.getElementById("btn-smubit");
  268. stamp = true;
  269. $.ajax({
  270. async: false,
  271. type: "POST",
  272. url: "../mallpaymentorderdata/upload",
  273. data: formData,
  274. mimeType: "multipart/form-data",
  275. contentType: false,
  276. processData: false,
  277. success: function (data) {
  278. dialogLoading(false);
  279. if(data.code==0){
  280. $('#cancel').click();
  281. alert(data.msg, function (index) {
  282. $("#jqGrid").trigger("reloadGrid");
  283. });
  284. stamp = false;
  285. }else{
  286. alert(data.msg);
  287. stamp = false;
  288. }
  289. }
  290. });
  291. },
  292. exportDataFormat : function () {
  293. if (vm.flag){
  294. vm.flag = false;
  295. var params = {};
  296. params.payFlag=vm.q.payFlag;
  297. params.startTime=vm.q.startTime;
  298. params.endTime=vm.q.endTime;
  299. if(!params.payFlag){
  300. alert("请选择支付类型");
  301. return ;
  302. }
  303. if(!params.startTime || !params.endTime){
  304. alert("请选择创建订单时间");
  305. return ;
  306. }
  307. let startDateTime = Date.parse(new Date(params.startTime));
  308. let endDateTime = Date.parse(new Date(params.endTime));
  309. if(startDateTime > endDateTime){
  310. alert("创建订单开始时间不能大于创建订单结束时间");
  311. return ;
  312. }
  313. let day = Math.abs(parseInt((endDateTime - startDateTime)/1000/3600/24));
  314. if(day > 30 || Object.is(day,NaN)){
  315. alert("导出时间不能相差大于30天");
  316. return ;
  317. }
  318. const msg = this.$Message.loading({
  319. content: 'Loading...',
  320. duration: 0
  321. });
  322. setTimeout(msg, 1000);
  323. exportFile('#rrapp', '../mallpaymentorderdata/exportDataFormat', params);
  324. $("#jqGrid").trigger("reloadGrid");
  325. vm.flag = true
  326. }else {
  327. alert("点击的太快了,请慢一点!");
  328. vm.flag = true
  329. return ;
  330. }
  331. },
  332. },
  333. mounted() {
  334. $.get("../sys/macro/queryMacrosByValue?value=payFlag", function (r) {
  335. vm.machineCodeTypes = r.list;
  336. });
  337. },
  338. });