From bec134656a5a8057435d77f5f8154928fb2625f9 Mon Sep 17 00:00:00 2001
From: bklLiudl <673013083@qq.com>
Date: 星期三, 17 七月 2024 15:57:44 +0800
Subject: [PATCH] 更改sql写法

---
 HTML/views/ASNSetting/ArrivalNoticeDetail.html        |   68 +--
 HTML/views/ASNSetting/SelMaterials.html               |  502 ++++++++++++-------------
 Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs          |  108 ++++-
 Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs       |  416 +++++++++++++--------
 Wms/Wms/Controllers/BllAsnController.cs               |    4 
 Wms/WMS.Entity/BllAsnEntity/BllArrivalNoticeDetail.cs |    8 
 6 files changed, 603 insertions(+), 503 deletions(-)

diff --git a/HTML/views/ASNSetting/ArrivalNoticeDetail.html b/HTML/views/ASNSetting/ArrivalNoticeDetail.html
index 3c7406f..c8893fe 100644
--- a/HTML/views/ASNSetting/ArrivalNoticeDetail.html
+++ b/HTML/views/ASNSetting/ArrivalNoticeDetail.html
@@ -25,14 +25,22 @@
 		.layui-table-mend {
 			position: relative;
 		}
+
 		.input-dis {
-			position: absolute; /* 璁剧疆涓虹粷瀵瑰畾浣� */
-			top: -25%; /* 椤堕儴瀵归綈 */
-			right: 0; /* 鍙充晶瀵归綈 */
-			bottom: 0; /* 搴曢儴瀵归綈 */
-			left: 0; /* 宸︿晶瀵归綈 */
-			width: 100%; /* 瀹藉害璁剧疆涓�100% */
-			height: 150%; /* 楂樺害璁剧疆涓�100% */
+			position: absolute;
+			/* 璁剧疆涓虹粷瀵瑰畾浣� */
+			top: -25%;
+			/* 椤堕儴瀵归綈 */
+			right: 0;
+			/* 鍙充晶瀵归綈 */
+			bottom: 0;
+			/* 搴曢儴瀵归綈 */
+			left: 0;
+			/* 宸︿晶瀵归綈 */
+			width: 100%;
+			/* 瀹藉害璁剧疆涓�100% */
+			height: 150%;
+			/* 楂樺害璁剧疆涓�100% */
 			background-color: transparent;
 			border: none;
 			text-align: center;
@@ -59,26 +67,11 @@
 			<label class="layui-form-label">鍗曟嵁绫诲瀷</label>
 			<div class="layui-input-inline">
 				<select name="Type" id="Type" lay-filter="Type" lay-search>
-					<!-- JC23 -->
 					<option value="0">鎴愬搧鍏ュ簱</option>
 					<option value="1">閲囪喘鍏ュ簱</option>
-					<option value="4">杞﹂棿浣欐枡閫�鍥炲叆搴�</option>
-					<option value="5">鍏跺畠鍏ュ簱</option>
-					<option value="6">浠e偍鍏ュ簱</option>
-					<!-- <option value=""></option> -->
-					<!-- JC24 -->
-					<!-- <option value="0" selected>鎴愬搧鍏ュ簱</option>
-					<option value="1">閲囪喘鍏ュ簱</option>
-					<option value="2">涓棿鍝佸叆搴�</option> -->
-					<!-- <option value="3">閫�璐у叆搴�</option> -->
-					<!-- <option value="4">杞﹂棿浣欐枡閫�鍥炲叆搴�</option>
-					<option value="5">鍏跺畠鍏ュ簱</option>
-					<option value="6">浠e偍鍏ュ簱</option>
-					<option value="7">瀵勫瓨鍏ュ簱</option> -->
-					<!-- JC08 -->
-					<!-- <option value="0">鎴愬搧鍏ュ簱</option>
-					<option value="1">鍘熸枡鍏ュ簱</option>
-					<option value="2">閫�璐у叆搴�</option> -->
+					<option value="2">涓棿鍝佸叆搴�</option>
+					<option value="3">閫�璐у叆搴�</option>
+					<option value="4">浣欐枡閫�鍥炲叆搴�</option>
 				</select>
 			</div>
 
@@ -259,7 +252,7 @@
 							if (elem.data('value') != '' && elem.data('value') != undefined) {
 								elem.val(elem.data('value')).parents('table.layui-table-cell').css('overflow', 'visible');
 							}
-						});						
+						});
 						form.render();
 						//鑷畾涔夊垪瀹�
 						SetTableColW('LAY-app-content-list', 'BllAsn/GetArrivalNoticeDetailList2', TotalColsSysArr);
@@ -409,29 +402,6 @@
 					}
 				}
 			})
