From d07f25c163706ac46a83bd2c63db1e3c52715222 Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期四, 27 三月 2025 15:54:25 +0800
Subject: [PATCH] 解决问题

---
 Pda/View/HouseDataSetting/changebox.html              |   28 
 Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs          |    2 
 Pda/View/HouseDataSetting/agvTransport.html           |   12 
 Pda/View/SoSetting/materialOut.html                   |    2 
 Pda/View/SoSetting/pinTuoOut.html                     |   52 +
 Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs        |   48 +-
 Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs              |  113 ++--
 Wms/Wms/appsettings.json                              |    6 
 Wms/Utility/XML/ExInfoXml.xml                         |    9 
 Wms/Model/ModelVm/PdaVm/PdaSoVm.cs                    |    4 
 Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs               |  145 +++++-
 HTML/views/SOSetting/ExportNotice.html                |   13 
 Wms/WMS.BLL/SysServer/Token.cs                        |  114 ++--
 Wms/Wms/Controllers/UpApiController.cs                |   41 +
 Pda/View/SoSetting/productOut.html                    |    4 
 HTML/views/set/user/info.html                         |  109 ++++
 Wms/WMS.BLL/BllQualityServer/QualityInspectServer.cs  |    6 
 Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs       |   86 ++-
 Wms/WMS.DAL/SysInfrastructure/MaterialsRepository.cs  |    2 
 HTML/views/Login.html                                 |    3 
 Pda/View/SoSetting/palletOut.html                     |   28 
 Wms/WMS.BLL/DataServer/StockServer.cs                 |  204 ++++++++
 Pda/View/HouseDataSetting/boxQuery.html               |   53 +-
 Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs         |   18 
 HTML/views/index.html                                 |   12 
 HTML/views/StatisticalReport/InventoryStatistics.html |   14 
 Wms/Model/InterFaceModel/HttpModel.cs                 |   37 +
 Wms/WMS.IBLL/IDataServer/IStockServer.cs              |   15 
 Pda/View/SoSetting/SampleOut.html                     |   17 
 Wms/Wms/Controllers/DownApiController.cs              |  182 ++++---
 Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs          |    6 
 31 files changed, 991 insertions(+), 394 deletions(-)

diff --git a/HTML/views/Login.html b/HTML/views/Login.html
index 574cdab..f94934b 100644
--- a/HTML/views/Login.html
+++ b/HTML/views/Login.html
@@ -31,8 +31,11 @@
 	</div>
 	<div class="elight-login-box animated fadeInRight">
 		<div class="elight-login-header">鏅烘収浠撳偍绠$悊绯荤粺</div>
+		<div class="elight-login-header">鐗堟湰v1.0</div>
 		<div class="elight-login-body">
 			<form class="layui-form">
+
+				
 				<div class="layui-form-item">
 					<label class="login-icon"><i class="layui-icon">&#xe612;</i></label>
 					<input type="text" name="username" id="username" lay-verify="required" autocomplete="off"
diff --git a/HTML/views/SOSetting/ExportNotice.html b/HTML/views/SOSetting/ExportNotice.html
index 8bf72a2..9b915e4 100644
--- a/HTML/views/SOSetting/ExportNotice.html
+++ b/HTML/views/SOSetting/ExportNotice.html
@@ -152,9 +152,9 @@
 								<div class="layui-input-inline" style="width: 220px;">
 									<select name="LoadingArea" id="LoadingArea" lay-search>
 										<option value=""></option>
-										<option value="1">1</option>
-										<option value="2">2</option>
-										<option value="3">3</option>
+										<option value="3">4</option>
+										<option value="2">5</option>
+										<option value="1">6</option>
 									</select>
 								</div>
 							</div>							
