mallpaymentorderdata.js 9.6 KB

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