-
-			// var IsBaleValue = "";
-			// form.on('switch(IsBaleDemo)', function (obj) {
-			// 	layer.tips(this.value + ' ' + this.name + '锛�' + obj.elem.checked, obj.othis);
-			// 	if (obj.elem.checked) {
-			// 		IsBaleValue = "1";
-			// 	} else {
-			// 		IsBaleValue = "0";
-			// 	}
-			// });
-
-			// table.on('row(LAY-app-content-list)', function (obj) {
-			// 	if (IsBaleValue != "") {
-			// 		for (var j in arr) {
-			// 			if (obj.data.SkuNo == arr[j].SkuNo) {
-			// 				arr[j].IsBale = IsBaleValue;
-			// 				IsBaleValue = ""
-			// 				break;
-			// 			}
-			// 		}
-			// 	}
-
-			// })
 
 			// 鍒犻櫎鍏ュ簱鍗曟槑缁�
 			table.on('tool(LAY-app-content-list)', function (obj) {
diff --git a/HTML/views/ASNSetting/SelMaterials.html b/HTML/views/ASNSetting/SelMaterials.html
index 574025d..f6b7452 100644
--- a/HTML/views/ASNSetting/SelMaterials.html
+++ b/HTML/views/ASNSetting/SelMaterials.html
@@ -1,283 +1,271 @@
 <!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">
-	</head>
-	<body>
 
-		<div class="layui-fluid">
-			<div class="layui-card">
-				<div class="layui-form layui-card-header layuiadmin-card-header-auto">
-					<div class="layui-form-item">
-						<div class="layui-inline">
-							<label class="layui-form-label">鍏抽敭瀛�</label>
-							<div class="layui-input-inline">
-								<input type="text" id="Msg" name="Msg" placeholder="缂栫爜/鍚嶇О/瑙勬牸" autocomplete="off" class="layui-input">
-							</div>
-						</div>
-						<div class="layui-inline">
-							<label class="layui-form-label">鍗曟嵁绫诲瀷</label>
-							<div class="layui-input-inline">
-								<select name="Type" id="Type" lay-filter="Type" disabled="disabled"
-									lay-search>
-									<option value="0">鎴愬搧鍏ュ簱</option>
-									<option value="1">閲囪喘鍏ュ簱</option>					
-									<option value="2">涓棿鍝佸叆搴�</option>
-									<option value="3">閫�璐у叆搴�</option>
-									<option value="4">杞﹂棿浣欐枡閫�鍥炲叆搴�</option>
-									<option value="5">鍏跺畠鍏ュ簱</option>
-									<option value="6">浠e偍鍏ュ簱</option>
-									<option value="7">瀵勫瓨鍏ュ簱</option>
-								</select>
-							</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" data-type="setParent">纭畾</button>
+<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">
+</head>
+
+<body>
+
+	<div class="layui-fluid">
+		<div class="layui-card">
+			<div class="layui-form layui-card-header layuiadmin-card-header-auto">
+				<div class="layui-form-item">
+					<div class="layui-inline">
+						<label class="layui-form-label">鍏抽敭瀛�</label>
+						<div class="layui-input-inline">
+							<input type="text" id="Msg" name="Msg" placeholder="缂栫爜/鍚嶇О/瑙勬牸" autocomplete="off"
+								class="layui-input">
 						</div>
 					</div>
-				</div>
-				<div class="layui-card-body">
-					<table id="goods-list" lay-filter="goods-list"></table>
+					<div class="layui-inline">
+						<label class="layui-form-label">鍗曟嵁绫诲瀷</label>
+						<div class="layui-input-inline">
+							<select name="Type" id="Type" lay-filter="Type" disabled="disabled" lay-search>
+								<option value="0">鎴愬搧鍏ュ簱</option>
+								<option value="1">閲囪喘鍏ュ簱</option>
+								<option value="2">涓棿鍝佸叆搴�</option>
+								<option value="3">閫�璐у叆搴�</option>
+								<option value="4">浣欐枡閫�鍥炲叆搴�</option>
+							</select>
+						</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" data-type="setParent">纭畾</button>
+					</div>
 				</div>
 			</div>
+			<div class="layui-card-body">
+				<table id="goods-list" lay-filter="goods-list"></table>
+			</div>
 		</div>
+	</div>
 
-		<script src="../../layuiadmin/layui/layui.js"></script>
-		<script src="../../js/jquery-3.5.1.min.js"></script>
-		<script src="../../js/jquery.cookie.js"></script>
-		<script src="../../js/public.js"></script>
-		
-		<script>
-			layui.config({
-				base: '../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
-			}).extend({
-				index: 'lib/index' //涓诲叆鍙fā鍧�
-			}).use(['index', 'table', 'laypage', 'layer'], function() {
-				var table = layui.table,
-					form = layui.form,
-					laypage = layui.laypage,
-					index1 = parent.layer.getFrameIndex(window.name),
-					layer = layui.layer;
+	<script src="../../layuiadmin/layui/layui.js"></script>
+	<script src="../../js/jquery-3.5.1.min.js"></script>
+	<script src="../../js/jquery.cookie.js"></script>
+	<script src="../../js/public.js"></script>
+
+	<script>
+		layui.config({
+			base: '../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
+		}).extend({
+			index: 'lib/index' //涓诲叆鍙fā鍧�
+		}).use(['index', 'table', 'laypage', 'layer'], function () {
+			var table = layui.table,
+				form = layui.form,
+				laypage = layui.laypage,
+				index1 = parent.layer.getFrameIndex(window.name),
+				layer = layui.layer;
 
 
-				// 鑾峰彇涓婃父椤甸潰鐨勪紶鍊�
-				getQueryString('type');
-				
+			// 鑾峰彇涓婃父椤甸潰鐨勪紶鍊�
+			getQueryString('type');
 
-				function getQueryString(name) {
-					var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
-					var r = window.location.search.substr(1).match(reg);
 
-					if (r != null)
-					{
-						// $("#Type").empty();
-						// if (unescape(r[2]) == 0)
-						// {
-						// 	$("#Type").append('<option value ="0" Selected >鏍囧噯鐗╂枡</option>');
-						// 	$("#Type").append('<option value ="1">闈炴爣鐗╂枡</option>');
-						// }
-						// if (unescape(r[2]) == 1)
-						// {
-						// 	$("#Type").append('<option value ="0">鏍囧噯鐗╂枡</option>');
-						// 	$("#Type").append('<option value ="1" Selected >闈炴爣鐗╂枡</option>');
-						// }
+			function getQueryString(name) {
+				var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
+				var r = window.location.search.substr(1).match(reg);
 
-						
-						$("#Type").val(unescape(r[2])); // "optionValue"涓洪渶瑕佽閫変腑鐨勯�夐」鐨剉alue灞炴�у��
-						form.render('select');
-					} 
+				if (r != null) {
 
-					//return null;
+					$("#Type").val(unescape(r[2])); // "optionValue"涓洪渶瑕佽閫変腑鐨勯�夐」鐨剉alue灞炴�у��
+					form.render('select');
 				}
 
+				//return null;
+			}
 
-				refreshTable();
 
-				var active = {
-				  setParent: function(){
-					var checkStatus = table.checkStatus('goods-list');   
-				    var id = '#LAY-app-content-list',goods = $('#goods-list');
-					if(checkStatus.data.length == 0)
-					{
-					  parent.layer.msg('璇烽�夋嫨寰呭叆搴撶殑鐗╂枡锛�');
-					  return true;
+			refreshTable();
+
+			var active = {
+				setParent: function () {
+					var checkStatus = table.checkStatus('goods-list');
+					var id = '#LAY-app-content-list', goods = $('#goods-list');
+					if (checkStatus.data.length == 0) {
+						parent.layer.msg('璇烽�夋嫨寰呭叆搴撶殑鐗╂枡锛�');
+						return true;
 					}
 					window.parent.success(checkStatus.data);
-				    parent.layer.close(index1);
-				  }
-				};
-				$('.layui-inline .layui-btn').on('click', function(){
-				  var othis = $(this)
-				  ,type = othis.data('type');
-				  active[type] && active[type].call(this);
-				});
-				
-				
-				var tableIns;
-				function refreshTable() {
-					var param = {
-						SkuNo:  $("#Msg").val(),
-						Type: $("#Type").val()
-					};
-
-					sendData(IP + "/BllAsn/GetMaterialsList", param, 'post', function(res) {
-						if (res.code == 0) { //鎴愬姛
-							var list = res.data;
-								$.extend(infoOptions, {
-									data: list
-								});
-								infoOptions.page = {
-									curr: 1
-							}
-							tableIns = table.render(infoOptions);
-						} else { //涓嶆垚鍔�
-							layer.msg('鑾峰彇鐗╂枡淇℃伅澶辫触锛�', {
-								icon: 2,
-								time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
-							}, function() {});
-						}
-					});
-		
+					parent.layer.close(index1);
 				}
-				// 琛ㄥ崟闇�瑕佺殑鍙橀噺
-				var infoOptions = {
-					elem: '#goods-list',
-					height: 'full-100',
-					id: 'goods-list',
-					page: true,
-					limit: pageCnt,
-					limits: pageLimits,
-					cellMinWidth: 80, //鍏ㄥ眬瀹氫箟甯歌鍗曞厓鏍肩殑鏈�灏忓搴︼紝layui 2.2.1 鏂板
-					cols: [
-						[{
-							field: 'SkuId',
-							title: 'Id',
-							type: 'checkbox',
-							width: 100,
-							sort: true,
-							fixed: 'left'
-						}, {
-							field: 'SkuNo',
-							title: '鐗╂枡缂栫爜',
-							width: 100,
-							fixed: 'left'
-						}, {
-							field: 'SkuName',
-							title: '鐗╂枡鍚嶇О',
-							width: 180,
-						},{
-							field: 'Standard',
-							title: '瑙勬牸',
-							align: 'center',
-							width: 180
-						}, {
-							field: 'Type',
-							title: '绫诲瀷',
-							width: 100,
-							templet: function (d) {
-									switch (d.Type) {
-										case "0" : return "鍘熸枡"; 
-										case "1" : return "鍖呮潗"; 
-										case "2" : return "鎴愬搧";
-										case "3" : return "鑰楁潗";
-										case "4" : return "鍗婃垚鍝�";
-										default : return ""; 
-									}
-								}
-						}, {
-							field: 'IsControlled',
-							title: '鏄惁鏍囧噯',					
-							// JC08 title: '鏄惁鍙楁帶',					
-							width: 100,
-							// JC09
-							templet: function (d) {
-									switch (d.IsControlled) {
-										case "0" : return "鏍囧噯"; 
-										case "1" : return "闈炴爣"; 
-										default : return ""; 
-									}
-								},
-							// JC08
-							// templet: function (d) {
-							// 		switch (d.IsBale) {
-							// 			case "0" : return "鍙楁帶"; 
-							// 			case "1" : return "闈炲彈鎺�"; 
-							// 			default : return ""; 
-							// 		}
-							// 	}
-						},{
-							field: 'IsInspect',
-							title: '鏄惁鍏嶆',								
-							width: 100,
-							templet: function (d) {
-									switch (d.IsInspect) {
-										case "0" : return "鍚�"; 
-										case "1" : return "鏄�"; 
-										default : return ""; 
-									}
-								},
-						},{
-							field: 'Origin',
-							title: '鏉ユ簮',								
-							width: 120
-						},{
-							field: 'UnitName',
-							title: '璁¢噺鍗曚綅',
-							width: 100,
-						}, {
-							field: 'PackagName',
-							title: '鍖呰鍚嶇О',
-							width: 120
-						}, {
-							field: 'Environment',
-							title: '瀛樺偍鐜',
-							width: 120,
-							templet: function (d) {
-									switch (d.Environment) {
-										case "0" : return "甯告俯"; 
-										case "1" : return "浣庢俯"; 
-										case "3" : return "骞茬嚗閫氶"; 
-										default : return ""; 
-									}
-								},
-						}, {
-							field: 'Weight',
-							title: '鐞嗚閲嶉噺',
-							width: 100
-						},
-						// {
-						// 	field: 'Price',
-						// 	title: '鐞嗚鍗曚环',
-						// 	width: 100,
-						// 	hide:true
-						// }, 
-						{
-							field: 'Warranty',
-							title: '淇濊川鏈�(澶�)',
-							width: 100
-						},{
-							field: 'GoodsRemark',
-							title: '澶囨敞',
-							width: 160
-						}
-						]
-					],
-		
+			};
+			$('.layui-inline .layui-btn').on('click', function () {
+				var othis = $(this)
+					, type = othis.data('type');
+				active[type] && active[type].call(this);
+			});
+
+
+			var tableIns;
+			function refreshTable() {
+				var param = {
+					SkuNo: $("#Msg").val(),
+					Type: $("#Type").val()
 				};
 
-				//鐩戝惉鎼滅储
-				form.on('submit(LAY-app-contlist-search)', function(data) {
-					refreshTable();
+				sendData(IP + "/BllAsn/GetMaterialsList", param, 'post', function (res) {
+					if (res.code == 0) { //鎴愬姛
+						var list = res.data;
+						$.extend(infoOptions, {
+							data: list
+						});
+						infoOptions.page = {
+							curr: 1
+						}
+						tableIns = table.render(infoOptions);
+					} else { //涓嶆垚鍔�
+						layer.msg('鑾峰彇鐗╂枡淇℃伅澶辫触锛�', {
+							icon: 2,
+							time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+						}, function () { });
+					}
 				});
+
+			}
+			// 琛ㄥ崟闇�瑕佺殑鍙橀噺
+			var infoOptions = {
+				elem: '#goods-list',
+				height: 'full-100',
+				id: 'goods-list',
+				page: true,
+				limit: pageCnt,
+				limits: pageLimits,
+				cellMinWidth: 80, //鍏ㄥ眬瀹氫箟甯歌鍗曞厓鏍肩殑鏈�灏忓搴︼紝layui 2.2.1 鏂板
+				cols: [
+					[{
+						field: 'SkuId',
+						title: 'Id',
+						type: 'checkbox',
+						width: 100,
+						sort: true,
+						fixed: 'left'
+					}, {
+						field: 'SkuNo',
+						title: '鐗╂枡缂栫爜',
+						width: 100,
+						fixed: 'left'
+					}, {
+						field: 'SkuName',
+						title: '鐗╂枡鍚嶇О',
+						width: 180,
+					}, {
+						field: 'Standard',
+						title: '瑙勬牸',
+						align: 'center',
+						width: 180
+					}, {
+						field: 'Type',
+						title: '绫诲瀷',
+						width: 100,
+						templet: function (d) {
+							switch (d.Type) {
+								case "0": return "鍘熸枡";
+								case "1": return "鍖呮潗";
+								case "2": return "鎴愬搧";
+								case "3": return "鑰楁潗";
+								case "4": return "鍗婃垚鍝�";
+								default: return "";
+							}
+						}
+					}, {
+						field: 'IsControlled',
+						title: '鏄惁鏍囧噯',
+						// JC08 title: '鏄惁鍙楁帶',					
+						width: 100,
+						// JC09
+						templet: function (d) {
+							switch (d.IsControlled) {
+								case "0": return "鏍囧噯";
+								case "1": return "闈炴爣";
+								default: return "";
+							}
+						},
+						// JC08
+						// templet: function (d) {
+						// 		switch (d.IsBale) {
+						// 			case "0" : return "鍙楁帶"; 
+						// 			case "1" : return "闈炲彈鎺�"; 
+						// 			default : return ""; 
+						// 		}
+						// 	}
+					}, {
+						field: 'IsInspect',
+						title: '鏄惁鍏嶆',
+						width: 100,
+						templet: function (d) {
+							switch (d.IsInspect) {
+								case "0": return "鍚�";
+								case "1": return "鏄�";
+								default: return "";
+							}
+						},
+					}, {
+						field: 'Origin',
+						title: '鏉ユ簮',
+						width: 120
+					}, {
+						field: 'UnitName',
+						title: '璁¢噺鍗曚綅',
+						width: 100,
+					}, {
+						field: 'PackagName',
+						title: '鍖呰鍚嶇О',
+						width: 120
+					}, {
+						field: 'Environment',
+						title: '瀛樺偍鐜',
+						width: 120,
+						templet: function (d) {
+							switch (d.Environment) {
+								case "0": return "甯告俯";
+								case "1": return "浣庢俯";
+								case "3": return "骞茬嚗閫氶";
+								default: return "";
+							}
+						},
+					}, {
+						field: 'Weight',
+						title: '鐞嗚閲嶉噺',
+						width: 100
+					},
+					// {
+					// 	field: 'Price',
+					// 	title: '鐞嗚鍗曚环',
+					// 	width: 100,
+					// 	hide:true
+					// }, 
+					{
+						field: 'Warranty',
+						title: '淇濊川鏈�(澶�)',
+						width: 100
+					}, {
+						field: 'GoodsRemark',
+						title: '澶囨敞',
+						width: 160
+					}
+					]
+				],
+
+			};
+
+			//鐩戝惉鎼滅储
+			form.on('submit(LAY-app-contlist-search)', function (data) {
+				refreshTable();
 			});
-		</script>
-	</body>
-</html>
+		});
+	</script>
+</body>
+
+</html>
\ No newline at end of file
diff --git a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
index 829458d..93c6c16 100644
--- a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
@@ -8,18 +8,15 @@
 using System.Collections.Generic;
 using System.Linq;
 using System.Linq.Expressions;
-using Model.ModelVm.BllAsnVm;
-using Newtonsoft.Json;
-using Utility.Tools;
+using System.Threading.Tasks;
 using WMS.BLL.LogServer;
 using WMS.DAL;
 using WMS.Entity.BllAsnEntity;
+using WMS.Entity.BllSoEntity;
 using WMS.Entity.Context;
+using WMS.Entity.DataEntity;
 using WMS.Entity.SysEntity;
 using WMS.IBLL.IBllAsnServer;
-using WMS.Entity.BllSoEntity;
-using WMS.Entity.DataEntity;
-using System.Threading.Tasks;
 
 namespace WMS.BLL.BllAsnServer
 {
@@ -68,7 +65,7 @@
                     CustomerName = tb1.CustomerName,
                     LotNo = tb1.LotNo,
                     LotText = tb1.LotText,
-                    CheckTime = tb1.CheckTime.ToString(),
+                    CheckTime = ((DateTime)tb1.CheckTime).ToString("yyyy-MM-dd HH:mm:ss"),
                     CheckUserName = tb5.RealName,
                     SupplierLot = tb1.SupplierLot,
                     Demo = tb1.Demo,
@@ -76,7 +73,7 @@
                     CompleteTime = tb1.CompleteTime,
                     CreateTime = tb1.CreateTime,
                     CreateUserName = tb3.RealName,
-                    UpdateTime = tb1.UpdateTime.ToString(),
+                    UpdateTime = ((DateTime)tb1.UpdateTime).ToString("yyyy-MM-dd HH:mm:ss"),
                     UpdateUserName = tb4.RealName
 
                 }).ToPageListAsync(model.Page, model.Limit, count);
@@ -129,8 +126,8 @@
                      CompleteTime = tb1.CompleteTime,
                      CreateTime = tb1.CreateTime,
                      CreateUserName = tb3.RealName,
-                     UpdateTime = tb1.UpdateTime.ToString(),
-                     UpdateUserName = tb4.RealName
+                     UpdateTime = ((DateTime)tb1.UpdateTime).ToString("yyyy-MM-dd HH:mm:ss"),
+                    UpdateUserName = tb4.RealName
                  }).ToPageListAsync(model.Page, model.Limit, count);
 
             return modelList;
@@ -165,49 +162,32 @@
             {
                 string skuType = string.Empty;
                 int IsPack = 2; // 0锛氫笉璐� 1锛氳创 2锛氫笉绠�
-                /**
-                 * 鎴愬搧璐� 		0
-                 * 閲囪喘鍙创鍙笉璐�	1
+                /** model.type 锛堝崟鎹被鍨�)
+                 * 鎴愬搧鍏ュ簱     0
+                 * 閲囪喘鍏ュ簱 	1
                  * 涓棿鍝佷笉璐�	2
-                 * 閫�璐ц创		3
-                 * 浣欐枡閫�鍥炲彲璐村彲涓嶈创	4
-                 * 鍏跺畠鍙创鍙笉璐�	5
-                 * 浠e偍涓嶈创		6
-                 * 瀵勫瓨涓嶈创		7
+                 * 閫�璐у叆搴�		3
+                 * 浣欐枡閫�鍥炲叆搴�	4
                  */
                 switch (model.Type)//0锛氬師鏂� 1锛氬寘鏉� 2锛氭垚鍝� 3锛氳�楁潗 4锛氬崐鎴愬搧
                 {
                     case "0"://鎴愬搧鍏ュ簱
                         skuType = "(2)";
-                        IsPack = 1; //璐�
                         break;
                     case "1"://閲囪喘鍏ュ簱
                         skuType = "(0,1,3)";
                         break;
                     case "2"://涓棿鍝佸叆搴�
                         skuType = "(4)";
-                        IsPack = 0; //涓嶈创
                         break;
                     case "3"://閫�璐у叆搴�
-                        skuType = "(0,2)";
-                        IsPack = 1; //璐�
+                        skuType = "(2)";
                         break;
                     case "4"://杞﹂棿浣欐枡閫�鍥炲叆搴�
-                        skuType = "(0,1,3)";
-                        break;
-                    case "5"://鍏跺畠鍏ュ簱
-                        skuType = "(0,1,2,3,4)";
-                        break;
-                    case "6"://浠e偍鍏ュ簱
-                        skuType = "(2)";
-                        IsPack = 0; //涓嶈创
-                        break;
-                    case "7"://瀵勫瓨鍏ュ簱
-                        //skuType = "(3)";
-                        IsPack = 0; //涓嶈创
+                        skuType = "(0,1,2,3)";
                         break;
                     default: //鍏跺畠
-                        //skuType = "(0,1,2,3,4)";
+                        skuType = "(0,1,2,3,4)";
                         break;
                 }
 
@@ -229,8 +209,6 @@
                     .Includes(x => x.UnitInfo)
                     .Includes(x => x.PackagInfo)
                     .ToList();
-
-
 
                 return data.Select(m => new MaterialsDto()
                 {
@@ -266,10 +244,15 @@
         public string AddArrivalNotice(ArrivalNoticeVm model)
         {
             string strMessage = "";
-            string sqlString = string.Empty;
-            string sqlDetailStr = string.Empty;
-            //0锛氭垚鍝佸叆搴� 1锛氶噰璐叆搴� 2锛氫腑闂村搧鍏ュ簱 3锛氶��璐у叆搴� 4锛氳溅闂翠綑鏂欏叆搴� 5锛氬叾瀹冨叆搴� 6锛氫唬鍌ㄥ叆搴� 7锛氬瘎瀛樺叆搴�
-            var TypeLot = "1, 5, 6, 7"; //鎵规鍙负绌哄崟鎹被鍨�
+
+            /** model.type 锛堝崟鎹被鍨�)
+            * 鎴愬搧鍏ュ簱     0
+            * 閲囪喘鍏ュ簱 	1
+            * 涓棿鍝佷笉璐�	2
+            * 閫�璐у叆搴�		3
+            * 浣欐枡閫�鍥炲叆搴�	4
+            */
+            var TypeLot = "1, 5, 6, 7";         //鎵规鍙负绌哄崟鎹被鍨�
 
             try
             {
@@ -291,14 +274,23 @@
                 
                 lock (AsnLock)
                 {
-                    sqlString += "Insert into BllArrivalNotice (ASNNo,Type,Origin,CustomerNo,";
-                    sqlString += "CustomerName,LotNo,LotText,SupplierLot,CreateUser) values ( ";
-                    sqlString += $"'{model.ASNNo}','{model.Type}','{model.Origin}','{model.CustomerNo}', ";
-                    sqlString += $"'{model.CustomerName}','{model.LotNo}','{model.LotText}','{model.SupplierLot}','{model.CreateUser}');";
+                    // 鎬昏〃瀹炰綋璧嬪��
+                    BllArrivalNotice ASNModel = new BllArrivalNotice()
+                    {
+                        ASNNo = model.ASNNo,
+                        Type = model.Type,
+                        Origin = model.Origin,
+                        CustomerNo = model.CustomerNo,
+                        CustomerName = model.CustomerName,
+                        Status = "0",
+                        LotNo = model.LotNo,
+                        LotText = model.LotText,
+                        SupplierLot = model.SupplierLot,                     
+                        CreateUser = (int)model.CreateUser
+                    };
 
-                    var detailModels = model.AsnDetail;
-                
-                    foreach (ArrivalNoticeDetailVm detailModel in detailModels)
+                    List<BllArrivalNoticeDetail> details = new List<BllArrivalNoticeDetail>();
+                    foreach (ArrivalNoticeDetailVm detailModel in model.AsnDetail)
                     {
                         if (string.IsNullOrEmpty(detailModel.SkuNo))
                         {
@@ -315,8 +307,7 @@
                             strMessage = "-1:鏁伴噺蹇呴』澶т簬0;";
                             continue;
                         }
-                        //鍒ゆ柇鏄惁涓洪噰璐叆搴撳崟鎹垨杞﹂棿浣欐枡閫�鍥炲叆搴�
-                        // 0锛氭垚鍝佸叆搴� 1锛氶噰璐叆搴� 2锛氫腑闂村搧鍏ュ簱 3锛氶��璐у叆搴� 4锛氳溅闂翠綑鏂欓��鍥炲叆搴� 5锛氬叾瀹冨叆搴� 6锛氫唬鍌ㄥ叆搴� 7锛氬瘎瀛樺叆搴�
+
                         if (model.Type == "1" || model.Type == "5" || model.Type == "6" || model.Type == "7")
                         {
                             if (!string.IsNullOrWhiteSpace(detailModel.LotNo))
@@ -356,10 +347,14 @@
                                 throw new Exception("褰撳墠鍗曟嵁绫诲瀷鎵规涓嶅彲涓虹┖!");
                             }
                         }
+
                         // 鍒ゆ柇鏄惁宸插瓨鍦ㄥ綋鍓嶆槑缁�
-                        string sqlCount = $"SELECT COUNT(ID) FROM BllArrivalNoticeDetail where ASNNo = '{model.ASNNo}' ";
-                        sqlCount += $"and SkuNo ='{detailModel.SkuNo}' and LotNo = '{detailModel.LotNo}' and id != '{detailModel.Id}' and isdel = '0';";
-                        var com = new Common().GetRowCount(sqlCount);
+                        int com = Db.Queryable<BllArrivalNoticeDetail>()
+                            .Where(m => m.ASNNo == model.ASNNo 
+                            && m.SkuNo == detailModel.SkuNo 
+                            && m.LotNo == detailModel.LotNo 
+                            && m.Id != (int)detailModel.Id 
+                            && m.IsDel == "0").ToList().Count();
                         if (com > 0)
                         {
                             strMessage = "-1:鐗╂枡鍜屾壒娆″彿閲嶅;";
@@ -371,26 +366,54 @@
                         }
                         // 璁$畻鍑烘�婚噾棰�
                         detailModel.Money = detailModel.Price * detailModel.Qty;
-                        sqlDetailStr += "Insert into BllArrivalNoticeDetail (ASNNo,SkuNo,SkuName,Standard,";
-                        sqlDetailStr += "LotNo,LotText,Qty,PackagNo,Price,Money,IsBale,IsBelt,SupplierLot,Status,IsSampling,InspectStatus,UDF1,UDF2,UDF3,UDF4,UDF5,CreateUser) values ( ";
-                        sqlDetailStr += $"'{model.ASNNo}','{detailModel.SkuNo}','{detailModel.SkuName}','{detailModel.Standard}', ";
-                        sqlDetailStr += $"'{detailModel.LotNo.Trim()}','{detailModel.LotText}','{detailModel.Qty}','{detailModel.PackagNo}','{detailModel.Price}', ";
-                        sqlDetailStr += $"{detailModel.Money},'{detailModel.IsBale}','{detailModel.IsBelt}','{detailModel.SupplierLot}','0','0','0','{detailModel.UDF1}','{detailModel.UDF2}','{detailModel.UDF3}','{detailModel.UDF4}','{detailModel.UDF5}','{model.CreateUser}');";
-                    }
+                        BllArrivalNoticeDetail detail = new BllArrivalNoticeDetail()
+                        {
+                            ASNNo = model.ASNNo,
+                            SkuNo = detailModel.SkuNo,
+                            SkuName = detailModel.SkuName,
+                            Standard = detailModel.Standard,
+                            LotNo = detailModel.LotNo.Trim(),
+                            LotText = detailModel.LotText,
+                            Qty = (decimal)detailModel.Qty,
+                            PackagNo = detailModel.PackagNo,
+                            FactQty = 0,                        // 宸茬粍鏁伴噺
+                            CompleteQty = 0,                    // 瀹屾垚鏁伴噺
+                            Price = detailModel.Price,
+                            Money = detailModel.Money,
+                            IsBale = detailModel.IsBale,
+                            IsBelt = detailModel.IsBelt,
+                            SupplierLot = detailModel.SupplierLot,
+                            Status = "0",
+                            IsSampling = "0",
+                            InspectStatus = "0",
+                            UDF1 = detailModel.UDF1,
+                            UDF2 = detailModel.UDF2,
+                            UDF3 = detailModel.UDF3,
+                            UDF4 = detailModel.UDF4,
+                            UDF5 = detailModel.UDF5,
+                            CreateUser = (int)model.CreateUser,
+                        };
 
-                    if (sqlDetailStr == string.Empty)
+                        details.Add(detail);
+                    }
+                    
+                    // 鍒ゆ柇鏄惁瀛樺湪琚繃婊ゆ帀鐨勬槑缁�
+                    if (details.Count <= 0)
                     {
                         return strMessage;
                     }
+
                     Db.Ado.BeginTran();
 
-                    int rowCount = Db.Ado.ExecuteCommand(sqlString);
-                    var rowDetailCount = 1;
-                    if (sqlDetailStr.Length > 0)
+                    var rowCount = Db.Insertable(ASNModel).ExecuteCommand();
+
+                    var rowDetailCount = 0;
+                    if (details.Count  > 0)
                     {
-                        rowDetailCount = Db.Ado.ExecuteCommand(sqlDetailStr);
+                        rowDetailCount = Db.Insertable(details).ExecuteCommand();
                     }
                     Db.Ado.CommitTran();
+
                     if (rowCount > 0 && rowDetailCount > 0)
                     {
                         new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", model.ASNNo, "娣诲姞", $"娣诲姞浜嗗崟鎹彿涓簕model.ASNNo}鐨勫崟鎹俊鎭�", Convert.ToInt32(model.CreateUser));
@@ -427,29 +450,31 @@
                     //7 蹇呴』涓虹┖
                     var TypeLot = "1, 5, 6, 7"; //鎵规涓虹敓鎴愭壒娆″崟鎹被鍨�
                     
-                    //if (model.Origin != "褰曞叆")
-                    //{
-                    //    strMessage = "-1:涓婃父绯荤粺涓嬪彂鐨勫崟鎹紝涓嶅彲缂栬緫;";
-                    //    return strMessage;
-                    //}
-                
-                    sqlString += $"select * from BllArrivalNotice where ASNNo = '{model.ASNNo}' and isDel = '0';";
-                    var asnInfo = Db.Ado.SqlQuery<BllArrivalNotice>(sqlString).FirstOrDefault();
+                    var asnInfo = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == model.ASNNo && m.IsDel == "0");
+                    if (asnInfo == null) 
+                    {
+                        strMessage = "-1:鍗曞彿涓嶅瓨鍦紝鎴栧凡鍒犻櫎!;";
+                        return strMessage;
+                    }
                     if (asnInfo.Status != "0")
                     {
                         strMessage = "-1:鍗曟嵁鐘舵�佸彉鏇达紝涓嶅彲缂栬緫;";
                         return strMessage;
                     }
 
-                    sqlString = "UPDATE BllArrivalNotice SET ";
-                    sqlString += $"CustomerNo = '{model.CustomerNo}',CustomerName = '{model.CustomerName}',";
-                    sqlString += $"LotNo = '{model.LotNo}',LotText = '{model.LotText}',";
-                    sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                    sqlString += $"WHERE ASNNo = '{model.ASNNo}'";
+                    var dateTime = DateTime.Now;
+                    // 缂栬緫鎬诲崟
+                    asnInfo.CustomerNo = model.CustomerNo;
+                    asnInfo.CustomerName = model.CustomerName;
+                    asnInfo.LotNo = model.LotNo;
+                    asnInfo.LotText = model.LotText;
+                    asnInfo.UpdateTime = dateTime;
+                    asnInfo.UpdateUser = model.CreateUser;
 
                     var detailModels = model.AsnDetail;
                     sqlDetailStr += $"SELECT * FROM BllArrivalNoticeDetail WHERE ASNNo = '{model.ASNNo}' and isDel = '0';";
-                    var dbDetailModels = DataContext.Db.Ado.SqlQuery<BllArrivalNoticeDetail>(sqlDetailStr);
+                    //var dbDetailModels = DataContext.Db.Ado.SqlQuery<BllArrivalNoticeDetail>(sqlDetailStr);
+                    var dbDetailModels = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.ASNNo == model.ASNNo && m.IsDel == "0").ToList();
 
                     sqlDetailStr = string.Empty;
                     // 澶勭悊宸插垹闄ょ殑鏄庣粏
@@ -457,13 +482,16 @@
                     {
                         if (detailModels.Count(it => it.Id == dbDetailModel.Id) == 0)
                         {
-                            sqlDetailStr += $"UPDATE BllArrivalNoticeDetail SET IsDel = '1',";
-                            sqlDetailStr += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                            sqlDetailStr += $"WHERE Id = {dbDetailModel.Id};";
+                            dbDetailModel.IsDel = "1";
+                            dbDetailModel.UpdateTime = dateTime;
+                            dbDetailModel.UpdateUser = model.CreateUser;
                         }
                     }
-                    string toDayTime = DateTime.Now.ToString("yyyyMMdd");
+
                     // 澶勭悊淇敼鍜屾坊鍔犵殑鏄庣粏
+                    string toDayTime = dateTime.ToString("yyyymmdd");
+                    List<BllArrivalNoticeDetail> addDetails = new List<BllArrivalNoticeDetail>();
+                    List<BllArrivalNoticeDetail> editDetails = new List<BllArrivalNoticeDetail>();
                     foreach (ArrivalNoticeDetailVm detailModel in detailModels)
                     {
                         if (string.IsNullOrEmpty(detailModel.SkuNo))
@@ -491,9 +519,7 @@
                         }
 
                         // 鍒ゆ柇鏄惁宸插瓨鍦ㄥ綋鍓嶆槑缁�
-                        string sqlCount = $"SELECT COUNT(ID) FROM BllArrivalNoticeDetail where ASNNo = '{model.ASNNo}' ";
-                        sqlCount += $"and SkuNo ='{detailModel.SkuNo}' and LotNo = '{detailModel.LotNo}' and id != '{detailModel.Id}' and isdel = '0';";
-                        var com = new Common().GetRowCount(sqlCount);
+                        var com =  dbDetailModels.Where(m => m.SkuNo == detailModel.SkuNo && m.LotNo == detailModel.LotNo && m.Id != detailModel.Id && m.IsDel == "0").Count();
                         if (com > 0)
                         {
                             strMessage = "-1:鐗╂枡鍜屾壒娆″彿閲嶅;";
@@ -538,13 +564,33 @@
                             }
                             // 璁$畻鍑烘�婚噾棰�
                             detailModel.Money = detailModel.Price * detailModel.Qty;
-                            sqlDetailStr += "Insert into BllArrivalNoticeDetail (ASNNo,SkuNo,SkuName,Standard,";
-                            sqlDetailStr += "LotNo,LotText,Qty,PackagNo,Price,Money,IsBale,IsBelt,SupplierLot,Status,UDF1,UDF2,UDF3,UDF4,UDF5,CreateUser) values ( ";
-                            sqlDetailStr += $"'{model.ASNNo}','{detailModel.SkuNo}','{detailModel.SkuName}','{detailModel.Standard}', ";
-                            sqlDetailStr += $"'{detailModel.LotNo.Trim()}','{detailModel.LotText}','{detailModel.Qty}','{detailModel.PackagNo}','{detailModel.Price}', ";
-                            sqlDetailStr += $"{detailModel.Money},'{detailModel.IsBale}','{detailModel.IsBelt}','{detailModel.SupplierLot}','0','{detailModel.UDF1}','{detailModel.UDF2}','{detailModel.UDF3}','{detailModel.UDF4}','{detailModel.UDF5}','{model.CreateUser}');";
-                        
-                        
+
+                            BllArrivalNoticeDetail addModel = new BllArrivalNoticeDetail() 
+                            {
+                                ASNNo = model.ASNNo,
+                                SkuNo = detailModel.SkuNo,
+                                SkuName = detailModel.SkuName,
+                                Standard = detailModel.Standard,
+                                LotNo = detailModel.LotNo.Trim(),
+                                LotText = detailModel.LotText,
+                                Qty = (decimal)detailModel.Qty,
+                                PackagNo = detailModel.PackagNo,
+                                Price = detailModel.Price,
+                                Money = detailModel.Money,
+                                FactQty = 0,                        // 宸茬粍鏁伴噺
+                                CompleteQty = 0,                    // 瀹屾垚鏁伴噺
+                                IsBale = detailModel.IsBale,
+                                IsBelt = detailModel.IsBelt,
+                                SupplierLot = detailModel.SupplierLot,
+                                Status = "0",
+                                UDF1 = detailModel.UDF1,
+                                UDF2 = detailModel.UDF2,
+                                UDF3 = detailModel.UDF3,
+                                UDF4 = detailModel.UDF4,
+                                UDF5 = detailModel.UDF5,
+                                CreateUser=(int)model.CreateUser
+                            };
+                            addDetails.Add(addModel);                     
                         }
                         else
                         {
@@ -566,9 +612,10 @@
                             {
                                 continue;
                             }
+
+                            var dbDetail = dbDetailModels.First(m => m.Id == detailModel.Id);
                             if (TypeLot.Contains(model.Type))
                             {
-                                var dbDetail = dbDetailModels.First(m=>m.Id == detailModel.Id);
                                 if (!string.IsNullOrWhiteSpace(dbDetail.LotNo))
                                 {
                                     if (dbDetail.LotNo != detailModel.LotNo)
@@ -581,24 +628,39 @@
                             }
                             // 璁$畻鍑烘�婚噾棰�
                             detailModel.Money = detailModel.Price * detailModel.Qty;
-                            sqlDetailStr += $"UPDATE BllArrivalNoticeDetail SET ";
-                            sqlDetailStr += $"Qty = '{detailModel.Qty}',LotNo = '{detailModel.LotNo.Trim()}',Money='{detailModel.Money}', ";
-                            sqlDetailStr += $"LotText = '{detailModel.LotText}',SupplierLot = '{detailModel.SupplierLot}', ";
-                            sqlDetailStr += $"IsBale = '{detailModel.IsBale}',IsBelt = '{detailModel.IsBelt}', ";
-                            sqlDetailStr += $"UDF1 = '{detailModel.UDF1}',UDF2 = '{detailModel.UDF2}',UDF3 = '{detailModel.UDF3}',UDF4 = '{detailModel.UDF4}',UDF5 = '{detailModel.UDF5}',";
-                            sqlDetailStr += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                            sqlDetailStr += $"WHERE Id = {detailModel.Id};";
+
+                            dbDetail.Qty = (decimal)detailModel.Qty;
+                            dbDetail.LotNo = detailModel.LotNo;
+                            dbDetail.Money = detailModel.Money;
+                            dbDetail.LotText = detailModel.LotText;
+                            dbDetail.SupplierLot = detailModel.SupplierLot;
+                            dbDetail.IsBale = detailModel.IsBale;
+                            dbDetail.UDF1 = detailModel.UDF1;
+                            dbDetail.UDF2 = detailModel.UDF2;
+                            dbDetail.UDF3 = detailModel.UDF3;
+                            dbDetail.UDF4 = detailModel.UDF4;
+                            dbDetail.UDF5 = detailModel.UDF5;
+                            dbDetail.UpdateTime = dateTime;
+                            dbDetail.UpdateUser = model.CreateUser;
+
+                            editDetails.Add(dbDetail);
                         }
                     }
 
                     Db.Ado.BeginTran();
 
-                    int rowCount = Db.Ado.ExecuteCommand(sqlString);
+                    Db.Updateable(dbDetailModels).ExecuteCommand();
+                    int rowCount = Db.Updateable(asnInfo).ExecuteCommand();
                     var rowDetailCount = 1;
-                    if (sqlDetailStr.Length > 0)
+                    if (addDetails.Count > 0) 
                     {
-                        rowDetailCount = Db.Ado.ExecuteCommand(sqlDetailStr);
+                        rowDetailCount = Db.Insertable(addDetails).ExecuteCommand();
                     }
+                    if (editDetails.Count > 0) 
+                    {
+                        rowDetailCount += Db.Updateable(editDetails).ExecuteCommand();
+                    }
+
                     Db.Ado.CommitTran();
                     if (rowCount > 0 && rowDetailCount > 0)
                     {
@@ -622,9 +684,7 @@
         {
             try
             {
-                var sqlString = $"SELECT * FROM BllArrivalNotice WHERE ASNNo = '{model.ASNNo}' AND IsDel = 0 AND Status = '0';";
-                var asnModel = Db.Ado.SqlQuery<BllArrivalNotice>(sqlString).FirstOrDefault();
-
+                var asnModel = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == model.ASNNo && m.IsDel == "0" && m.Status == "0");
                 if (asnModel == null)
                 {
                     return "-1:鍏ュ簱鍗曠姸鎬佸凡鍙樻洿锛屼笉鍙垹闄�!";
@@ -636,42 +696,48 @@
                 }
 
                 // 鍒犻櫎鎬诲崟
-                sqlString = $"UPDATE BllArrivalNotice SET IsDel = '1',";
-                sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                sqlString += $"WHERE ASNNo = '{model.ASNNo}';";
+                var editDateTime = DateTime.Now;
+                asnModel.IsDel = "1";
+                asnModel.UpdateTime = editDateTime;
+                asnModel.UpdateUser = model.CreateUser;
 
                 // 鍒犻櫎鏄庣粏鍗�
-                sqlString += $"UPDATE BllArrivalNoticeDetail SET IsDel = '1',";
-                sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                sqlString += $"WHERE ASNNo = '{model.ASNNo}';";
+                var asnDetails = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.ASNNo == model.ASNNo && m.IsDel =="0").ToList();
+                foreach (BllArrivalNoticeDetail asnDetail in asnDetails) 
+                {
+                    asnDetail.IsDel = "1";
+                    asnDetail.UpdateTime = editDateTime;
+                    asnDetail.UpdateUser = model.CreateUser;
+                }
 
+                #region liudl Edit JC26鐗╂枡涓嶈创鍚楁棤闇�鍒犻櫎
                 //鍒ゆ柇鏄惁涓洪噰璐叆搴撳崟鎹垨杞﹂棿浣欐枡閫�鍥炲叆搴�
                 // 0锛氭垚鍝佸叆搴� 1锛氶噰璐叆搴� 2锛氫腑闂村搧鍏ュ簱 3锛氶��璐у叆搴� 4锛氳溅闂翠綑鏂欓��鍥炲叆搴� 5锛氬叾瀹冨叆搴� 6锛氫唬鍌ㄥ叆搴� 7锛氬瘎瀛樺叆搴�
-                int notdel = 0;
-                if (model.Type == "1" || model.Type == "4")
-                {
-                    //鑾峰彇鍗曟嵁鐢熸垚瀵瑰簲鏍囩
-                    var list = Db.Queryable<BllBoxInfo>().Where(a => a.IsDel == "0" && a.Status == "0" && a.BindNo == null);
+                //int notdel = 0;
+                //if (model.Type == "1" || model.Type == "4")
+                //{
+                //    //鑾峰彇鍗曟嵁鐢熸垚瀵瑰簲鏍囩
+                //    var list = Db.Queryable<BllBoxInfo>().Where(a => a.IsDel == "0" && a.Status == "0" && a.BindNo == null);
 
-                    //楠岃瘉瀵瑰簲绠辨敮淇℃伅鏄惁瀛樺湪
-                    if (list == null)
-                    {
-                        return "-1:宸叉湁绠辩爜宸茬粦瀹氭墭鐩樻垨宸插叆搴擄紝涓嶅彲鍒犻櫎!";
-                    }
+                //    //楠岃瘉瀵瑰簲绠辨敮淇℃伅鏄惁瀛樺湪
+                //    if (list == null)
+                //    {
+                //        return "-1:宸叉湁绠辩爜宸茬粦瀹氭墭鐩樻垨宸插叆搴擄紝涓嶅彲鍒犻櫎!";
+                //    }
 
-                    // 鍒犻櫎瀵瑰簲绠辨敮淇℃伅
-                    sqlString += $"UPDATE BllBoxInfo SET IsDel = '1',";
-                    sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                    sqlString += $"WHERE ASNNo = '{model.ASNNo}';";
-                    notdel = 1;
-                }
+                //    // 鍒犻櫎瀵瑰簲绠辨敮淇℃伅
+                //    sqlString += $"UPDATE BllBoxInfo SET IsDel = '1',";
+                //    sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
+                //    sqlString += $"WHERE ASNNo = '{model.ASNNo}';";
+                //    notdel = 1;
+                //}
+                #endregion
+
                 Db.Ado.BeginTran();
-                int rowCount = Db.Ado.ExecuteCommand(sqlString);
-                if (rowCount < 2 + notdel)
-                {
-                    Db.RollbackTran();
-                    return "-1:鍒犻櫎澶辫触锛�";
-                }
+                //int rowCount = Db.Ado.ExecuteCommand(sqlString);
+                int rowCount = Db.Updateable(asnModel).ExecuteCommand();
+                rowCount += Db.Updateable(asnDetails).ExecuteCommand();
+
                 Db.Ado.CommitTran();
                 new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", model.ASNNo, "鍒犻櫎", $"鍒犻櫎浜嗗崟鎹彿涓簕model.ASNNo}鐨勫崟鎹俊鎭�", Convert.ToInt32(model.CreateUser));
                 return "";
@@ -688,8 +754,7 @@
             string sqlString = string.Empty;
             try
             {
-                sqlString = $"SELECT * FROM BllArrivalNotice WHERE ASNNo = '{model.ASNNo}' AND IsDel = 0 AND Status = '0';";
-                var asnModel = Db.Ado.SqlQuery<BllArrivalNotice>(sqlString).FirstOrDefault();
+                var asnModel = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == model.ASNNo && m.IsDel == "0" && m.Status == "0");
 
                 if (asnModel == null)
                 {
@@ -702,28 +767,34 @@
 
                 }
 
-                sqlString = $"SELECT * FROM BllArrivalNoticeDetail WHERE ASNNo = '{model.ASNNo}' and Id <> {model.Id};";
-                var detailModel = Db.Ado.SqlQuery<ArrivalNoticeDetailVm>(sqlString);
+                var asnDetail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.ASNNo == model.ASNNo && m.IsDel == "0" && m.Id == model.Id);
+                if (asnDetail == null) 
+                {
+                    return "-1:鏄庣粏鐘舵�佸凡鍙樻洿锛屼笉鍙垹闄�!";
+                }
 
+                var detailModel = Db.Queryable<BllArrivalNoticeDetail>()
+                    .Where(m => m.ASNNo == model.ASNNo && m.IsDel == "0" && m.Id != model.Id).ToList();
+                var editDateTime = DateTime.Now;
                 if (detailModel.Count <= 0)
                 {
-                    sqlString = $"UPDATE BllArrivalNotice SET IsDel = '1',";
-                    sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                    sqlString += $"WHERE ASNNo = '{model.ASNNo}';";
+                    asnModel.IsDel = "1";
+                    asnModel.UpdateTime = editDateTime;
+                    asnModel.UpdateUser = model.CreateUser;
                 }
                 else
                 {
-                    sqlString = $"UPDATE BllArrivalNotice SET ";
-                    sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                    sqlString += $"WHERE ASNNo = '{model.ASNNo}';";
+                    asnModel.UpdateTime = editDateTime;
+                    asnModel.UpdateUser = model.CreateUser;
                 }
 
-                sqlString += $"UPDATE BllArrivalNoticeDetail SET IsDel = '1',";
-                sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                sqlString += $"WHERE Id = '{model.Id}';";
+                asnDetail.IsDel = "0";
+                asnDetail.UpdateTime = editDateTime;
+                asnDetail.UpdateUser = model.CreateUser;
 
                 Db.Ado.BeginTran();
-                int rowCount = Db.Ado.ExecuteCommand(sqlString);
+                int rowCount = Db.Updateable(asnModel).ExecuteCommand();
+                rowCount += Db.Updateable(asnDetail).ExecuteCommand();
 
                 if (rowCount < 2)
                 {
@@ -731,8 +802,12 @@
                     return "-1:鍒犻櫎澶辫触锛�";
                 }
                 Db.Ado.CommitTran();
+
                 var detail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.Id == model.Id);
-                new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", model.ASNNo, "鍒犻櫎", $"鍒犻櫎浜嗗崟鎹彿涓簕model.ASNNo}銆佺墿鏂欎负{detail.SkuNo}銆佹壒娆″彿涓簕detail.LotNo}鐨勫崟鎹俊鎭�", Convert.ToInt32(model.CreateUser));
+                new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", model.ASNNo, "鍒犻櫎", 
+                    $"鍒犻櫎浜嗗崟鎹彿涓簕model.ASNNo}銆佺墿鏂欎负{detail.SkuNo}銆佹壒娆″彿涓簕detail.LotNo}鐨勫崟鎹俊鎭�", 
+                    Convert.ToInt32(model.CreateUser));
+
                 return "";
             }
             catch (Exception ex)
@@ -741,6 +816,7 @@
                 throw new Exception(ex.Message);
             }
         }