@@ -379,7 +379,7 @@
 												</a>`;
 									}
 								}
-								if( d.Status == '4'){
+								if( d.Status == '4' ||d.Status == '3'){
 									html += `<a class="layui-btn layui-btn-normal layui-btn-xs guanClass" lay-event="finish"> 
 												<i class="layui-icon layui-icon-ok"></i>鍏冲崟
 											</a>`;
@@ -899,6 +899,8 @@
 									}	
 									if($('#UnstackWay').val()=='1'){
 										$('.DivPickingArea2').show()
+										$('.LoadingArea').hide()
+
 									}										
 											
 									outFunction(data.SONo)
@@ -1103,6 +1105,7 @@
 								}
 								if(isNeedUnpack == 1){
 								console.log($("#PickingArea").val())
+								if($('#UnstackWay').val()=='1'){
 								if($("#PickingArea").val() == '')
 								{
 									layer.msg("璇烽�夋嫨鍑哄簱鍙�", {
@@ -1111,7 +1114,7 @@
 									});
 									isChongFu= true;
 									return;
-								}}
+								}}}
 								var param = {
 									soNo: soNo, 
 									unstackingMode:$('#UnstackWay').val(),
diff --git a/HTML/views/StatisticalReport/InventoryStatistics.html b/HTML/views/StatisticalReport/InventoryStatistics.html
index 35c5693..3ab6c79 100644
--- a/HTML/views/StatisticalReport/InventoryStatistics.html
+++ b/HTML/views/StatisticalReport/InventoryStatistics.html
@@ -219,17 +219,17 @@
 
 				<script type="text/html" id="buttonTpl">
 					  {{#  if(d.Status=='0'){ }}
-					    <button class="layui-btn layui-btn-radius layui-btn-danger layui-btn-xs">寰呭垎閰�</button>
+					    <button class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs">寰呭垎閰�</button>
 					  {{#  } else if(d.Status == '1') { }}
-					    <button class="layui-btn layui-btn-radius layui-btn-xs">閮ㄥ垎鍒嗛厤</button>
+					    <button class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs">閮ㄥ垎鍒嗛厤</button>
 					  {{#  } else if(d.Status == '2') { }}
-					  	<button class="layui-btn layui-btn-radius layui-btn-xs">宸插垎閰�</button>
+					  	<button class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs">宸插垎閰�</button>
 					  {{#  } else if(d.Status == '3') { }}
-					 	<button class="layui-btn layui-btn-radius layui-btn-xs">鐩樼偣閿佸畾</button>
+					 	<button class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs">鐩樼偣閿佸畾</button>
 					  {{#  } else if(d.Status == '4') { }}
-					  	<button class="layui-btn layui-btn-radius layui-btn-xs">绉诲簱閿佸畾</button>
+					  	<button class="layui-btn layui-btn-radius layui-btn-normal layui-btn-xs">绉诲簱閿佸畾</button>
 					  {{#  } else if(d.Status == '5') { }}
-					  	<button class="layui-btn layui-btn-radius layui-btn-xs layui-btn-danger">寮傚父閿佸畾</button>
+					  	<button class="layui-btn layui-btn-radius layui-btn-xs layui-btn-normal">寮傚父閿佸畾</button>
 					  {{#  } }}
 					</script>
 				<script type="text/html" id="buttonTp2">
@@ -437,7 +437,7 @@
 			]];
 			var DetailColsSysArr = encodeURIComponent(encodeURIComponent(JSON.stringify(DetailColsArr)))//灏嗚〃澶存暟鎹繘琛寀rl缂栫爜
 			//#endregion
-			function refreshTable2(SkuNo, SkuName, OwnerNo, OwnerName, LotNo, LocatNo, PalletNo, Status, InspectStatus, HouseNo, AreaNo,CategoryNo, Type) {
+			function refreshTable2(SkuNo, SkuName,OwnerNo, OwnerName, LotNo, LocatNo, PalletNo, Status, InspectStatus, HouseNo, AreaNo,CategoryNo, Type) {
 				//#region 鑷畾涔夎〃澶�
 				var colsJson2
 				var param1 = {
diff --git a/HTML/views/index.html b/HTML/views/index.html
index 2e9a9a5..e189027 100644
--- a/HTML/views/index.html
+++ b/HTML/views/index.html
@@ -53,7 +53,7 @@
 								</cite>
 							</a>
 							<dl class="layui-nav-child">
-								<!--  <dd><a lay-href="set/user/info.html">鍩烘湰璧勬枡</a></dd>-->
+								 <dd><a lay-href="set/user/info.html">鍩烘湰璧勬枡</a></dd>
 								<dd><a lay-href="set/user/password.html" id="changePassword">淇敼瀵嗙爜</a></dd>
 								<hr>
 								<dd><a href="Login.html">閫�鍑�</a></dd>
@@ -104,10 +104,12 @@
 						<iframe src="home/console.html" frameborder="0" class="layadmin-iframe"></iframe>
 					</div>
 				</div>
-				<div class="layui-footer" style="height: 20px; z-index: 999;">
-					<!-- 搴曢儴鍥哄畾鍖哄煙 -->
-					<p>鐗堟湰v1.0</p>
-				</div>
+				<!--
+					<div class="layui-footer" style="height: 20px; z-index: 999;">
+						<!-- 搴曢儴鍥哄畾鍖哄煙 -->
+						<p>鐗堟湰v1.0</p>
+					</div> 
+				-->
 				<!-- 杈呭姪鍏冪礌锛屼竴鑸敤浜庣Щ鍔ㄨ澶囦笅閬僵 -->
 				<div class="layadmin-body-shade" layadmin-event="shade"></div>
 			</div>
diff --git a/HTML/views/set/user/info.html b/HTML/views/set/user/info.html
new file mode 100644
index 0000000..939def2
--- /dev/null
+++ b/HTML/views/set/user/info.html
@@ -0,0 +1,109 @@
+
+
+<!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">
+</head>
+<body>
+
+  <div class="layui-fluid">
+    <div class="layui-row layui-col-space15">
+      <div class="layui-col-md12">
+        <div class="layui-card">
+          <div class="layui-card-header">璁剧疆鎴戠殑璧勬枡</div>
+          <div class="layui-card-body" pad15>
+            
+            <div class="layui-form" lay-filter="">
+              <div class="layui-form-item">
+                <label class="layui-form-label">鎴戠殑瑙掕壊</label>
+                <div class="layui-input-inline">
+                  <select name="role" lay-verify="">
+                    <option value="1" selected>瓒呯骇绠$悊鍛�</option>
+                    <option value="2" disabled>鏅�氱鐞嗗憳</option>
+                    <option value="3" disabled>瀹℃牳鍛�</option>
+                    <option value="4" disabled>缂栬緫浜哄憳</option>
+                  </select> 
+                </div>
+                <div class="layui-form-mid layui-word-aux">褰撳墠瑙掕壊涓嶅彲鏇存敼涓哄叾瀹冭鑹�</div>
+              </div>
+              <div class="layui-form-item">
+                <label class="layui-form-label">鐢ㄦ埛鍚�</label>
+                <div class="layui-input-inline">
+                  <input type="text" name="username" value="xianxin" readonly class="layui-input">
+                </div>
+                <div class="layui-form-mid layui-word-aux">涓嶅彲淇敼銆備竴鑸敤浜庡悗鍙扮櫥鍏ュ悕</div>
+              </div>
+              <div class="layui-form-item">
+                <label class="layui-form-label">鏄电О</label>
+                <div class="layui-input-inline">
+                  <input type="text" name="nickname" value="璐ゅ績" lay-verify="nickname" autocomplete="off" placeholder="璇疯緭鍏ユ樀绉�" class="layui-input">
+                </div>
+              </div>
+              <div class="layui-form-item">
+                <label class="layui-form-label">鎬у埆</label>
+                <div class="layui-input-block">
+                  <input type="radio" name="sex" value="鐢�" title="鐢�">
+                  <input type="radio" name="sex" value="濂�" title="濂�" checked>
+                </div>
+              </div>
+              <div class="layui-form-item">
+                <label class="layui-form-label">澶村儚</label>
+                <div class="layui-input-inline">
+                  <input name="avatar" lay-verify="required" id="LAY_avatarSrc" placeholder="鍥剧墖鍦板潃" value="http://cdn.layui.com/avatar/168.jpg" class="layui-input">
+                </div>
+                <div class="layui-input-inline layui-btn-container" style="width: auto;">
+                  <button type="button" class="layui-btn layui-btn-primary" id="LAY_avatarUpload">
+                    <i class="layui-icon">&#xe67c;</i>涓婁紶鍥剧墖
+                  </button>
+                  <button class="layui-btn layui-btn-primary" layadmin-event="avartatPreview">鏌ョ湅鍥剧墖</button >
+                </div>
+             </div>
+              <div class="layui-form-item">
+                <label class="layui-form-label">鎵嬫満</label>
+                <div class="layui-input-inline">
+                  <input type="text" name="cellphone" value="" lay-verify="phone" autocomplete="off" class="layui-input">
+                </div>
+              </div>
+              <div class="layui-form-item">
+                <label class="layui-form-label">閭</label>
+                <div class="layui-input-inline">
+                  <input type="text" name="email" value="" lay-verify="email" autocomplete="off" class="layui-input">
+                </div>
+              </div>
+              <div class="layui-form-item layui-form-text">
+                <label class="layui-form-label">澶囨敞</label>
+                <div class="layui-input-block">
+                  <textarea name="remarks" placeholder="璇疯緭鍏ュ唴瀹�" class="layui-textarea"></textarea>
+                </div>
+              </div>
+              <div class="layui-form-item">
+                <div class="layui-input-block">
+                  <button class="layui-btn" lay-submit lay-filter="setmyinfo">纭淇敼</button>
+                  <button type="reset" class="layui-btn layui-btn-primary">閲嶆柊濉啓</button>
+                </div>
+              </div>
+            </div>
+            
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+
+  <script src="../../../layuiadmin/layui/layui.js"></script>  
+  <script>
+  layui.config({
+    base: '../../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
+  }).extend({
+    index: 'lib/index' //涓诲叆鍙fā鍧�
+  }).use(['index', 'set']);
+  </script>
+</body>
+</html>
\ No newline at end of file
diff --git a/Pda/View/HouseDataSetting/agvTransport.html b/Pda/View/HouseDataSetting/agvTransport.html
index 5975112..ab39e3f 100644
--- a/Pda/View/HouseDataSetting/agvTransport.html
+++ b/Pda/View/HouseDataSetting/agvTransport.html
@@ -334,6 +334,15 @@
             initLanguage()
             setLanguage()
 
+            function clear() {
+				$("#Quyu").empty()
+				$("#Quyu").append('<option value =>' + '</option>');
+                $("#Ruku").empty()
+				$("#Ruku").append('<option value =>' + '</option>');
+				form.render('select');
+                $('#STOCKCODE').val("");
+				$('#LocatNo').val("");
+			}
             //褰撳墠鍒嗛〉
             var curPageIndex = 1;
 
@@ -666,6 +675,7 @@
                                 icon: 1,
                                 time: 1000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
                             }, function () {
+                                clear()
 
                             });
                         } else { //涓嶆垚鍔�
@@ -673,7 +683,7 @@
                                 icon: 2,
                                 time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
                             }, function () {
-                                //鍥炶皟
+                                clear()
                             });
                         }
                     });
diff --git a/Pda/View/HouseDataSetting/boxQuery.html b/Pda/View/HouseDataSetting/boxQuery.html
index b407c97..42df3cc 100644
--- a/Pda/View/HouseDataSetting/boxQuery.html
+++ b/Pda/View/HouseDataSetting/boxQuery.html
@@ -107,7 +107,7 @@
             </div>
 
             <div id="" class="layout-bill-info">
-                <form class="layui-form" action="" style="height: auto;">
+                <form class="layui-form" action="" style="height: auto;" >
                     <div id="" class="layui-form-item layout-input" style="margin-top: 5px;">
                         <label class="layui-form-label">澶栫鏉$爜</label>
                         <div class="layui-input-block">
@@ -129,49 +129,54 @@
                         </div>
                     </div>
 
-                    <table class="layout-tbl-input" border="" cellspacing="" cellpadding="">
+                    <!-- <table class="layout-tbl-input" border="" cellspacing="" cellpadding="">
                         <tr>
-                            <td>
-                                <div id="" class="layui-form-item layout-boxinfo">
+                            <td> -->
+                                <div id="" class="layui-form-item layout-input" style="margin-top: 5px;">
                                     <label class="layui-form-label" lang>杩涘巶缂栧彿锛�</label>
                                     <div class="layui-input-block">
-                                        <input id="LotNo" type="text" disabled placeholder="" autocomplete="off"
+                                        <input id="LotNo" type="text" autocomplete="off" class="layui-input" style="border: 0px;"
                                             class="layui-input">
                                     </div>
                                 </div>
-                            </td>
-                            <td>
-                                <div id="" class="layui-form-item layout-boxinfo">
-                                    <label class="layui-form-label" lang>鍘熷巶鎵瑰彿锛�</label>
-                                    <div class="layui-input-block">
-                                        <input id="SupplierLot" type="text" disabled placeholder="" autocomplete="off"
-                                            class="layui-input">
-                                    </div>
-                                </div>
-                            </td>
+                            <!-- </td>
+                            
 
                         </tr>
                         <tr>
-                            <td>
-                                <div id="" class="layui-form-item layout-boxinfo">
+                            <td> -->
+                                <div id="" class="layui-form-item layout-input" style="margin-top: 5px;">
+                                    <label class="layui-form-label" lang>鍘熷巶鎵瑰彿锛�</label>
+                                    <div class="layui-input-block">
+                                        <input id="SupplierLot" type="text" autocomplete="off" class="layui-input" style="border: 0px;"
+                                            class="layui-input">
+                                    </div>
+                                </div>
+                            <!-- </td>
+                        </tr>
+                        <tr>
+                            <td> -->
+                                <div id="" class="layui-form-item layout-input" style="margin-top: 5px;">
                                     <label class="layui-form-label" lang>绠卞唴鏁伴噺锛�</label>
                                     <div class="layui-input-block">
-                                        <input id="Qty" type="text" disabled placeholder="" autocomplete="off"
+                                        <input id="Qty" type="text" autocomplete="off" class="layui-input" style="border: 0px;"
                                             class="layui-input">
                                     </div>
                                 </div>
-                            </td>
-                            <td>
-                                <div id="" class="layui-form-item layout-boxinfo">
+                            <!-- </td>
+                        </tr>
+                        <tr>
+                            <td> -->
+                                <div id="" class="layui-form-item layout-input" style="margin-top: 5px;">
                                     <label class="layui-form-label" lang>璐ㄩ噺鐘舵�侊細</label>
                                     <div class="layui-input-block">
-                                        <input id="InspectStatus" type="text" disabled placeholder="" autocomplete="off"
+                                        <input id="InspectStatus" type="text" autocomplete="off" class="layui-input" style="border: 0px;"
                                             class="layui-input">
                                     </div>
                                 </div>
-                            </td>
+                            <!-- </td>
                         </tr>
-                    </table>
+                    </table> -->
 
 
                     <div id="" class="" style="width: 100%;height: 36px;margin-top: 15px;">
diff --git a/Pda/View/HouseDataSetting/changebox.html b/Pda/View/HouseDataSetting/changebox.html
index 55ad03c..7cf963b 100644
--- a/Pda/View/HouseDataSetting/changebox.html
+++ b/Pda/View/HouseDataSetting/changebox.html
@@ -153,6 +153,8 @@
 										</div>
 									</div>
 								</td>
+							</tr>
+							<tr>
 								<td>
 									<div class="layui-form-item">
 										<label class="layui-form-label" style="width: 25%">鎵规锛�</label>
@@ -163,6 +165,20 @@
 									</div>
 
 								</td>
+								
+							</tr>
+							<tr>
+								<td colspan="3">
+									<div class="layui-form-item">
+										<label class="layui-form-label" style="width: 30%;">鐗╂枡鍚嶇О锛�</label>
+										<div class="layui-input-block" style="width: 70%;margin-left:30%;">
+											<input id="SkuName" type="text" lay-verify="" disabled placeholder=""
+												class="layui-input" style="font-size: 12px; padding-left: 0;">
+										</div>
+									</div>
+								</td>
+							</tr>
+							<tr>
 								<td>
 									<div class="layui-form-item">
 										<label class="layui-form-label" style="width: 34%;">鏁伴噺锛�</label>
@@ -172,18 +188,6 @@
 										</div>
 									</div>
 								</td>
-							</tr>
-							<tr>
-								<td colspan="3">
-									<div class="layui-form-item">
-										<label class="layui-form-label" style="width: 17%;">鐗╂枡鍚嶇О锛�</label>
-										<div class="layui-input-block" style="width: 83%;margin-left:17%;">
-											<input id="SkuName" type="text" lay-verify="" disabled placeholder=""
-												class="layui-input" style="font-size: 12px; padding-left: 0;">
-										</div>
-									</div>
-								</td>
-
 							</tr>
 						</table>
 					</div>
diff --git a/Pda/View/SoSetting/SampleOut.html b/Pda/View/SoSetting/SampleOut.html
index 8386836..32faf38 100644
--- a/Pda/View/SoSetting/SampleOut.html
+++ b/Pda/View/SoSetting/SampleOut.html
@@ -987,7 +987,7 @@
                             });
                             return;
                         }
-                        if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){
+                        if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseFloat($('#pickQty').val())){
                             layer.msg("鎷h揣鏁伴噺涓嶈兘澶т簬寰呮嫞鏁伴噺锛�", {
                                 icon: 2,
                                 time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
@@ -1045,7 +1045,10 @@
 			function reqPickScatter() {
                 canPickBox = false//鍥炶皟
 				if($('#pickQty1').val()!= "" && $('#pickQty1').val()!= undefined){
-					var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,4})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+					console.log("111111111111111111"+$('#pickQty1').val());
+					
+					var reg = /^[1-9]\d*(\.\d{1,4})?$|^0\.\d{1,4}[1-9]\d*$/;
+					 		  
 					if (!reg.test($("#pickQty1").val())) {
 						layer.msg("鏁伴噺蹇呴』澶т簬0(鍙繚鐣�4浣嶅皬鏁�)", {
 							icon: 2,
@@ -1566,8 +1569,8 @@
 							time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
 						}); return;
 					}			
-					let pickedQty = parseInt($('#pickedQty2').val()) //宸叉嫞鏁伴噺
-					let pickQty = parseInt($('#pickQty2').val())  //鎷h揣鏁伴噺
+					let pickedQty = parseFloat($('#pickedQty2').val()) //宸叉嫞鏁伴噺
+					let pickQty = parseFloat($('#pickQty2').val())  //鎷h揣鏁伴噺
 					if (pickQty <= 0) {
 						layer.msg("鎷h揣鏁伴噺闇�澶т簬0", {
 							icon: 2,
@@ -1583,8 +1586,8 @@
                             time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
                         }); return;
                     }
-					let pickedQty = parseInt($('#pickedQty2').val()) //宸叉嫞鏁伴噺
-					let pickQty = parseInt($('#pickQty2').val())  //鎷h揣鏁伴噺
+					let pickedQty = parseFloat($('#pickedQty2').val()) //宸叉嫞鏁伴噺
+					let pickQty = parseFloat($('#pickQty2').val())  //鎷h揣鏁伴噺
 					if (pickQty <= 0) {
 						layer.msg("鎷h揣鏁伴噺闇�澶т簬0", {
 							icon: 2,
@@ -1620,7 +1623,7 @@
 			function reqPickScatter2() {
 				canPickBox = false//鍥炶皟
 				if($('#pickQty2').val()!= "" && $('#pickQty2').val()!= undefined){
-					var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,4})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+					var reg = /^[1-9]\d*(\.\d{1,4})?$|^0\.\d{1,4}[1-9]\d*$/;
 					if (!reg.test($("#pickQty2").val())) {
 						layer.msg("鏁伴噺蹇呴』澶т簬0(鍙繚鐣�4浣嶅皬鏁�)", {
 							icon: 2,
diff --git a/Pda/View/SoSetting/materialOut.html b/Pda/View/SoSetting/materialOut.html
index a38466b..f2e7699 100644
--- a/Pda/View/SoSetting/materialOut.html
+++ b/Pda/View/SoSetting/materialOut.html
@@ -669,7 +669,7 @@
 					if($.isPlainObject(boxinfo.PickNum) || pn == 0){
 						pn = boxinfo.Qty
 					}
-					let qty = parseInt($('#outScatterQty').val())
+					let qty = parseFloat($('#outScatterQty').val())
 					if(qty <= 0 || qty > pn){
 						layer.msg("鎷h揣鏁伴噺闇�澶т簬0锛屽苟涓斾笉鑳借秴杩囧緟鎷f暟閲�", {
 							icon: 2,
diff --git a/Pda/View/SoSetting/palletOut.html b/Pda/View/SoSetting/palletOut.html
index ef77d81..388e148 100644
--- a/Pda/View/SoSetting/palletOut.html
+++ b/Pda/View/SoSetting/palletOut.html
@@ -100,10 +100,17 @@
 								<div class="layui-input-block" id="selectDiv">
 									<select id="bar2" lay-filter="getbar" lay-verify="required" lay-search>
 										<option value=""></option>
-										<option value="001">001</option>
-										<option value="002">002</option>
+										<option value="001">443</option>
+										<option value="002">440</option>
 									</select>
 									<!-- <img src="/assets/down_arraw.png" > -->
+								</div>
+							</div>
+							<div id="layout-boxcode" class="layui-form-item layout-input">
+								<label class="layui-form-label">鍦扮爜锛�</label>
+								<div class="layui-input-block">
+									<input id="LocatNo" type="text" placeholder="璇锋壂鎻忓湴鐮�"
+										autocomplete="off" class="layui-input">
 								</div>
 							</div>
 							<div id="" class="btn-out">
@@ -172,6 +179,7 @@
 					$("#STOCKCODE").val(""); 
 					$("#bar option[value='']").attr("selected", "selected");
 					$("#bar2 option[value='']").attr("selected", "selected");
+					$("#LocatNo").val(""); 
 					form.render('select');
 				}
 				   
@@ -252,11 +260,19 @@
 							time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
 						}, function() {});
 						return
-					} 
+					} ;
+					if($('#LocatNo').val() == ''){
+						layer.msg("璇疯緭鍏ュ湴鐮�", {
+							icon: 2,
+							time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+						}, function() {});
+						return
+					}; 
 					if (isChongFu == true) {
 						isChongFu = false; 
 						var param2 = {
-							OutMode:$('#bar2').val()
+							OutMode:$('#bar2').val(),
+							OutCode:$('#LocatNo').val()
 						};
 						
 						// Int(param.Num)
@@ -264,12 +280,12 @@
 						sendData(IP + "/DownApi/IssuePlnCheckHouseWcs", param2, 'post', function(res) {
 							console.log("鍑哄簱锛�"+JSON.stringify(res))
 							if (res.code == 0) { //鎴愬姛
-								layer.msg(res.msg, {
+								layer.msg(res.Message, {
 									icon: 1,
 									time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
 								}, function() {isChongFu = true;clear();});
 							} else { //涓嶆垚鍔�
-								layer.msg(res.msg, {
+								layer.msg(res.Message, {
 									icon: 2,
 									time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
 								}, function() {isChongFu = true;clear();});
diff --git a/Pda/View/SoSetting/pinTuoOut.html b/Pda/View/SoSetting/pinTuoOut.html
index 9dd59d2..7e980c5 100644
--- a/Pda/View/SoSetting/pinTuoOut.html
+++ b/Pda/View/SoSetting/pinTuoOut.html
@@ -343,15 +343,15 @@
 														</div>
 													</div>
 												</td>
-												<!-- <td>
+												 <td>
 													<div class="layui-form-item ">
-														<label class="layui-form-label lableWidth">绠卞唴鏁伴噺锛�</label>
+														<label class="layui-form-label lableWidth">鎵樼洏涓婃暟閲忥細</label>
 														<div class="layui-input-block">
-															<input id="boxQty" class="layui-input" style="border: 0;"
+															<input id="palletNoqty" class="layui-input" style="border: 0;"
 																type="text" lay-verify="" disabled placeholder="">
 														</div>
 													</div>
-												</td> -->
+												</td> 
 											</tr>
 										</table>
 									</td>
@@ -639,6 +639,8 @@
 
 				$('#pickQty').val("");//寰呮嫞鏁伴噺
 				$('#pickedQty').val("");//宸叉嫞鏁伴噺
+				$('#palletNoqty').val("");//宸叉嫞鏁伴噺
+				
 			}
 			function clear2() {
 				//鐗╂枡鎵规
@@ -652,7 +654,7 @@
 			}
 			function clear4() {
 				$('#boxNo').val("");//绠辩爜
-				$('#boxQty').val("");//绠卞唴鏁伴噺
+				$('#boxQty').val("");//鎵樼洏涓婃暟閲�
 			}
 			//褰撴墭鐩樻潯鐮佽緭鍏ユ鏂囨湰鏀瑰彉鏃�,妫�鏌ヤ竴涓嬫墭鐩樼姸鎬� 
 			$("#palletNo").on('input', function () {
@@ -879,7 +881,11 @@
 				for (i = len - 1; i >= 2; i--) {
 					trs[i].remove();
 				}
-
+				console.log("LIST.LENGTH:"+list.length);
+				
+				if(list.length == 1){
+					$("#pickQty1").val(list[0].Qty) 
+				}
 				console.log(list != null);
 				console.log(list);
 				if (list != null && list.length > 0) { //鎴愬姛
@@ -925,9 +931,13 @@
 				}
 				synData(IP + "/PdaSo/GetDataComBoxInfo", param2, 'post', function (res) {
 					if (res.code == 0) {
-						tableData = deepCopy(res.data)
-
-						refreshTable(tableData)
+						console.log("111111111111111:"+res.data.Qty);
+						//tableData = deepCopy(res.data)
+						console.log("111111111111111:"+res.data.Qty);
+						
+						$("#pickQty1").val(res.data.Qty) 
+						
+						refreshTable(res.data)
 					} else {
 						layer.msg(res.msg, {
 							icon: 2,
@@ -985,13 +995,14 @@
 						});
 						return;
 					}
-					if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){
-						layer.msg("鎷h揣鏁伴噺涓嶈兘澶т簬寰呮嫞鏁伴噺锛�", {
-							icon: 2,
-							time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
-						});
-						return;
-					}
+					//鎷h揣鏁伴噺鍙互瓒呰繃寰呮嫞鏁伴噺
+					// if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){
+					// 	layer.msg("鎷h揣鏁伴噺涓嶈兘澶т簬寰呮嫞鏁伴噺锛�", {
+					// 		icon: 2,
+					// 		time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+					// 	});
+					// 	return;
+					// }
 				}				
 				// let boxQty = parseInt($('#boxQty').val())
 				// let qty = parseInt($('#qty').val()) 
@@ -1020,7 +1031,7 @@
 			//纭鎷h揣 
 			function reqPickScatter() {
 				if($('#pickQty1').val()!= "" && $('#pickQty1').val()!= undefined){
-					var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,4})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+					var reg = /^[1-9]\d*(\.\d{1,4})?$|^0\.\d{1,4}[1-9]\d*$/;
 					if (!reg.test($("#pickQty1").val())) {
 						layer.msg("鏁伴噺蹇呴』澶т簬0(鍙繚鐣�4浣嶅皬鏁�)", {
 							icon: 2,
@@ -1398,6 +1409,7 @@
 				console.log(param2);
 				synData(IP + "/PdaSo/GetAllotPlnInfo", param2, 'post', function (res) {
 					if (res.code == 0) {
+						console.log("22222222222222222:");
 						tableData2 = deepCopy(res.data)
 
 						refreshTable2(tableData2)
@@ -1482,8 +1494,8 @@
 						time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
 					}); return;
 				}			
-				let pickedQty = parseInt($('#pickedQty2').val()) //宸叉嫞鏁伴噺
-				let pickQty = parseInt($('#pickQty2').val())  //鎷h揣鏁伴噺
+				let pickedQty = parseFloat($('#pickedQty2').val()) //宸叉嫞鏁伴噺
+				let pickQty = parseFloat($('#pickQty2').val())  //鎷h揣鏁伴噺
 				if (pickQty <= 0) {
 					layer.msg("鎷h揣鏁伴噺闇�澶т簬0", {
 						icon: 2,
@@ -1509,7 +1521,7 @@
 			//纭鎷h揣 
 			function reqPickScatter2() {
 				if($('#pickQty2').val()!= "" && $('#pickQty2').val()!= undefined){
-					var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,4})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+					var reg = /^[1-9]\d*(\.\d{1,4})?$|^0\.\d{1,4}[1-9]\d*$/;
 					if (!reg.test($("#pickQty2").val())) {
 						layer.msg("鏁伴噺蹇呴』澶т簬0(鍙繚鐣�4浣嶅皬鏁�)", {
 							icon: 2,
diff --git a/Pda/View/SoSetting/productOut.html b/Pda/View/SoSetting/productOut.html
index 4e781fd..6dbb631 100644
--- a/Pda/View/SoSetting/productOut.html
+++ b/Pda/View/SoSetting/productOut.html
@@ -1010,7 +1010,7 @@
 			//纭鎷h揣 
 			function reqPickScatter() {
 				if($('#pickQty1').val()!= "" && $('#pickQty1').val()!= undefined){
-					var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,4})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+					var reg = /^[1-9]\d*(\.\d{1,4})?$|^0\.\d{1,4}[1-9]\d*$/;
 					if (!reg.test($("#pickQty1").val())) {
 						layer.msg("鏁伴噺蹇呴』澶т簬0(鍙繚鐣�4浣嶅皬鏁�)", {
 							icon: 2,
@@ -1500,7 +1500,7 @@
 			//纭鎷h揣 
 			function reqPickScatter2() {
 				if($('#pickQty2').val()!= "" && $('#pickQty2').val()!= undefined){
-					var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,4})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+					var reg = /^[1-9]\d*(\.\d{1,4})?$|^0\.\d{1,4}[1-9]\d*$/;
 					if (!reg.test($("#pickQty2").val())) {
 						layer.msg("鏁伴噺蹇呴』澶т簬0(鍙繚鐣�4浣嶅皬鏁�)", {
 							icon: 2,
diff --git a/Wms/Model/InterFaceModel/HttpModel.cs b/Wms/Model/InterFaceModel/HttpModel.cs
index 7327c9e..3fb7bba 100644
--- a/Wms/Model/InterFaceModel/HttpModel.cs
+++ b/Wms/Model/InterFaceModel/HttpModel.cs
@@ -1169,6 +1169,43 @@
         /// </summary>
         public string Warranty { get; set; }
     }
+
+
+    public class ReLogDataModel
+    {
+        /// <summary>
+        /// 鑿滃崟
+        /// </summary>
+        public string LocatNo { get; set; }
+        /// <summary>
+        /// 鎵樼洏鍙�
+        /// </summary>
+        public string PalletNo { get; set; }
+        /// <summary>
+        /// 鐗╂枡鍚嶇О
+        /// </summary>
+        public string SkuName { get; set; }
+        /// <summary>
+        /// 鎿嶄綔淇℃伅
+        /// </summary>
+        public string Msg { get; set; }
+        /// <summary>
+        /// 鎵规
+        /// </summary>
+        public string LotNo { get; set; }
+        /// <summary>
+        /// 璐ㄩ噺鐘舵��
+        /// </summary>
+        public string InspectStatus { get; set; }
+        /// <summary>
+        /// 搴撳瓨鏁伴噺
+        /// </summary>
+        public string Qty { get; set; }
+        /// <summary>
+        /// 鏈夋晥鏈�
+        /// </summary>
+        public string Warranty { get; set; }
+    }
     #endregion
 
 }
diff --git a/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs b/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs
index 8803a87..c6deaca 100644
--- a/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs
+++ b/Wms/Model/ModelVm/PdaVm/PdaSoVm.cs
@@ -96,6 +96,10 @@
         /// 鎷h揣鍙�
         /// </summary>
         public string OutMode { get; set; }
+        /// <summary>
+        /// 鎷h揣浣�
+        /// </summary>
+        public string OutCode { get; set; }
     }
 
 }
diff --git a/Wms/Utility/XML/ExInfoXml.xml b/Wms/Utility/XML/ExInfoXml.xml
index 1e76c09..65321bd 100644
--- a/Wms/Utility/XML/ExInfoXml.xml
+++ b/Wms/Utility/XML/ExInfoXml.xml
@@ -1,5 +1,5 @@
-锘�
-<DataList version="1.0" encoding="utf-8" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="缁堢鎺ュ彛XML Schema-3.0.xsd" SN="BZ010" Version="3.0" License="1001122">
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="缁堢鎺ュ彛XML Schema-3.0.xsd" SN="BZ010" Version="3.0" License="1001122">
 	<Events>
 		<Event Name="SalesWareHouseOut" MainAction="WareHouseOut">
 			<ActionMaping>
@@ -19,8 +19,9 @@
 				<MetaData Name="Code" Type="String"/>
 			</DataMaping>
 			<DataField>
-				
+				<Data Code="86151950000031685740" CorpOrderID="8000363073" Actor="admin" ActDate="2025-01-10 17:09:14" DisCorpID="3" AssCorpID="" ToCorpID="16" FromPerson="admin"/>
+				<Data Code="86151950000031711367" CorpOrderID="8000363073" Actor="admin" ActDate="2025-01-10 17:09:19" DisCorpID="3" AssCorpID="" ToCorpID="16" FromPerson="admin"/>
 			</DataField>
 		</Event>
 	</Events>
-</DataList>
\ No newline at end of file
+</Document>
\ No newline at end of file
diff --git a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
index 8597905..e8d8a3c 100644
--- a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
@@ -1073,6 +1073,7 @@
                     CustomerNo = model.Customer,
                     CustomerName = custname,
                     OrderCode = model.OrderCode,
+                    Status = "0",
                 };
 
                 // 鍏ュ簱鏄庣粏琛ㄤ俊鎭�
@@ -1115,10 +1116,17 @@
                         LotNo = asnDetailModel.LotNo,
                         LotText = "",
                         Qty = (decimal)asnDetailModel.Qty,
-                        PackagNo = asnDetailModel.PackagNo,
+                        FactQty = 0,
+                        CompleteQty = 0,
+                        Price = 0,
+                        Money = 0,
+                        IsBale = "",
+                        IsBelt = "",
+                        PackagNo = skuModel.PackagNo,
                         SupplierLot = asnDetailModel.SupplierLot,
                         Status = "0",
                         CreateUser = 0
+
                     };
 
                     detailModels.Add(detailModel);
@@ -1238,6 +1246,10 @@
                 {
                     throw new Exception("澶嶆牳澶辫触锛屽鏍镐汉鍛樺拰鍏抽棴璁㈠崟浜哄憳涓嶈兘鐩稿悓锛�");
                 }
+                if (date.Id == notice.CreateUser)
+                {
+                    throw new Exception("澶嶆牳澶辫触锛屽鏍镐汉鍛樺拰鍒涘缓璁㈠崟浜哄憳涓嶈兘鐩稿悓锛�");
+                }
                 //鍗曟嵁绫诲瀷鏄� 鎴愬搧鍏ュ簱鎴栭噰璐叆搴� 鍒ゆ柇鍏ュ簱鐗╂枡鏄惁鍚堟牸
                 if (notice.Type == "0" || notice.Type == "1")
                 {
@@ -1272,46 +1284,46 @@
 
                 #region 閫氳繃鎺ュ彛鍙戦�佽嚦erp 鎴� mes
                 ////绯荤粺瀵规帴鍚庢斁寮�
-                //var jsonData = JsonConvert.SerializeObject(asnInfo);
-                //var mesList = new List<string>() { "0", "4" };  //0 鎴愬搧鍏ュ簱 4浣欐枡閫�鍥炲叆搴�
-                //var erpList = new List<string>() { "1", "2", "3" }; //1 閲囪喘鍏ュ簱  2涓棿鍝佸叆搴�  3 閫�璐у叆搴�
+                var jsonData = JsonConvert.SerializeObject(asnInfo);
+                var mesList = new List<string>() { "0", "4" };  //0 鎴愬搧鍏ュ簱 4浣欐枡閫�鍥炲叆搴�
+                var erpList = new List<string>() { "1", "2", "3" }; //1 閲囪喘鍏ュ簱  2涓棿鍝佸叆搴�  3 閫�璐у叆搴�
 
-                //if (mesList.Contains(notice.Type)) // mes 
-                //{
-                //    //鑾峰彇浠ょ墝
-                //    //var token = new Token().GetMesToken(mesTokenUrl); //娴嬭瘯涓嶄娇鐢═OKEN锛屾寮忚繍琛屾椂鏀惧紑
-                //    var token = "";
-                //    Dictionary<string, string> mesDic = new Dictionary<string, string>()
-                //    {
-                //        {"Authorization",token }
-                //    };
-                //    var mesData = new FinishAsnModel()
-                //    {
-                //        no = asnInfo.OrderCode,
-                //        qty = asnInfo.AsnDetails.Sum(m=>m.Qty)
-                //    };
-                //    jsonData = JsonConvert.SerializeObject(mesData);
-                //    //璋冪敤鎺ュ彛
-                //    var response = HttpHelper.DoPost(mesUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "MES", mesDic);
+                if (mesList.Contains(notice.Type)) // mes 
+                {
+                    //鑾峰彇浠ょ墝
+                    //var token = new Token().GetMesToken(mesTokenUrl); //娴嬭瘯涓嶄娇鐢═OKEN锛屾寮忚繍琛屾椂鏀惧紑
+                    var token = "";
+                    Dictionary<string, string> mesDic = new Dictionary<string, string>()
+                    {
+                        {"Authorization",token }
+                    };
+                    var mesData = new FinishAsnModel()
+                    {
+                        no = asnInfo.OrderCode,
+                        qty = asnInfo.AsnDetails.Sum(m => m.Qty)
+                    };
+                    jsonData = JsonConvert.SerializeObject(mesData);
+                    //璋冪敤鎺ュ彛
+                    var response = HttpHelper.DoPost(mesUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "MES", mesDic);
 
-                //    var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
-                //    if (obj.status != "success")
-                //    {
-                //        throw new Exception("涓婁紶澶辫触" + obj.message);
-                //    }
-                //}
-                //else if (erpList.Contains(notice.Type)) //erp  
-                //{
-                //    var response = HttpHelper.DoPost(erpUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "ERP");
+                    var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
+                    if (obj.status != "success")
+                    {
+                        throw new Exception("涓婁紶澶辫触" + obj.message);
+                    }
+                }
+                else if (erpList.Contains(notice.Type)) //erp  
+                {
+                    var response = HttpHelper.DoPost(erpUrl, jsonData, "鍏ュ簱鍗曞畬鎴愪笂浼�", "ERP");
 
-                //    var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁
-                //    if (obj.Success != 0)
-                //    {
-                //        throw new Exception("涓婁紶澶辫触" + obj.Message);
-                //    }
-                //}
+                    var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁
+                    if (obj.Success != 0)
+                    {
+                        throw new Exception("涓婁紶澶辫触" + obj.Message);
+                    }
+                }
 
-                
+
                 #endregion
 
                 notice.Status = "4";
diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 650d65e..a60b419 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -825,6 +825,7 @@
                         }
                         if (bl3)
                         {
+                            labelModel.ExpirationTime = stoTime;
                             labelModel.StoreTime = stoTime;
                         }
                         Db.Insertable(labelModel).ExecuteCommand();
@@ -1046,6 +1047,7 @@
                             }
                             if (bl3)
                             {
+                                labelModel.ExpirationTime = stoTime;
                                 labelModel.StoreTime = stoTime;
                             }
                             Db.Insertable(labelModel).ExecuteCommand();
diff --git a/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs b/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
index 50a3dd7..2414170 100644
--- a/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
@@ -2443,6 +2443,12 @@
                             item.UpdateUser = userId;
                         }
                     }
+                    //鍥炴祦鍏ュ簱鏃堕渶瑕佸宸插垎閰嶄絾鏈嫞璐у畬鎴愭墭鐩樼姸鎬佷慨鏀�
+                    //var exportAllot = Db.Queryable<BllExportAllot>().ToList(w=>w.PalletNo == task.PalletNo && w.Qty > w.CompleteQty && w.TaskNo == taskNo);
+                    //if (exportAllot.Count != 0)
+                    //{
+                    //    //锛燂紵锛燂紵锛燂紵锛燂紵锛�
+                    //}
 
                     locate.Status = "1";
                     Db.Updateable(locate).ExecuteCommand();
diff --git a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
index 2e8dd5f..7e87e70 100644
--- a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
+++ b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
@@ -1428,32 +1428,32 @@
 
                 }
                 //姝e紡杩愯绋嬪簭鏀惧紑
-                //if (endLocate!= null && endLocate.AreaNo == "B12")
-                //{
-                //    //鑾峰彇浠ょ墝
-                //    var token = new Token().GetMesToken(mesTokenUrl);
-                //    Dictionary<string, string> mesDic = new Dictionary<string, string>()
-                //    {
-                //        {"Authorization",token }
-                //    };
-                //    var mesData = new RequertBeiliaoModel()
-                //    {
-                //        morder_no = stockDetail.First().SONo,
-                //        pallet = stockDetail.First().PalletNo,
-                //        layer_no = endLocate.LocatNo,
-                //        items = data
-                //    };
-                //    var jsonData = JsonConvert.SerializeObject(mesData);
-                //    //璋冪敤鎺ュ彛
-                //    var response = HttpHelper.DoPost(mesUrl, jsonData, "澶囨枡瀹屾垚杩愯嚦缂撳瓨鍖哄弽棣堣嚦MES", "MES", mesDic);
+                if (endLocate != null && endLocate.AreaNo == "B12")
+                {
+                    //鑾峰彇浠ょ墝
+                    var token = new Token().GetMesToken(mesTokenUrl);
+                    Dictionary<string, string> mesDic = new Dictionary<string, string>()
+                    {
+                        {"Authorization",token }
+                    };
+                    var mesData = new RequertBeiliaoModel()
+                    {
+                        morder_no = stockDetail.First().SONo,
+                        pallet = stockDetail.First().PalletNo,
+                        layer_no = endLocate.LocatNo,
+                        items = data
+                    };
+                    var jsonData = JsonConvert.SerializeObject(mesData);
+                    //璋冪敤鎺ュ彛
+                    var response = HttpHelper.DoPost(mesUrl, jsonData, "澶囨枡瀹屾垚杩愯嚦缂撳瓨鍖哄弽棣堣嚦MES", "MES", mesDic);
 
-                //    var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
-                //    if (obj.status != "0")
-                //    {
-                //        throw new Exception("澶囨枡鍚屾MES澶辫触锛�" + obj.message);
-                //    }
+                    var obj = JsonConvert.DeserializeObject<MesModel>(response);//瑙f瀽杩斿洖鏁版嵁
+                    if (obj.status != "0")
+                    {
+                        throw new Exception("澶囨枡鍚屾MES澶辫触锛�" + obj.message);
+                    }
 
-                //}
+                }
                 if (userId != 0)
                 {
                     //娣诲姞鎿嶄綔鏃ュ織璁板綍
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
index 461c9fc..3ff3e48 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -1957,62 +1957,62 @@
 
                 #region 娴嬭瘯鐗堟湰
 
-                //璇诲彇json鏂囦欢锛屾坊鍔犳暟鎹�
-                var ss = AppDomain.CurrentDomain.BaseDirectory;
-                string filePath = Path.Combine(ss, "CreateBoxInfo.json");
-                string json = File.ReadAllText(filePath);
-                var person = JsonConvert.DeserializeObject<List<BllBoxInfo>>(json);
+                ////璇诲彇json鏂囦欢锛屾坊鍔犳暟鎹�
+                //var ss = AppDomain.CurrentDomain.BaseDirectory;
+                //string filePath = Path.Combine(ss, "CreateBoxInfo.json");
+                //string json = File.ReadAllText(filePath);
+                //var person = JsonConvert.DeserializeObject<List<BllBoxInfo>>(json);
 
                 var comTime = DateTime.Now;
-                //娣诲姞绠辩爜淇℃伅琛ㄤ腑  //鏆傛椂杩欎簺鍐�--娣诲姞鏁版嵁锛屽悗缁渶瑕佸拰璧嬬爜绯荤粺瀵规帴鍚� 鏍规嵁鏄庣‘杩斿洖鐨勬暟鎹牸寮忔洿鏀�
-                foreach (var item in person)
-                {
-                    if (item.BoxNo!= boxNo)
-                    {
-                        continue;
-                    }
+                ////娣诲姞绠辩爜淇℃伅琛ㄤ腑  //鏆傛椂杩欎簺鍐�--娣诲姞鏁版嵁锛屽悗缁渶瑕佸拰璧嬬爜绯荤粺瀵规帴鍚� 鏍规嵁鏄庣‘杩斿洖鐨勬暟鎹牸寮忔洿鏀�
+                //foreach (var item in person)
+                //{
+                //    if (item.BoxNo!= boxNo)
+                //    {
+                //        continue;
+                //    }
 
-                    var sku = Db.Queryable<SysMaterials>().First(m=>m.IsDel =="0" && m.SkuNo == item.SkuNo);
-                    if (sku == null)
-                    {
-                        continue;
-                    }
-                    var boxInfo = new BllBoxInfo()
-                    {
-                        ASNNo = "",
-                        //ASNDetailNo = 0,
-                        OrderCode = "",
-                        //BindNo = 0,
-                        BoxNo = item.BoxNo,
-                        BoxNo2 = item.BoxNo2,
-                        BoxNo3 = item.BoxNo3,
-                        PalletNo = "",
-                        Qty = item.Qty,
-                        FullQty = item.FullQty,
-                        Status = "0",
-                        SkuNo = item.SkuNo,
-                        SkuName = sku.SkuName,
-                        LotNo = item.LotNo,
-                        LotText = item.LotText,
-                        SupplierLot = item.SupplierLot,
-                        ProductionTime = item.ProductionTime,
-                        ExpirationTime = item.ExpirationTime,
-                        //CompleteTime = comTime,
-                        InspectMark = item.InspectMark,
-                        BitBoxMark = item.BitBoxMark,
-                        InspectStatus = item.InspectStatus,
-                        Origin = "璧嬬爜",
-                        Standard = item.Standard,
-                        PackageStandard = item.PackageStandard,
-                        StoreTime = item.StoreTime,
-                        QtyOrd = item.QtyOrd,
-                        QtyCount = item.QtyCount,
-                        CreateUser = 0,
-                        CreateTime = comTime,
-                    };
-                    list.Add(boxInfo);
-                }
-                Db.Insertable(list).ExecuteCommand();
+                //    var sku = Db.Queryable<SysMaterials>().First(m=>m.IsDel =="0" && m.SkuNo == item.SkuNo);
+                //    if (sku == null)
+                //    {
+                //        continue;
+                //    }
+                //    var boxInfo = new BllBoxInfo()
+                //    {
+                //        ASNNo = "",
+                //        //ASNDetailNo = 0,
+                //        OrderCode = "",
+                //        //BindNo = 0,
+                //        BoxNo = item.BoxNo,
+                //        BoxNo2 = item.BoxNo2,
+                //        BoxNo3 = item.BoxNo3,
+                //        PalletNo = "",
+                //        Qty = item.Qty,
+                //        FullQty = item.FullQty,
+                //        Status = "0",
+                //        SkuNo = item.SkuNo,
+                //        SkuName = sku.SkuName,
+                //        LotNo = item.LotNo,
+                //        LotText = item.LotText,
+                //        SupplierLot = item.SupplierLot,
+                //        ProductionTime = item.ProductionTime,
+                //        ExpirationTime = item.ExpirationTime,
+                //        //CompleteTime = comTime,
+                //        InspectMark = item.InspectMark,
+                //        BitBoxMark = item.BitBoxMark,
+                //        InspectStatus = item.InspectStatus,
+                //        Origin = "璧嬬爜",
+                //        Standard = item.Standard,
+                //        PackageStandard = item.PackageStandard,
+                //        StoreTime = item.StoreTime,
+                //        QtyOrd = item.QtyOrd,
+                //        QtyCount = item.QtyCount,
+                //        CreateUser = 0,
+                //        CreateTime = comTime,
+                //    };
+                //    list.Add(boxInfo);
+                //}
+                //Db.Insertable(list).ExecuteCommand();
 
                 #endregion
 
@@ -2025,7 +2025,7 @@
                     { "Token", token }, //鍒嗛厤鐨勪护鐗岋紙鍙橀噺锛�
                     { "Barcode", boxNo },//瑕佹煡璇㈢殑鏉$爜
                     { "getParent", getParentVal },//鏄惁鏌ヨ鐖剁爜
-                    { "getChildren", getChildrenVal } //鏄惁鏌ヨ瀛愮爜
+                    { "getChildren", getChildrenVal } //鏄惁鏌ヨ瀛愮爜  aaa
                 };
 
                 //绋嬪簭姝e紡鍙戝竷鍚庢斁寮�
@@ -2050,10 +2050,10 @@
                             throw new Exception("鑾峰彇淇℃伅涓嶄竴鑷�");
                         }
 
-                        var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == fuMaModel.Product.ProductCode);
+                        var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == fuMaModel.MaterialNum);
                         if (sku == null)
                         {
-                            throw new Exception("鏈煡璇㈠埌绠辩爜涓殑鐗╂枡淇℃伅");
+                            throw new Exception("鏈煡璇㈠埌绠辩爜涓拰璧嬬爜鎻愪緵鐨勭墿鏂欎俊鎭竴鑷寸殑鏁版嵁");
                         }
                         var boxInfo = new BllBoxInfo()
                         {
@@ -2582,6 +2582,7 @@
 
                     DateTime proTime;
                     DateTime expTime;
+                    DateTime sortTime;
                     var bl1 = DateTime.TryParse(detail.Lot1, out proTime);
                     var bl2 = DateTime.TryParse(detail.Lot2, out expTime);
                     
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index 12de074..8746b3a 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -70,11 +70,11 @@
                 {
                     throw new Exception("鎵樼洏鐮佷负绌猴紝璇疯緭鍏ユ墭鐩樼爜");
                 }
-                var palletInfo = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == palletNo);
-                if (!string.IsNullOrEmpty(palletInfo.WareHouseNo) && type != "1")
-                {
-                    throw new Exception("璇ユ墭鐩樿繕鏈嚭搴�");
-                }
+                //var palletInfo = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == palletNo);
+                //if (string.IsNullOrEmpty(palletInfo.WareHouseNo) && type != "1")
+                //{
+                //    throw new Exception("璇ユ墭鐩樿繕鏈嚭搴�");
+                //}
                 if (type == "1")//骞冲簱鍑哄簱鑾峰彇鍗曟嵁
                 {
                     var allotList = Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.Status == "1" && m.PalletNo == palletNo).Select(m => m.SONo).Distinct().Where(m => !string.IsNullOrWhiteSpace(m)).ToList();
@@ -82,6 +82,11 @@
                 }
                 //鑾峰彇鐘舵�佷负寰呮嫞璐ф垨鑰呴儴鍒嗘嫞璐х殑鍑哄簱鍗�
                 var allotList2 = Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && (m.Status == "2" || m.Status == "3") && m.PalletNo == palletNo).Select(m => m.SONo).Distinct().Where(m => !string.IsNullOrWhiteSpace(m)).ToList();
+
+                if (allotList2.Count == 0)
+                {
+                    throw new Exception("姝ゆ墭鐩樺凡鎷h揣鎴栨棤鎷h揣浠诲姟");
+                }
 
                 //var allotList = Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.PalletNo == palletNo).Select(m => m.SONo).Distinct().Where(m => !string.IsNullOrWhiteSpace(m)).ToList();
                 //鑾峰彇鍑哄簱鍗曟嵁涓嶄负寰呮嫞璐� 鎵ц瀹屾瘯 璁㈠崟鍏抽棴 绛夊緟鎵ц鐨勫崟鎹�
@@ -529,6 +534,13 @@
                     {
                         throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�");
                     }
+                    //淇敼鍌ㄤ綅鐘舵��
+                    var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                    if (locate != null)
+                    {
+                        locate.Status = "0";
+                        Db.Updateable(locate).ExecuteCommand();
+                    }
                     pallet.Status = "0";
                     Db.Updateable(pallet).ExecuteCommand();
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
@@ -757,6 +769,13 @@
                         }
                         pallet.Status = "0";
                         Db.Updateable(pallet).ExecuteCommand();
+                        //淇敼鍌ㄤ綅鐘舵��
+                        var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                        if (locate != null)
+                        {
+                            locate.Status = "0";
+                            Db.Updateable(locate).ExecuteCommand();
+                        }
                     }
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
                     noticeDetail.CompleteQty += pickQty;
@@ -955,12 +974,19 @@
                 {
                     throw new Exception("鏈湪鎵樼洏琛ㄤ腑鏌ヨ鍒版墭鐩樹俊鎭�");
                 }
-
+                
                 //鍒ゆ柇鎵樼洏涓婄墿鏂欐槸鍚︽嫞璐у畬姣�
                 if (isDel == 0)
                 {
                     pallet.Status = "0";
                     Db.Updateable(pallet).ExecuteCommand();
+                }
+                //淇敼鍌ㄤ綅鐘舵��
+                var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                if (locate != null)
+                {
+                    locate.Status = "0";
+                    Db.Updateable(locate).ExecuteCommand();
                 }
 
                 //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
@@ -2435,7 +2461,20 @@
                         throw new Exception("娌℃湁鍙敤鐨勭┖鎵樼洏");
                     }
                     StartLocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "1" && (w.LocatNo == "B13010101" || w.LocatNo == "B13020101" || w.LocatNo == "B13030101")).LocatNo;
-                    EndLocate = "B15010101";
+
+                    //鏍¢獙鏄惁涓虹2灞傛嫞璐ф墭鐩樹綅
+                    var locate = Db.Queryable<SysStorageLocat>().First(w => w.Row == 2 && w.LocatNo == model.OutCode);
+                    if (locate == null)
+                    {
+                        throw new Exception("璇烽�夋嫨姝g‘鐨勬嫞璐т綅");
+                    }
+                    //鏍¢獙鐩殑璐т綅鏄惁鍙敤
+                    var isuse = Db.Queryable<SysStorageLocat>().First(w => w.Status == "0" && w.LocatNo == model.OutCode);
+                    if (locate == null)
+                    {
+                        throw new Exception("姝ゆ嫞璐т綅鐘舵�佷笉涓虹┖璐т綅");
+                    }
+                    EndLocate = model.OutCode;
                 }
                 else//涓滀晶鎷h揣浣嶅彨绌烘墭鐩�
                 {
@@ -2445,7 +2484,20 @@
                         throw new Exception("娌℃湁鍙敤鐨勭┖鎵樼洏");
                     }
                     StartLocate = Db.Queryable<SysStorageLocat>().First(w => w.Status == "1" && (w.LocatNo == "B13030101" || w.LocatNo == "B13040101" || w.LocatNo == "B13050101")).LocatNo;
-                    EndLocate = "B15020101";
+
+                    //鏍¢獙鏄惁涓虹2灞傛嫞璐ф墭鐩樹綅
+                    var locate = Db.Queryable<SysStorageLocat>().First(w => w.Row == 4 && w.LocatNo == model.OutCode);
+                    if (locate == null)
+                    {
+                        throw new Exception("璇烽�夋嫨姝g‘鐨勬嫞璐т綅");
+                    }
+                    //鏍¢獙鐩殑璐т綅鏄惁鍙敤
+                    var isuse = Db.Queryable<SysStorageLocat>().First(w => w.Status == "0" && w.LocatNo == model.OutCode);
+                    if (locate == null)
+                    {
+                        throw new Exception("姝ゆ嫞璐т綅鐘舵�佷笉涓虹┖璐т綅");
+                    }
+                    EndLocate = model.OutCode;
                 }
 
                 //娣诲姞鍑哄簱浠诲姟
@@ -3213,6 +3265,13 @@
                         }
                         pallet.Status = "0";
                         Db.Updateable(pallet).ExecuteCommand();
+                        //淇敼鍌ㄤ綅鐘舵��
+                        var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                        if (locate != null)
+                        {
+                            locate.Status = "0";
+                            Db.Updateable(locate).ExecuteCommand();
+                        }
                     }
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
                     noticeDetail.Qty += pickQty;
@@ -3493,6 +3552,13 @@
                         }
                         pallet.Status = "0";
                         Db.Updateable(pallet).ExecuteCommand();
+                        //淇敼鍌ㄤ綅鐘舵��
+                        var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                        if (locate != null)
+                        {
+                            locate.Status = "0";
+                            Db.Updateable(locate).ExecuteCommand();
+                        }
                     }
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
                     noticeDetail.CompleteQty += pickQty;
@@ -3779,6 +3845,13 @@
                         pallet.Status = "0";
                         Db.Updateable(pallet).ExecuteCommand();
                     }
+                    //淇敼鍌ㄤ綅鐘舵��
+                    var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                    if (locate != null)
+                    {
+                        locate.Status = "0";
+                        Db.Updateable(locate).ExecuteCommand();
+                    }
 
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
                     noticeDetail.Qty += decimal.Parse(PickQty);
@@ -3962,6 +4035,13 @@
                     {
                         pallet.Status = "0";
                         Db.Updateable(pallet).ExecuteCommand();
+                    }
+                    //淇敼鍌ㄤ綅鐘舵��
+                    var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                    if (locate != null)
+                    {
+                        locate.Status = "0";
+                        Db.Updateable(locate).ExecuteCommand();
                     }
 
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
@@ -4207,6 +4287,7 @@
                             LotNo = allot.LotNo,
                             LotText = allot.LotText,
                             SupplierLot = allot.SupplierLot,
+                            
                             SkuNo = allot.SkuNo,
                             SkuName = allot.SkuName,
                             Standard = allot.Standard,
@@ -4303,10 +4384,10 @@
                             throw new Exception("璇ユ墭鐩樹笌绠辩爜娌℃湁缁戝畾鍏崇郴");
                         }
                         var boxQty = boxInfos.First().Qty;
-                        if (boxQty > needQty)
-                        {
-                            throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺");
-                        }
+                        //if (boxQty > needQty)
+                        //{
+                        //    throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺");
+                        //}
 
                         foreach (var item in boxInfos)
                         {
@@ -4329,10 +4410,10 @@
                         {
                             throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺");
                         }
-                        if (decimal.Parse(pickQty1) > needQty)
-                        {
-                            throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺");
-                        }
+                        //if (decimal.Parse(pickQty1) > needQty)
+                        //{
+                        //    throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鍓╀綑寰呮嫞鏁伴噺");
+                        //}
 
                         biaoShi = "2";
                     }
@@ -4347,10 +4428,10 @@
                             throw new Exception("璇ユ墭鐩樹笌绠辩爜娌℃湁缁戝畾鍏崇郴");
                         }
                         var boxQty = boxInfo.GroupBy(m => m.BoxNo).Select(m => SqlFunc.AggregateSum(m.Qty)).ToList();
-                        if (boxQty[0] > needQty)
-                        {
-                            throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺");
-                        }
+                        //if (boxQty[0] > needQty)
+                        //{
+                        //    throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺");
+                        //}
 
                         foreach (var item in boxInfos)
                         {
@@ -4448,6 +4529,7 @@
                                         SkuName = item.SkuName,
                                         Standard = item.Standard,
                                         ProductionTime = item.ProductionTime,
+                                        ExpirationTime = item.ExpirationTime,
                                         SupplierLot = item.SupplierLot,
                                         InspectMark = item.InspectMark,
                                         BitBoxMark = "1",
@@ -4537,6 +4619,14 @@
                         }
                         pallet.Status = "0";
                         Db.Updateable(pallet).ExecuteCommand();
+                        //淇敼鍌ㄤ綅鐘舵��
+                        var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                        if (locate != null)
+                        {
+                            locate.Status = "0";
+                            Db.Updateable(locate).ExecuteCommand();
+                        }
+                        
                     }
                     //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
                     noticeDetail.CompleteQty += pickQty;
@@ -4646,10 +4736,10 @@
                 }
                 //鍓╀綑鎷h揣鏁伴噺锛堝緟鎷e噺鍘诲凡鎷o級
                 var needQty = allot.Qty - allot.CompleteQty;
-                if (decimal.Parse(PickQty) > needQty)
-                {
-                    throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺");
-                }
+                //if (decimal.Parse(PickQty) > needQty)
+                //{
+                //    throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬鎵樺唴鍓╀綑寰呮嫞鏁伴噺");
+                //}
 
                 //搴撳瓨鏄庣粏
                 var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.Id == allot.StockId);
@@ -4874,6 +4964,13 @@
 
                     pallet.Status = "0";
                     Db.Updateable(pallet).ExecuteCommand();
+                    //淇敼鍌ㄤ綅鐘舵��
+                    var locate = Db.Queryable<SysStorageLocat>().First(w => w.LocatNo == stockDetail.LocatNo);
+                    if (locate != null)
+                    {
+                        locate.Status = "0";
+                        Db.Updateable(locate).ExecuteCommand();
+                    }
                 }
 
                 //淇敼鍑哄簱鍗曟槑缁嗘嫞璐ф暟閲�
diff --git a/Wms/WMS.BLL/BllQualityServer/QualityInspectServer.cs b/Wms/WMS.BLL/BllQualityServer/QualityInspectServer.cs
index 386cd35..855d1dd 100644
--- a/Wms/WMS.BLL/BllQualityServer/QualityInspectServer.cs
+++ b/Wms/WMS.BLL/BllQualityServer/QualityInspectServer.cs
@@ -107,6 +107,12 @@
             {
                 throw new Exception("鎵规鍙蜂笉鍙负绌猴紝璇锋牳鏌ワ紒");
             }
+            //楠岃瘉鎵规鍙锋槸鍚︿负褰撳墠搴撳瓨涓凡鏈夋壒娆�
+            var lot = Db.Queryable<DataStock>().Where(w => w.LotNo == model.LotNo).ToList();
+            if (lot.Count == 0)
+            {
+                throw new Exception("褰撳墠搴撳瓨涓棤姝ゆ壒鍙凤紝璇锋牳鏌ワ紒");
+            }
             int isTui = 0;
             //楠岃瘉鍏ュ簱鍗曞彿鏄惁涓虹┖
             if (!string.IsNullOrEmpty(model.ASNNo))
diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index 68367c9..802e285 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -1283,8 +1283,7 @@
                                 throw new Exception("褰撳墠鍗曟嵁鏄庣粏涓鍒掓暟閲忎笌鎷h揣鏁伴噺涓嶇锛岃鏍稿疄");
                             }
                         }
-                        if (d.Qty < d.CompleteQty)
-                        {
+                       
                             //鏇存敼搴撳瓨鏄庣粏閿佸畾鏁伴噺
                             var allotList = Db.Queryable<BllExportAllot>().Where(o => o.SODetailNo == d.Id && o.Status == "3" && o.IsDel == "0").ToList();
                             foreach (var o in allotList)
@@ -1335,7 +1334,7 @@
                                 Db.Updateable(st).UpdateColumns(it => new { it.LockQty }).ExecuteCommand();
                             }
                             #endregion
-                        }
+                        
 
                     }
                     //娣诲姞鎿嶄綔鏃ュ織璁板綍
@@ -1707,8 +1706,8 @@
                 {
                     throw new Exception($"鏈壘鍒皗soNo}鍑哄簱鍗曚俊鎭�");
                 }
-                //鎵�鏈夎鍑哄簱鐨勫嚭搴撳垎閰嶄俊鎭�(鏈笅鍙戠殑淇℃伅鍜屽緟鎷h揣鐨勪俊鎭�)
-                var list = Db.Queryable<BllExportAllot>().Where(a => a.IsDel == "0" && a.SONo == soNo && a.Status == "0").ToList();
+                //鎵�鏈夎鍑哄簱鐨勫嚭搴撳垎閰嶄俊鎭�(鏈笅鍙戠殑淇℃伅鍜屽緟鎷h揣鐨勪俊鎭拰閮ㄥ垎鎷h揣鍚庡洖娴佸叆搴撶殑鎵樼洏)
+                var list = Db.Queryable<BllExportAllot>().Where(a => a.IsDel == "0" && a.SONo == soNo && (a.Status == "0" || a.Status == "3")).ToList();
                 if (list.Count == 0) //鍒ゆ柇鏄惁鏈夐渶瑕佷笅鍙戠殑鍑哄簱娴佹按
                 {
                     throw new Exception("褰撳墠鍑哄簱鍗曟嵁鏃犻渶瑕佷笅鍙戠殑鎵樼洏");
@@ -2427,11 +2426,11 @@
                                 if (outLine == "443")//瑗夸晶鍑哄簱
                                 {
 
-                                    positionEnd = locateno.OrderBy(m => m.LocatNo).First(m => m.Row == 1 && m.Status == "0" && m.Flag == "0").LocatNo; //瑗夸晶鎴块棿搴撲綅鍜屽闈㈡埧闂�
+                                    positionEnd = locateno.OrderBy(m => m.LocatNo).First(m => m.Row == 1 && m.Status == "0" && m.Flag == "0").LocatNo; //瑗夸晶鎴块棿搴撲綅
                                 }
                                 else if (outLine == "440")  //涓滀晶鍑哄簱
                                 {
-                                    positionEnd = locateno.OrderBy(m => m.LocatNo).First(m => m.Row == 2  && m.Status == "0" && m.Flag == "0").LocatNo; //涓滀晶鎴块棿搴撲綅
+                                    positionEnd = locateno.OrderBy(m => m.LocatNo).First(m => m.Row == 3  && m.Status == "0" && m.Flag == "0").LocatNo; //涓滀晶鎴块棿搴撲綅鍜屽闈㈡埧闂�
                                 }
                             }
                             else if (type1.Type == "2" || type1.Type == "3") //鎶芥鍑哄簱 /鍙栨牱鍑哄簱
@@ -2441,7 +2440,7 @@
                             else if (type1.Type == "4")//涓嶅悎鏍煎搧鍑哄簱
                             {
 
-                                positionEnd = Db.Queryable<SysStorageLocat>().OrderBy(m => m.LocatNo).First(m => m.AreaNo == "B03" && m.Status == "0" && m.Flag == "0").LocatNo;
+                                positionEnd = Db.Queryable<SysStorageLocat>().OrderBy(m => m.LocatNo).First(m => (m.AreaNo == "B01"|| m.AreaNo == "B02"||m.AreaNo == "B04") && m.Status == "0" && m.Flag == "0").LocatNo;
                             }
                             else //鍏朵粬鍗曟嵁绫诲瀷閮藉瓨鏀惧彂璐х紦瀛樺尯
                             {
@@ -2669,8 +2668,9 @@
                     StartLocate = locateNo, // 璧峰浣嶇疆
                     StartRoadway = locate.RoadwayNo,
                     EndLocate = task.EndLocat, // 鐩爣浣嶇疆 
+                    EndRoadway = task.EndRoadway,
                     TaskNo = task.TaskNo, // 浠诲姟鍙�
-                    TaskType = "1",// 浠诲姟绫诲瀷 (鍑哄簱)
+                    TaskType = task.Type,// 浠诲姟绫诲瀷 (鍑哄簱)
                     OutMode = "",  //鐩爣鍦板潃
                     Order = 1
                 }; //鍑哄簱鏁版嵁 
diff --git a/Wms/WMS.BLL/DataServer/StockServer.cs b/Wms/WMS.BLL/DataServer/StockServer.cs
index 8ab0b61..958fa07 100644
--- a/Wms/WMS.BLL/DataServer/StockServer.cs
+++ b/Wms/WMS.BLL/DataServer/StockServer.cs
@@ -9,6 +9,7 @@
 using Model.InterFaceModel;
 using Model.ModelDto;
 using Model.ModelDto.DataDto;
+using Model.ModelDto.LogDto;
 using Model.ModelDto.SysDto;
 using Model.ModelVm.DataVm;
 using Newtonsoft.Json;
@@ -1101,7 +1102,10 @@
                 }
 
                 #endregion
-
+                palletNo.IsCancel = 0;
+                palletNo.IsSend = 0;
+                palletNo.IsFinish = 0;
+                Db.Updateable(palletNo).ExecuteCommand();
 
                 Db.CommitTran();
 
@@ -1353,12 +1357,12 @@
                         }
                     }
                 }
-                else
+                else  
                 {
                     storageStart = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat); //鑾峰彇璧峰搴撲綅淇℃伅
                     if (storageStart == null)
                     {
-                        throw new Exception("鏈壘鍒扮浉搴旂殑璧峰搴撲綅");
+                        isstock = 2; //搴撳彛鍒扮紦瀛樹綅浠诲姟
                     }
                 }
                 //var soAllot = Db.Queryable<BllExportAllot>().First(m => m.IsDel == "0" && m.PalletNo == palletNo.PalletNo);//鑾峰彇鍒嗛厤淇℃伅
@@ -1377,13 +1381,13 @@
 
                 if (isstock == 1)
                 {
-                    startLocat = Db.Queryable<SysStorageLocat>().First(w=> w.IsDel == "0" && w.LocatNo == palletNo.StartLocat);
+                    startLocat = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.LocatNo == palletNo.StartLocat);
                     //淇敼璧峰搴撲綅鐘舵��
                     startLocat.Status = "0";//0锛氱┖鍌ㄤ綅 1锛氭湁鐗╁搧 2锛氬叆搴撲腑 3锛氬嚭搴撲腑 4锛氱Щ鍏ヤ腑 5锛氱Щ鍑轰腑 
                     Db.Updateable(startLocat).ExecuteCommand();
 
-                    //璋冪敤MES澶囨枡鍙嶉瀹屾垚鎺ュ彛
-                    #region  MES澶囨枡瀹屾垚鍙嶉
+
+                    #region  
                     var data = new List<RequertBeiliaoInfoModel>();
 
                     //鏇存敼搴撳瓨鏄庣粏
@@ -1472,7 +1476,7 @@
                             case "1":
                                 endlono = "Y003_0" + endLocat.LocatNo.ToString().Substring(5, 2);
                                 break;
-                            
+
                         }
                         var mescode = Db.Queryable<BllExportNotice>().Where(w => w.SONo == stockDetail.First().SONo).First();
                         var mesData = new RequertBeiliaoModel()
@@ -1495,7 +1499,7 @@
                     }
                     #endregion
                 }
-                else  //绌烘墭鐩樺鐞�
+                else if (isstock == 0)
                 {
                     //淇敼缁勬墭淇℃伅
                     if (bindDetail.WareHouseNo == "W01") //1銆佺┖鎵樼洏鍨涘埌绌烘墭鐩樻敹闆嗗櫒锛�
@@ -1524,7 +1528,25 @@
                         }
                     }
                     Db.Updateable(bindDetail).ExecuteCommand();
+
                 }
+                else //搴撳彛绉诲簱鍒扮紦瀛樹綅
+                {
+
+                    foreach (var item in stockDetail)
+                    {
+                        item.LocatNo = endLocat.LocatNo;//鍌ㄤ綅鏇存敼
+                        item.WareHouseNo = endLocat.WareHouseNo;//鎵�灞炰粨搴撴洿鏀�
+                        item.RoadwayNo = endLocat.RoadwayNo;//鎵�灞炲贩閬撴洿鏀�
+                        item.AreaNo = endLocat.AreaNo;//鎵�灞炲尯鍩熸洿鏀� 
+
+                        Db.Updateable(item).ExecuteCommand();
+                    }
+                }
+                palletNo.IsCancel = 0;
+                palletNo.IsSend = 0;
+                palletNo.IsFinish = 0;
+                Db.Updateable(palletNo).ExecuteCommand();
                 Db.CommitTran();
             }
             catch (Exception ex)
@@ -1535,7 +1557,7 @@
         }
         #endregion
 
-        #region 鏁板瓧瀛敓绯荤粺鑾峰彇搴撳瓨淇℃伅
+        #region 鏁板瓧瀛敓绯荤粺鍙嶉淇℃伅
 
         /// <summary>
         /// 鍙嶉鏁板瓧瀛敓绯荤粺搴撳瓨淇℃伅
@@ -1583,6 +1605,170 @@
                 throw new Exception("杩斿洖搴撳瓨淇℃伅鏈夎锛岄敊璇俊鎭細" + ex);
             }
         }
+
+
+
+        /// <summary>
+        /// 鍙嶉鏁板瓧瀛敓绯荤粺鎿嶄綔淇℃伅
+        /// </summary>
+        /// <param name=""></param>
+        /// <returns></returns>
+        public List<ReLogDataModel> GetLogDataList()
+        {
+            try
+            {
+
+                //搴撳瓨淇℃伅
+                var stockDetailsList = Db.Queryable<DataStockDetail>().ToList();
+                var sql = "select LocatNo,PalletNo,SkuName,Standard,LotNo,InspectStatus,Qty,ExpirationTime as Warranty from DataStockDetail ";
+
+
+                var item2 = Expressionable.Create<LogOperationSO>()
+                   .And(it => it.IsDel == "0")
+                   .ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
+
+                var list2 = Db.Queryable<LogOperationSO>().Where(item2)
+                    .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString())
+                    .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id)
+                    .Select((it, dic, users) => new OperationDto()
+                    {
+                        Id = it.Id,
+                        ParentNo = it.ParentNo,
+                        MenuNo = it.MenuNo,
+                        MenuName = it.MenuName,
+                        FkNo = it.FkNo,
+                        Type = dic.DictName,
+                        Msg = it.Msg,
+                        CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
+                        CreateUserName = users.RealName,
+                    });
+
+                List<ReLogDataModel> list = Db.Ado.SqlQuery<ReLogDataModel>(sql);
+               
+                return list;
+            }
+            catch (Exception ex)
+            {
+
+                throw new Exception("杩斿洖搴撳瓨淇℃伅鏈夎锛岄敊璇俊鎭細" + ex);
+            }
+        }
+
+
+        /// <summary>
+        /// 鏌ヨ鎿嶄綔鏃ュ織
+        /// </summary>
+        /// <param name="menuName">鑿滃崟鍚嶇О</param>
+        /// <param name="type">绫诲瀷</param>
+        /// <returns></returns>
+        public List<OperationDto> ReLogData()
+        {
+            try
+            {
+                var total = 0;
+                #region asn
+
+                var item = Expressionable.Create<LogOperationASN>()
+                    .And(it => it.IsDel == "0")
+                    .ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
+
+                var list = Db.Queryable<LogOperationASN>().Where(item)
+                    .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString())
+                    .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id)
+                    .Select((it, dic, users) => new OperationDto()
+                    {
+                        Id = it.Id,
+                        ParentNo = it.ParentNo,
+                        MenuNo = it.MenuNo,
+                        MenuName = it.MenuName,
+                        FkNo = it.FkNo,
+                        Type = dic.DictName,
+                        Msg = it.Msg,
+                        CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
+                        CreateUserName = users.RealName,
+                    });
+
+                #endregion
+
+                #region so
+
+                var item2 = Expressionable.Create<LogOperationSO>()
+                   .And(it => it.IsDel == "0")
+                   .ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
+
+                var list2 = Db.Queryable<LogOperationSO>().Where(item2)
+                    .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString())
+                    .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id)
+                    .Select((it, dic, users) => new OperationDto()
+                    {
+                        Id = it.Id,
+                        ParentNo = it.ParentNo,
+                        MenuNo = it.MenuNo,
+                        MenuName = it.MenuName,
+                        FkNo = it.FkNo,
+                        Type = dic.DictName,
+                        Msg = it.Msg,
+                        CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
+                        CreateUserName = users.RealName,
+                    });
+
+                #endregion
+
+                #region cr
+
+                var item3 = Expressionable.Create<LogOperationCR>()
+                    .And(it => it.IsDel == "0")
+                    .ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
+
+                var list3 = Db.Queryable<LogOperationCR>().Where(item3)
+                    .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString())
+                    .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id)
+                    .Select((it, dic, users) => new OperationDto()
+                    {
+                        Id = it.Id,
+                        ParentNo = it.ParentNo,
+                        MenuNo = it.MenuNo,
+                        MenuName = it.MenuName,
+                        FkNo = it.FkNo,
+                        Type = dic.DictName,
+                        Msg = it.Msg,
+                        CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
+                        CreateUserName = users.RealName,
+                    });
+
+                #endregion
+
+                #region sys
+
+                var item4 = Expressionable.Create<LogOperationSys>()
+                    .ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
+
+                var list4 = Db.Queryable<LogOperationSys>().Where(item4)
+                    .LeftJoin<SysDictionary>((it, dic) => it.Type == dic.Id.ToString())
+                    .LeftJoin<SysUserInfor>((it, dic, users) => it.CreateUser == users.Id)
+                    .Select((it, dic, users) => new OperationDto()
+                    {
+                        Id = it.Id,
+                        ParentNo = it.ParentNo,
+                        MenuNo = it.MenuNo,
+                        MenuName = it.MenuName,
+                        FkNo = it.FkNo,
+                        Type = dic.DictName,
+                        Msg = it.Msg,
+                        CreateTime = it.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"),
+                        CreateUserName = users.RealName,
+                    });
+
+                #endregion
+
+                var data = Db.UnionAll(list, list2, list3, list4).OrderByDescending(it => it.CreateTime);
+                return data.OrderByDescending(m => m.CreateTime).ToList();
+            }
+            catch (Exception e)
+            {
+                throw new Exception(e.Message);
+            }
+        }
         #endregion
     }
 }
diff --git a/Wms/WMS.BLL/SysServer/Token.cs b/Wms/WMS.BLL/SysServer/Token.cs
index ec45099..d4458a1 100644
--- a/Wms/WMS.BLL/SysServer/Token.cs
+++ b/Wms/WMS.BLL/SysServer/Token.cs
@@ -125,70 +125,70 @@
                     str = sysToken.Token;
                     return str;  //杩斿洖token鍊�
                 }
-                return str;
-                //#region 鑾峰彇鏂扮殑浠ょ墝
-                ////瀵规帴鏃舵洿鏀硅矾寰�
-                //var user = MesConfig.MesUser;
-                //var pass = MesConfig.MesPassWord;
-                //var secretKey = Md5Tools.CalcMd5(pass);
-                //var nonce = Guid.NewGuid().ToString("N");
-                //var timestamp = DateTimeOffset.Now.ToUnixTimeSeconds().ToString();
+                //return str;
+                #region 鑾峰彇鏂扮殑浠ょ墝
+                //瀵规帴鏃舵洿鏀硅矾寰�
+                var user = MesConfig.MesUser;
+                var pass = MesConfig.MesPassWord;
+                var secretKey = Md5Tools.CalcMd5(pass);
+                var nonce = Guid.NewGuid().ToString("N");
+                var timestamp = DateTimeOffset.Now.ToUnixTimeSeconds().ToString();
 
-                //var info = new string[] { user, secretKey, nonce, timestamp };
-                //Array.Sort(info, string.CompareOrdinal); //ASCII鎺掑簭
-                //var miyao = string.Join("", info); //鏁扮粍杞崲鎴愬瓧绗︿覆
-                //var sign = Md5Tools.CalcMd5(miyao);  //绛惧悕
+                var info = new string[] { user, secretKey, nonce, timestamp };
+                Array.Sort(info, string.CompareOrdinal); //ASCII鎺掑簭
+                var miyao = string.Join("", info); //鏁扮粍杞崲鎴愬瓧绗︿覆
+                var sign = Md5Tools.CalcMd5(miyao);  //绛惧悕
 
-                //var data = new
-                //{
-                //    user = user,
-                //    nonce = nonce,
-                //    timestamp = timestamp,
-                //    sign = sign,
-                //    jwt = true,      //鏄惁杩斿洖JWT浠ょ墝
-                //};
-                //#endregion
+                var data = new
+                {
+                    user = user,
+                    nonce = nonce,
+                    timestamp = timestamp,
+                    sign = sign,
+                    jwt = true,      //鏄惁杩斿洖JWT浠ょ墝
+                };
+                #endregion
 
-                //#region 閫氳繃鎺ュ彛鍙戦�佽嚦璧嬬爜
-                ////绯荤粺瀵规帴鍚庢斁寮�
-                //var jsonData = JsonConvert.SerializeObject(data);
+                #region 閫氳繃鎺ュ彛鍙戦�佽嚦璧嬬爜
+                //绯荤粺瀵规帴鍚庢斁寮�
+                var jsonData = JsonConvert.SerializeObject(data);
 
-                //var response = HttpHelper.DoPost(url, jsonData, "FuMa鐢宠鑾峰彇浠ょ墝", "Fuma");
+                var response = HttpHelper.DoPost(url, jsonData, "FuMa鐢宠鑾峰彇浠ょ墝", "Fuma");
 
-                //var obj = JsonConvert.DeserializeObject<MesTokenModel>(response);//瑙f瀽杩斿洖鏁版嵁
+                var obj = JsonConvert.DeserializeObject<MesTokenModel>(response);//瑙f瀽杩斿洖鏁版嵁
 
-                //if (obj.status != "success")
-                //{
-                //    throw new Exception("涓婁紶澶辫触" + obj.message);
-                //}
-                //else
-                //{
-                //    var token = obj.Data.token;
-                //    var expireTime = obj.Data.expire_time;
-                //    var time = DateTime.Now.AddMilliseconds(double.Parse(expireTime));
-                //    if (sysToken == null)//娣诲姞
-                //    {
-                //        var addToken = new SysToken()
-                //        {
-                //            SystemName = "MES",
-                //            Token = token,
-                //            ExpireTime = time,
-                //            CreateUser = 0
-                //        };
-                //        Db.Insertable(addToken).ExecuteCommand();
-                //        return token;
-                //    }
-                //    else //淇敼
-                //    {
-                //        sysToken.Token = token;
-                //        sysToken.ExpireTime = time;
-                //        sysToken.UpdateTime = DateTime.Now;
-                //        Db.Updateable(sysToken).ExecuteCommand();
-                //        return token;
-                //    }
-                //}
+                if (obj.status != "success")
+                {
+                    throw new Exception("涓婁紶澶辫触" + obj.message);
+                }
+                else
+                {
+                    var token = obj.Data.token;
+                    var expireTime = obj.Data.expire_time;
+                    var time = DateTime.Now.AddMilliseconds(double.Parse(expireTime));
+                    if (sysToken == null)//娣诲姞
+                    {
+                        var addToken = new SysToken()
+                        {
+                            SystemName = "MES",
+                            Token = token,
+                            ExpireTime = time,
+                            CreateUser = 0
+                        };
+                        Db.Insertable(addToken).ExecuteCommand();
+                        return token;
+                    }
+                    else //淇敼
+                    {
+                        sysToken.Token = token;
+                        sysToken.ExpireTime = time;
+                        sysToken.UpdateTime = DateTime.Now;
+                        Db.Updateable(sysToken).ExecuteCommand();
+                        return token;
+                    }
+                }
 
-                //#endregion 
+                #endregion 
             }
             catch (Exception)
             {
diff --git a/Wms/WMS.DAL/SysInfrastructure/MaterialsRepository.cs b/Wms/WMS.DAL/SysInfrastructure/MaterialsRepository.cs
index a70e21d..04b0a33 100644
--- a/Wms/WMS.DAL/SysInfrastructure/MaterialsRepository.cs
+++ b/Wms/WMS.DAL/SysInfrastructure/MaterialsRepository.cs
@@ -35,7 +35,7 @@
         /// <returns></returns>
         public List<MaterialsDto> GetMateList(string skuNo, string skuName, string auditStatusNo, string type, string isControlled, string isInspect, string environment, string categoryNo)
         {
-            string str = "select mate.*,user1.RealName CreateUserName,pack.PackagName PackagName,unit.UnitName UnitName,matec.CategoryName from SysMaterials mate left join SysUserInfor user1 on mate.CreateUser = user1.Id left join SysPackag pack on mate.PackagNo = pack.PackagNo left join SysUnit unit on mate.UnitNo = unit.UnitNo left join SysMaterialCategory matec on mate.CategoryNo = matec.CategoryNo where mate.IsDel = @isdel";
+            string str = "select mate.*,user1.RealName CreateUserName,pack.PackagName PackagName,unit.UnitName UnitName,matec.CategoryName from SysMaterials mate left join SysUserInfor user1 on mate.CreateUser = user1.Id left join SysPackag pack on mate.PackagNo = pack.PackagNo left join SysUnit unit on mate.UnitNo = unit.UnitNo left join SysMaterialCategory matec on mate.CategoryNo = matec.CategoryNo where mate.IsDel = @isdel and pack.IsDel = @isdel";
             //鍒ゆ柇鐗╂枡缂栫爜
             if (!string.IsNullOrEmpty(skuNo))
             {
diff --git a/Wms/WMS.IBLL/IDataServer/IStockServer.cs b/Wms/WMS.IBLL/IDataServer/IStockServer.cs
index 0e57fa5..aef76a5 100644
--- a/Wms/WMS.IBLL/IDataServer/IStockServer.cs
+++ b/Wms/WMS.IBLL/IDataServer/IStockServer.cs
@@ -1,5 +1,6 @@
 锘縰sing Model.InterFaceModel;
 using Model.ModelDto.DataDto;
+using Model.ModelDto.LogDto;
 using System;
 using System.Collections.Generic;
 using System.Text;
@@ -151,5 +152,19 @@
         /// <param name="model"></param>
         /// <returns></returns>
         List<ReLocateDataModel> GetLocateList();
+
+        /// <summary>
+        /// 鍙嶉鏁板瓧瀛敓鎿嶄綔淇℃伅
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        List<ReLogDataModel> GetLogDataList();
+
+        /// <summary>
+        /// 鍙嶉鏁板瓧瀛敓鎿嶄綔淇℃伅
+        /// </summary>
+        /// <param name="model"></param>
+        /// <returns></returns>
+        List<OperationDto> ReLogData();
     }
 }
diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs
index e558169..753060d 100644
--- a/Wms/Wms/Controllers/DownApiController.cs
+++ b/Wms/Wms/Controllers/DownApiController.cs
@@ -37,6 +37,7 @@
         private readonly IPdaAsnServer _paAsnSvc;//绌烘墭璺虹粦瀹�
         private readonly IStockServer _stockSvc;//AGV浠诲姟瀹屾垚绠�
         private readonly IPdaCrServer _pdaCrServer; // PDA浠诲姟璋冨害
+        private static readonly object OLock = new object();
 
         public DownApiController(IOptions<ApiUrlConfig> setting, IExportNoticeServer exNoticeSvc, IPalletBindServer asnPalletBindSvc, IStockCheckServer crCheckSvc, ITaskServer taskSvc, IPdaSoServer pdaSoSvc,IPdaAsnServer paAsnSvc,IStockServer stockSvc,IPdaCrServer pdaCrServer)
         {
@@ -219,45 +220,47 @@
         [HttpPost]
         public IActionResult RequestRoadWay(RequestLocate model)
         {
-            var logStr = "";
+            lock (OLock) { 
+                var logStr = "";
 
-            logStr = $@".\log\WCS\WCS鐢宠宸烽亾" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+                logStr = $@".\log\WCS\WCS鐢宠宸烽亾" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
 
-            try
-            {
-
-                var jsonData = JsonConvert.SerializeObject(model);
-                LogFile.SaveLogToFile($"WCS鐢宠宸烽亾锛�( {jsonData} ),", logStr);
-                if (model.TaskModel == "1")
+                try
                 {
-                    var list = _asnPalletBindSvc.RequestRoadWayModel(model.PalletNo, model.HouseNo);
 
-                    LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
+                    var jsonData = JsonConvert.SerializeObject(model);
+                    LogFile.SaveLogToFile($"WCS鐢宠宸烽亾锛�( {jsonData} ),", logStr);
+                    if (model.TaskModel == "1")
+                    {
+                        var list = _asnPalletBindSvc.RequestRoadWayModel(model.PalletNo, model.HouseNo);
+
+                        LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
+                        new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo,
+                            "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勬垚鍔熶俊鎭�", 2);
+
+                        return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list });
+                    }
+                    else
+                    {
+
+                        var list = _asnPalletBindSvc.RequestRoadWay(model.PalletNo, model.HouseNo);
+
+                        LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
+                        new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8),
+                            "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2);
+
+                        return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list });
+                    }
+
+                }
+                catch (Exception e)
+                {
+                    LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {e.Message} ),", logStr);
                     new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo,
-                        "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勬垚鍔熶俊鎭�", 2);
+                        "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勫け璐ヤ俊鎭�", 2);
 
-                    return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list });
+                    return Ok(new ErpModel { Success = -1, Message = e.Message });
                 }
-                else
-                {
-
-                    var list = _asnPalletBindSvc.RequestRoadWay(model.PalletNo, model.HouseNo);
-
-                    LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
-                    new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8),
-                        "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2);
-
-                    return Ok(new { Success = 0, Message = "鐢宠宸烽亾鎴愬姛", TaskList = list });
-                }
-
-            }
-            catch (Exception e)
-            {
-                LogFile.SaveLogToFile($"WCS鐢宠宸烽亾杩斿洖锛�( {e.Message} ),", logStr);
-                new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo,
-                    "鐢宠宸烽亾", $"鐢宠宸烽亾鎵樼洏鍙凤細{model.PalletNo}鐨勫け璐ヤ俊鎭�", 2);
-
-                return Ok(new ErpModel { Success = -1, Message = e.Message });
             }
         }
 
@@ -284,65 +287,68 @@
             //}
 
             //string palletno = model.PalletNo;
-            var logStr = "";
-            if (model.PalletNo.Length == 9)
+            lock (OLock)
             {
-                logStr = $@".\log\WCS\WMS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
-            }
-            else if (model.PalletNo.Length == 8)
-            {
-                logStr = $@".\log\WCS\WCS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
-            }
-
-            try
-            {
+                var logStr = "";
                 if (model.PalletNo.Length == 9)
                 {
-                    var jsonData = JsonConvert.SerializeObject(model);
-                    LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr);
+                    logStr = $@".\log\WCS\WMS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
                 }
                 else if (model.PalletNo.Length == 8)
                 {
-                    var jsonData = JsonConvert.SerializeObject(model);
-                    LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr);
+                    logStr = $@".\log\WCS\WCS鐢宠鍌ㄤ綅" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+                }
 
-                }
-                string pallet = model.PalletNo.Substring(0, 8);
-                OutCommandDto list;
-                if (model.TaskModel == "1")
+                try
                 {
-                    list = _asnPalletBindSvc.RequestLocationModel(pallet, model.HouseNo, model.RoadwayNo);
-                }
-                else
-                {
-                    list = _asnPalletBindSvc.RequestLocation(pallet, model.HouseNo, model.RoadwayNo);
-                }
+                    if (model.PalletNo.Length == 9)
+                    {
+                        var jsonData = JsonConvert.SerializeObject(model);
+                        LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr);
+                    }
+                    else if (model.PalletNo.Length == 8)
+                    {
+                        var jsonData = JsonConvert.SerializeObject(model);
+                        LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅锛�( {jsonData} ),", logStr);
+
+                    }
+                    string pallet = model.PalletNo.Substring(0, 8);
+                    OutCommandDto list;
+                    if (model.TaskModel == "1")
+                    {
+                        list = _asnPalletBindSvc.RequestLocationModel(pallet, model.HouseNo, model.RoadwayNo);
+                    }
+                    else
+                    {
+                        list = _asnPalletBindSvc.RequestLocation(pallet, model.HouseNo, model.RoadwayNo);
+                    }
                 
-                if (model.PalletNo.Length == 9)
-                {
-                    new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2);// int.Parse(userId)
-                    LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅鎴愬姛锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
-                }
-                else if (model.PalletNo.Length == 8)
-                {
-                    LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
-                }
+                    if (model.PalletNo.Length == 9)
+                    {
+                        new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勬垚鍔熶俊鎭�", 2);// int.Parse(userId)
+                        LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅鎴愬姛锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
+                    }
+                    else if (model.PalletNo.Length == 8)
+                    {
+                        LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {JsonConvert.SerializeObject(list)} ),", logStr);
+                    }
                 
-                return Ok(new { Success = 0, Message = "鐢宠鍌ㄤ綅鎴愬姛", TaskList = list });
-            }
-            catch (Exception e)
-            {
-                if (model.PalletNo.Length == 9)
-                {
-                    new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勫け璐ヤ俊鎭�", 2);//int.Parse(userId)
-                    LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅澶辫触杩斿洖锛�( {e.Message} ),", logStr);
+                    return Ok(new { Success = 0, Message = "鐢宠鍌ㄤ綅鎴愬姛", TaskList = list });
                 }
-                else if (model.PalletNo.Length == 8)
+                catch (Exception e)
                 {
-                    LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {e.Message} ),", logStr);
-                }
+                    if (model.PalletNo.Length == 9)
+                    {
+                        new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", model.PalletNo.Substring(0, 8), "鐢宠鍌ㄤ綅", $"鐢宠鍌ㄤ綅鎵樼洏鍙凤細{model.PalletNo.Substring(0, 8)}鐨勫け璐ヤ俊鎭�", 2);//int.Parse(userId)
+                        LogFile.SaveLogToFile($"WMS鐢宠鍌ㄤ綅澶辫触杩斿洖锛�( {e.Message} ),", logStr);
+                    }
+                    else if (model.PalletNo.Length == 8)
+                    {
+                        LogFile.SaveLogToFile($"WCS鐢宠鍌ㄤ綅杩斿洖锛�( {e.Message} ),", logStr);
+                    }
 
-                return Ok(new ErpModel { Success = -1, Message = e.Message });
+                    return Ok(new ErpModel { Success = -1, Message = e.Message });
+                }
             }
         }
 
@@ -555,6 +561,8 @@
         public IActionResult BindPlnInHouseWcs(PalletsBind model)
         {
             var logStr = $@".\log\WCS\WCS鍙堝彔鎵樻満鐢宠绌烘墭鍏ュ簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 var strMsg = _paAsnSvc.BindNullPallets(model);
@@ -579,6 +587,8 @@
         public IActionResult IssuePlnOutHouseWcs(OutModePalletVm model)
         {
             var logStr = $@".\log\WCS\WCS鐢宠绌烘墭鍑哄簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 List<OutCommandDto> _list = _pdaSoSvc.IssuePlnOutHouseWcs(model,0);
@@ -603,6 +613,8 @@
         public IActionResult IssuePlnCheckHouseWcs(CheckModePalletVm model)
         {
             var logStr = $@".\log\WCS\WMS鎷h揣鐢宠绌烘墭鍑哄簱" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 string list = _pdaSoSvc.IssuePlnCehckHouseWcs(model, 0,_config.AgvHost+_config.GenAgvSchedulingTask);
@@ -627,6 +639,8 @@
         public IActionResult RequestPackWcs(RequesIsBale model)
         {
             var logStr = $@".\log\WCS\WCS鐢宠缂犺啘鎷嗚啘" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                int t = _asnPalletBindSvc.RequestPackWcs(model.PalletNo);
@@ -652,6 +666,8 @@
         public IActionResult RequestUnPackWcs(RequesIsBale model)
         {
             var logStr = $@".\log\WCS\WCS鐢宠缂犺啘鎷嗚啘" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 int t = _asnPalletBindSvc.RequestUnPackWcs(model.PalletNo);
@@ -676,6 +692,8 @@
         public IActionResult RequestPackedWcs(RequesIsBale model)
         {
             var logStr = $@".\log\WCS\WCS鐢宠缂犺啘鎷嗚啘" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 int t = _asnPalletBindSvc.RequestPackedWcs(model.PalletNo);
@@ -736,6 +754,8 @@
         public IActionResult ResultBoxInfoCheckWcs(BoxInfoCheck model)
         {
             var logStr = $@".\log\WCS\WCS鐢宠鎷嗗灈鎵樼洏淇℃伅" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 RequestBoxInfoCheck list = _exNoticeSvc.BoxInfoCheckWcs(model);
@@ -761,17 +781,19 @@
         public IActionResult ResultBoxInfoExportWcs(BoxInfoCheck model)
         {
             var logStr = $@".\log\WCS\WCS鐢宠鎴愬搧绠辩爜鎷嗗灈鎷h揣淇℃伅" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"浠诲姟鍙嶉锛�( {jsonData} ),", logStr);
             try
             {
                 //杩斿洖鍑哄簱鍒嗘嫞瑁呰溅鍙�
                 var list = _exNoticeSvc.BoxInfoExportWcs(model.BoxNo);
-                return Ok(new { Success = "1", Message = "鎴愬搧绠辩爜鎷嗗灈鎷h揣鎴愬姛", loadubgAddre = list });
+                return Ok(new { Success = "1", Message = "鎴愬搧绠辩爜鎷嗗灈鎷h揣鎴愬姛", loadingAddre = list });
             }
             catch (Exception e)
             {
                 LogFile.SaveLogToFile($"WCS鐢宠鎴愬搧绠辩爜鎷嗗灈鎷h揣寮傚父杩斿洖锛�( {e.Message} ),", logStr);
 
-                return Ok(new  { Success = "-1", Message = e.Message, loadubgAddre ="" });
+                return Ok(new  { Success = "-1", Message = e.Message, loadingAddre = "" });
             }
 
         }
diff --git a/Wms/Wms/Controllers/UpApiController.cs b/Wms/Wms/Controllers/UpApiController.cs
index 5b90b7c..c5dab11 100644
--- a/Wms/Wms/Controllers/UpApiController.cs
+++ b/Wms/Wms/Controllers/UpApiController.cs
@@ -17,6 +17,7 @@
 using WMS.IBLL.IDataServer;
 using Model.ModelDto.DataDto;
 using System.Collections.Generic;
+using Model.ModelDto.LogDto;
 
 namespace Wms.Controllers
 {
@@ -459,6 +460,46 @@
             return Ok(stocks);
         }
 
+        /// <summary>
+        /// 鏁板瓧瀛敓绯荤粺搴撳瓨璐ㄩ噺鐘舵�佸弽棣�
+        /// </summary>
+        /// <param name="model">鏉ユ簮淇℃伅</param>
+        /// <returns></returns>
+        [HttpPost]
+        public IActionResult ReLogData(DigitalTwinModel model)
+        {
+            
+            //璁板綍log
+            var logStr = "";
+            logStr = $@".\log\鏁板瓧瀛敓\鎿嶄綔鏃ュ織淇℃伅鍙嶉" + DateTime.Now.ToString("yyyyMMdd") + ".txt";
+            var jsonData = JsonConvert.SerializeObject(model);
+            LogFile.SaveLogToFile($"鎿嶄綔鏃ュ織淇℃伅鍙嶉锛�( {jsonData} ),", logStr);
+            try
+            {
+                //鑾峰彇搴撳瓨淇℃伅
+                List<OperationDto> stocks = _stock.ReLogData();
+
+                if (stocks.Count == 0)
+                {
+                    var data = new HttpReturnModel { Success = "0", Message = "褰撳墠鏃犳搷浣滀俊鎭�" };
+                    return Ok(data);
+                }
+                return Ok(stocks);
+
+            }
+            catch (Exception e)
+            {
+                var data = new HttpReturnModel { Success = "0", Message = "澶辫触锛�" + e.Message };
+                if (logStr != "")
+                {
+                    jsonData = JsonConvert.SerializeObject(data);
+                    LogFile.SaveLogToFile($"鎿嶄綔鏃ュ織淇℃伅鍙嶉锛岃繑鍥炲弬鏁帮細( {jsonData} ),", logStr);
+                }
+                return Ok(data);
+            }
+           
+        }
+
         #endregion
 
     }
diff --git a/Wms/Wms/appsettings.json b/Wms/Wms/appsettings.json
index ffa076a..883ae7c 100644
--- a/Wms/Wms/appsettings.json
+++ b/Wms/Wms/appsettings.json
@@ -26,7 +26,7 @@
     "ErpHost": "http://10.110.24.30:8081", //erpIP
     "MesHost": "http://10.18.99.67:3000", //mesIP
     "WcsHost": "http://10.60.16.10:5005", // "http://localhost:57061", //wcsIPhttp://localhost:57061/
-    "BoxHost": "http://10.110.24.30:8081", //boxIP
+    "BoxHost": "http://10.18.99.88", //boxIP
     "AgvHost": "http://10.18.99.66:8181", //agvIP
 
     // WCS
@@ -48,8 +48,8 @@
     "MesBeiLiaoUrl": "/mes/service/mes/save_morder_feedback", //澶囨枡鍙嶉(鍘熸枡澶囨枡鍒扮敓浜ц溅闂寸紦瀛樺尯)
     "MesGetTokenUrl": "/mes/service/system/sign_login", //鑾峰彇浠ょ墝
     // 璧嬬爜
-    "FuMaGetBoxUrl": "/port/mes/service/system/sign_login", //鑾峰彇璧嬬爜绠辩爜淇℃伅
-    "FuMaGetTokenUrl": "/port/mes/service/system/sign_login", //鑾峰彇浠ょ墝
+    "FuMaGetBoxUrl": "/api/IO/QueryBarcode", //鑾峰彇璧嬬爜绠辩爜淇℃伅
+    "FuMaGetTokenUrl": "/api/IO/QueryBarcode", //鑾峰彇浠ょ墝
 
     // AGV
     "GenAgvSchedulingTask": "/rcms/services/rest/hikRpcService/genAgvSchedulingTask", //鐢熸垚浠诲姟鍗曟帴鍙�

--
Gitblit v1.8.0