<!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> <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="receiptContainerHeader-form"> <div class="select-list"> <ul> <li> 入库单号:<input type="text" name="receiptCode"/> </li> <li> 容器编号:<input type="text" name="receiptContainerCode"/> </li> <li> 库位编号:<input type="text" name="locationCode"/> </li> <li> <!--入库类型:<input type="text" name="sourceCode"/> --> 任务类型:<select name="taskType" th:with="type=${@dict.getType('receiptTaskType')}"> <option value="">所有</option> <option th:each="e : ${type}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select> </li> <li> <!--头 状 态:<input type="text" name="firstStatus"/>--> 容器任务状态:<select name="Status" th:with="firstStatus=${@dict.getType('receiptContainerHeaderStatus')}"> <option value="">所有</option> <option th:each="e : ${firstStatus}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select> </li> <li> 创 建 人:<input type="text" name="createdBy"/> </li> <li class="time"> <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> <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset('receiptContainerHeader-form')"><i class="fa fa-refresh"></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-success btn-rounded" onclick="batchCreateTask()" shiro:hasPermission="receipt:receiptContainer:add"> <i class="fa fa-edit"></i> 批量生成任务 </a> <a class="btn btn-outline btn-danger btn-rounded" onclick="batchRemoveHead()" shiro:hasPermission="receipt:receiptContainer:remove"> <i class="fa fa-remove"></i> 批量撤销组盘 </a> </div> <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> </div> <div class="tab-pane fade" id="tabDetail"> <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 createTaskFlag = [[${@permission.hasPermi('receipt:receiptContainer:add')}]]; var removeFlag = [[${@permission.hasPermi('receipt:receiptContainer:remove')}]]; var prefix = ctx + "receipt/receiptContainerHeader"; var detailPrefix = ctx + "receipt/receiptContainerDetail"; var taskType=[[${@dict.getType('taskType')}]]; // var taskStatus=[[${@dict.getType('taskStatus')}]]; //任务状态 var receiptContainerHeaderStatus = [[${@dict.getType('receiptContainerHeaderStatus')}]] //容器状态 var S_headerId; $(function() { var options = { url: prefix + "/list", createUrl: prefix + "/add", updateUrl: prefix + "/edit/{id}", removeUrl: prefix + "/remove", sortName: "created", sortOrder: "desc", modalName: "入库组盘头", search: false, columns: [{ checkbox: true }, { field : 'id', title : '组盘头id' , sortable:true }, { field : 'containerCode', title : '容器编号' , sortable:true }, { field : 'toLocation', title : '库位编号' , sortable:true }, { field : 'taskType', title : '任务类型', align: 'center', formatter: function(value, row, index) { return $.table.selectDictLabel(taskType, value); },sortable:true }, { field : 'status', title : '容器任务状态', formatter: function(value, row, index) { return $.table.selectDictLabel(receiptContainerHeaderStatus, value); } , sortable:true }, { field : 'created', title : '创建时间' , sortable:true }, { field : 'createdBy', title : '创建人' , sortable:true }, { 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 ' + createTaskFlag + '" href="#" onclick="createTask(\'' + row.id + '\')"><i class="fa fa-edit"></i>生成任务</a> '); } if (row.status == 0) { 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(''); } }] }; $.table.init(options); }); $("#bootstrap-table1").bootstrapTable({ // url: detailPrefix + "/headerId", // createUrl: detailPrefix + "/add", // updateUrl: detailPrefix + "/edit/{id}", // removeUrl: detailPrefix + "/remove", // search: true, //搜索 sortable: true, //排序 showRefresh: true, //刷新 showToggle:true, //视图切换 clickToSelect: true, showColumns:true, //列选择 // detailView:true, showExport: true, //导出 exportDataType: "all", //导出类型basic', 'all', 'selected'.当前页、所有数据、选中数据 modalName: "入库明细", iconSize: "outline", toolbar: "#toolbar1", contentType: "application/x-www-form-urlencoded", columns: [ // { // checkbox: true // }, { field : 'id', title : '明细id' }, { field : 'headerId', title : '组盘头标识', visible:false }, { field : 'receiptDetailId', title : '入库单明细标识', visible:false }, { field : 'receiptCode', title : '入库单号' , sortable:true }, { field : 'materialCode', title : '物料编码', sortable:true }, { field : 'materialName', title : '物料名称', sortable:true }, { field : 'materialSpec', title : '物料规格', sortable:true }, /*{ field : 'batch', title : '批次', sortable:true }, { field : 'lot', title : '批号', sortable:true },*/ { field : 'project', title : '项目号' }, { field : 'qty', title : '组盘数量' }, { field : 'created', title : '创建时间', sortable:true }, { field : 'createdBy', title : '创建用户', sortable:true }, // { // title: '操作', // align: 'center', // formatter: function(value, row, index) { // var actions = []; // actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>'); // return actions.join(''); // } // } ] }); function createtable(url,headerId) { // $("#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:{ headerId:headerId }, success : function (value) { $("#bootstrap-table1").bootstrapTable('load',value.data); } }) } /*入库单列表-详细*/ function detail(headerId) { var url = detailPrefix + "/list/"+headerId; // createMenuItem(url, "入库组盘明细"); S_headerId=headerId; createtable(url, S_headerId); } /* 单个删除组盘明细 */ function remove(id) { $.modal.confirm("确定删除该条明细信息吗?", function() { var url = detailPrefix + "/remove"; var data = { "id": id }; $.operate.post(url, data); createtable(url, S_headerId); }); } /* 批量删除组盘 */ function batchRemoveHead() { var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } $.modal.confirm("确认要撤销选中的" + rows.length + "条组盘吗?", function() { var url = prefix + "/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.post(url, data); // submit(url, "post", "json", data); }); } /* 单个生成任务 */ function createTask(id) { var url = prefix + "/createTask"; var data = { "ids" : id }; $.operate.post(url, data); } /* 批量生成任务 */ function batchCreateTask() { var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } $.modal.confirm("确认要生成选中的" + rows.length + "条组盘任务吗?", function() { var url = prefix + "/createTask"; 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.post(url, data); // submit(url, "post", "json", data); }); } function position(id){ var url = prefix + "/position/"; var data = { "ids" : id }; $.operate.post(url, data); } </script> </body> </html>