+
         //鍏抽棴鍏ュ簱鍗�
         public string CloseArrivalNotice(int id, int userId)
         {
@@ -751,29 +827,39 @@
                 {
                     throw new Exception("鏈煡璇㈠埌鍏ュ簱鍗曟嵁淇℃伅");
                 }
-                //if (notice.Status != "2")
-                //{
-                //    throw new Exception("鍙傛暟寮傚父,璇锋鏌ョ姸鎬佹槸鍚︿负鎵ц瀹屾垚");
-                //}
-                var palletBind = Db.Queryable<BllPalletBind>().Where(m => m.IsDel == "0" && m.ASNNo == notice.ASNNo && m.Status != "2" && m.Status != "3").ToList();
+
+                var palletBind = Db.Queryable<BllPalletBind>()
+                    .Where(m => m.IsDel == "0" && m.ASNNo == notice.ASNNo 
+                    && m.Status != "2" && m.Status != "3").ToList();
+
                 if (palletBind != null && palletBind.Count > 0)
                 {
                     throw new Exception("瀛樺湪鏈叆搴撳畬鎴愭墭鐩樹俊鎭紝涓嶅厑璁稿叧鍗�");
                 }
                 var comTime = DateTime.Now;
-                var sqlString = "";
 
                 // 鎬诲崟鍏冲崟
-                sqlString = $"UPDATE BllArrivalNotice SET Status = '3',";
-                sqlString += $"CompleteTime = GETDATE(),UpdateTime = GETDATE(),UpdateUser = '{userId}' ";
-                sqlString += $"WHERE Id = '{id}';";
-
+                var asnModel = Db.Queryable<BllArrivalNotice>().First(m => m.Id == id);
+                if (asnModel != null) 
+                {
+                    asnModel.Status = "3";
+                    asnModel.CompleteTime = comTime;
+                    asnModel.UpdateTime = comTime;
+                    asnModel.UpdateUser = userId;
+                }
                 // 灏嗘湭瀹屾垚鐨勬槑缁嗘敼涓哄凡瀹屾垚
-                sqlString += $"UPDATE BllArrivalNoticeDetail SET Status = '2',";
-                sqlString += $"CompleteTime = GETDATE(),UpdateTime = GETDATE(),UpdateUser = '{userId}' ";
-                sqlString += $"WHERE Id = '{id}' and Status <> '2';";
+                var asnDetails = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.Id == id && m.Status == "2").ToList();
+                foreach (BllArrivalNoticeDetail asnDetail in asnDetails) 
+                {
+                    asnDetail.Status = "2";
+                    asnDetail.CompleteTime = comTime;
+                    asnDetail.UpdateTime = comTime;
+                    asnDetail.UpdateUser = userId;
+                }
+
                 Db.Ado.BeginTran();
