Index.js 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343
  1. var refreshGirdData;
  2. var logbegin = '';
  3. var logend = '';
  4. var StartTimeBegin = '';
  5. var StartTimeend = '';
  6. var EndTimeBegin = '';
  7. var EndTimeend = '';
  8. var bootstrap = function ($, learun) {
  9. "use strict";
  10. var psuid = "";
  11. var page = {
  12. init: function () {
  13. page.initGird();
  14. page.bind();
  15. },
  16. bind: function () {
  17. $('#multiple_condition_query').lrMultipleQuery(function (queryJson) {
  18. // 调用后台查询
  19. // queryJson 查询条件
  20. var date = $('#lr_search_date_datesearch').html();
  21. if (date == '') {
  22. logbegin = '';
  23. logend = '';
  24. }
  25. var starttime = $('#lr_search_date_StartTime').html();
  26. if (starttime == '') {
  27. StartTimeBegin = '';
  28. StartTimeend = '';
  29. }
  30. var endtime = $('#lr_search_date_EndTime').html();
  31. if (endtime == '') {
  32. EndTimeBegin = '';
  33. EndTimeend = '';
  34. }
  35. //queryJson["AddTimeFrom"] = logbegin;
  36. //queryJson["AddTimeTo"] = logend;
  37. queryJson["ID"] = $("#ID").val();
  38. queryJson["BarCode"] = $("#BarCode").val();
  39. queryJson["MaterialCode"] = $("#MaterialCode").val();
  40. queryJson["AddrFrom"] = $("#AddrFrom").val();
  41. queryJson["AddrTo"] = $("#AddrTo").val();
  42. queryJson["AddrNext"] = $("#AddrNext").val();
  43. queryJson["WmsTask"] = $("#WmsTask").val();
  44. queryJson["AgvTaskID"] = $("#AgvTaskID").val();
  45. //queryJson["StartTimeBegin"] = StartTimeBegin;
  46. //queryJson["StartTimeEnd"] = StartTimeend;
  47. //queryJson["EndTimeBegin"] = EndTimeBegin;
  48. //queryJson["EndTimeEnd"] = EndTimeend;
  49. queryJson["AddTimeFrom"] = $("#AddTimeFrom").val();
  50. queryJson["AddTimeTo"] = $("#AddTimeTo").val();
  51. queryJson["StartTimeBegin"] = $("#StartTimeBegin").val();
  52. queryJson["StartTimeEnd"] = $("#StartTimeEnd").val();
  53. queryJson["EndTimeBegin"] = $("#EndTimeBegin").val();
  54. queryJson["EndTimeEnd"] = $("#EndTimeEnd").val();
  55. queryJson["Type"] = $("#Type").lrselectGet();
  56. queryJson["Status"] = $("#Status").lrselectGet();
  57. queryJson["OutType"] = $("#OutType").lrselectGet();
  58. queryJson["BusType"] = $("#BusType").lrselectGet();
  59. queryJson["Tunnel"] = $("#Tunnel").val();
  60. queryJson["Floor"] = $("#Floor").val();
  61. queryJson["Device"] = $("#Device").val();
  62. queryJson["AGVID"] = $("#AGVID").val();
  63. queryJson["ProdLine"] = $("#ProdLine").lrselectGet();
  64. page.search({ queryJson: JSON.stringify(queryJson) });
  65. }, 250);
  66. // 查询
  67. $('#btn_Search').on('click', function () {
  68. var keyword = $('#txt_Keyword').val();
  69. page.search({ queryJson: JSON.stringify({ keyword: $('#txt_Keyword').val() }) });
  70. });
  71. // 刷新
  72. $('#lr_refresh').on('click', function () {
  73. location.reload();
  74. });
  75. // 导出数据
  76. $('#lr_exportnow').on('click', function () {
  77. var subsuid = "";
  78. if (psuid == "") {
  79. psuid = $('#gridtable').attr('id');
  80. }
  81. else if (psuid != "") {
  82. var t = $('#' + psuid).attr('id');
  83. if (t == undefined)
  84. psuid = $('#gridtable').attr('id');
  85. }
  86. var mainGridId = $('#gridtable').attr('id');
  87. learun.layerForm({
  88. id: "ExcelExportForm",
  89. title: '导出Excel数据',
  90. url: top.$.rootUrl + '/Utility/ExcelExportForm?mainGridId=' + mainGridId + '&gridId=' + psuid + '&filename=' + encodeURI(encodeURI("历史任务")),
  91. width: 500,
  92. height: 380,
  93. callBack: function (id) {
  94. return top[id].acceptClick();
  95. },
  96. btn: ['导出Excel', '关闭']
  97. });
  98. });
  99. //导出
  100. $('#lr_exportall').on('click', function () {
  101. //var where = $("#queryWhere").val();
  102. var query = $('#multiple_condition_query').lrGetFormData();
  103. query["ID"] = $("#ID").val();
  104. query["BarCode"] = $("#BarCode").val();
  105. query["MaterialCode"] = $("#MaterialCode").val();
  106. query["AddrFrom"] = $("#AddrFrom").val();
  107. query["AddrTo"] = $("#AddrTo").val();
  108. query["AddrNext"] = $("#AddrNext").val();
  109. query["WmsTask"] = $("#WmsTask").val();
  110. query["AgvTaskID"] = $("#AgvTaskID").val();
  111. query["AddTimeFrom"] = $("#AddTimeFrom").val();
  112. query["AddTimeTo"] = $("#AddTimeTo").val();
  113. query["StartTimeBegin"] = $("#StartTimeBegin").val();
  114. query["StartTimeEnd"] = $("#StartTimeEnd").val();
  115. query["EndTimeBegin"] = $("#EndTimeBegin").val();
  116. query["EndTimeEnd"] = $("#EndTimeEnd").val();
  117. query["Type"] = $("#Type").lrselectGet();
  118. query["Status"] = $("#Status").lrselectGet();
  119. query["OutType"] = $("#OutType").lrselectGet();
  120. query["BusType"] = $("#BusType").lrselectGet();
  121. query["Tunnel"] = $("#Tunnel").val();
  122. query["Floor"] = $("#Floor").val();
  123. query["Device"] = $("#Device").val();
  124. query["AGVID"] = $("#AGVID").val();
  125. query["ProdLine"] = $("#ProdLine").lrselectGet();
  126. query["keyword"] = $('#txt_Keyword').val();
  127. var queryJson = JSON.stringify(query);
  128. learun.layerForm({
  129. id: "ExcelExportForm",
  130. title: '导出Excel数据',
  131. // url: top.$.rootUrl + '/Utility/ExcelExportForm?mainGridId=' + mainGridId + '&gridId=' + psuid + '&filename=' + encodeURI(encodeURI("库存")),
  132. url: top.$.rootUrl + '/Utility/ExcelExportColumn?gridId=' + $('#gridtable').attr('id') + '&subgridId=',
  133. width: 500,
  134. height: 380,
  135. callBack: function (id) {
  136. return top[id].acceptClick(function (data) {
  137. learun.download({
  138. method: "POST",
  139. url: '/HJManager/Tasks/ExportExcel',
  140. param: {
  141. fileName: "导出历史任务",
  142. queryJson: queryJson,
  143. exportField: JSON.stringify(data)
  144. }
  145. });
  146. });
  147. },
  148. btn: ['导出Excel', '关闭']
  149. });
  150. });
  151. $('.datetime').each(function () {
  152. $(this).lrdatetime({
  153. dfdata: [
  154. { name: '今天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00') }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
  155. { name: '近7天', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'd', -6) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
  156. { name: '近1个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -1) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
  157. { name: '近3个月', begin: function () { return learun.getDate('yyyy-MM-dd 00:00:00', 'm', -3) }, end: function () { return learun.getDate('yyyy-MM-dd 23:59:59') } },
  158. ],
  159. // 月
  160. mShow: false,
  161. premShow: false,
  162. // 季度
  163. jShow: false,
  164. prejShow: false,
  165. // 年
  166. ysShow: false,
  167. yxShow: false,
  168. preyShow: false,
  169. yShow: false,
  170. // 默认
  171. dfvalue: 'all',
  172. selectfn: function (begin, end) {
  173. let id = $(this).attr('id');
  174. if (id == 'datesearch') {
  175. logbegin = begin;
  176. logend = end;
  177. }
  178. else if (id == 'StartTime') {
  179. StartTimeBegin = begin;
  180. StartTimeend = end;
  181. }
  182. else if (id == 'EndTime') {
  183. EndTimeBegin = begin;
  184. EndTimeend = end;
  185. }
  186. }
  187. });
  188. });
  189. $('#Type').lrselect({
  190. url: top.$.rootUrl + '/HJManager/Enums/GetTaskTypeList',
  191. maxHeight: 180,
  192. allowSearch: false
  193. });
  194. $('#Status').lrselect({
  195. url: top.$.rootUrl + '/HJManager/Enums/GetTaskStatusList',
  196. maxHeight: 180,
  197. allowSearch: false
  198. });
  199. $('#OutType').lrselect({
  200. url: top.$.rootUrl + '/HJManager/Enums/GetAutoManualOutTypeList',
  201. maxHeight: 180,
  202. allowSearch: false
  203. });
  204. $('#BusType').lrselect({
  205. url: top.$.rootUrl + '/HJManager/Enums/GetTaskBusTypeList',
  206. maxHeight: 180,
  207. allowSearch: false
  208. });
  209. $('#ProdLine').lrselect({
  210. url: top.$.rootUrl + '/HJManager/Enums/YesNoList',
  211. maxHeight: 60,
  212. allowSearch: false
  213. });
  214. },
  215. // 初始化列表
  216. initGird: function () {
  217. $('#gridtable').jfGrid({
  218. url: top.$.rootUrl + '/HJManager/Tasks/GetPageList',
  219. headData: [
  220. { label: "任务号", name: "ID", width: 140, align: "left" },
  221. { label: "工字轮编码", name: "BarCode", width: 120, align: "left" },
  222. { label: "任务类型", name: "TypeName", width: 90, align: "left", sortname: "Type" },
  223. { label: "任务状态", name: "StatusName", width: 90, align: "left", sortname: "Status" },
  224. { label: "AGV任务号", name: "AgvTaskID", width: 110, align: "left" },
  225. { label: "起始地址", name: "AddrFrom", width: 100, align: "left" },
  226. { label: "目标地址", name: "AddrTo", width: 100, align: "left" },
  227. { label: "下一个地址", name: "AddrNext", width: 100, align: "left" },
  228. { label: "业务类型", name: "BusType", width: 130, align: "left", sortname: "BusType" },
  229. { label: "巷道", name: "Tunnel", width: 50, align: "left" },
  230. { label: "楼层", name: "Floor", width: 50, align: "left" },
  231. { label: "设备", name: "Device", width: 60, align: "left" },
  232. { label: "重量", name: "Weight", width: 110, align: "left" },
  233. { label: "产品编码", name: "MaterialCode", width: 120, align: "left" },
  234. { label: "物料编码", name: "MatCode", width: 110, align: "left" },
  235. { label: "库存编码", name: "InvBarCode", width: 110, align: "left" },
  236. { label: "高度", name: "Height", width: 110, align: "left" },
  237. { label: "等级", name: "Grade", width: 110, align: "left" },
  238. { label: "优先级", name: "Priority", width: 80, align: "left" },
  239. { label: "手动处理备注", name: "ManualRemarks", width: 150, align: "left" },
  240. { label: "产品长度", name: "Length", width: 90, align: "left" },
  241. { label: "手/自动", name: "OutTypeName", width: 115, align: "left", sortname: "OutType" },
  242. { label: "堆垛机放货站台", name: "SrmStation", width: 95, align: "left" },
  243. { label: "开始时间", name: "StartTime", width: 130, align: "left" },
  244. { label: "结束时间", name: "EndTime", width: 130, align: "left" },
  245. { label: "满轮越库", name: "ProdLine", width: 150, align: "left"
  246. , formatter: function (cellvalue) {
  247. if (cellvalue == 1) {
  248. return '<span class=\"label label-success\" >是</span>';
  249. } else {
  250. return '<span class=\"label label-default\" >否</span>';
  251. }
  252. }
  253. },
  254. //{ label: "码垛单号", name: "DocID", width: 150, align: "left" },
  255. //{ label: "码垛托盘类型", name: "PalletType", width: 150, align: "left" },
  256. //{ label: "满盘数量", name: "FullQty", width: 150, align: "left" },
  257. //{ label: "高度", name: "Height", width: 150, align: "left" },
  258. { label: "WMS任务号", name: "WmsTask", width: 120, align: "left" },
  259. { label: "任务组ID", name: "TaskGroupKey", width: 150, align: "left" },
  260. { label: "更新状态", name: "UploadedName", width: 90, align: "left", sortname: "Uploaded" },
  261. {
  262. label: "改手盘标记", name: "IsSurplus", width: 80, align: "left"
  263. , formatter: function (cellvalue) {
  264. if (cellvalue == true) {
  265. return '<span class=\"label label-success\" >是</span>';
  266. } else {
  267. return '<span class=\"label label-default\" >否</span>';
  268. }
  269. }
  270. },
  271. {
  272. label: "返工标记", name: "IsRework", width: 80, align: "left", formatter: function (cellvalue) {
  273. if (cellvalue == true) {
  274. return '<span class=\"label label-success\" >是</span>';
  275. } else {
  276. return '<span class=\"label label-default\" >否</span>';
  277. }
  278. }
  279. },
  280. {
  281. label: "快投标记", name: "IsFast", width: 80, align: "left", formatter: function (cellvalue) {
  282. if (cellvalue == true) {
  283. return '<span class=\"label label-success\" >是</span>';
  284. } else {
  285. return '<span class=\"label label-default\" >否</span>';
  286. }
  287. }
  288. },
  289. { label: "机台号", name: "WorkBench", width: 120, align: "left" },
  290. { label: "仓库编码", name: "WarehouseCode", width: 110, align: "left" },
  291. { label: "创建时间", name: "AddTime", width: 130, align: "left" },
  292. { label: "更新时间", name: "EditTime", width: 130, align: "left" },
  293. { label: "创建用户", name: "AddWho", width: 110, align: "left" },
  294. { label: "更新用户", name: "EditWho", width: 110, align: "left" },
  295. ],
  296. mainId: 'ID',
  297. isPage: true,
  298. reloadSelected: true,
  299. sidx: 'AddTime',
  300. sord: 'DESC',
  301. isSubGrid: true, // 是否有子表
  302. subGridExpanded: function (subid, rowdata) {
  303. psuid = subid;
  304. $('#' + subid).jfGrid({
  305. url: top.$.rootUrl + '/HJManager/Tasks/GetTaskItem',
  306. headData: [
  307. { label: '任务号', name: 'ParentTaskCode', index: 'ParentTaskCode', width: 140, align: 'left' },
  308. { label: '当前位置', name: 'CurPoint', width: 210, align: "left" },
  309. { label: '下个位置', name: 'NextPoint', width: 190, align: "left" },
  310. { label: '描述', name: 'Desc', width: 360, align: "left" },
  311. { label: "创建时间", name: "AddTime", width: 215, align: "left" },
  312. { label: "创建用户", name: "AddWho", width: 110, align: "left" },
  313. ]
  314. });
  315. $('#' + subid).jfGridSet('reloadSon', { taskid: rowdata.ID, adddate: rowdata.AddTime });
  316. },
  317. });
  318. page.search({ queryJson: JSON.stringify({ keyword: $('#txt_Keyword').val() }) });
  319. },
  320. search: function (param) {
  321. $('#gridtable').jfGridSet('reload', param);
  322. }
  323. };
  324. refreshGirdData = function () {
  325. $('#gridtable').jfGridSet('reload');
  326. };
  327. page.init();
  328. }