<!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="inventoryHeader-form"> <div class="select-list"> <ul> <li> 库区: <select id="zoneCode" name="zoneCode" th:with="list=${@zone.getCode()}"> <option value="">所有</option> <option th:each="item : ${list}" th:text="${item['name']}" th:value="${item['code']}" th:attr = " code = ${item['code']}"></option> </select> </li> <li> 库位编号:<input type="text" name="locationCode"/> </li> <li> 容器编号:<input type="text" name="containerCode"/> </li> <li> 创建用户:<input type="text" name="createdBy"/> </li> <li> 更新用户:<input type="text" name="lastUpdatedBy"/> </li> <li class="time2"> <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="text" name="materialCode"/> </li> <li> 物料名称:<input type="text" name="materialName"/> </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('inventoryHeader-form')"><i class="fa fa-refresh"></i> 重置</a> </li> </ul> </div> </form> </div> <div class="btn-group hidden-xs" id="toolbar" role="group"> <a class="btn btn-outline btn-danger btn-rounded" onclick="transfer()" shiro:hasPermission="inventory:inventoryHeader:transfer"> <i class="fa fa-exchange"></i> 立库移库 </a> <a class="btn btn-outline btn-primary btn-rounded" onclick="checkOut()" shiro:hasPermission="inventory:inventoryHeader:seeOut"> <i class="fa fa-eye"></i> 出库查看 </a> <a class="btn btn-outline btn-info btn-rounded" onclick="emptyIn()" shiro:hasPermission="inventory:inventoryHeader:emptyIn"> <i class="fa fa-level-down"></i> 空托入库 </a> <a class="btn btn-outline btn-info btn-rounded" onclick="batchEmptyIn()" shiro:hasPermission="inventory:inventoryHeader:emptyIn"> <i class="fa fa-level-down"></i> 批量空托入库 </a> <a class="btn btn-outline btn-info btn-rounded" onclick="emptyOut()" shiro:hasPermission="inventory:inventoryHeader:emptyOut"> <i class="fa fa-level-up"></i> 空托出库 </a> <a class="btn btn-outline btn-info btn-rounded" onclick="emptyCheckOut()" shiro:hasPermission="inventory:inventoryHeader:seeOut"> <i class="fa fa-eye"></i> 空托出库查看 </a> <a class="btn btn-outline btn-primary btn-rounded" onclick="shipmentHeader()" shiro:hasPermission="inventory:inventory:shipment"> <i class="fa fa-eye"></i> 生成出库单 </a> <a class="btn btn-outline btn-primary btn-rounded auto-shipment" onclick="lockWork()"> <i class="fa fa-code-fork"></i> 添加工作令 </a> <a class="btn btn-outline btn-primary btn-rounded auto-shipment" onclick="lockWork2()"> <i class="fa fa-code-fork"></i> 清除工作令 </a> <!--<div class="zkc pull-left" style="margin-left: 430px;margin-top: 15px"> <label >总库存:</label> <div class="pull-right"> <input id="remainder" name="remainder" class="form-control" type="text" readonly style="width: 50%"> </div> </div>--> </div> <div class="col-sm-12 select-info"> <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover text-nowrap"></table> </div> </div> <div class="tab-pane fade in active" id="tabDetail"></div> </div> </div> </div> </div> <div th:include="include :: footer"></div> <script th:inline="javascript"> var prefix = ctx + "inventory/inventoryHeader"; var detailPrefix = ctx + "inventory/inventoryDetail"; var report = [[${@permission.hasPermi('inventoryHeader:adjustHeader:report')}]]; var datas = [[${@dict.getType('sys_normal_disable')}]]; var containerStatus = [[${@dict.getType('containerStatus')}]]; var zone =[[${@zone.getCode()}]]; $(function () { var options = { url: prefix + "/inventoryLook", createUrl: prefix + "/add", updateUrl: prefix + "/edit/{id}", modalName: "库存头", sortName: "id", sortOrder: "desc", search: false, queryParams: function(params) { return { // 传递参数查询参数 pageSize: params.limit, pageNum: params.offset / params.limit + 1, searchValue: params.search, sort: params.sort, order: params.order }; }, responseHandler: function(res) { if (res.code == 200) { return { rows: res.data, total: res.total }; } else { $.modal.alertWarning(res.msg); return { rows: [], total: 0 }; } }, onLoadSuccess: function (res) { /*let count = 0; if (res.rows.length > 0) { res.rows.map(item => { console.log(count,item.totalQty) count +=item.totalQty }); } $("#remainder").val(count)*/ }, columns: [ { radio: true }, { field: 'id', title: '头ID', sortable: true }, { field: 'warehouseCode', title: '仓库 ', visible: false }, { field: 'zoneCode', title: '库区', align: 'center', formatter: function(value, row, index) { var actions = []; $.each(zone, function(index, dict) { if (dict.code == value) { actions.push("<span class='badge badge-info'>" + dict.name + "</span>"); return false; } }); return actions.join(''); } }, { field: 'companyCode', title: '货主', visible: false }, { field: 'locationCode', title: '库位 ', align: 'center', }, { field: 'containerCode', title: ' 容器', align: 'center', }, { field: 'containerStatus', title: ' 容器状态', formatter: function (value, row, index) { return $.table.selectDictLabel(containerStatus, value); }, align: 'center', }, { field: 'totalWeight', title: ' 总重量', visible: true }, { field: 'materialSkuQty', title: ' 商品种类的数量', visible: false }, { field: 'totalQty', title: '总数量', align: 'center', }, { field: 'totalLines', title: '总行量 ', align: 'center', }, { field: 'projectNos', title: ' 项目号列表', visible: false }, { field: 'batchs', title: ' 批次列表', visible: false }, { field: 'lots', title: ' 批号列表', visible: false }, { field: 'locking', title: ' 锁定', visible : false }, { field: 'lockRemark', title: ' 锁定备注', visible: false }, { field: 'created', title: ' 创建时间', align: 'center', }, { field: 'createdBy', title: ' 创建用户', align: 'center', }, { field: 'lastUpdated', title: ' 更新时间', align: 'center', }, { field: 'lastUpdatedBy', title: ' 更新用户', align: 'center', }, { field: 'version', title: ' 数据版本', visible: false }, { field: 'userDef1', title: ' 自定义字段1', visible: false }, { field: 'userDef2', title: ' 自定义字段2', visible: false }, { field: 'enable', title: '状态', align: 'center', formatter: function (value, row, index) { return $.table.selectDictLabel(datas, value); } }, ] }; $.table.init(options); }); function shipmentHeader() { var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } var url = prefix + "/shipmentrelax"; var data = { "ids": rows.map(function(v){return v.id;}).join(',') }; localSubmit(url, "post", "json", data); } function lockWork() { var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } if (rows.length > 1) { $.modal.alertWarning("请选择一条记录"); return; } var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } let url=detailPrefix+'/lockingWorkOrder/' + ids; $.modal.open("修改",url); } function lockWork2() { var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } if (rows.length > 1) { $.modal.alertWarning("请选择一条记录"); return; } var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } let url=detailPrefix+'/lockingWorkOrder2'; var data = { "ids": rows.map(function(v){return v.id;}).join(',') }; localSubmit(url, "post", "json", data); } function add() { var rows=$("#bootstrap-table").bootstrapTable('getSelections'); if (rows.length == 0) { $.modal.alertWarning("请至少选择一条记录"); return; } if (rows.length > 1) { $.modal.alertWarning("请选择一条记录"); return; } var ids = ""; for(var i=0; i<rows.length; i++) { ids = ids + rows[i].id + "," } let url=detailPrefix+'/addLockingWorkOrder/' + ids; $.modal.open("修改",url); } $('#bootstrap-table').on('dbl-click-row.bs.table', function (row, value) { let url = `${ctx}inventory/inventoryDetail?${value.id}&${value.locationCode}&${value.containerCode}`; $("#tabDetail").children().remove(); $("#myTab li").removeClass("active"); var height = $(document).height() - 100 + 'px'; var str = '<iframe class="huaheng_iframe" name="iframe" width="100%" height="' + height + '" src="' + url + '" frameborder="0" data-id="' + url + '" seamless></iframe>'; $("#tabDetail").empty(); $("#tabDetail").append(str); $(".tab-pane").removeClass("in active"); $("#myTab li:eq(1)").addClass("active"); $("#tabDetail").addClass("in active"); }); function cyclecountPrint(id) { var url = prefix + "/report/" + id; $.modal.open("打印", url); } $("#myTab li:eq(1)").click(function () { let url = ctx + "inventory/inventoryDetail"; //明细网页地址 $("#tabDetail").children().remove(); $("#myTab li").removeClass("active"); var height = $(document).height() - 100 + 'px'; var str = '<iframe class="huaheng_iframe" name="iframe" width="100%" height="' + height + '" src="' + url + '" frameborder="0" data-id="' + url + '" seamless></iframe>'; $("#tabDetail").empty(); $("#tabDetail").append(str); $(".tab-pane").removeClass("in active"); $("#myTab li:eq(1)").addClass("active"); $("#tabDetail").addClass("in active"); }); function localSubmit(url, type, dataType, data) { $.modal.loading("正在处理中,请稍后..."); var config = { url: url, type: type, dataType: dataType, data: data, success: function (result) { if (result.code == web_status.SUCCESS) { $.modal.msgSuccess(result.msg); } else { $.modal.alertError(result.msg) } $.modal.closeLoading() } }; $.ajax(config) } function transfer() { var url = prefix + "/transfer"; $.modal.open("立库移库", url); } function emptyIn() { $.modal.open("空托盘入库",prefix+"/emptyIn") } function batchEmptyIn() { $.modal.open("批量空托盘入库",prefix+"/batchEmptyIn") } function emptyOut() { $.modal.open("空托盘出库",prefix+"/emptyOut") } function checkOut() { let rows = $("#bootstrap-table").bootstrapTable('getSelections') if (rows.length != 1) { $.modal.alertWarning("请选择一条记录"); return; } $.modal.open("出库查看", prefix+"/checkOut/"+rows[0].id) } function emptyCheckOut() { $.modal.open("空托盘出库查看",prefix+"/emptyCheckOut") } $(document).ready(function () { if (localStorage.getItem("locationCode")){ var params = {query:{locationCode:localStorage.getItem("locationCode")}} $("#bootstrap-table").bootstrapTable("refresh",params) localStorage.removeItem("locationCode") } }) </script> </body> </html>