<!DOCTYPE HTML> <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> <meta charset="utf-8"> <head th:include="include :: header"></head> <style> #toolbar1{ display: inline-block; /*position: absolute;*/ margin: 10px auto; line-height: 34px; } </style> <body class="gray-bg"> <div class="container-div"> <div class="row"> <div class="col-sm-12 select-info"> <ul id="myTab" class="nav nav-tabs"> <li class="active"><a href="#tabHeader" data-toggle="tab">主表</a></li> <li><a href="#tabDetail" data-toggle="tab">明细</a></li> </ul> <div id="myTabContent" class="tab-content"> <div class="tab-pane fade in active" id="tabHeader"> <div class="col-sm-12 select-info"> <form id="task-form"> <div class="select-list"> <ul> <li> 任务id:<input type="text" name="id"/> </li> <li> 容器编号:<input type="text" name="containerCode"/> </li> <li> 库位编号:<input type="text" name="toLocation"/> </li> <li class="time" style="height: 30px"> <label>创建时间: </label> <input type="text" class="time-input" id="startTime" placeholder="开始时间" name="createdBegin"/> <span>-</span> <input type="text" class="time-input" id="endTime" placeholder="结束时间" name="createdEnd"/> </li> <li> <input type="hidden" name="internalTaskType" th:value="${InternalTaskType}"/> </li> <!--<li>--> <!--<!–头 状 态:<input type="text" name="firstStatus"/>–>--> <!--头 状 态:<select name="firstStatus" th:with="firstStatus=${@dict.getType('taskStatus')}">--> <!--<option value="">所有</option>--> <!--<option th:each="e : ${firstStatus}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select>--> <!--</li>--> <!--<li>--> <!--<!–尾 状 态:<input type="text" name="lastStatus"/>–>--> <!--尾 状 态:<select name="lastStatus" th:with="lastStatus=${@dict.getType('taskStatus')}">--> <!--<option value="">所有</option>--> <!--<option th:each="e : ${lastStatus}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select>--> <!--</li>--> <!--<!–<li>--> <!--出入库站台:<select name="station" th:with="stations = ${@dict.getType('station')}">--> <!--<option value="">所有</option>--> <!--<option th:each="e : ${stations}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select>--> <!--</li>–>--> <!--<li>--> <!--巷道:<input type="text" name="roadway"/>--> <!--</li>--> <!--<li>--> <!--库区:<input type="text" name="zoneCode"/>--> <!--</li>--> <!--<li>--> <!--来源库位:<input type="text" name="sourceLocation"/>--> <!--</li>--> <!--<li>--> <!--目的库位:<input type="text" name="destinationLocation"/>--> <!--</li>--> <li> <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> <!--<a class="btn btn-success btn-rounded btn-sm" onclick="$.table.exportExcel()" shiro:hasPermission="receipt:receiptHeader:export"><i class="fa fa-download"></i> 导出</a>--> </li> </ul> </div> </form> </div> <div class="btn-group hidden-xs" id="toolbar" role="group"> <!--<a class="btn btn-outline btn-info btn-rounded" onclick="emptyIn()" shiro:hasPermission="task:task:emptyIn">--> <!--<i class="fa fa-level-down"></i> 空托入库--> <!--</a>--> <!--<a class="btn btn-outline btn-info btn-rounded" onclick="emptyOut()" shiro:hasPermission="task:task:emptyOut">--> <!--<i class="fa fa-level-up"></i> 空托出库--> <!--</a>--> <a class="btn btn-outline btn-primary btn-rounded" onclick="batchExecute()" shiro:hasPermission="task:task:execute"> <i class="fa fa-send"></i> 批量执行 </a> <!--<a class="btn btn-outline btn-primary btn-rounded" onclick="batchComplete()" shiro:hasPermission="task:task:completeTaskByWMS">--> <!--<i class="fa fa-check"></i> 批量完成--> <!--</a>--> <a class="btn btn-outline btn-danger btn-rounded" onclick="batchRemoveHead()" shiro:hasPermission="task:task:remove"> <i class="fa fa-remove"></i>批量取消 </a> </div> <input type="hidden" id="taskId" name="taskId" th:value="${taskId}"/> <input type="hidden" id="internalTaskType" name="internalTaskType" th:value="${InternalTaskType}"/> <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> </div> <div class="tab-pane fade" id="tabDetail"> <div class="btn-group hidden-xs" id="toolbar1" role="group"> <!-- <a class="btn btn-outline btn-success btn-rounded" onclick="add()" > <i class="fa fa-plus"></i> 新增 </a> <a class="btn btn-outline btn-danger btn-rounded" onclick="batRemove()" shiro:hasPermission="receipt:bill:remove"> <i class="fa fa-trash-o"></i> 删除 </a> --> </div> <table id="bootstrap-table1" data-mobile-responsive="true" class="table table-bordered table-hover"></table> </div> </div> </div> </div> </div> <div th:include="include :: footer"></div> <script th:inline="javascript"> var editFlag = [[${@permission.hasPermi('task:taskHeader:edit')}]]; var removeFlag = [[${@permission.hasPermi('task:taskHeader:remove')}]]; var executeFlag = [[${@permission.hasPermi('task:taskHeader:execute')}]]; var completeFlag = [[${@permission.hasPermi('task:taskHeader:complete')}]]; var agvFlag = [[${@permission.hasPermi('task:task:agvFlag')}]]; var prefix = ctx + "task/taskHeader"; var prefix1 = ctx + "task/taskDetail" var stations = [[${@dict.getType('station')}]]; var taskTypes=[[${@dict.getType('taskType')}]]; var taskStatus=[[${@dict.getType('taskStatus')}]]; var taskDetailStatus=[[${@dict.getType('taskDetailStatus')}]]; $(function() { var options = { url: prefix + "/list", createUrl: prefix + "/add", updateUrl: prefix + "/edit/{id}", removeUrl: prefix + "/remove", modalName: "任务管理", sortName: "lastUpdated", sortOrder: "desc", search: false, clickToSelect:true, queryParams:"InternalTaskType="+[[${InternalTaskType}]], columns: [{ checkbox: true }, { field : 'id', title : '任务id' , sortable: true }, { field : 'companyCode', title : '货主编码', visible:true }, { field : 'taskType', title : '任务类型' , align: 'center', visible:true, formatter: function(value, row, index) { return $.table.selectDictLabel(taskTypes, value); } }, { field : 'toLocation', title : '库位号', visible:true }, { field : 'containerCode', title : '容器号' , sortable: true }, { field : 'startPickDateTime', title : '开始拣货时间', sortable: true }, { field : 'endPickDateTime', title : '截止拣货时间' }, { field : 'created', title : '生成时间', sortable: true }, { field : 'createdBy', title : '任务下达人' }, { field : 'lastUpdated', title : '修改时间' , sortable: true, }, { field : 'lastUpdatedBy', title : '更新用户' }, { field : 'userDef1', title : '自定义字段1' , visible:false }, { field : 'userDef2', title : '自定义字段2' , visible:false }, { field : 'userDef3', title : '自定义字段3' , visible:false }, { title: '操作', align: 'center', formatter: function(value, row, index) { var actions = []; actions.push('<a class="btn btn-info btn-xs " href="#" onclick="detail(\'' + row.id + '\')"><i class="fa fa-list-ul"></i>明细</a> '); if (row.status < 10) { actions.push('<a class="btn btn-success btn-xs ' + executeFlag + '" href="#" onclick="execute(\'' + row.id + '\')"><i class="fa fa-send" style="padding-right: 1px;"></i>执行</a> '); actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>取消</a> '); actions.push('<a class="btn btn-primary btn-xs ' + completeFlag + '" href="#" onclick="complete(\'' + row.id + '\')"><i class="fa fa-check"></i>完成</a>'); } if (row.status >= 10 && row.status < 100) { actions.push('<a class="btn btn-primary btn-xs ' + completeFlag + '" href="#" onclick="complete(\'' + row.id + '\')"><i class="fa fa-check"></i>完成</a>'); } return actions.join(''); } } ] }; $.table.init(options); }); $("#bootstrap-table1").bootstrapTable({ // url: prefix1 + "/list", // createUrl: prefix1 + "/add", // updateUrl: prefix1 + "/edit/{id}", // removeUrl: prefix1 + "/remove", // queryParams: queryParams, sortable: true, //排序 showRefresh: true, //刷新 showToggle:true, //视图切换 clickToSelect: false, showColumns:true, //列选择 // detailView:true, showExport: true, //导出 exportDataType: "all", //导出类型basic', 'all', 'selected'.当前页、所有数据、选中数据 modalName: "任务明细", iconSize: "outline", toolbar: "#toolbar1", contentType: "application/x-www-form-urlencoded", sortName: "id", sortOrder: "desc", columns: [{ checkbox: true }, { field : 'id', title : '明细Id' }, { field : 'taskId', title : '任务Id', sortable: true }, { field : 'billCode', title : '单据编码', }, { field : 'materialCode', title : '存货编码', sortable: true }, { field : 'materialName', title : '物料名称', sortable:true }, { field : 'project', title : '项目号', }, { field : 'containerCode', title : '容器编码', sortable:true }, { field : 'fromLocation', title : '源库位', sortable:true }, { field : 'toLocation', title : '目的库位', sortable:true }, { field : 'qty', title : '数量' }, { field : 'status', title : '子任务状态', align: 'center', formatter: function(value, row, index) { return $.table.selectDictLabel(taskDetailStatus, value); } }, { field : 'created', title : '创建时间' , visible:false, sortable:true }, { field : 'lastUpdated', title : '最后修改时间' , visible:false, sortable:true }, { field : 'lastUpdatedBy', title : '更新用户' }, /*{ title: '操作', align: 'center', formatter: function(value, row, index) { var actions = []; // actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> '); //actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>'); return actions.join(''); } }*/ ] }); function createtable(url,taskId) { // $("#tabDetail").children().remove(); $("#myTab li").removeClass("active"); $(".tab-pane").removeClass("in active"); $("#myTab li:eq(1)").addClass("active"); $("#tabDetail").addClass("in active"); $.ajax({ url:url, type: 'post', data:{ taskId:taskId }, success : function (value) { // console.log(value); $("#bootstrap-table1").bootstrapTable('load', value.data); // $("#bootstrap-table1").bootstrapTable('removeAll'); // for (var i = value.data.length-1; i >=0 ; i--) { // $("#bootstrap-table1").bootstrapTable('insertRow', { // index: 0, row: { // id: value.data[i].id, // taskId: value.data[i].taskId, // warehouseId: value.data[i].warehouseId, // warehouseCode: value.data[i].warehouseCode, // materialCode: value.data[i].materialCode, // allocationId: value.data[i].allocationId, // containerCode: value.data[i].containerCode, // sourceLocation: value.data[i].sourceLocation, // destinationLocation: value.data[i].destinationLocation, // qty: value.data[i].qty, // status: value.data[i].status, // // created: value.data[i].created, // // createdBy: value.data[i].createdBy, // lastUpdated: value.data[i].lastUpdated, // lastUpdatedBy: value.data[i].lastUpdatedBy, // endTime:value.data[i].endTime // // userDef1: value.data[i].userDef1, // // userDef2: value.data[i].userDef2, // // userDef3: value.data[i].userDef3 // } // }); // } } }) } /*入库单列表-详细*/ function detail(taskId) { var url = ctx + 'task/taskDetail/list'; // createMenuItem(url, "入库单明细"); // createtab(curl); createtable(url,taskId); } // /*任务列表-详细*/ // function detail(taskId) { // var url = 'task/taskDetail/' + taskId; // createMenuItem(url, "任务明细"); // } /*任务列表-下发执行*/ function execute(taskId) { $.modal.confirm("确定执行任务?", function() { var url = ctx + 'task/taskHeader/execute'; var data = { "taskId" : taskId }; $.operate.post(url, data); }); } /*任务列表-批量下发执行*/ function batchExecute() { //var rows = $.common.isEmpty($.table._option.taskId) ? $.table.selectFirstColumns() : $.table.selectColumns($.table._option.taskId); var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } $.modal.confirm("确认要执行选中的" + rows.length + "条数据吗?", function() { var url = ctx + 'task/taskHeader/execute'; var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } var data = { "taskId": ids.substring(0, ids.length-1) }; $.operate.submit(url, "post", "json", data); }) } /*任务列表-完成任务*/ function complete(taskId) { $.modal.confirm("确定完成任务?", function() { var url = ctx + 'task/taskHeader/completeTaskByWMS'; var data = { "taskId" : taskId }; $.operate.post(url, data); }); } /*任务列表-批量完成任务*/ function batchComplete() { //var rows = $.common.isEmpty($.table._option.taskId) ? $.table.selectFirstColumns() : $.table.selectColumns($.table._option.taskId); var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } $.modal.confirm("确认要执行选中的" + rows.length + "条数据吗?", function() { var url = ctx + 'task/task/completeTaskByWMS'; var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } var data = { "taskId": ids.substring(0, ids.length-1) }; $.operate.submit(url, "post", "json", data); }) } /*任务列表-批量删除任务*/ function batchRemoveHead() { //var rows = $.common.isEmpty($.table._option.taskId) ? $.table.selectFirstColumns() : $.table.selectColumns($.table._option.taskId); var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } $.modal.confirm("确认要删除选中的" + rows.length + "条数据吗?", function() { var url = ctx + 'task/taskHeader/remove'; var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } var data = { "ids": ids.substring(0, ids.length-1) }; $.operate.submit(url, "post", "json", data); }) } function emptyIn() { $.modal.open("空托盘入库",prefix+"/emptyIn") } function emptyOut() { $.modal.open("空托盘出库",prefix+"/emptyOut") } </script> </body> </html>