-                int rowCount = Db.Ado.ExecuteCommand(sqlString);
+                int rowCount = Db.Updateable(asnModel).ExecuteCommand();
+                rowCount += Db.Updateable(asnDetails).ExecuteCommand();
 
                 if (rowCount <= 0)
                 {
@@ -842,7 +928,7 @@
                         }
                         // 鍏ュ簱鎬昏〃淇℃伅
                         string asnNo = new Common().GetMaxNo("ASN");
-                        var asnModel = new BllArrivalNotice()
+                        var asnModel1 = new BllArrivalNotice()
                         {
                             ASNNo = asnNo,
                             Status = "0",//鎵ц鐘舵�侊紝0锛氱瓑寰呮墽琛�
@@ -854,7 +940,7 @@
                             CreateUser = 0
                         };
                         // 鎻掑叆鍏ュ簱鎬昏〃淇℃伅
-                        Db.Insertable(asnModel).ExecuteCommand();
+                        Db.Insertable(asnModel1).ExecuteCommand();
                         //鍏ュ簱鍗曟槑缁�
                         var arrDetailModel = new BllArrivalNoticeDetail()
                         {
diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 5abbc7b..6d276f2 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -71,19 +71,34 @@
                 }
 
                 // 楠岃瘉鏄惁閲嶅 鏀�/琚嬬爜
