salesdataupload.js 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  1. $(function () {
  2. $("#jqGrid").jqGrid({
  3. url: '../salesdataupload/list',
  4. datatype: "json",
  5. colModel: [
  6. {label: 'fileId', name: 'fileId', index: 'file_id', key: true, hidden: true, align: 'center'},
  7. {label: '文件名称', name: 'fileName', index: 'file_name', width: 80, align: 'center'},
  8. {label: '文件类型', name: 'fileType', index: 'file_type', width: 80, align: 'center'},
  9. {label: '上传地址', name: 'uploadAddress', index: 'upload_address', width: 80 ,align: 'center'},
  10. {label: '添加人', name: 'username', index: 'username', width: 80, align: 'center'},
  11. {label: '账单时间', name: 'billTime', index: 'bill_time', width: 80, align: 'center',
  12. formatter: function (value) {
  13. return transDate(value, 'yyyy-MM-dd');
  14. }
  15. },
  16. {label: '核对时间', name: 'checkTime', index: 'check_time', width: 80, align: 'center',
  17. formatter: function (value) {
  18. return transDate(value, 'yyyy-MM-dd');
  19. }
  20. },
  21. {label: '上传时间', name: 'createrTime', index: 'creater_time', width: 80, align: 'center',
  22. formatter: function (value) {
  23. return transDate(value, 'yyyy-MM-dd hh:mm:ss');
  24. }
  25. }],
  26. viewrecords: true,
  27. height: 550,
  28. rowNum: 10,
  29. rowList: [10, 30, 50],
  30. rownumbers: true,
  31. rownumWidth: 25,
  32. autowidth: true,
  33. multiselect: true,
  34. pager: "#jqGridPager",
  35. jsonReader: {
  36. root: "page.list",
  37. page: "page.currPage",
  38. total: "page.totalPage",
  39. records: "page.totalCount"
  40. },
  41. prmNames: {
  42. page: "page",
  43. rows: "limit",
  44. order: "order"
  45. },
  46. gridComplete: function () {
  47. $("#jqGrid").closest(".ui-jqgrid-bdiv").css({"overflow-x": "hidden"});
  48. }
  49. });
  50. });
  51. let vm = new Vue({
  52. el: '#rrapp',
  53. data: {
  54. showList: true,
  55. title: null,
  56. salesDataUpload: {},
  57. ruleValidate: {
  58. name: [
  59. {required: true, message: '名称不能为空', trigger: 'blur'}
  60. ]
  61. },
  62. q: {
  63. name: '',
  64. startTime: '',
  65. endTime: ''
  66. },
  67. billTime: '',
  68. checkTime: '',
  69. merchSN: '',
  70. thirdMerchSN: '',
  71. shopSN: '',
  72. merchList: [],
  73. thirdMerchantBizList: [],
  74. storeList: []
  75. },
  76. methods: {
  77. query: function () {
  78. vm.reload();
  79. },
  80. add: function () {
  81. vm.showList = false;
  82. vm.title = "新增";
  83. vm.salesDataUpload = {};
  84. },
  85. update: function (event) {
  86. let fileId = getSelectedRow();
  87. if (fileId == null) {
  88. return;
  89. }
  90. vm.showList = false;
  91. vm.title = "修改";
  92. vm.getInfo(fileId)
  93. },
  94. saveOrUpdate: function (event) {
  95. let url = vm.salesDataUpload.fileId == null ? "../salesdataupload/save" : "../salesdataupload/update";
  96. $.ajax({
  97. type: "POST",
  98. url: url,
  99. contentType: "application/json",
  100. data: JSON.stringify(vm.salesDataUpload),
  101. success: function (r) {
  102. if (r.code === 0) {
  103. alert('操作成功', function (index) {
  104. vm.reload();
  105. });
  106. } else {
  107. alert(r.msg);
  108. }
  109. }
  110. });
  111. },
  112. del: function (event) {
  113. let fileIds = getSelectedRows();
  114. if (fileIds == null){
  115. return;
  116. }
  117. confirm('确定要删除选中的记录?', function () {
  118. $.ajax({
  119. type: "POST",
  120. url: "../salesdataupload/delete",
  121. contentType: "application/json",
  122. data: JSON.stringify(fileIds),
  123. success: function (r) {
  124. if (r.code == 0) {
  125. alert('操作成功', function (index) {
  126. $("#jqGrid").trigger("reloadGrid");
  127. });
  128. } else {
  129. alert(r.msg);
  130. }
  131. }
  132. });
  133. });
  134. },
  135. getInfo: function(fileId){
  136. $.get("../salesdataupload/info/"+fileId, function (r) {
  137. vm.salesDataUpload = r.salesDataUpload;
  138. });
  139. },
  140. reloadSearch: function() {
  141. vm.q = {
  142. name: '',
  143. startTime: '',
  144. endTime: ''
  145. }
  146. vm.reload();
  147. },
  148. reload: function (event) {
  149. vm.showList = true;
  150. let page = $("#jqGrid").jqGrid('getGridParam', 'page');
  151. $("#jqGrid").jqGrid('setGridParam', {
  152. postData: {
  153. 'name': vm.q.name,
  154. 'startTime': vm.q.startTime==''?'':new Date(vm.q.startTime).dateFormat('yyyy-MM-dd hh:mm:ss'),
  155. 'endTime': vm.q.endTime==''?'':new Date(vm.q.endTime).dateFormat('yyyy-MM-dd')+' 23:59:59'
  156. },
  157. page: page
  158. }).trigger("reloadGrid");
  159. vm.handleReset('formValidate');
  160. },
  161. handleSubmit: function (name) {
  162. handleSubmitValidate(this, name, function () {
  163. vm.saveOrUpdate()
  164. });
  165. },
  166. handleReset: function (name) {
  167. handleResetForm(this, name);
  168. },
  169. download: function (event){
  170. var grid = $("#jqGrid");
  171. var rowKey = grid.getGridParam("selrow");
  172. if (!rowKey) {
  173. iview.Message.error("请选择一条记录");
  174. return;
  175. }
  176. var selectedIDs = grid.getGridParam("selarrrow");
  177. if (selectedIDs.length > 1) {
  178. // iview.Message.error("只能选择一条记录");
  179. // return;
  180. }
  181. let filePaths = new Array();
  182. let fileNames = new Array();
  183. let fileIds = new Array();
  184. for(var i = 0 ; i < selectedIDs.length ; i++){
  185. let fileData = $("#jqGrid").jqGrid('getRowData', selectedIDs[i])
  186. filePaths.push(fileData.uploadAddress);
  187. fileNames.push(fileData.fileName);
  188. fileIds.push(fileData.fileId);
  189. }
  190. console.log(filePaths);
  191. console.log(fileNames);
  192. console.log(fileIds);
  193. // let fileData = getSelectedRowData();
  194. // if (fileData.length != 1 && fileData.length != undefined){
  195. // return;
  196. // }
  197. window.location.href = "../salesdataupload/download?filePath="+filePaths+"&fileName="+fileNames+"&fileId="+fileIds;
  198. /*let fileIds = getSelectedRows();
  199. if(null != fileIds && fileIds.length < 3){
  200. for(let i=0; i<fileIds.length; i++){
  201. let fileData = $("#jqGrid").jqGrid('getRowData', fileIds[i]);
  202. window.location.href = "../salesdataupload/download?filePath="+fileData.uploadAddress+"&fileName="+fileData.fileName+"&fileId="+fileData.fileId;
  203. }
  204. }*/
  205. },
  206. upload: function (){
  207. $('#salesDataFormDiv').modal('show');
  208. vm.getMerchList();
  209. },
  210. uploadFormSubmit: function () {
  211. debugger;
  212. if(!vm.billTime){
  213. alert("请选择账单时间");
  214. return ;
  215. }
  216. if(!vm.checkTime){
  217. alert("请选择核对时间");
  218. }
  219. let fileName = $('#file').val();
  220. if(!fileName){
  221. alert("选择上传文件");
  222. return ;
  223. }
  224. if(fileName.lastIndexOf(".xlsx") == -1 || fileName.lastIndexOf(".xls") == -1){
  225. fileName = fileName.substring(fileName.lastIndexOf("\\")+1);
  226. alert("文件 " + fileName + " 格式不正确,请上传 xls 或 xlsx 格式的文件。");
  227. return ;
  228. }
  229. let formData = new FormData();
  230. formData.append("file", document.getElementById("file").files[0]);
  231. formData.append("billTime", new Date(vm.billTime).dateFormat('yyyy-MM-dd hh:mm:ss'));
  232. formData.append("checkTime", new Date(vm.checkTime).dateFormat('yyyy-MM-dd hh:mm:ss'));
  233. formData.append("merchSN", vm.merchSN);
  234. formData.append("thirdMerchSN", vm.thirdMerchSN);
  235. formData.append("shopSN", vm.shopSN);
  236. $.ajax({
  237. async: false,
  238. type: "POST",
  239. url: "../salesdataupload/upload",
  240. data: formData,
  241. mimeType: "multipart/form-data",
  242. contentType: false,
  243. processData: false,
  244. success: function (data) {
  245. if(data.code==0){
  246. $('#cancel').click();
  247. alert('导入成功', function (index) {
  248. $("#jqGrid").trigger("reloadGrid");
  249. });
  250. }else{
  251. alert(data.msg);
  252. }
  253. }
  254. });
  255. },
  256. getMerchList: function() {
  257. $.get("../merch/queryAll", function (r) {
  258. vm.merchList = r.list;
  259. });
  260. },
  261. changeMerch: function(opt) {
  262. var value = opt.value;
  263. vm.getThirdMerchantBizList(value);
  264. },
  265. getThirdMerchantBizList: function(merchSn) {
  266. $.get("../thirdmerchantbiz/queryAll?merchSn=" + merchSn, function (r) {
  267. vm.thirdMerchantBizList = r.list;
  268. });
  269. },
  270. changeThirdMerchantBiz: function (opt) {
  271. var value = opt.value;
  272. $.get("../store/getStoresByThirdMerch?thirdPartyMerchCode=" + value, function (r) {
  273. vm.storeList = r.list;
  274. });
  275. }
  276. }
  277. });