<!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">&#xe610;</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">&#xe654;</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">&#xe654;</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>