-                sqlString += $@"select count(id) from BllBoxInfo where BoxNo3 = '{model.BoxNo3}' and IsDel = 0 ";
-                int rowCount = Db.Ado.GetInt(sqlString);
-                if (rowCount > 0)
+                //sqlString += $@"select count(id) from BllBoxInfo where BoxNo3 = '{model.BoxNo3}' and IsDel = 0 ";
+                //int rowCount = Db.Ado.GetInt(sqlString);
+                var box1 = Db.Queryable<BllBoxInfo>().First(m => m.BoxNo3 == model.BoxNo3 && m.IsDel == "0");
+                if (box1 != null)
                 {
                     strMessage = "-1:閲嶅鏁版嵁!";
                     return strMessage;
                 }
                 // 鑾峰彇鐗╂枡淇℃伅
-                sqlString = "select tb1.SkuNo,tb1.SkuName,tb1.Warranty, ";
-                sqlString += "case tb2.level when 5 then tb2.L4Num when 4 then tb2.L3Num when 3 then tb2.L2Num else 0 end as FullQty ";
-                sqlString += "from SysMaterials as tb1 left join SysPackag as tb2 on tb1.PackagNo = tb2.PackagNo ";
-                sqlString += $"where SkuNo = '{model.SkuNo}' and tb1.IsDel = '0';";
-                var materialModel = Db.Ado.SqlQuery<BoxInfoVm>(sqlString);
+                //sqlString = "select tb1.SkuNo,tb1.SkuName,tb1.Warranty, ";
+                //sqlString += "case tb2.level when 5 then tb2.L4Num when 4 then tb2.L3Num when 3 then tb2.L2Num else 0 end as FullQty ";
+                //sqlString += "from SysMaterials as tb1 left join SysPackag as tb2 on tb1.PackagNo = tb2.PackagNo ";
+                //sqlString += $"where SkuNo = '{model.SkuNo}' and tb1.IsDel = '0';";
+                //var materialModel = Db.Ado.SqlQuery<BoxInfoVm>(sqlString);
+
+                var materialModel = Db.Queryable<SysMaterials>()
+                    .LeftJoin<SysPackag>((tb1, tb2) => tb1.PackagNo == tb2.PackagNo)
+                    .Where(tb1 => tb1.SkuNo == model.SkuNo && tb1.IsDel == "0")
+                    .Select((tb1, tb2) => new BoxInfoVm
+                    {
+                        SkuNo = tb1.SkuNo,
+                        SkuName = tb1.SkuName,
+                        Warranty = tb1.Warranty,
+                        FullQty = SqlFunc.IF(tb2.Level == 5).Return(tb2.L4Num)
+                                    .ElseIF(tb2.Level == 4).Return(tb2.L3Num)
+                                    .ElseIF(tb2.Level == 3).Return(tb2.L2Num).End(0)
+                    }).ToList();
+
                 if (materialModel.Count <= 0)
                 {
                     strMessage = "-1:璇ョ墿鏂欎俊鎭笉瀛樺湪!";
@@ -108,9 +123,16 @@
                 }
 
                 #region 鍖呰淇℃伅
