<!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="white-bg"> <div class="row"> <div class="col-sm-12"> <div class="col-sm-12 select-info"> <div class="select-list"> <form id="cycleHeader-form"> <ul> <li> 调整主单编码:<input type="text" id="adjustCode" name="adjustCode"/> </li> <li> 调整单明细ID:<input id="id" type="text" name="id"/> </li> <li> 货主编码:<input id="companyCode" type="text" name="companyCode"/> </li> <li> 盘点单编码:<input id="cycleCountCode" type="text" name="cycleCountCode"/> </li> <li> 盘点明细状态:<input id="cycleDetailId" type="text" name="cycleDetailId"/> </li> <li> 质检单编码:<input id="checkCode" type="text" name="checkCode"/> </li> <li> 属性号:<input id="attributeId" type="text" name="attributeId"/> </li> <li> 质检单明细ID:<input id="checkDetailId" type="text" name="checkDetailId"/> </li> <li> 调整单关联单编码:<input id="referCode" type="text" name="referCode"/> </li> <li> 调整单关联明细行号:<input id="referDetailId" type="text" name="referDetailId"/> </li> <li> 容器:<input id="containerCode" type="text" name="containerCode"/> </li> <li> 库位:<input id="locationCode" type="text" name="locationCode"/> </li> <li> 物料编码:<input id="materialCode" type="text" name="materialCode"/> </li> <li> 物料名称:<input id="materialName" type="text" name="materialName"/> </li> <li> 物料规格:<input id="materialSpec" type="text" name="materialSpec"/> </li> <li> 调整单类型:<select name="problemType" th:with="problemType=${@dict.getType('cyclecountStatus')}"> <option value="">所有</option> <option th:each="e : ${problemType}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option> </select> </li> <li> 调整明细状态:<select name="status" th:with="status=${@dict.getType('cyclecountStatus')}"> <option value="">所有</option> <option th:each="e : ${status}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option> </select> </li> <li> 创建人:<input id="createdBy" 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> </li> </ul> </form> </div> </div> <div class="btn-group hidden-xs" id="toolbar" role="group"> <a class="btn btn-outline btn-danger btn-rounded" onclick="addAdjust()"/> <!--shiro:hasPermission="inventory:cyclecountAdjustDetail:addAdjust"--> <i class="fa fa-vcard"></i>差异调整 </a> <!--<a class="btn btn-outline btn-danger btn-rounded" onclick="createCyclecountWithGapQty()" shiro:hasPermission="inventoryHeader:cycleCountDetail:cyclecountRepeat"> <i class="fa fa-vcard"></i> 差异复盘 </a>--> <!--<a class="btn btn-outline btn-danger btn-rounded" onclick="adjust()" shiro:hasPermission="inventoryHeader:cycleCountDetail:adjust"> <i class="fa fa-vcard"></i> 差异库存调整 </a>--> <a class="btn btn-outline btn-success btn-rounded" onclick="update()"> <i class="fa fa-refresh"></i> 刷 新 </a> </div> <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> </div> </div> <div th:include="include :: footer"></div> <script th:inline="javascript"> var prefix = ctx + "inventory/adjustDetail"; var prefix_head = ctx + "inventory/adjustHeader"; var datas = [[${@dict.getType('adjustType')}]]; var inventoryStatus = [[${@dict.getType('inventoryStatus')}]]; var created; $(function () { update(); }); function update() { let adjustCode=null; let options = { url:prefix + "/list", modalName: "调整单明细", sortName: "id", sortOrder: "desc", showRefresh: false, search: false, columns: [ { radio: true }, { field: 'id', title: '明细id', sortable: true }, { field: 'adjustCode', title: '调整主单编码', visible: true }, { field: 'warehouseCode', title: '仓库', visible: false }, { field: 'companyCode', title: '货主' }, { field: 'cycleCountCode', title: '盘点单编码', }, { field: 'cycleDetailId', title: '盘点单明细ID', sortable: true, visible: true }, { field: 'locationCode', title: '库位编号', }, { field: 'containerCode', title: '容器编号', }, { field: 'materialCode', title: '物料编码', }, { field: 'materialName', title: '物料名称', }, { field: 'materialSpec', title: '物料规格', }, { field: 'materialUnit', title: '物料单位', }, { field: 'checkCode', title: '质检单号', visible: true }, { field: 'checkDetailId', title: '质检单明细行号', visible: false }, { field: 'referCode', title: '调整单关联单号', visible: true }, { field: 'referDetailId', title: '调整单关联明细ID', visible: false }, { field: 'problemType', title: '调整类型', sortable: true, visible: true }, { field: 'fromQty', title: '调整前数量' }, { field: 'toQty', title: '调整后数量' }, { field: 'gapQty', title: '调整数量' }, { field: 'fromInventorySts', title: '调整前状态', visible: true }, { field: 'toInventorySts', title: '调整后状态', visible: true }, { field: 'attributeId', title: '属性号', sortable: true, visible: false }, { field: 'inventorySts', title: '库存状态', formatter: function (value, row, index) { return $.table.selectDictLabel(inventoryStatus, value); }, sortable: true }, { field: 'created', title: '创建时间', sortable: true }, { field: 'createdBy', title: '创建用户' }, { field: 'agreeTime', title: '审批时间', sortable: true }, { field: 'agreeBy', title: '审批人' }, { field: 'status', title: '明细状态', formatter: function (value, row, index) { return $.table.selectDictLabel(datas, value); }, sortable: true }, { field: 'Remark', title: '备注', visible: true }, { field: 'version', title: '数据版本', visible: false }, { field: 'processStamp', title: '处理标记', visible: false }, ] }; let url = location.search; //获取url中"?"符后的字串 if (url.indexOf("?") != -1) { //判断是否有参数 let str = url.substr(1); //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串 let strs = url.substr(1).split("="); $("#adjustCode").val(strs[1]); options.queryParams=function(params) { return { // 传递参数查询参数 adjustCode: strs[1], pageSize: params.limit, pageNum: params.offset / params.limit + 1, searchValue: params.search, orderByColumn: params.sort, isAsc: params.order }; }; adjustCode=str.split("=")[1]; $.table.init(options); } else{ $.table.init(options); } /*$.ajax({ url: prefix_head + "/getHeader", type: "post", data: { id: $('#cyclecountAdjustId').val() }, success: function (value) { if (value.data) { $('#code').val(value.data.code); // $('#type').val(value.data.typeLabel); $('#status').val(value.data.statusLabel); $('#created').val(value.data.created); var text_val = $('#created').val(); $('#created').val(text_val.replace("T", " ")); //$('#createdBy').val(value.data.createdBy); $('#lastUpdated').val(value.data.lastUpdated); var text_val_t = $('#lastUpdated').val(); $('#lastUpdated').val(text_val_t.replace("T", " ")); //$('#lastUpdatedBy').val(value.data.lastUpdatedBy); } } })*/ } /**盘点差异调整*/ function addAdjust() { var row = $('#bootstrap-table').bootstrapTable('getSelections'); $.modal.confirm("注意:该操作将更改库存,当实盘数量为0且库位上只剩空容器时,请手动执行空托出库任务,容器上有货则无需其他操作!", function () { var cyclecountAdjustId = $('#cyclecountAdjustId').val(); var companyCode = $('#companyCode').val(); var code = $('#code').val(); var cyclecountHeadCode = $('#sourceCode').val(); //判断有没有选取明细条目,进的页面不同 if (row.length !== 0) { /*判断是否已经调整过*/ if (row[0].status == 40) { $.modal.msg('该条明细已调整,请勿重复调整!') } else { $.modal.open("差异调整单", prefix + "/adjustEdit?id=" + row[0].id) } } else { $.modal.open("调整单", prefix + "/addAdjust?cyclecountAdjustId=" + cyclecountAdjustId + "&companyCode=" + companyCode + "&code=" + code + "&cyclecountHeadCode=" + cyclecountHeadCode); } }); } // function open(title, url, width, height) { if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) { width = 'auto'; height = 'auto'; } if (title == null) { title = false; } if (url == null) { url = "404.html"; } if ($.common.isEmpty(width)) { width = 800; // width = ($(window).width() - 100); } if ($.common.isEmpty(height)) { height = ($(window).height() - 50); } layer.open({ type: 2, area: [width + 'px', height + 'px'], fix: false, //不固定 maxmin: true, shade: 0.3, title: title, content: url // shadeClose: true, //点击遮罩关闭层 }) } /* * 差异复盘 */ function createCyclecountWithGapQty() { $.modal.confirm("确认进行差异复盘么?该操作会将有差异的明细重新生成一个新的盘点单。", function () { var url = prefix + "/createCyclecountWithGapQty"; var data = {"headId": $('#headId').val()}; postInner(url, data); }); } /* //调整差异库存 function adjust() { $.modal.confirm("注意:该操作将更改库存,当实盘数量为0且库位上只剩空容器时,请手动执行空托出库任务,容器上有货则无需其他操作!", function() { var url = prefix + "/adjust"; var data = { "headId": $('#headId').val() }; postInner(url,data); }); } function postInner(url,data) { $.modal.loading("正在处理中,请稍后..."); $.ajax({ url:url, type:"post", data:data, success:function (result) { if (result.code == web_status.SUCCESS) { $.modal.msgSuccess(result.msg); update(); } else { $.modal.alertError(result.msg); } $.modal.closeLoading(); } }) }*/ /* //下发单条盘点 function outcheck(id) { var url = prefix + "/createCyccoutTaskByDetailId"; var data = { "detailId": id }; postInner(url,data); }*/ </script> </body> </html>