<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>ç‰©æ–™æ ‡ç¾</title> <meta name="renderer" content="webkit"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"> <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all"> <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all"> <link rel="stylesheet" href="../../css/public.css" media="all"> <style> .rightMargin { margin-right: 0px; } .buJu { margin-top: 10px; display: flex; flex-direction: row-reverse; } .beiJing { background-color: #fafafa; padding-top: 5px; border-radius: 3px; box-shadow: inset 0 0 3px 1px #ccc; } /* è¡¨æ ¼ä¸‹æ‹‰å°ç®å¤´éšè— */ .layui-table-grid-down { display: none; } </style> <script> // 这里是需è¦åœ¨é¡µé¢æ¸²æŸ“之剿‰§è¡Œçš„代ç document.addEventListener("DOMContentLoaded", function () { //获å–table默认显示数 pageCntFirst(); //åˆ¤æ–æ˜¯å¦å¼€å¯table列表列宽调整功能。 GetIsSetColW(); }); </script> </head> <body> <div class="layui-fluid" style="padding: 3px;"> <div class="layui-card"> <div class="layui-form layui-card-header layuiadmin-card-header-auto"> <div class="layui-form-item"> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label" style="width: 60px;">入库å•å·</label> <div class="layui-input-inline" style="margin-right: 0;"> <input type="text" id="ASNNo" name="ASNNo" placeholder="入库å•å·" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label" style="width: 60px;">ç®± å·</label> <div class="layui-input-inline" style="margin-right: 0;"> <input type="text" id="BoxNo" name="BoxNo" placeholder="ç®±å·" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label" style="width: 60px;">物å“ç¼–ç </label> <div class="layui-input-inline" style="margin-right: 0;"> <input type="text" id="SkuNo" name="SkuNo" placeholder="物料编ç " autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label" style="width: 60px;">批次å·</label> <div class="layui-input-inline" style="margin-right: 0;"> <div class="layui-input-inline" style="margin-right: 0;"> <input type="text" id="LotNo" name="LotNo" placeholder="批次å·" autocomplete="off" class="layui-input"> </div> </div> </div> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label" style="width: 60px;">供货批次</label> <div class="layui-input-inline" style="margin-right: 0;"> <div class="layui-input-inline" style="margin-right: 0;"> <input type="text" id="SupplierLot" name="SupplierLot" placeholder="供货批次" autocomplete="off" class="layui-input"> </div> </div> </div> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label">æ ‡ç¾çжæ€</label> <div class="layui-input-inline" style="margin-right: 0;"> <div class="layui-input-inline" style="margin-right: 0;"> <select name="Status" id="Status" lay-filter="Status" lay-search> <option value=""></option> <option value="0">未组托</option> <option value="1">已组托</option> <option value="2">已入库</option> </select> </div> </div> </div> <div class="layui-inline" style="margin-right: 0;"> <label class="layui-form-label">生产日期</label> <div class="layui-input-inline"> <input type="text" autocomplete="off" name="ProductionTime" id="ProductionTime" class="layui-input" placeholder="生产日期"> </div> </div> <div class="layui-inline"> <button class="layui-btn layui-btn-sm layuiadmin-btn-list" lay-submit lay-filter="LAY-app-contlist-search"> <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>æœç´¢ </button> <button class="layui-btn layui-btn-sm layuiadmin-btn-list layui-btn-normal buDaLabelClass" style="margin-left: 5px;" lay-event="BuDaLabel" id="BuDaLabel"> <i class="layui-icon layui-icon-print layuiadmin-button-btn"></i>è¡¥æ‰“æ ‡ç¾ </button> <button class="layui-btn layui-btn-sm layuiadmin-btn-list layui-btn-danger delLabelClass" style="margin-left: 5px;" lay-event="delLabel" id="delLabel"> <i class="layui-icon layui-icon-delete layuiadmin-button-btn"></i>åˆ é™¤æ ‡ç¾ </button> </div> <!-- 确认出库å£å¼¹çª— --> <div class="layui-inline" id="divDelLotNo" style="display: none; padding-top: 10px;"> <div class="layui-inline"> <label class="layui-form-label">å…¥åº“å•æ®</label> <div class="layui-input-inline" style="width: 220px;"> <input type="text" id="AsnNoSelect" name="AsnNoSelect" placeholder="å…¥åº“å•æ®" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-inline DivLoadingArea" style="margin-top: 10px;"> <label class="layui-form-label">批次å·</label> <div class="layui-input-inline" style="width: 220px;"> <select name="LotNoSelect" id="LotNoSelect" lay-search> <option value=""></option> </select> </div> </div> </div> </div> </div> <div class="layui-card-body"> <div class="position-relative"> <table id="Box-list" lay-filter="Box-list"></table> <div class="headerSetIcon"> <button class="layui-btn layui-btn-primary layui-btn-sm" data-type="customCols"> <i class="layui-icon"></i> </button> </div> <script type="text/html" id="templetProductionTime"> {{# function GetBtn3(d){ return formatDate2(d.ProductionTime); } }} {{ GetBtn3(d) }} </script> <script type="text/html" id="templetExpirationTime"> {{# function GetBtn4(d){ return formatDate2(d.ExpirationTime); } }} {{ GetBtn4(d) }} </script> <script type="text/html" id="templetStoreTimeTime"> {{# function GetBtn5(d){ return formatDate2(d.StoreTimeTime); } }} {{ GetBtn5(d) }} </script> <script type="text/html" id="templetCompleteTime"> {{# function GetBtn6(d){ return formatDate(d.CompleteTime); } }} {{ GetBtn6(d) }} </script> <script type="text/html" id="templetStatus"> {{# function GetBtn7(d){ switch (d.Status) { case "0": return '<button class="layui-btn layui-btn-radius layui-btn-xs">未组托</button>'; case "1": return '<button class="layui-btn layui-btn-radius layui-btn-xs layui-btn-danger ">已组托</button>'; case "2": return '<button class="layui-btn layui-btn-radius layui-btn-xs layui-btn-normal ">已入库</button>'; default: return ""; } } }} {{ GetBtn7(d) }} </script> <script type="text/html" id="templetInspectMark"> {{# function GetBtn9(d){ switch (d.InspectMark) { case "0": return '<button class="layui-btn layui-btn-radius layui-btn-xs">å¦</button>'; case "1": return '<button class="layui-btn layui-btn-radius layui-btn-xs layui-btn-danger ">是</button>'; default: return ""; } } }} {{ GetBtn9(d) }} </script> <script type="text/html" id="templetBitBoxMark"> {{# function GetBtn10(d){ switch (d.BitBoxMark) { case "0": return '<button class="layui-btn layui-btn-radius layui-btn-xs">å¦</button>'; case "1": return '<button class="layui-btn layui-btn-radius layui-btn-xs layui-btn-danger ">是</button>'; default: return ""; } } }} {{ GetBtn10(d) }} </script> <script type="text/html" id="templetCreateTime"> {{# function GetBtn8(d){ return formatDate(d.CreateTime); } }} {{ GetBtn8(d) }} </script> </div> <!-- <script type="text/html" id="toolbarDemo"> <button style="margin-right: 5px;" class="layui-btn layui-btn-sm layuiadmin-btn-list addClass" lay-event="add" > <i class="layui-icon"></i>æ·»åŠ </button> <button style="margin-right: 5px;" id="daoru" class="layui-btn layui-btn-sm layuiadmin-btn-list DaoRuClass" lay-event="import" > <i class="layui-icon"></i>导入 </button> </script> --> <script type="text/html" id="toolbarDemoList"> {{# function GetBtn2(d){ var html = ''; if(d.Origin == "WMS生æˆ" || d.Status == "0"){ html = `<a class="layui-btn layui-btn-danger layui-btn-xs delClass" lay-event="del"> <i class="layui-icon layui-icon-delete"></i>åˆ é™¤</a>`; } return html; } }} {{ GetBtn2(d) }} </script> </div> </div> </div> <script src="../../layuiadmin/layui/layui.js"></script> <script src="../../js/public.js"></script> <script src="../../js/jquery-3.5.1.min.js"></script> <script src="../../js/jquery.cookie.js"></script> <script> layui.extend({ excel: '../../layuiadmin/layui/layui_exts/excel' // {/}çš„æ„æ€å³ä»£è¡¨é‡‡ç”¨è‡ªæœ‰è·¯å¾„,å³ä¸è·Ÿéš base 路径 }) layui.config({ base: '../../layuiadmin/' //陿€èµ„æºæ‰€åœ¨è·¯å¾„ }).extend({ index: 'lib/index' //䏻入壿¨¡å— }).use(['index', 'form', 'layer', 'table', 'laydate', 'upload', 'excel'], function () { var form = layui.form, table = layui.table, layer = layui.layer, laydate = layui.laydate; var upload = layui.upload; laydate.render({ elem: '#ProductionTime' , format: 'yyyy-MM-dd' //å¯ä»»æ„ç»„åˆ }); // æœç´¢æ–¹æ³• form.on('submit(LAY-app-contlist-search)', function (data) { bindTable(); }); // 页é¢åŠ è½½ç»‘å®šTable bindTable(); //ç”Ÿæˆ $('#BuDaLabel').on('click', function () { layer.open({ type: 2, title: '打å°', content: 'LabelBoxBuDa.html', maxmin: true, area: ['430px', '390px'], // btn: ['å–æ¶ˆ'] }); }); $("#AsnNoSelect").on('input', function () { if ($("#AsnNoSelect").val() == "" || $("#AsnNoSelect").val().length < 16) { return } if ($("#AsnNoSelect").val().length >= 16) { $("#AsnNoSelect").val($("#AsnNoSelect").val().substr(-16)) } GetLotNoByAsnNo() }) function GetLotNoByAsnNo() { $("#LotNoSelect").empty() $("#LotNoSelect").append('<option value =>' + '</option>'); form.render('select'); var param = { asnNo: $("#AsnNoSelect").val(), }; sendData(IP + "/BllAsn/GetLotNoListByAsn", param, 'get', function(res) { if (res.code == 0) { //æˆåŠŸ for (var i = 0; i < res.data.length; i++) { $("#LotNoSelect").append('<option value =' + res.data[i] + '>' + res.data[i] + '</option>'); } form.render('select'); } else { //䏿ˆåŠŸ layer.msg(res.msg, { icon: 2, time: 3000 //2ç§’å…³é—(如果ä¸é…置,默认是3秒) }, function() { }); } }); } //åˆ é™¤æ ‡ç¾ $('#delLabel').on('click', function () { layer.open({ type: 1, title: 'åˆ é™¤æ ‡ç¾', content: $('#divDelLotNo'), maxmin: false, area: ['350px','340px'], btn: ['确定', 'å–æ¶ˆ'], yes: function(index, layero) { var param = { AsnNo: $('#AsnNoSelect').val(), LotNo: $('#LotNoSelect').val(), }; sendData(IP + "/BllAsn/DelLabelByAsnNo", param, 'post', function(res) { if (res.code == 0) { //æˆåŠŸ bindTable(); layer.msg(res.msg, { icon: 1, time: 1500 //1ç§’å…³é—(如果ä¸é…置,默认是3秒) }, function() { $('#AsnNoSelect').val(""); $("#LotNoSelect").empty() $("#LotNoSelect").append('<option value =>' + '</option>'); form.render('select'); }); } else { //䏿ˆåŠŸ layer.msg(res.msg, { icon: 2, time: 3000 //2ç§’å…³é—(如果ä¸é…置,默认是3秒) }, function() { bindTable(); $('#AsnNoSelect').val(""); $("#LotNoSelect").empty() $("#LotNoSelect").append('<option value =>' + '</option>'); form.render('select'); }); } layer.close(index); }); } }); }); // // åˆ é™¤ç®±æ”¯ä¿¡æ¯ // table.on('tool(Box-list)', function (obj) { // var data = obj.data; // switch (obj.event) { // case "del": // layer.confirm('ç¡®å®šåˆ é™¤ç®±æ”¯æ˜Žç»†å—?', function (index) { // // 代ç 区域 // var param = { // Id: data.Id, // Status: "0", // }; // console.log(param); // sendData(IP + "/BllAsn/DelBllBoxInfo", param, 'post', function (res) { // if (res.code == 0) { //æˆåŠŸ // layer.msg(res.msg, { // icon: 1, // time: 2000 //2ç§’å…³é—(如果ä¸é…置,默认是3秒) // }, function () { // bindTable(); // doing = true // }); // } else { //䏿ˆåŠŸ // layer.msg(res.msg, { // icon: 2, // time: 2000 //2ç§’å…³é—(如果ä¸é…置,默认是3秒) // }, function () { doing = true }); // } // }); // }); // break; // default: break; // } // }); //#region 事件方法 // 查询录入的箱支关系 //#region 自定义表头 var TotalColsArr = [[ { field: 'ASNNo', title: '入库å•å·', align: 'center',fixed: 'left', width: 180, "disabled": true }, { field: 'BoxNo', title: 'ç®±å·', align: 'center', fixed: 'left', width: 220, "disabled": true }, { field: 'BoxNo2', title: 'ç›’å·', align: 'center', fixed: 'left', width: 220, }, { field: 'BoxNo3', title: '支å·', align: 'center', fixed: 'left', width: 220, "disabled": true }, { field: 'SkuNo', title: '物料编ç ', align: 'center', fixed: 'left', width: 140, "disabled": true }, { field: 'SkuName', title: '物料åç§°', align: 'center', width: 240, }, { field: 'Qty', title: 'æ•°é‡', align: 'center', width: 100, }, { field: 'FullQty', title: '整箱数é‡', align: 'center', width: 100, }, { field: 'SamplingQty', title: 'å–æ ·æ•°é‡', align: 'center', width: 100, }, { field: 'LotNo', title: '批次å·', align: 'center', width: 155, }, { field: 'LotText', title: '批次æè¿°', align: 'center', width: 165 }, { field: 'SupplierLot', title: '供货批次', align: 'center', width: 155 }, { field: 'Status', title: '状æ€', align: 'center', templet: '#templetStatus', width: 90 }, { field: 'Standard', title: 'è§„æ ¼/åž‹å·', align: 'center', width: 165 }, { field: 'PackageStandard', title: 'åŒ…è£…è§„æ ¼', align: 'center', width: 165 }, { field: 'ProductionTime', title: '生产日期', align: 'center', width: 160, templet: '#templetProductionTime' }, { field: 'ExpirationTime', title: '过期日期', align: 'center', width: 160, templet: '#templetExpirationTime' }, { field: 'StoreTime', title: 'å‚¨å˜æœŸè‡³', align: 'center', width: 160, templet: '#templetStoreTime' }, { field: 'CompleteTime', title: 'å®Œæˆæ—¥æœŸ', align: 'center', width: 160, templet: '#templetCompleteTime' }, {field: 'InspectMark',title: 'æŠ½æ£€æ ‡è®°',align: 'center',templet: '#templetInspectMark',width: 90}, {field: 'BitBoxMark',title: 'é›¶ç®±æ ‡è®°',align: 'center',templet: '#templetBitBoxMark',width: 90}, {field: 'Origin',title: 'æ¥æº',align: 'center',width: 90}, { field: 'CreateUserName', title: '创建人', align: 'center', width: 100 }, { field: 'CreateTime', title: '创建时间', align: 'center', width: 160, templet: '#templetCreateTime' }, //{ field: 'caozuo', title: 'æ“作', fixed: 'right', width: 100, align: 'center', toolbar: '#toolbarDemoList', "disabled": true } ]]; //urlç¼–ç var TotalColsSysArr = encodeURIComponent(encodeURIComponent(JSON.stringify(TotalColsArr)))//将表头数æ®è¿›è¡Œurlç¼–ç //#endregion function bindTable() { //#region 自定义表头 var colsJson var param1 = { Href: 'BllAsn/GetLabelBoxList' }; sendData(IP + "/Sys/GetTableColsByUserId", param1, 'post', function (res) { if (res.code == 0) { if (res.data == '' || res.data == undefined || res.data == null) { colsJson = TotalColsArr } else { colsJson = eval(res.data); } } else { colsJson = TotalColsArr } var param = { AsnNo:$("#ASNNo").val(), BoxNo: $("#BoxNo").val(), Status: $("#Status").val(), SkuNo: $("#SkuNo").val(), LotNo: $("#LotNo").val(), ProductionTime: $("#ProductionTime").val(), SupplierLot: $("#SupplierLot").val(), }; table.render({ elem: '#Box-list', url: IP + "/BllAsn/GetLabelBoxList", method: 'POST', height: 'full-136', id: 'Box-list', where: param, contentType: 'application/json', defaultToolbar: [], //'filter','print', 'exports' headers: { ToKen: $.cookie('token') }, page: true, even: true, limit: pageCnt, limits: pageLimits, cellMinWidth: 60, //全局定义常规å•å…ƒæ ¼çš„æœ€å°å®½åº¦ï¼Œlayui 2.2.1 新增 done: function (res) { setRight(); //自定义列宽 SetTableColW('Box-list', 'BllAsn/GetLabelBoxList', TotalColsSysArr); }, cols: colsJson }); }); //#endregion } // æƒé™è®¾ç½® function setRight() { $(function () { $(".buDaLabelClass").hide(); $(".delLabelClass").hide(); }); sendData(IP + "/Basis/GetRoleRightList", {}, 'get', function (res) { if (res.code == 0) { //æˆåŠŸ for (var k = 0; k < res.data.length; k++) { if (res.data[k].MenuName == "è¡¥æ‰“æ ‡ç¾") { $(function () { $(".buDaLabelClass").show(); }); } if (res.data[k].MenuName == "åˆ é™¤æ ‡ç¾") { $(function () { $(".delLabelClass").show(); }); } } } else { //䏿ˆåŠŸ layer.msg('èŽ·å–æƒé™ä¿¡æ¯å¤±è´¥', { icon: 2, time: 2000 //2ç§’å…³é—(如果ä¸é…置,默认是3秒) }, function () { }); } }); } //#region 自定义表头 //自定义表头 active = { customCols: function () { layer.open({ type: 2, title: '自定义列', content: '../SystemSettings/HeaderSetting.html?Href=BllAsn/GetLabelBoxList&ColsSysArr=' + TotalColsSysArr, maxmin: false, resize: false, area: ['970px', '650px'] }); }, }; $('.layui-btn').on('click', function () { var type = $(this).data('type'); active[type] ? active[type].call(this) : ''; }); //#endregion }) </script> </body> </html>