-                string str = $"select SUM(Qty) Qty from BllBoxInfo where IsDel = '0' and BoxNo = '{model.BoxNo}'";
-                //鑾峰彇绠辩爜淇℃伅
-                var box = Db.Ado.SqlQuerySingle<BoxInfoVm>(str);
+                //string str = $"select SUM(Qty) Qty from BllBoxInfo where IsDel = '0' and BoxNo = '{model.BoxNo}'";
+                ////鑾峰彇绠辩爜淇℃伅
+                //var box = Db.Ado.SqlQuerySingle<BoxInfoVm>(str);
+
+                var boxs = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == model.BoxNo).Select(m => new BoxInfoVm
+                {
+                    Qty = SqlFunc.AggregateSum(m.Qty)
+                });
+                var box = boxs.First();
+
                 if (box.Qty == null)
                 {
                     box.Qty = 0;
@@ -162,13 +184,37 @@
                 #endregion
 
                 // 鎻掑叆淇℃伅
-                sqlString = "Insert into BllBoxInfo (BoxNo,BoxNo2,BoxNo3,SkuNo,SkuName,LotNo,LotText,";
-                sqlString += "Qty,FullQty,ProductionTime,ExpirationTime,InspectMark,InspectStatus,BitBoxMark,Origin,Status,CreateUser) values ( ";
-                sqlString += $"'{model.BoxNo}','{model.BoxNo2}','{model.BoxNo3}','{model.SkuNo}', ";
-                sqlString += $"'{materialModel[0].SkuName}','{model.LotNo}','{model.LotText}','{model.Qty}','{materialModel[0].FullQty}',";
-                sqlString += $"'{model.ProductionTime}','{model.ExpirationTime}','{model.InspectMark}','{sku.IsInspect}','{model.BitBoxMark}','{model.Origin}','0','{model.CreateUser}');";
+                //sqlString = "Insert into BllBoxInfo (BoxNo,BoxNo2,BoxNo3,SkuNo,SkuName,LotNo,LotText,";
+                //sqlString += "Qty,FullQty,ProductionTime,ExpirationTime,InspectMark,InspectStatus,BitBoxMark,Origin,Status,CreateUser) values ( ";
+                //sqlString += $"'{model.BoxNo}','{model.BoxNo2}','{model.BoxNo3}','{model.SkuNo}', ";
+                //sqlString += $"'{materialModel[0].SkuName}','{model.LotNo}','{model.LotText}','{model.Qty}','{materialModel[0].FullQty}',";
+                //sqlString += $"'{model.ProductionTime}','{model.ExpirationTime}','{model.InspectMark}','{sku.IsInspect}','{model.BitBoxMark}" +
+                //    $"','{model.Origin}','0','{model.CreateUser}');";
+                //rowCount = Db.Ado.ExecuteCommand(sqlString);
 
-                rowCount = Db.Ado.ExecuteCommand(sqlString);
+
+                BllBoxInfo newboxModel = new BllBoxInfo() 
+                { 
+                    BoxNo=model.BoxNo,
+                    BoxNo2 = model.BoxNo2,
+                    BoxNo3 = model.BoxNo3,
+                    SkuNo = model.SkuNo,
+                    SkuName = materialModel[0].SkuName,
+                    LotNo = model.LotNo,
+                    LotText = model.LotText,
+                    Qty = (decimal)model.Qty,
+                    FullQty = materialModel[0].FullQty,
+                    ProductionTime = DateTime.Parse(model.ProductionTime),
+                    ExpirationTime = model.ExpirationTime,
+                    InspectMark = model.InspectMark,
+                    InspectStatus = sku.IsInspect,
+                    BitBoxMark = model.BitBoxMark,
+                    Origin = model.Origin,
+                    Status = "0",
+                    CreateUser = (int)model.CreateUser
+                };
+
+                var rowCount = Db.Insertable(newboxModel).ExecuteCommand();
                 if (rowCount <= 0)
                 {
                     strMessage = "-1:娣诲姞澶辫触!";
@@ -203,15 +249,23 @@
                 //寮�鍚簨鍔�
                 Db.Ado.BeginTran();
                 // 鍒犻櫎鏄庣粏鍗�
-                sqlString += $"UPDATE BllBoxInfo SET IsDel = '1',";
-                sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
-                sqlString += $"WHERE Id = '{model.Id}' and Status = '0';";
+                //sqlString += $"UPDATE BllBoxInfo SET IsDel = '1',";
+                //sqlString += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
+                //sqlString += $"WHERE Id = '{model.Id}' and Status = '0';";
 
-                int rowCount = Db.Ado.ExecuteCommand(sqlString);
-                if (rowCount <= 0)
+                //int rowCount = Db.Ado.ExecuteCommand(sqlString);
+
+                var boxModel = Db.Queryable<BllBoxInfo>().First(m => m.Id == model.Id && m.Status == "0");
+
+                if (boxInfo.Status != "0")
                 {
                     return "-1:鐘舵�佸凡鍙樻洿鏃犳硶鍒犻櫎锛�";
                 }
+
+                boxInfo.IsDel = "1";
+                boxInfo.UpdateTime = DateTime.Now;
+                boxInfo.UpdateUser = model.CreateUser;
+
                 var boxInfoList = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BoxNo == boxInfo.BoxNo && m.Id != model.Id).ToList();
                 if (boxInfoList.Count != 0)
                 {
@@ -221,15 +275,11 @@
                         {
                             continue;
                         }
-
-                        var sql = $"update BllBoxInfo SET BitBoxMark = '1' Where id = {item.Id}";
-                        int rowCount2 = Db.Ado.ExecuteCommand(sql);
-                        if (rowCount2 <= 0)
-                        {
-                            throw new Exception("-1:鐘舵�佸凡鍙樻洿鏃犳硶鍒犻櫎锛�");
-                        }
+                        item.BitBoxMark = "1";
                     }
                 }
