queryImport.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346
  1. define(function (require) {
  2. return function () {
  3. var $grid1, $grid2, $form;
  4. // 输入搜索文本后点击回车按钮查询列表
  5. function enterQueryGrid1(e) {
  6. if (e.keyCode === 13) {
  7. var tmp = $(this).val();
  8. $form.formSet({queryProperties: tmp});
  9. queryGrid1();
  10. }
  11. }
  12. // 查询列表
  13. function queryGrid1() {
  14. var queryUrl = '/sys/sysImport/query';// 自行替换此参数
  15. $grid1.jqGrid("clearGridData");
  16. var queryForm = $form.formGet();
  17. $grid1.reload({
  18. mtype: 'POST',
  19. url: api(queryUrl),
  20. queryParams: queryForm
  21. }, true);
  22. }
  23. function queryGrid2(rowid) {
  24. var row = $grid1.rowData(rowid);
  25. if (!row) {
  26. $.yvan.msg('请先选择一行数据');
  27. return;
  28. }
  29. var queryUrl = '/sys/sysImportItem/query';// 自行替换此参数
  30. var queryData = {importId: row.importId/*, ownerId: $form.formGet().ownerId*/};// 多个参数自行添加
  31. $grid2.reload({
  32. mtype: 'POST',
  33. url: api(queryUrl),
  34. queryParams: queryData
  35. });
  36. }
  37. // 更新启用停用状态
  38. function updateStatus(aurl, acurstatus, atostatus, row) {
  39. var aname = $.fn.fmatter.tbNameSrc(row.tbName);
  40. var obj = {};
  41. obj.name = aname;// 自行替换此参数
  42. obj.status = acurstatus;
  43. obj.tostatus = atostatus;
  44. obj.isTree = 0;// 树为1,非树为0
  45. obj = setStatusMsg(obj); //返回rtnStatus
  46. var msg = obj.msg;
  47. // var status = obj.rtnStatus;
  48. /*|-----------------------自行替换start-----------------------*/
  49. var apiUrl = aurl;// 自行替换此参数
  50. var apiData = {
  51. importId: row.importId,// 自行替换此参数
  52. status: atostatus
  53. };
  54. /*-----------------------自行替换end-----------------------|*/
  55. $.yvan.confirm(msg, {
  56. yes: function (index) {
  57. $.yvan.ajax({
  58. method: 'post',
  59. url: api(apiUrl),
  60. data: apiData,
  61. success: function (data) {
  62. $.yvan.msg(data.msg);
  63. $grid1.reload();
  64. }
  65. });
  66. }
  67. });
  68. }
  69. // 删除//status整体状态:-2删除、-1停用、0草稿、1发布
  70. function shanChu() {
  71. var row = $grid1.rowData();
  72. if (!row) {
  73. $.yvan.msg('请先选择一行数据');
  74. return;
  75. }
  76. if (0 != row.status) {
  77. $.yvan.msg('只有草稿状态的数据才能删除');
  78. return;
  79. }
  80. var acurstatus = row.status;
  81. var atostatus = -2;
  82. var aurl = '/sys/sysImport/updateShanChu';
  83. updateStatus(aurl, acurstatus, atostatus, row);
  84. }
  85. // 发布
  86. function faBu() {
  87. var row = $grid1.rowData();
  88. if (!row) {
  89. $.yvan.msg('请先选择一行数据');
  90. return;
  91. }
  92. if (0 == row.status) {
  93. } else {
  94. $.yvan.msg('只有草稿状态的数据才能发布');
  95. return;
  96. }
  97. if (parseInt(row.dataNum) == 0) {
  98. $.yvan.msg('不能发布未导入Excel详情数据的记录');
  99. return;
  100. }
  101. var acurstatus = row.status;
  102. var atostatus = 1;
  103. var aurl = '/excel/pms/pmsPgh/faBu';
  104. updateStatus(aurl, acurstatus, atostatus, row);
  105. }
  106. // 导出
  107. function exportExcel() {
  108. var row = $grid1.rowData();
  109. if (!row) {
  110. $.yvan.msg('请先选择一行数据');
  111. return;
  112. }
  113. if (0 == row.status) {
  114. } else {
  115. $.yvan.msg('只有草稿状态的数据才能导出');
  116. return;
  117. }
  118. if (parseInt(row.dataNum) == 0) {
  119. $.yvan.msg('不能导出未导入Excel详情数据的记录');
  120. return;
  121. }
  122. var apiUrl = '/excel/pms/pmsPgh/exportData';// 自行替换此参数
  123. var apiData = {
  124. importId: row.importId,// 自行替换此参数
  125. // status: atostatus
  126. };
  127. $.yvan.download({
  128. method: 'get',
  129. url: api('/excel/pms/pmsPgh/exportData?importId=' + row.importId),
  130. // url: api('/excel/pms/pmsPgh/exportData'),
  131. data: apiData,
  132. fileName: '派工号导出-' + $.yvan.getMoment().format('YYYY-MM-DD HH:mm:ss') + '.xlsx'
  133. });
  134. }
  135. // 搜索按钮
  136. var queryToolbarTitle = 'Excel导入管理';// 自行替换此参数
  137. var queryToolbar = {
  138. xtype: 'toolbar', title: queryToolbarTitle, items: [
  139. {
  140. text: '查询', iconCls: 'fa fa-search', onClick: function () {
  141. queryGrid1();
  142. }
  143. }, {
  144. text: '重置', iconCls: 'fa fa-refresh', onClick: function () {
  145. $form.formClear();
  146. queryGrid1();
  147. }
  148. }, {
  149. text: '关闭', iconCls: 'fa fa-times-circle', onClick: function () {
  150. App.closeMe(this);
  151. }
  152. }
  153. ]
  154. };
  155. // 搜索条件
  156. var queryFormPrompt = '表名';// 自行替换此参数
  157. var queryForm = {
  158. onRender: function () {
  159. $form = $(this);
  160. },
  161. xtype: 'form',
  162. items: [[
  163. {
  164. xtype: 'textbox',
  165. label: '检索条件',
  166. name: 'queryProperties',
  167. prompt: queryFormPrompt,
  168. labelWidth: 'auto',
  169. events: {keydown: enterQueryGrid1},
  170. },
  171. {
  172. xtype: 'yvselect', label: '整体状态', name: 'status', labelWidth: 'auto', width: 180,
  173. data: $.yvan.sysDict('allStatus').combowithAll(), value: '',
  174. onChange: function () {
  175. queryGrid1();
  176. }
  177. },
  178. ]]
  179. };
  180. // 列表1增删改查按钮
  181. var gridToolbarTitle1 = 'Excel导入列表';// 自行替换此参数
  182. var gridToolbar1 = {
  183. xtype: 'toolbar',
  184. title: gridToolbarTitle1,
  185. items: [
  186. {
  187. text: '临时数据删除', iconCls: 'fa fa-trash-o fa-lg', onClick: function () {
  188. shanChu();
  189. }
  190. }
  191. ]
  192. };
  193. // 列表2增删改查按钮
  194. var gridToolbarTitle2 = 'Excel详情列表';// 自行替换此参数
  195. var gridToolbar2 = {
  196. xtype: 'toolbar',
  197. title: gridToolbarTitle2
  198. };
  199. return {
  200. north: {
  201. height: 90,
  202. split: true,
  203. border: false,
  204. items: [
  205. queryToolbar,
  206. queryForm
  207. ]
  208. },
  209. west: {
  210. width: "40%",
  211. split: true,
  212. items: {
  213. onRender: function () {
  214. $grid1 = $(this);
  215. queryGrid1();
  216. },
  217. xtype: 'grid',
  218. toolbar: gridToolbar1,
  219. idField: 'importId',
  220. columns: [[
  221. {title: 'id', field: 'importId', hidden: true},
  222. {title: '表名', field: 'tbName'},
  223. {title: '用户ID', field: 'userId', hidden: true},
  224. {title: '业务ID', field: 'busiId', hidden: true},
  225. {title: '业务类型', field: 'busiType', hidden: true},
  226. {title: '系统ID', field: 'sysId', hidden: true},
  227. {title: '数据量', field: 'dataNum'},
  228. {
  229. title: '发布时间', field: 'pubTime', formatter: function (value, row, index) {
  230. if (row.rowData.status == 1) {
  231. return $.fn.fmatter.ts(row.rowData.pubTime);
  232. } else {
  233. return "";
  234. }
  235. }, hidden: true
  236. },
  237. {title: '整体状态', field: 'status', hidden: true},
  238. {title: '整体状态', field: 'allStatusView', formatter: $.fn.fmatter.allStatusView},
  239. {title: '新增人', field: 'userCreate', hidden: true},
  240. {title: '新增时间', field: 'timeCreate', formatter: 'ts', hidden: true},
  241. {title: '更新人', field: 'userUpdate', hidden: true},
  242. {title: '更新时间', field: 'timeUpdate', formatter: 'ts', hidden: true},
  243. {title: '备注', field: 'desp'}
  244. ]],
  245. onSelectRow: function (rowid) {
  246. queryGrid2(rowid);
  247. }
  248. }
  249. },
  250. center: {
  251. border: false,
  252. items: {
  253. onRender: function () {
  254. $grid2 = $(this);
  255. },
  256. xtype: 'grid',
  257. toolbar: gridToolbar2,
  258. idField: 'id',
  259. autoSizeColumns: false,
  260. columns: [[
  261. {title: '派工ID', field: 'id', hidden: true},
  262. {title: '派工ID', field: 'importId', hidden: true},
  263. {title: '文本1', field: 'txt1'},
  264. {title: '文本2', field: 'txt2'},
  265. {title: '文本3', field: 'txt3'},
  266. {title: '文本4', field: 'txt4'},
  267. {title: '文本5', field: 'txt5'},
  268. {title: '文本6', field: 'txt6'},
  269. {title: '文本7', field: 'txt7'},
  270. {title: '文本8', field: 'txt8'},
  271. {title: '文本9', field: 'txt9'},
  272. {title: '数字1', field: 'num1'},
  273. {title: '数字2', field: 'num2'},
  274. {title: '数字3', field: 'num3'},
  275. {title: '数字4', field: 'num4'},
  276. {title: '数字5', field: 'num5'},
  277. {title: '数字6', field: 'num6'},
  278. {title: '数字7', field: 'num7'},
  279. {title: '数字8', field: 'num8'},
  280. {title: '数字9', field: 'num9'},
  281. {
  282. title: '日期1', field: 'time1', formatter: function (value, row, index) {
  283. if ('-2209017943000' == value) {
  284. return "";
  285. } else {
  286. return $.fn.fmatter.tsymd(value);
  287. }
  288. }
  289. },
  290. {
  291. title: '日期2', field: 'time2', formatter: function (value, row, index) {
  292. if ('-2209017943000' == value) {
  293. return "";
  294. } else {
  295. return $.fn.fmatter.tsymd(value);
  296. }
  297. }
  298. }, {
  299. title: '日期3', field: 'time3', formatter: function (value, row, index) {
  300. if ('-2209017943000' == value) {
  301. return "";
  302. } else {
  303. return $.fn.fmatter.tsymd(value);
  304. }
  305. }
  306. }, {
  307. title: '日期4', field: 'time4', formatter: function (value, row, index) {
  308. if ('-2209017943000' == value) {
  309. return "";
  310. } else {
  311. return $.fn.fmatter.tsymd(value);
  312. }
  313. }
  314. }, {
  315. title: '日期5', field: 'time5', formatter: function (value, row, index) {
  316. if ('-2209017943000' == value) {
  317. return "";
  318. } else {
  319. return $.fn.fmatter.tsymd(value);
  320. }
  321. }
  322. },
  323. {title: '状态', field: 'status', hidden: true},
  324. {title: '状态', field: 'excelStatusView', formatter: $.fn.fmatter.excelStatusView},
  325. {title: '错误描述', field: 'desp', width: 180},
  326. ]]
  327. }
  328. }
  329. };
  330. };
  331. });