+                Db.Updateable(boxInfo).ExecuteCommand();
+                Db.Updateable(boxInfoList).ExecuteCommand();
 
                 Db.Ado.CommitTran();
                 new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "绠辨敮褰曞叆", boxInfo.BoxNo3, "鍒犻櫎", $"鍒犻櫎浜嗙鐮侊細{boxInfo.BoxNo}銆佽拷婧爜锛歿boxInfo.BoxNo3}鐨勭鏀墿鏂欎俊鎭�", Convert.ToInt32(model.CreateUser));
diff --git a/Wms/WMS.Entity/BllAsnEntity/BllArrivalNoticeDetail.cs b/Wms/WMS.Entity/BllAsnEntity/BllArrivalNoticeDetail.cs
index 494490e..8a3d951 100644
--- a/Wms/WMS.Entity/BllAsnEntity/BllArrivalNoticeDetail.cs
+++ b/Wms/WMS.Entity/BllAsnEntity/BllArrivalNoticeDetail.cs
@@ -59,19 +59,21 @@
         /// Nullable:False
         /// </summary>           
         public decimal Qty {get;set;}
-        
+
         /// <summary>
         /// Desc:宸茬粍鏁伴噺
         /// Default:0
         /// Nullable:True
-        /// </summary>           
+        /// </summary>          
+        [SugarColumn(DefaultValue = "0")]
         public decimal? FactQty {get;set;}
 
         /// <summary>
         /// Desc:鍏ュ簱鏁伴噺
         /// Default:0
         /// Nullable:True
-        /// </summary>           
+        /// </summary>         
+        [SugarColumn(DefaultValue = "0")]
         public decimal? CompleteQty {get;set;}
 
         /// <summary>
diff --git a/Wms/Wms/Controllers/BllAsnController.cs b/Wms/Wms/Controllers/BllAsnController.cs
index c747d12..6b3cd21 100644
--- a/Wms/Wms/Controllers/BllAsnController.cs
+++ b/Wms/Wms/Controllers/BllAsnController.cs
@@ -168,6 +168,10 @@
                 {
                     throw new Exception("鏈幏鍙栧埌鐢ㄦ埛淇℃伅");
                 }
+                if (string.IsNullOrWhiteSpace(model.ASNNo)) 
+                {
+                    throw new Exception("鍗曟嵁鍙蜂笉鍙负null!");
+                }
 
                 model.CreateUser = int.Parse(UserId);
                 string strMesage = _arrivalNoticeSvc.EditArrivalNotice(model);

--
Gitblit v1.8.0