From fd6838164120ff30f76780f6478dcb0e04983ee9 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期六, 10 八月 2024 15:10:15 +0800
Subject: [PATCH] 采购退料,优化代码

---
 MESApplication/bin/Release/net8.0/MESApplication.exe                    |    0 
 MESApplication/bin/Release/net8.0/appsettings.json                      |    7 
 MESApplication/bin/Release/net8.0/publish/MESApplication.pdb            |    0 
 MES.Service/Dto/service/OutItemDto.cs                                   |   13 
 MESApplication/bin/Debug/net8.0/MES.Service.pdb                         |    0 
 MESApplication/bin/Release/net8.0/publish/MESApplication.dll            |    0 
 MES.Service/service/GetErpParametersServer.cs                           |    2 
 MES.Service/service/WomcaaManager.cs                                    |    8 
 MESApplication/bin/Debug/net8.0/MES.Service.dll                         |    0 
 MES.Service/Modes/MesInvItemBarcodes.cs                                 |  600 +++++-----
 MES.Service/Modes/MesInvItemInCItems.cs                                 |  184 +-
 MES.Service/service/Warehouse/MesInvItemOutsManager.cs                  |  349 +++++
 MES.Service/Modes/Purdhb.cs                                             |  352 ++--
 MESApplication/bin/Debug/net8.0/MESApplication.pdb                      |    0 
 MES.Service/Modes/MessageCenter.cs                                      |    7 
 MESApplication/bin/Release/net8.0/MES.Service.dll                       |    0 
 MES.Service/service/Warehouse/MesInvItemStocksManager.cs                |   78 +
 MESApplication/Controllers/Warehouse/MesInvItemOutCDetailsController.cs |  163 ++
 MESApplication/bin/Release/net8.0/MESApplication.dll                    |    0 
 MESApplication/bin/Release/net8.0/publish/MES.Service.pdb               |    0 
 MES.Service/service/Warehouse/MesInvItemOutCDetailsManager.cs           |   78 +
 MES.Service/Modes/MesInvItemArn.cs                                      |  304 ++--
 MESApplication/bin/Release/net8.0/MES.Service.pdb                       |    0 
 MESApplication/bin/Release/net8.0/publish/MESApplication.exe            |    0 
 MES.Service/DB/SqlSugarHelper.cs                                        |    3 
 MESApplication/bin/Release/net8.0/MESApplication.pdb                    |    0 
 MESApplication/Controllers/Warehouse/MesInvItemStocksController.cs      |  162 ++
 MES.Service/DB/OracleSQLHelper.cs                                       |    5 
 MES.Service/Modes/Purdka.cs                                             |  160 +-
 MES.Service/bin/Debug/net8.0/MES.Service.pdb                            |    0 
 MESApplication/bin/Release/net8.0/publish/MES.Service.dll               |    0 
 MESApplication/bin/Debug/net8.0/MESApplication.dll                      |    0 
 MES.Service/bin/Debug/net8.0/MES.Service.dll                            |    0 
 MES.Service/Modes/MesQaItemsDetect01.cs                                 |  422 +++---
 MES.Service/Modes/MesInvItemStocks.cs                                   |  201 +++
 MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs            |    9 
 MES.Service/util/AppsettingsUtility.cs                                  |   11 
 MESApplication/bin/Debug/net8.0/MESApplication.exe                      |    0 
 MES.Service/bin/Release/net8.0/MES.Service.dll                          |    0 
 MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs        |  145 ++
 MES.Service/Modes/MesInvItemOutCDetails.cs                              |  242 ++++
 MES.Service/bin/Release/net8.0/MES.Service.pdb                          |    0 
 MESApplication/bin/Release/net8.0/publish/appsettings.json              |    7 
 43 files changed, 2,467 insertions(+), 1,045 deletions(-)

diff --git a/MES.Service/DB/OracleSQLHelper.cs b/MES.Service/DB/OracleSQLHelper.cs
index 471d205..0b3c5fc 100644
--- a/MES.Service/DB/OracleSQLHelper.cs
+++ b/MES.Service/DB/OracleSQLHelper.cs
@@ -9,10 +9,11 @@
 /// </summary>
 public class OracleSQLHelper
 {
-    public readonly string ConnectionString =AppsettingsUtility.Settings.DataBaseConn;
-
     private readonly string _connectionString;
 
+    public readonly string ConnectionString =
+        AppsettingsUtility.Settings.DataBaseConn;
+
     //public static string connectionString = "Data Source = 192.168.1.19; Persist Security Info=True;User ID = abtdev; Password=abt_dev";
     public string connectionString =
         "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.251)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = sg_prd; Password=sgprd"; // 杩欓噷鏇挎崲鎴愪綘鐨勫疄闄呰繛鎺ュ瓧绗︿覆
diff --git a/MES.Service/DB/SqlSugarHelper.cs b/MES.Service/DB/SqlSugarHelper.cs
index ea1415a..4852aea 100644
--- a/MES.Service/DB/SqlSugarHelper.cs
+++ b/MES.Service/DB/SqlSugarHelper.cs
@@ -5,7 +5,8 @@
 
 public class SqlSugarHelper
 {
-    private static readonly string _connectionString =AppsettingsUtility.Settings.DataBaseConn; // 杩欓噷鏇挎崲鎴愪綘鐨勫疄闄呰繛鎺ュ瓧绗︿覆
+    private static readonly string _connectionString =
+        AppsettingsUtility.Settings.DataBaseConn; // 杩欓噷鏇挎崲鎴愪綘鐨勫疄闄呰繛鎺ュ瓧绗︿覆
 
     public static SqlSugarClient GetInstance()
     {
diff --git a/MES.Service/Dto/service/OutItemDto.cs b/MES.Service/Dto/service/OutItemDto.cs
index 06a755f..804bb9c 100644
--- a/MES.Service/Dto/service/OutItemDto.cs
+++ b/MES.Service/Dto/service/OutItemDto.cs
@@ -4,7 +4,14 @@
 
 public class OutItemDto
 {
-    public MesInvItemOuts Form { get; set; }
-    public List<MesInvItemOutItems> SaveItems { get; set; }
-    public List<MESInvItemOutItems> SelectItems { get; set; }
+    public MesInvItemOuts? Form { get; set; }
+    public List<MesInvItemOutItems>? SaveItems { get; set; }
+    public List<MESInvItemOutItems>? SelectItems { get; set; }
+
+
+    public string? ItemNo { get; set; }
+
+    public decimal? Quantity { get; set; }
+
+    public List<InventoryItem>? SumItem { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/MesInvItemArn.cs b/MES.Service/Modes/MesInvItemArn.cs
index 518f09f..bf0d207 100644
--- a/MES.Service/Modes/MesInvItemArn.cs
+++ b/MES.Service/Modes/MesInvItemArn.cs
@@ -8,232 +8,232 @@
 [SugarTable("MES_INV_ITEM_ARN")]
 public class MesInvItemArn
 {
- /// <summary>
- ///     ID(SEQ_INV_ID)
- /// </summary>
- [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+   /// <summary>
+   ///     ID(SEQ_INV_ID)
+   /// </summary>
+   [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
     public decimal Id { get; set; }
 
- /// <summary>
- ///     鍒拌揣鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "BILL_NO")]
+   /// <summary>
+   ///     鍒拌揣鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "BILL_NO")]
     public string BillNo { get; set; }
 
- /// <summary>
- ///     鐘舵�亅0-鏈鏍�1-瀹℃牳鍏ュ簱\缁撴
- /// </summary>
- [SugarColumn(ColumnName = "STATUS")]
+   /// <summary>
+   ///     鐘舵�亅0-鏈鏍�1-瀹℃牳鍏ュ簱\缁撴
+   /// </summary>
+   [SugarColumn(ColumnName = "STATUS")]
     public short? Status { get; set; }
 
- /// <summary>
- ///     鍘熷洜
- /// </summary>
- [SugarColumn(ColumnName = "REASON")]
+   /// <summary>
+   ///     鍘熷洜
+   /// </summary>
+   [SugarColumn(ColumnName = "REASON")]
     public string Reason { get; set; }
 
- /// <summary>
- ///     鍒涘缓浜�
- /// </summary>
- [SugarColumn(ColumnName = "CREATE_BY")]
+   /// <summary>
+   ///     鍒涘缓浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "CREATE_BY")]
     public string CreateBy { get; set; }
 
- /// <summary>
- ///     鍒涘缓鏃堕棿
- /// </summary>
- [SugarColumn(ColumnName = "CREATE_DATE")]
+   /// <summary>
+   ///     鍒涘缓鏃堕棿
+   /// </summary>
+   [SugarColumn(ColumnName = "CREATE_DATE")]
     public DateTime? CreateDate { get; set; }
 
- /// <summary>
- ///     鏈�鍚庢洿鏂颁汉
- /// </summary>
- [SugarColumn(ColumnName = "LASTUPDATE_BY")]
+   /// <summary>
+   ///     鏈�鍚庢洿鏂颁汉
+   /// </summary>
+   [SugarColumn(ColumnName = "LASTUPDATE_BY")]
     public string LastupdateBy { get; set; }
 
- /// <summary>
- ///     鏈�鍚庢洿鏂版椂闂�
- /// </summary>
- [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
+   /// <summary>
+   ///     鏈�鍚庢洿鏂版椂闂�
+   /// </summary>
+   [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
     public DateTime? LastupdateDate { get; set; }
 
- /// <summary>
- ///     鍗曟嵁绫诲瀷ID
- /// </summary>
- [SugarColumn(ColumnName = "BILL_TYPE_ID")]
+   /// <summary>
+   ///     鍗曟嵁绫诲瀷ID
+   /// </summary>
+   [SugarColumn(ColumnName = "BILL_TYPE_ID")]
     public decimal? BillTypeId { get; set; }
 
- /// <summary>
- ///     浜嬪姟绫诲瀷ID
- /// </summary>
- [SugarColumn(ColumnName = "TRANSACTION_ID")]
+   /// <summary>
+   ///     浜嬪姟绫诲瀷ID
+   /// </summary>
+   [SugarColumn(ColumnName = "TRANSACTION_ID")]
     public decimal? TransactionId { get; set; }
 
- /// <summary>
- ///     澶囨敞
- /// </summary>
- [SugarColumn(ColumnName = "REMARK")]
+   /// <summary>
+   ///     澶囨敞
+   /// </summary>
+   [SugarColumn(ColumnName = "REMARK")]
     public string Remark { get; set; }
 
- /// <summary>
- ///     閫佽揣鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "PAPER_BILL_NO")]
+   /// <summary>
+   ///     閫佽揣鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "PAPER_BILL_NO")]
     public string PaperBillNo { get; set; }
 
- /// <summary>
- ///     閫�鏂欎汉宸ュ彿
- /// </summary>
- [SugarColumn(ColumnName = "USER_NO_BACK")]
+   /// <summary>
+   ///     閫�鏂欎汉宸ュ彿
+   /// </summary>
+   [SugarColumn(ColumnName = "USER_NO_BACK")]
     public string UserNoBack { get; set; }
 
- /// <summary>
- ///     鎻愪氦浜�
- /// </summary>
- [SugarColumn(ColumnName = "CHECK_USER")]
+   /// <summary>
+   ///     鎻愪氦浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "CHECK_USER")]
     public string CheckUser { get; set; }
 
- /// <summary>
- ///     鎻愪氦鏃ユ湡
- /// </summary>
- [SugarColumn(ColumnName = "CHECK_DATE")]
+   /// <summary>
+   ///     鎻愪氦鏃ユ湡
+   /// </summary>
+   [SugarColumn(ColumnName = "CHECK_DATE")]
     public DateTime? CheckDate { get; set; }
 
- /// <summary>
- ///     鍏ュ簱鏃ユ湡
- /// </summary>
- [SugarColumn(ColumnName = "INS_DATE")]
+   /// <summary>
+   ///     鍏ュ簱鏃ユ湡
+   /// </summary>
+   [SugarColumn(ColumnName = "INS_DATE")]
     public DateTime? InsDate { get; set; }
 
- /// <summary>
- ///     妫�楠岀粨鏋�
- /// </summary>
- [SugarColumn(ColumnName = "CHECK_RES")]
+   /// <summary>
+   ///     妫�楠岀粨鏋�
+   /// </summary>
+   [SugarColumn(ColumnName = "CHECK_RES")]
     public string CheckRes { get; set; }
 
- /// <summary>
- ///     宸叉崱鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "CHECK_QTY")]
+   /// <summary>
+   ///     宸叉崱鏁伴噺
+   /// </summary>
+   [SugarColumn(ColumnName = "CHECK_QTY")]
     public decimal? CheckQty { get; set; }
 
- /// <summary>
- ///     浠撳簱缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "DEPOTS_CODE")]
+   /// <summary>
+   ///     浠撳簱缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "DEPOTS_CODE")]
     public string DepotsCode { get; set; }
 
- /// <summary>
- ///     浜嬪姟绫诲瀷缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "TRANSCTION_NO")]
+   /// <summary>
+   ///     浜嬪姟绫诲瀷缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "TRANSCTION_NO")]
     public string TransctionNo { get; set; }
 
- /// <summary>
- ///     渚涘簲鍟嗙紪鐮�
- /// </summary>
- [SugarColumn(ColumnName = "SUPP_NO")]
+   /// <summary>
+   ///     渚涘簲鍟嗙紪鐮�
+   /// </summary>
+   [SugarColumn(ColumnName = "SUPP_NO")]
     public string SuppNo { get; set; }
 
- /// <summary>
- ///     鎻愪氦鐘舵��
- /// </summary>
- [SugarColumn(ColumnName = "FSTATUS")]
+   /// <summary>
+   ///     鎻愪氦鐘舵��
+   /// </summary>
+   [SugarColumn(ColumnName = "FSTATUS")]
     public short? Fstatus { get; set; }
 
- /// <summary>
- ///     宸ュ巶缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "FACTORY")]
+   /// <summary>
+   ///     宸ュ巶缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "FACTORY")]
     public string Factory { get; set; }
 
- /// <summary>
- ///     鏄惁宸插洖鍐橲AP
- /// </summary>
- [SugarColumn(ColumnName = "SAPSTATUS")]
+   /// <summary>
+   ///     鏄惁宸插洖鍐橲AP
+   /// </summary>
+   [SugarColumn(ColumnName = "SAPSTATUS")]
     public short? Sapstatus { get; set; }
 
- /// <summary>
- ///     纭鍏ュ簱鏃ユ湡
- /// </summary>
- [SugarColumn(ColumnName = "INS_DATE")]
+   /// <summary>
+   ///     纭鍏ュ簱鏃ユ湡
+   /// </summary>
+   [SugarColumn(ColumnName = "INS_DATE")]
     public DateTime? Insdate { get; set; }
 
- /// <summary>
- ///     鏄惁妫�楠�
- /// </summary>
- [SugarColumn(ColumnName = "ISCHECK")]
+   /// <summary>
+   ///     鏄惁妫�楠�
+   /// </summary>
+   [SugarColumn(ColumnName = "ISCHECK")]
     public decimal? Ischeck { get; set; }
 
- /// <summary>
- ///     瀹℃牳鍏ュ簱浜�
- /// </summary>
- [SugarColumn(ColumnName = "INSBY")]
+   /// <summary>
+   ///     瀹℃牳鍏ュ簱浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "INSBY")]
     public string Insby { get; set; }
 
- /// <summary>
- ///     鍏徃浠g爜
- /// </summary>
- [SugarColumn(ColumnName = "COMPANY")]
+   /// <summary>
+   ///     鍏徃浠g爜
+   /// </summary>
+   [SugarColumn(ColumnName = "COMPANY")]
     public string Company { get; set; }
 
- /// <summary>
- ///     鎬ユ枡鏍囪瘑
- /// </summary>
- [SugarColumn(ColumnName = "URGENT_FLAG")]
+   /// <summary>
+   ///     鎬ユ枡鏍囪瘑
+   /// </summary>
+   [SugarColumn(ColumnName = "URGENT_FLAG")]
     public short? UrgentFlag { get; set; }
 
- /// <summary>
- ///     鍐查攢浜嬪姟绫诲瀷缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "MTTRANSCTION_NO")]
+   /// <summary>
+   ///     鍐查攢浜嬪姟绫诲瀷缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "MTTRANSCTION_NO")]
     public decimal? MttransctionNo { get; set; }
 
- /// <summary>
- ///     IQC妫�楠屽崟鍙�
- /// </summary>
- [SugarColumn(ColumnName = "IQC_RELEASE_NO")]
+   /// <summary>
+   ///     IQC妫�楠屽崟鍙�
+   /// </summary>
+   [SugarColumn(ColumnName = "IQC_RELEASE_NO")]
     public string IqcReleaseNo { get; set; }
 
- /// <summary>
- ///     鏄惁鏄剧ず
- /// </summary>
- [SugarColumn(ColumnName = "IS_VISUAL")]
+   /// <summary>
+   ///     鏄惁鏄剧ず
+   /// </summary>
+   [SugarColumn(ColumnName = "IS_VISUAL")]
     public decimal? IsVisual { get; set; }
 
- /// <summary>
- ///     0=閲囪喘锛�1=濮斿
- /// </summary>
- [SugarColumn(ColumnName = "F_TYPE")]
+   /// <summary>
+   ///     0=閲囪喘锛�1=濮斿
+   /// </summary>
+   [SugarColumn(ColumnName = "F_TYPE")]
     public decimal? FType { get; set; }
 
- /// <summary>
- ///     ERP鍒拌揣鍗旾D
- /// </summary>
- [SugarColumn(ColumnName = "EBELN_K3ID")]
+   /// <summary>
+   ///     ERP鍒拌揣鍗旾D
+   /// </summary>
+   [SugarColumn(ColumnName = "EBELN_K3ID")]
     public string EbelnK3id { get; set; }
 
- /// <summary>
- ///     鏉$爜鏉″嵃杩涘害
- /// </summary>
- [SugarColumn(ColumnName = "BARCODE_RATIO")]
+   /// <summary>
+   ///     鏉$爜鏉″嵃杩涘害
+   /// </summary>
+   [SugarColumn(ColumnName = "BARCODE_RATIO")]
     public decimal? BarcodeRatio { get; set; }
 
- /// <summary>
- ///     ERP鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "ERPNO")]
+   /// <summary>
+   ///     ERP鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "ERPNO")]
     public string Erpno { get; set; }
 
- /// <summary>
- ///     鏄惁宸查��璐�0-鏈��璐э紝1-閫�璐�
- /// </summary>
- [SugarColumn(ColumnName = "THSTATUS")]
+   /// <summary>
+   ///     鏄惁宸查��璐�0-鏈��璐э紝1-閫�璐�
+   /// </summary>
+   [SugarColumn(ColumnName = "THSTATUS")]
     public short? Thstatus { get; set; }
 
- /// <summary>
- ///     ERP閫�璐у崟鍙�
- /// </summary>
- [SugarColumn(ColumnName = "ERPTHNO")]
+   /// <summary>
+   ///     ERP閫�璐у崟鍙�
+   /// </summary>
+   [SugarColumn(ColumnName = "ERPTHNO")]
     public string Erpthno { get; set; }
 
 
diff --git a/MES.Service/Modes/MesInvItemBarcodes.cs b/MES.Service/Modes/MesInvItemBarcodes.cs
index 078ac04..0e5e2c0 100644
--- a/MES.Service/Modes/MesInvItemBarcodes.cs
+++ b/MES.Service/Modes/MesInvItemBarcodes.cs
@@ -8,453 +8,453 @@
 [SugarTable("MES_INV_ITEM_BARCODES")]
 public class MesInvItemBarcodes
 {
-   /// <summary>
-   ///     SEQ_BARCODE_PSN_ID
-   /// </summary>
-   [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+ /// <summary>
+ ///     SEQ_BARCODE_PSN_ID
+ /// </summary>
+ [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
     public decimal Id { get; set; }
 
-   /// <summary>
-   ///     鐗╂枡鏉$爜
-   /// </summary>
-   [SugarColumn(ColumnName = "ITEM_BARCODE")]
+ /// <summary>
+ ///     鐗╂枡鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_BARCODE")]
     public string ItemBarcode { get; set; }
 
-   /// <summary>
-   ///     瀹㈡埛鎴愬搧缂栫爜
-   /// </summary>
-   [SugarColumn(ColumnName = "C_PRODUCT_CODE")]
+ /// <summary>
+ ///     瀹㈡埛鎴愬搧缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "C_PRODUCT_CODE")]
     public string CProductCode { get; set; }
 
-   /// <summary>
-   ///     瀹㈡埛鐗╂枡鏉$爜
-   /// </summary>
-   [SugarColumn(ColumnName = "C_ITEM_BARCODE")]
+ /// <summary>
+ ///     瀹㈡埛鐗╂枡鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "C_ITEM_BARCODE")]
     public string CItemBarcode { get; set; }
 
-   /// <summary>
-   ///     瀹㈡埛鐗╂枡缂栫爜
-   /// </summary>
-   [SugarColumn(ColumnName = "C_ITEM_CODE")]
+ /// <summary>
+ ///     瀹㈡埛鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "C_ITEM_CODE")]
     public string CItemCode { get; set; }
 
-   /// <summary>
-   ///     鏈徃鐗╂枡缂栫爜
-   /// </summary>
-   [SugarColumn(ColumnName = "ITEM_NO")]
+ /// <summary>
+ ///     鏈徃鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_NO")]
     public string ItemNo { get; set; }
 
-   /// <summary>
-   ///     鍘傚鎵规
-   /// </summary>
-   [SugarColumn(ColumnName = "LOT_NO")]
+ /// <summary>
+ ///     鍘傚鎵规
+ /// </summary>
+ [SugarColumn(ColumnName = "LOT_NO")]
     public string LotNo { get; set; }
 
-   /// <summary>
-   ///     鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "QUANTITY")]
+ /// <summary>
+ ///     鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "QUANTITY")]
     public decimal? Quantity { get; set; }
 
-   /// <summary>
-   ///     鏄惁鐜繚(0:鍚�,1:鏄�)
-   /// </summary>
-   [SugarColumn(ColumnName = "EP_FLAG")]
+ /// <summary>
+ ///     鏄惁鐜繚(0:鍚�,1:鏄�)
+ /// </summary>
+ [SugarColumn(ColumnName = "EP_FLAG")]
     public short? EpFlag { get; set; }
 
-   /// <summary>
-   ///     鐢熶骇宸ュ崟
-   /// </summary>
-   [SugarColumn(ColumnName = "TASK_NO")]
+ /// <summary>
+ ///     鐢熶骇宸ュ崟
+ /// </summary>
+ [SugarColumn(ColumnName = "TASK_NO")]
     public string TaskNo { get; set; }
 
-   /// <summary>
-   ///     鍒涘缓浜�
-   /// </summary>
-   [SugarColumn(ColumnName = "CREATE_BY")]
+ /// <summary>
+ ///     鍒涘缓浜�
+ /// </summary>
+ [SugarColumn(ColumnName = "CREATE_BY")]
     public string CreateBy { get; set; }
 
-   /// <summary>
-   ///     鍒涘缓鏃堕棿
-   /// </summary>
-   [SugarColumn(ColumnName = "CREATE_DATE")]
+ /// <summary>
+ ///     鍒涘缓鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "CREATE_DATE")]
     public DateTime? CreateDate { get; set; }
 
-   /// <summary>
-   ///     鏈�鍚庢洿鏂颁汉
-   /// </summary>
-   [SugarColumn(ColumnName = "LASTUPDATE_BY")]
+ /// <summary>
+ ///     鏈�鍚庢洿鏂颁汉
+ /// </summary>
+ [SugarColumn(ColumnName = "LASTUPDATE_BY")]
     public string LastupdateBy { get; set; }
 
-   /// <summary>
-   ///     鏈�鍚庢洿鏂版椂闂�
-   /// </summary>
-   [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
+ /// <summary>
+ ///     鏈�鍚庢洿鏂版椂闂�
+ /// </summary>
+ [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
     public DateTime? LastupdateDate { get; set; }
 
-   /// <summary>
-   ///     瀹㈡埛缂栧彿
-   /// </summary>
-   [SugarColumn(ColumnName = "CUST_NO")]
+ /// <summary>
+ ///     瀹㈡埛缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "CUST_NO")]
     public string CustNo { get; set; }
 
-   /// <summary>
-   ///     鐗╂枡鏉$爜娉ㄩ噴琛孾鍐椾綑锛屾潯鐮侀噸鎵撲娇鐢╙
-   /// </summary>
-   [SugarColumn(ColumnName = "ITEM_BARCODE_TEXT")]
+ /// <summary>
+ ///     鐗╂枡鏉$爜娉ㄩ噴琛孾鍐椾綑锛屾潯鐮侀噸鎵撲娇鐢╙
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_BARCODE_TEXT")]
     public string ItemBarcodeText { get; set; }
 
-   /// <summary>
-   ///     鍘烶SN鐗╂枡鏉$爜
-   /// </summary>
-   [SugarColumn(ColumnName = "OLD_ITEM_BARCODE")]
+ /// <summary>
+ ///     鍘烶SN鐗╂枡鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "OLD_ITEM_BARCODE")]
     public string OldItemBarcode { get; set; }
 
-   /// <summary>
-   ///     SAP鏀惰揣鐗╂枡鍑瘉鍙�    --閲囪喘鍗曞彿
-   /// </summary>
-   [SugarColumn(ColumnName = "MBLNR")]
+ /// <summary>
+ ///     SAP鏀惰揣鐗╂枡鍑瘉鍙�    --閲囪喘鍗曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "MBLNR")]
     public string Mblnr { get; set; }
 
-   /// <summary>
-   ///     SAP鏀惰揣鐗╂枡鍑瘉琛屽彿  --閲囪喘鍗曡鍙�
-   /// </summary>
-   [SugarColumn(ColumnName = "ZEILE")]
+ /// <summary>
+ ///     SAP鏀惰揣鐗╂枡鍑瘉琛屽彿  --閲囪喘鍗曡鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "ZEILE")]
     public decimal? Zeile { get; set; }
 
-   /// <summary>
-   ///     鏀舵枡琛↖D
-   /// </summary>
-   [SugarColumn(ColumnName = "ROH_IN_ID")]
+ /// <summary>
+ ///     鏀舵枡琛↖D
+ /// </summary>
+ [SugarColumn(ColumnName = "ROH_IN_ID")]
     public decimal? RohInId { get; set; }
 
-   /// <summary>
-   ///     0涓烘湁鏁堟潯鐮侊紱1涓烘棤鏁堟潯鐮�
-   /// </summary>
-   [SugarColumn(ColumnName = "BARCODESTATUS")]
+ /// <summary>
+ ///     0涓烘湁鏁堟潯鐮侊紱1涓烘棤鏁堟潯鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "BARCODESTATUS")]
     public short? Barcodestatus { get; set; }
 
-   /// <summary>
-   ///     鍘熷鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "OLDQTY")]
+ /// <summary>
+ ///     鍘熷鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "OLDQTY")]
     public decimal? Oldqty { get; set; }
 
-   /// <summary>
-   ///     浣跨敤鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "USEQTY")]
+ /// <summary>
+ ///     浣跨敤鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "USEQTY")]
     public decimal? Useqty { get; set; }
 
-   /// <summary>
-   ///     0鍦ㄥ簱锛�1鍦ㄧ嚎锛�2浣滃簾
-   /// </summary>
-   [SugarColumn(ColumnName = "LOCATION")]
+ /// <summary>
+ ///     0鍦ㄥ簱锛�1鍦ㄧ嚎锛�2浣滃簾
+ /// </summary>
+ [SugarColumn(ColumnName = "LOCATION")]
     public short? Location { get; set; }
 
-   /// <summary>
-   ///     鍗曚綅
-   /// </summary>
-   [SugarColumn(ColumnName = "UNIT")]
+ /// <summary>
+ ///     鍗曚綅
+ /// </summary>
+ [SugarColumn(ColumnName = "UNIT")]
     public string Unit { get; set; }
 
-   /// <summary>
-   ///     閲嶉噺锛堝崟浣嶏細鍏枻锛�
-   /// </summary>
-   [SugarColumn(ColumnName = "WEIGHT_UNIT")]
+ /// <summary>
+ ///     閲嶉噺锛堝崟浣嶏細鍏枻锛�
+ /// </summary>
+ [SugarColumn(ColumnName = "WEIGHT_UNIT")]
     public decimal? WeightUnit { get; set; }
 
-   /// <summary>
-   ///     鍗曚环
-   /// </summary>
-   [SugarColumn(ColumnName = "PRICE")]
+ /// <summary>
+ ///     鍗曚环
+ /// </summary>
+ [SugarColumn(ColumnName = "PRICE")]
     public decimal? Price { get; set; }
 
-   /// <summary>
-   ///     鍘熸潯鐮佹暟閲�
-   /// </summary>
-   [SugarColumn(ColumnName = "OLD_BAR_QUANTITY")]
+ /// <summary>
+ ///     鍘熸潯鐮佹暟閲�
+ /// </summary>
+ [SugarColumn(ColumnName = "OLD_BAR_QUANTITY")]
     public decimal? OldBarQuantity { get; set; }
 
-   /// <summary>
-   ///     姹囨�绘潯鐮�
-   /// </summary>
-   [SugarColumn(ColumnName = "SUM_BARCODE")]
+ /// <summary>
+ ///     姹囨�绘潯鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "SUM_BARCODE")]
     public string SumBarcode { get; set; }
 
-   /// <summary>
-   ///     鐢熶骇鏃ユ湡
-   /// </summary>
-   [SugarColumn(ColumnName = "LOT_DATE")]
+ /// <summary>
+ ///     鐢熶骇鏃ユ湡
+ /// </summary>
+ [SugarColumn(ColumnName = "LOT_DATE")]
     public string LotDate { get; set; }
 
-   /// <summary>
-   ///     妯″彿
-   /// </summary>
-   [SugarColumn(ColumnName = "MOCODE")]
+ /// <summary>
+ ///     妯″彿
+ /// </summary>
+ [SugarColumn(ColumnName = "MOCODE")]
     public string Mocode { get; set; }
 
-   /// <summary>
-   ///     鏉ユ簮
-   /// </summary>
-   [SugarColumn(ColumnName = "MEMO")]
+ /// <summary>
+ ///     鏉ユ簮
+ /// </summary>
+ [SugarColumn(ColumnName = "MEMO")]
     public string Memo { get; set; }
 
-   /// <summary>
-   ///     渚涘簲鍟嗙紪鐮�
-   /// </summary>
-   [SugarColumn(ColumnName = "SUPP_NO")]
+ /// <summary>
+ ///     渚涘簲鍟嗙紪鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "SUPP_NO")]
     public string SuppNo { get; set; }
 
-   /// <summary>
-   ///     妗d綅浣庡��
-   /// </summary>
-   [SugarColumn(ColumnName = "SPOSTION")]
+ /// <summary>
+ ///     妗d綅浣庡��
+ /// </summary>
+ [SugarColumn(ColumnName = "SPOSTION")]
     public string Spostion { get; set; }
 
-   /// <summary>
-   ///     妗d綅楂樺��
-   /// </summary>
-   [SugarColumn(ColumnName = "EPOSTION")]
+ /// <summary>
+ ///     妗d綅楂樺��
+ /// </summary>
+ [SugarColumn(ColumnName = "EPOSTION")]
     public string Epostion { get; set; }
 
-   /// <summary>
-   ///     鐗╂枡绠�绉�
-   /// </summary>
-   [SugarColumn(ColumnName = "ITEM_SNAME")]
+ /// <summary>
+ ///     鐗╂枡绠�绉�
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_SNAME")]
     public string ItemSname { get; set; }
 
-   /// <summary>
-   ///     鏄惁宸插喕缁�,1鍐荤粨
-   /// </summary>
-   [SugarColumn(ColumnName = "VISABLE")]
+ /// <summary>
+ ///     鏄惁宸插喕缁�,1鍐荤粨
+ /// </summary>
+ [SugarColumn(ColumnName = "VISABLE")]
     public short? Visable { get; set; }
 
-   /// <summary>
-   ///     渚涘簲鍟嗘壒娆�
-   /// </summary>
-   [SugarColumn(ColumnName = "TR_LOTNO")]
+ /// <summary>
+ ///     渚涘簲鍟嗘壒娆�
+ /// </summary>
+ [SugarColumn(ColumnName = "TR_LOTNO")]
     public string TrLotno { get; set; }
 
-   /// <summary>
-   ///     鍐荤粨鏃堕棿
-   /// </summary>
-   [SugarColumn(ColumnName = "FLEZZ_DATE")]
+ /// <summary>
+ ///     鍐荤粨鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "FLEZZ_DATE")]
     public DateTime? FlezzDate { get; set; }
 
-   /// <summary>
-   ///     鍐荤粨鍘熷洜
-   /// </summary>
-   [SugarColumn(ColumnName = "FLEZZ_REASON")]
+ /// <summary>
+ ///     鍐荤粨鍘熷洜
+ /// </summary>
+ [SugarColumn(ColumnName = "FLEZZ_REASON")]
     public string FlezzReason { get; set; }
 
-   /// <summary>
-   ///     鍐荤粨浜�
-   /// </summary>
-   [SugarColumn(ColumnName = "FLEZZ_BY")]
+ /// <summary>
+ ///     鍐荤粨浜�
+ /// </summary>
+ [SugarColumn(ColumnName = "FLEZZ_BY")]
     public string FlezzBy { get; set; }
 
-   /// <summary>
-   ///     寤堕暱淇濊川鏈�
-   /// </summary>
-   [SugarColumn(ColumnName = "DELANY_MONTH")]
+ /// <summary>
+ ///     寤堕暱淇濊川鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "DELANY_MONTH")]
     public decimal? DelanyMonth { get; set; }
 
-   /// <summary>
-   ///     鏈�灏忓寘瑁呮爣璇�
-   /// </summary>
-   [SugarColumn(ColumnName = "MINPACK_FLAG")]
+ /// <summary>
+ ///     鏈�灏忓寘瑁呮爣璇�
+ /// </summary>
+ [SugarColumn(ColumnName = "MINPACK_FLAG")]
     public short? MinpackFlag { get; set; }
 
-   /// <summary>
-   ///     鎵撳嵃ID锛岀敤鏉ュ尯鍒嗘墦鍗版鏁�
-   /// </summary>
-   [SugarColumn(ColumnName = "PRINT_ID")]
+ /// <summary>
+ ///     鎵撳嵃ID锛岀敤鏉ュ尯鍒嗘墦鍗版鏁�
+ /// </summary>
+ [SugarColumn(ColumnName = "PRINT_ID")]
     public string PrintId { get; set; }
 
-   /// <summary>
-   ///     鐜繚椤圭洰
-   /// </summary>
-   [SugarColumn(ColumnName = "EP_ITEM")]
+ /// <summary>
+ ///     鐜繚椤圭洰
+ /// </summary>
+ [SugarColumn(ColumnName = "EP_ITEM")]
     public string EpItem { get; set; }
 
-   /// <summary>
-   ///     宸ュ巶缂栧彿
-   /// </summary>
-   [SugarColumn(ColumnName = "FACTORY")]
+ /// <summary>
+ ///     宸ュ巶缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "FACTORY")]
     public string Factory { get; set; }
 
-   /// <summary>
-   ///     鍏徃缂栧彿
-   /// </summary>
-   [SugarColumn(ColumnName = "COMPANY")]
+ /// <summary>
+ ///     鍏徃缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "COMPANY")]
     public string Company { get; set; }
 
-   /// <summary>
-   ///     鍗℃澘缂栫爜
-   /// </summary>
-   [SugarColumn(ColumnName = "CB_NO")]
+ /// <summary>
+ ///     鍗℃澘缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "CB_NO")]
     public string CbNo { get; set; }
 
-   /// <summary>
-   ///     鍘傚鐢熶骇绾�
-   /// </summary>
-   [SugarColumn(ColumnName = "LINFLINE")]
+ /// <summary>
+ ///     鍘傚鐢熶骇绾�
+ /// </summary>
+ [SugarColumn(ColumnName = "LINFLINE")]
     public string Linfline { get; set; }
 
-   /// <summary>
-   ///     鏈夋晥鏈�
-   /// </summary>
-   [SugarColumn(ColumnName = "VALID_TIME")]
+ /// <summary>
+ ///     鏈夋晥鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "VALID_TIME")]
     public DateTime? ValidTime { get; set; }
 
-   /// <summary>
-   ///     璐ㄦ缁撴灉
-   /// </summary>
-   [SugarColumn(ColumnName = "IQC_STATUS")]
+ /// <summary>
+ ///     璐ㄦ缁撴灉
+ /// </summary>
+ [SugarColumn(ColumnName = "IQC_STATUS")]
     public string IqcStatus { get; set; }
 
-   /// <summary>
-   ///     灏忚溅鏉$爜
-   /// </summary>
-   [SugarColumn(ColumnName = "FCAR")]
+ /// <summary>
+ ///     灏忚溅鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "FCAR")]
     public string Fcar { get; set; }
 
-   /// <summary>
-   ///     姣涢噸
-   /// </summary>
-   [SugarColumn(ColumnName = "GWEIGHT")]
+ /// <summary>
+ ///     姣涢噸
+ /// </summary>
+ [SugarColumn(ColumnName = "GWEIGHT")]
     public string Gweight { get; set; }
 
-   /// <summary>
-   ///     鍑�閲�
-   /// </summary>
-   [SugarColumn(ColumnName = "NWEIGHT")]
+ /// <summary>
+ ///     鍑�閲�
+ /// </summary>
+ [SugarColumn(ColumnName = "NWEIGHT")]
     public string Nweight { get; set; }
 
-   /// <summary>
-   ///     淇濊川鏈�
-   /// </summary>
-   [SugarColumn(ColumnName = "EXT_DATE")]
+ /// <summary>
+ ///     淇濊川鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "EXT_DATE")]
     public decimal? ExtDate { get; set; }
 
-   /// <summary>
-   ///     渚涘簲鍟嗐�佽禒鍝併�佸渚涙枡銆佸澶�
-   /// </summary>
-   [SugarColumn(ColumnName = "BARCODETYPE")]
+ /// <summary>
+ ///     渚涘簲鍟嗐�佽禒鍝併�佸渚涙枡銆佸澶�
+ /// </summary>
+ [SugarColumn(ColumnName = "BARCODETYPE")]
     public string Barcodetype { get; set; }
 
-   /// <summary>
-   ///     渚涘簲鍟嗗悕绉�
-   /// </summary>
-   [SugarColumn(ColumnName = "SUPP_NAME")]
+ /// <summary>
+ ///     渚涘簲鍟嗗悕绉�
+ /// </summary>
+ [SugarColumn(ColumnName = "SUPP_NAME")]
     public string SuppName { get; set; }
 
-   /// <summary>
-   ///     鍒拌揣鍗曞彿/鍏ュ簱鍗曞彿
-   /// </summary>
-   [SugarColumn(ColumnName = "BILL_NO")]
+ /// <summary>
+ ///     鍒拌揣鍗曞彿/鍏ュ簱鍗曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "BILL_NO")]
     public string BillNo { get; set; }
 
-   /// <summary>
-   ///     鎬ユ枡鏍囪瘑
-   /// </summary>
-   [SugarColumn(ColumnName = "URGENT_FLAG")]
+ /// <summary>
+ ///     鎬ユ枡鏍囪瘑
+ /// </summary>
+ [SugarColumn(ColumnName = "URGENT_FLAG")]
     public short? UrgentFlag { get; set; }
 
-   /// <summary>
-   ///     棰滆壊
-   /// </summary>
-   [SugarColumn(ColumnName = "COLOR_NAME")]
+ /// <summary>
+ ///     棰滆壊
+ /// </summary>
+ [SugarColumn(ColumnName = "COLOR_NAME")]
     public string ColorName { get; set; }
 
-   /// <summary>
-   ///     浜у搧鍨嬪彿
-   /// </summary>
-   [SugarColumn(ColumnName = "BOARD_STYLE")]
+ /// <summary>
+ ///     浜у搧鍨嬪彿
+ /// </summary>
+ [SugarColumn(ColumnName = "BOARD_STYLE")]
     public string BoardStyle { get; set; }
 
-   /// <summary>
-   ///     鏉ユ枡鏃ユ湡
-   /// </summary>
-   [SugarColumn(ColumnName = "INS_DATE")]
+ /// <summary>
+ ///     鏉ユ枡鏃ユ湡
+ /// </summary>
+ [SugarColumn(ColumnName = "INS_DATE")]
     public DateTime? InsDate { get; set; }
 
-   /// <summary>
-   ///     鍒拌揣鍗曡鍙�
-   /// </summary>
-   [SugarColumn(ColumnName = "WORK_LINE")]
+ /// <summary>
+ ///     鍒拌揣鍗曡鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_LINE")]
     public decimal? WorkLine { get; set; }
 
-   /// <summary>
-   ///     涓嶈壇鍘熷洜
-   /// </summary>
-   [SugarColumn(ColumnName = "MEMO_BAD")]
+ /// <summary>
+ ///     涓嶈壇鍘熷洜
+ /// </summary>
+ [SugarColumn(ColumnName = "MEMO_BAD")]
     public string MemoBad { get; set; }
 
-   /// <summary>
-   ///     浠诲姟鍗曞彿
-   /// </summary>
-   [SugarColumn(ColumnName = "WORK_NO")]
+ /// <summary>
+ ///     浠诲姟鍗曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_NO")]
     public string WorkNo { get; set; }
 
-   /// <summary>
-   ///     鏉$爜鏉ユ簮鏍囪瘑锛�0-鍒濇湡鐗╂枡,1-閲囪喘鍏ュ簱锛�2銆佺敓浜ч��鏂欙紝3銆佸叾瀹冨叆搴擄紝4-瀹緵鏂�,5-鍦ㄥ簱鍒嗘枡锛�6-鍒剁▼鏉$爜
-   /// </summary>
-   [SugarColumn(ColumnName = "COME_FLG")]
+ /// <summary>
+ ///     鏉$爜鏉ユ簮鏍囪瘑锛�0-鍒濇湡鐗╂枡,1-閲囪喘鍏ュ簱锛�2銆佺敓浜ч��鏂欙紝3銆佸叾瀹冨叆搴擄紝4-瀹緵鏂�,5-鍦ㄥ簱鍒嗘枡锛�6-鍒剁▼鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "COME_FLG")]
     public short? ComeFlg { get; set; }
 
-   /// <summary>
-   ///     鐢熶骇绾夸綋
-   /// </summary>
-   [SugarColumn(ColumnName = "LINE_NO")]
+ /// <summary>
+ ///     鐢熶骇绾夸綋
+ /// </summary>
+ [SugarColumn(ColumnName = "LINE_NO")]
     public string LineNo { get; set; }
 
-   /// <summary>
-   ///     涓濆嵃娆℃暟
-   /// </summary>
-   [SugarColumn(ColumnName = "SILK_PQTY")]
+ /// <summary>
+ ///     涓濆嵃娆℃暟
+ /// </summary>
+ [SugarColumn(ColumnName = "SILK_PQTY")]
     public decimal? SilkPqty { get; set; }
 
-   /// <summary>
-   ///     涓濆嵃娆℃暟姣�
-   /// </summary>
-   [SugarColumn(ColumnName = "SILK")]
+ /// <summary>
+ ///     涓濆嵃娆℃暟姣�
+ /// </summary>
+ [SugarColumn(ColumnName = "SILK")]
     public string Silk { get; set; }
 
-   /// <summary>
-   ///     涓濆嵃娲惧伐浠庤〃ID
-   /// </summary>
-   [SugarColumn(ColumnName = "SILK_ID")]
+ /// <summary>
+ ///     涓濆嵃娲惧伐浠庤〃ID
+ /// </summary>
+ [SugarColumn(ColumnName = "SILK_ID")]
     public decimal? SilkId { get; set; }
 
-   /// <summary>
-   ///     宸叉姤宸ユ爣璇�
-   /// </summary>
-   [SugarColumn(ColumnName = "WORK_FLG")]
+ /// <summary>
+ ///     宸叉姤宸ユ爣璇�
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_FLG")]
     public decimal? WorkFlg { get; set; }
 
-   /// <summary>
-   ///     鏈�鍚庡伐搴�
-   /// </summary>
-   [SugarColumn(ColumnName = "WORK_LAST")]
+ /// <summary>
+ ///     鏈�鍚庡伐搴�
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_LAST")]
     public decimal? WorkLast { get; set; }
 
-   /// <summary>
-   ///     0-鏈悎骞舵墦鍗帮紝1-鍚堝苟鎵撳嵃
-   /// </summary>
-   [SugarColumn(ColumnName = "HBDY")]
+ /// <summary>
+ ///     0-鏈悎骞舵墦鍗帮紝1-鍚堝苟鎵撳嵃
+ /// </summary>
+ [SugarColumn(ColumnName = "HBDY")]
     public decimal? Hbdy { get; set; }
 
-   /// <summary>
-   ///     0-鏈夋晥鏉$爜锛�1-鍚堝苟鎷嗗垎鐨勬潯鐮侊紝鏃犳晥
-   /// </summary>
-   [SugarColumn(ColumnName = "HBDYTM")]
+ /// <summary>
+ ///     0-鏈夋晥鏉$爜锛�1-鍚堝苟鎷嗗垎鐨勬潯鐮侊紝鏃犳晥
+ /// </summary>
+ [SugarColumn(ColumnName = "HBDYTM")]
     public decimal? Hbdytm { get; set; }
 
-   /// <summary>
-   ///     鎶ュ伐鏃堕棿
-   /// </summary>
-   [SugarColumn(ColumnName = "WORK_FLGTIME")]
+ /// <summary>
+ ///     鎶ュ伐鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_FLGTIME")]
     public string WorkFlgtime { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/MesInvItemInCItems.cs b/MES.Service/Modes/MesInvItemInCItems.cs
index 05e3293..9c3eb27 100644
--- a/MES.Service/Modes/MesInvItemInCItems.cs
+++ b/MES.Service/Modes/MesInvItemInCItems.cs
@@ -8,141 +8,141 @@
 [SugarTable("MES_INV_ITEM_IN_C_ITEMS")]
 public class MesInvItemInCItems
 {
- /// <summary>
- ///     SEQ_OUT
- /// </summary>
- [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+   /// <summary>
+   ///     SEQ_OUT
+   /// </summary>
+   [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
     public decimal Id { get; set; }
 
- /// <summary>
- ///     鍏ュ簱鍗昳d
- /// </summary>
- [SugarColumn(ColumnName = "ITEM_IN_ID", IsPrimaryKey = true)]
+   /// <summary>
+   ///     鍏ュ簱鍗昳d
+   /// </summary>
+   [SugarColumn(ColumnName = "ITEM_IN_ID", IsPrimaryKey = true)]
     public decimal ItemInId { get; set; }
 
- /// <summary>
- ///     楠屾敹鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "QUANTITY")]
+   /// <summary>
+   ///     楠屾敹鏁伴噺
+   /// </summary>
+   [SugarColumn(ColumnName = "QUANTITY")]
     public decimal? Quantity { get; set; }
 
- /// <summary>
- ///     鍒涘缓浜�
- /// </summary>
- [SugarColumn(ColumnName = "CREATE_BY")]
+   /// <summary>
+   ///     鍒涘缓浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "CREATE_BY")]
     public string CreateBy { get; set; }
 
- /// <summary>
- ///     鍒涘缓鏃堕棿
- /// </summary>
- [SugarColumn(ColumnName = "CREATE_DATE")]
+   /// <summary>
+   ///     鍒涘缓鏃堕棿
+   /// </summary>
+   [SugarColumn(ColumnName = "CREATE_DATE")]
     public DateTime? CreateDate { get; set; }
 
- /// <summary>
- ///     鏈�鍚庢洿鏂颁汉
- /// </summary>
- [SugarColumn(ColumnName = "LASTUPDATE_BY")]
+   /// <summary>
+   ///     鏈�鍚庢洿鏂颁汉
+   /// </summary>
+   [SugarColumn(ColumnName = "LASTUPDATE_BY")]
     public string LastupdateBy { get; set; }
 
- /// <summary>
- ///     鏈�鍚庢洿鏂版椂闂�
- /// </summary>
- [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
+   /// <summary>
+   ///     鏈�鍚庢洿鏂版椂闂�
+   /// </summary>
+   [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
     public DateTime? LastupdateDate { get; set; }
 
- /// <summary>
- ///     鐗╂枡缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "ITEM_NO")]
+   /// <summary>
+   ///     鐗╂枡缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "ITEM_NO")]
     public string ItemNo { get; set; }
 
- /// <summary>
- ///     浠撳簱缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "DEPOT_CODE")]
+   /// <summary>
+   ///     浠撳簱缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "DEPOT_CODE")]
     public string DepotCode { get; set; }
 
- /// <summary>
- ///     璐т綅缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "DEPOT_SECTION_CODE")]
+   /// <summary>
+   ///     璐т綅缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "DEPOT_SECTION_CODE")]
     public string DepotSectionCode { get; set; }
 
- /// <summary>
- ///     鐗硅浜嬮」
- /// </summary>
- [SugarColumn(ColumnName = "REMARK")]
+   /// <summary>
+   ///     鐗硅浜嬮」
+   /// </summary>
+   [SugarColumn(ColumnName = "REMARK")]
     public string Remark { get; set; }
 
- /// <summary>
- ///     鐗╂枡绠�绉�
- /// </summary>
- [SugarColumn(ColumnName = "ITEM_SNAME")]
+   /// <summary>
+   ///     鐗╂枡绠�绉�
+   /// </summary>
+   [SugarColumn(ColumnName = "ITEM_SNAME")]
     public string ItemSname { get; set; }
 
- /// <summary>
- ///     鍗曚綅
- /// </summary>
- [SugarColumn(ColumnName = "UNIT")]
+   /// <summary>
+   ///     鍗曚綅
+   /// </summary>
+   [SugarColumn(ColumnName = "UNIT")]
     public string Unit { get; set; }
 
- /// <summary>
- ///     閲囪喘璁㈠崟
- /// </summary>
- [SugarColumn(ColumnName = "EBELN")]
+   /// <summary>
+   ///     閲囪喘璁㈠崟
+   /// </summary>
+   [SugarColumn(ColumnName = "EBELN")]
     public string Ebeln { get; set; }
 
- /// <summary>
- ///     鍏ュ簱鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "BILL_NO")]
+   /// <summary>
+   ///     鍏ュ簱鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "BILL_NO")]
     public string BillNo { get; set; }
 
- /// <summary>
- ///     鍒嗗巶缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "FACTORY")]
+   /// <summary>
+   ///     鍒嗗巶缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "FACTORY")]
     public string Factory { get; set; }
 
- /// <summary>
- ///     鍏徃浠g爜
- /// </summary>
- [SugarColumn(ColumnName = "COMPANY")]
+   /// <summary>
+   ///     鍏徃浠g爜
+   /// </summary>
+   [SugarColumn(ColumnName = "COMPANY")]
     public string Company { get; set; }
 
- /// <summary>
- ///     浠诲姟鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "WORK_NO")]
+   /// <summary>
+   ///     浠诲姟鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "WORK_NO")]
     public string WorkNo { get; set; }
 
- /// <summary>
- ///     琛屽彿
- /// </summary>
- [SugarColumn(ColumnName = "EBELN_LINE_NO")]
+   /// <summary>
+   ///     琛屽彿
+   /// </summary>
+   [SugarColumn(ColumnName = "EBELN_LINE_NO")]
     public decimal? EbelnLineNo { get; set; }
 
- /// <summary>
- ///     鍒拌揣鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "CBILL_NO")]
+   /// <summary>
+   ///     鍒拌揣鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "CBILL_NO")]
     public string CbillNo { get; set; }
 
- /// <summary>
- ///     浠诲姟鍗曡鍙�
- /// </summary>
- [SugarColumn(ColumnName = "WORK_LINE")]
+   /// <summary>
+   ///     浠诲姟鍗曡鍙�
+   /// </summary>
+   [SugarColumn(ColumnName = "WORK_LINE")]
     public decimal? WorkLine { get; set; }
 
- /// <summary>
- ///     鐢熶骇宸ュ崟
- /// </summary>
- [SugarColumn(ColumnName = "TASK_NO")]
+   /// <summary>
+   ///     鐢熶骇宸ュ崟
+   /// </summary>
+   [SugarColumn(ColumnName = "TASK_NO")]
     public string TaskNo { get; set; }
 
- /// <summary>
- ///     渚涘簲鍟�
- /// </summary>
- [SugarColumn(ColumnName = "SUPP_NO")]
+   /// <summary>
+   ///     渚涘簲鍟�
+   /// </summary>
+   [SugarColumn(ColumnName = "SUPP_NO")]
     public string SuppNo { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/MesInvItemOutCDetails.cs b/MES.Service/Modes/MesInvItemOutCDetails.cs
new file mode 100644
index 0000000..13835d9
--- /dev/null
+++ b/MES.Service/Modes/MesInvItemOutCDetails.cs
@@ -0,0 +1,242 @@
+锘縰sing SqlSugar;
+
+namespace MES.Service.Modes;
+
+/// <summary>
+///     鐗╂枡鍑哄簱鏉$爜鏄庣粏
+/// </summary>
+[SugarTable("MES_INV_ITEM_OUT_C_DETAILS")]
+public class MesInvItemOutCDetails
+{
+    /// <summary>
+    ///     SEQ_INV_ID
+    /// </summary>
+    [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+    public decimal Id { get; set; }
+
+    /// <summary>
+    ///     鍑哄簱鍗昳d
+    /// </summary>
+    [SugarColumn(ColumnName = "ITEM_OUT_ID")]
+    public decimal? ItemOutId { get; set; }
+
+    /// <summary>
+    ///     鐗╂枡鏉$爜
+    /// </summary>
+    [SugarColumn(ColumnName = "ITEM_BARCODE")]
+    public string ItemBarcode { get; set; }
+
+    /// <summary>
+    ///     瀹㈡埛鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級
+    /// </summary>
+    [SugarColumn(ColumnName = "C_ITEM_CODE")]
+    public string CItemCode { get; set; }
+
+    /// <summary>
+    ///     鏈徃鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級
+    /// </summary>
+    [SugarColumn(ColumnName = "ITEM_NO")]
+    public string ItemNo { get; set; }
+
+    /// <summary>
+    ///     鍘傚鎵规
+    /// </summary>
+    [SugarColumn(ColumnName = "LOT_NO")]
+    public string LotNo { get; set; }
+
+    /// <summary>
+    ///     鏁伴噺锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級
+    /// </summary>
+    [SugarColumn(ColumnName = "QUANTITY")]
+    public decimal? Quantity { get; set; }
+
+    /// <summary>
+    ///     鎸枡鏍囧織锛�0锛嶅惁锛�1锛嶆槸锛�
+    /// </summary>
+    [SugarColumn(ColumnName = "FORCE_OUT_FLAG")]
+    public decimal? ForceOutFlag { get; set; }
+
+    /// <summary>
+    ///     鍒涘缓浜�
+    /// </summary>
+    [SugarColumn(ColumnName = "CREATE_BY")]
+    public string CreateBy { get; set; }
+
+    /// <summary>
+    ///     鍒涘缓鏃堕棿
+    /// </summary>
+    [SugarColumn(ColumnName = "CREATE_DATE")]
+    public DateTime? CreateDate { get; set; }
+
+    /// <summary>
+    ///     鏈�鍚庢洿鏂颁汉
+    /// </summary>
+    [SugarColumn(ColumnName = "LASTUPDATE_BY")]
+    public string LastupdateBy { get; set; }
+
+    /// <summary>
+    ///     鏈�鍚庢洿鏂版椂闂�
+    /// </summary>
+    [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
+    public DateTime? LastupdateDate { get; set; }
+
+    /// <summary>
+    ///     瀹㈡埛缂栫爜
+    /// </summary>
+    [SugarColumn(ColumnName = "CUST_NO")]
+    public string CustNo { get; set; }
+
+    /// <summary>
+    ///     浠撳簱缂栫爜
+    /// </summary>
+    [SugarColumn(ColumnName = "DEPOT_CODE")]
+    public string DepotCode { get; set; }
+
+    /// <summary>
+    ///     璐т綅缂栫爜
+    /// </summary>
+    [SugarColumn(ColumnName = "DEPOT_SECTION_CODE")]
+    public string DepotSectionCode { get; set; }
+
+    /// <summary>
+    /// </summary>
+    [SugarColumn(ColumnName = "REMARK")]
+    public string Remark { get; set; }
+
+    /// <summary>
+    ///     鍏嶆鏍囪瘑(0-鍚︼紝1-鏄�)
+    /// </summary>
+    [SugarColumn(ColumnName = "FORCE_EXEMPT_FLAG")]
+    public short? ForceExemptFlag { get; set; }
+
+    /// <summary>
+    ///     鎶曟枡鎵规
+    /// </summary>
+    [SugarColumn(ColumnName = "PRD_LOT_NO")]
+    public string PrdLotNo { get; set; }
+
+    /// <summary>
+    ///     鏄惁鍋氭帴鏀舵鏌�
+    /// </summary>
+    [SugarColumn(ColumnName = "CHECK_STATUS")]
+    public short? CheckStatus { get; set; }
+
+    /// <summary>
+    ///     宸ュ巶缂栧彿
+    /// </summary>
+    [SugarColumn(ColumnName = "FACTORY")]
+    public string Factory { get; set; }
+
+    /// <summary>
+    ///     鍏徃缂栧彿
+    /// </summary>
+    [SugarColumn(ColumnName = "COMPANY")]
+    public string Company { get; set; }
+
+    /// <summary>
+    ///     鍘熺敓浜у伐鍗�
+    /// </summary>
+    [SugarColumn(ColumnName = "TASK_NOY")]
+    public string TaskNoy { get; set; }
+
+    /// <summary>
+    ///     绠卞彿
+    /// </summary>
+    [SugarColumn(ColumnName = "BOX_NO")]
+    public string BoxNo { get; set; }
+
+    /// <summary>
+    ///     鍖呰鎵规
+    /// </summary>
+    [SugarColumn(ColumnName = "TASK_PACK")]
+    public string TaskPack { get; set; }
+
+    /// <summary>
+    ///     鍗℃澘
+    /// </summary>
+    [SugarColumn(ColumnName = "KB_NO")]
+    public string KbNo { get; set; }
+
+    /// <summary>
+    ///     浜у搧鏈哄瀷
+    /// </summary>
+    [SugarColumn(ColumnName = "BOARD_STYLE")]
+    public string BoardStyle { get; set; }
+
+    /// <summary>
+    ///     鐢熶骇宸ュ崟
+    /// </summary>
+    [SugarColumn(ColumnName = "TASK_NO")]
+    public string TaskNo { get; set; }
+
+    /// <summary>
+    ///     浠诲姟鍗曞彿
+    /// </summary>
+    [SugarColumn(ColumnName = "WORK_NO")]
+    public string WorkNo { get; set; }
+
+    /// <summary>
+    ///     浠诲姟鍗曡鍙�
+    /// </summary>
+    [SugarColumn(ColumnName = "WORK_LINE")]
+    public decimal? WorkLine { get; set; }
+
+    /// <summary>
+    ///     渚涘簲鍟嗙紪鍙�
+    /// </summary>
+    [SugarColumn(ColumnName = "SUPP_NO")]
+    public string SuppNo { get; set; }
+
+    /// <summary>
+    ///     棰嗘枡鍗曞彿/濮斿璁㈠崟
+    /// </summary>
+    [SugarColumn(ColumnName = "PBILL_NO")]
+    public string PbillNo { get; set; }
+
+    /// <summary>
+    ///     鎺ユ敹鏍囪瘑/1宸叉帴鏀�
+    /// </summary>
+    [SugarColumn(ColumnName = "RECEIVE")]
+    public decimal? Receive { get; set; }
+
+    /// <summary>
+    ///     鎺ユ敹鏃堕棿
+    /// </summary>
+    [SugarColumn(ColumnName = "RTIME")]
+    public DateTime? Rtime { get; set; }
+
+    /// <summary>
+    ///     鎺ユ敹浜�
+    /// </summary>
+    [SugarColumn(ColumnName = "RCV_BY")]
+    public string RcvBy { get; set; }
+
+    /// <summary>
+    ///     鎺ユ敹杞﹂棿
+    /// </summary>
+    [SugarColumn(ColumnName = "RCV_PART")]
+    public string RcvPart { get; set; }
+
+    /// <summary>
+    ///     鍏ュ簱鍗曞彿
+    /// </summary>
+    [SugarColumn(ColumnName = "RK_NO")]
+    public string RkNo { get; set; }
+
+    /// <summary>
+    ///     閲囪喘璁㈠崟id
+    /// </summary>
+    [SugarColumn(ColumnName = "EBELN_K3ID")]
+    public decimal? EbelnK3id { get; set; }
+
+    /// <summary>
+    ///     閲囪喘璁㈠崟琛宨d
+    /// </summary>
+    [SugarColumn(ColumnName = "LINE_K3ID")]
+    public decimal? LineK3id { get; set; }
+
+    [SugarColumn(IsIgnore = true)] public string? DepotName { get; set; }
+    [SugarColumn(IsIgnore = true)] public string? ItemName { get; set; }
+    [SugarColumn(IsIgnore = true)] public string? ItemModel { get; set; }
+    [SugarColumn(IsIgnore = true)] public string? Unit { get; set; }
+}
\ No newline at end of file
diff --git a/MES.Service/Modes/MesInvItemStocks.cs b/MES.Service/Modes/MesInvItemStocks.cs
new file mode 100644
index 0000000..96cc940
--- /dev/null
+++ b/MES.Service/Modes/MesInvItemStocks.cs
@@ -0,0 +1,201 @@
+锘縰sing SqlSugar;
+
+namespace MES.Service.Modes;
+
+/// <summary>
+///     鐗╂枡搴撳瓨琛�
+/// </summary>
+[SugarTable("MES_INV_ITEM_STOCKS")]
+public class MesInvItemStocks
+{
+ /// <summary>
+ /// </summary>
+ [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+    public decimal Id { get; set; }
+
+ /// <summary>
+ ///     鐢熶骇璁㈠崟
+ /// </summary>
+ [SugarColumn(ColumnName = "TASK_NO")]
+    public string TaskNo { get; set; }
+
+ /// <summary>
+ ///     鐗╂枡鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_BARCODE")]
+    public string ItemBarcode { get; set; }
+
+ /// <summary>
+ ///     瀹㈡埛鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級
+ /// </summary>
+ [SugarColumn(ColumnName = "C_ITEM_CODE")]
+    public string CItemCode { get; set; }
+
+ /// <summary>
+ ///     鏈徃鐗╂枡缂栫爜锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_NO")]
+    public string ItemNo { get; set; }
+
+ /// <summary>
+ ///     瀛愬簱id
+ /// </summary>
+ [SugarColumn(ColumnName = "DEPOTS_ID")]
+    public decimal? DepotsId { get; set; }
+
+ /// <summary>
+ ///     璐т綅id
+ /// </summary>
+ [SugarColumn(ColumnName = "DEPOT_SECTIONS_ID")]
+    public decimal? DepotSectionsId { get; set; }
+
+ /// <summary>
+ ///     鍘傚鎵规
+ /// </summary>
+ [SugarColumn(ColumnName = "LOT_NO")]
+    public string LotNo { get; set; }
+
+ /// <summary>
+ ///     鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "QUANTITY")]
+    public decimal? Quantity { get; set; }
+
+ /// <summary>
+ ///     鐜繚鏍囧織锛堟棤鏉$爜鎵嬪伐褰曞叆锛屾湁鏉$爜涓哄啑浣欏瓧娈碉級(0-鍚︼紝1-鏄�)
+ /// </summary>
+ [SugarColumn(ColumnName = "EP_FLAG")]
+    public short? EpFlag { get; set; }
+
+ /// <summary>
+ ///     瀹㈡埛缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "CUSTOMER_NO")]
+    public string CustomerNo { get; set; }
+
+ /// <summary>
+ ///     閲嶉噺
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_WT")]
+    public decimal? ItemWt { get; set; }
+
+ /// <summary>
+ ///     瀛愬簱CODE
+ /// </summary>
+ [SugarColumn(ColumnName = "DEPOTS_CODE")]
+    public string DepotsCode { get; set; }
+
+ /// <summary>
+ ///     璐т綅CODE
+ /// </summary>
+ [SugarColumn(ColumnName = "DEPOT_SECTIONS_CODE")]
+    public string DepotSectionsCode { get; set; }
+
+ /// <summary>
+ ///     妫�楠屾棩鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "CHECK_DATE")]
+    public DateTime? CheckDate { get; set; }
+
+ /// <summary>
+ ///     0 鐗╂枡 1 鍗婃垚鍝� 2 鎴愬搧
+ /// </summary>
+ [SugarColumn(ColumnName = "ITEM_TYPE")]
+    public short? ItemType { get; set; }
+
+ /// <summary>
+ ///     鍏ュ簱鏃ユ湡
+ /// </summary>
+ [SugarColumn(ColumnName = "INDEP_DATE")]
+    public DateTime? IndepDate { get; set; }
+
+ /// <summary>
+ ///     宸ュ巶缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "FACTORY")]
+    public string Factory { get; set; }
+
+ /// <summary>
+ ///     鍏徃缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "COMPANY")]
+    public string Company { get; set; }
+
+ /// <summary>
+ ///     璐ㄦ鐘舵��
+ /// </summary>
+ [SugarColumn(ColumnName = "IQC_STATUS")]
+    public string IqcStatus { get; set; }
+
+ /// <summary>
+ ///     灏忚溅鏉$爜
+ /// </summary>
+ [SugarColumn(ColumnName = "FCAR")]
+    public string Fcar { get; set; }
+
+ /// <summary>
+ ///     鍐荤粨鎻愪氦閲嶆锛�0锛氬喕缁撴湭鎻愪氦閲嶆锛�1锛氬喕缁撳苟鎻愪氦閲嶆
+ /// </summary>
+ [SugarColumn(ColumnName = "VISABLE_SUBMIT")]
+    public short? VisableSubmit { get; set; }
+
+ /// <summary>
+ ///     鎻愪氦閲嶆浜�
+ /// </summary>
+ [SugarColumn(ColumnName = "VISABLE_SUBMIT_BY")]
+    public string VisableSubmitBy { get; set; }
+
+ /// <summary>
+ ///     鎻愪氦閲嶆鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "VISABLE_SUBMIT_DATE")]
+    public DateTime? VisableSubmitDate { get; set; }
+
+ /// <summary>
+ ///     浜у搧鍨嬪彿
+ /// </summary>
+ [SugarColumn(ColumnName = "BOARD_STYLE")]
+    public string BoardStyle { get; set; }
+
+ /// <summary>
+ ///     浠诲姟鍗曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_NO")]
+    public string WorkNo { get; set; }
+
+ /// <summary>
+ ///     浠诲姟鍗曡鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "WORK_LINE")]
+    public decimal? WorkLine { get; set; }
+
+ /// <summary>
+ ///     渚涘簲鍟�
+ /// </summary>
+ [SugarColumn(ColumnName = "SUPP_NO")]
+    public string SuppNo { get; set; }
+
+ /// <summary>
+ ///     鐢熶骇绾�
+ /// </summary>
+ [SugarColumn(ColumnName = "LINE_NO")]
+    public string LineNo { get; set; }
+
+ /// <summary>
+ ///     鍗婃垚鍝佸叆搴撳崟鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "BILL_NO")]
+    public string BillNo { get; set; }
+
+ /// <summary>
+ ///     閲囪喘璁㈠崟id
+ /// </summary>
+ [SugarColumn(ColumnName = "EBELN_K3ID")]
+    public decimal? EbelnK3id { get; set; }
+
+ /// <summary>
+ ///     閲囪喘璁㈠崟琛宨d
+ /// </summary>
+ [SugarColumn(ColumnName = "LINE_K3ID")]
+    public decimal? LineK3id { get; set; }
+}
\ No newline at end of file
diff --git a/MES.Service/Modes/MesQaItemsDetect01.cs b/MES.Service/Modes/MesQaItemsDetect01.cs
index 2a26d0c..14760fb 100644
--- a/MES.Service/Modes/MesQaItemsDetect01.cs
+++ b/MES.Service/Modes/MesQaItemsDetect01.cs
@@ -8,324 +8,324 @@
 [SugarTable("MES_QA_ITEMS_DETECT_01")]
 public class MesQaItemsDetect01
 {
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "ID", IsPrimaryKey = true)]
     public decimal Id { get; set; }
 
- /// <summary>
- ///     妫�楠屽崟鍙�
- /// </summary>
- [SugarColumn(ColumnName = "RELEASE_NO")]
+   /// <summary>
+   ///     妫�楠屽崟鍙�
+   /// </summary>
+   [SugarColumn(ColumnName = "RELEASE_NO")]
     public string ReleaseNo { get; set; }
 
- /// <summary>
- ///     妫�楠屾棩鏈�
- /// </summary>
- [SugarColumn(ColumnName = "FCHECK_DATE")]
+   /// <summary>
+   ///     妫�楠屾棩鏈�
+   /// </summary>
+   [SugarColumn(ColumnName = "FCHECK_DATE")]
     public DateTime? FcheckDate { get; set; }
 
- /// <summary>
- ///     妫�楠屼汉鍛�
- /// </summary>
- [SugarColumn(ColumnName = "FCHECK_BY")]
+   /// <summary>
+   ///     妫�楠屼汉鍛�
+   /// </summary>
+   [SugarColumn(ColumnName = "FCHECK_BY")]
     public string FcheckBy { get; set; }
 
- /// <summary>
- ///     鐗╂枡缂栫爜
- /// </summary>
- [SugarColumn(ColumnName = "ITEM_NO")]
+   /// <summary>
+   ///     鐗╂枡缂栫爜
+   /// </summary>
+   [SugarColumn(ColumnName = "ITEM_NO")]
     public string ItemNo { get; set; }
 
- /// <summary>
- ///     鏉ユ枡鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "FBATCH_QTY")]
+   /// <summary>
+   ///     鏉ユ枡鏁伴噺
+   /// </summary>
+   [SugarColumn(ColumnName = "FBATCH_QTY")]
     public decimal? FbatchQty { get; set; }
 
- /// <summary>
- ///     鍒ゅ畾缁撴灉
- /// </summary>
- [SugarColumn(ColumnName = "FRECE_QTY")]
+   /// <summary>
+   ///     鍒ゅ畾缁撴灉
+   /// </summary>
+   [SugarColumn(ColumnName = "FRECE_QTY")]
     public string FreceQty { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "SUPP_NO")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "SUPP_NO")]
     public string SuppNo { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "FNG_DESC")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "FNG_DESC")]
     public string FngDesc { get; set; }
 
- /// <summary>
- ///     妫�楠岀粨鏋�
- /// </summary>
- [SugarColumn(ColumnName = "FCHECK_RESU")]
+   /// <summary>
+   ///     妫�楠岀粨鏋�
+   /// </summary>
+   [SugarColumn(ColumnName = "FCHECK_RESU")]
     public string FcheckResu { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "FREVIEW")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "FREVIEW")]
     public string Freview { get; set; }
 
- /// <summary>
- ///     妫�楠屾按鍑�
- /// </summary>
- [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
+   /// <summary>
+   ///     妫�楠屾按鍑�
+   /// </summary>
+   [SugarColumn(ColumnName = "SAMPLE_SIZE_NO")]
     public string SampleSizeNo { get; set; }
 
- /// <summary>
- ///     妫�楠屾按骞�
- /// </summary>
- [SugarColumn(ColumnName = "FCHECK_LEVEL")]
+   /// <summary>
+   ///     妫�楠屾按骞�
+   /// </summary>
+   [SugarColumn(ColumnName = "FCHECK_LEVEL")]
     public string FcheckLevel { get; set; }
 
- /// <summary>
- ///     鎷掓敹姘村钩
- /// </summary>
- [SugarColumn(ColumnName = "FAC_LEVEL")]
+   /// <summary>
+   ///     鎷掓敹姘村钩
+   /// </summary>
+   [SugarColumn(ColumnName = "FAC_LEVEL")]
     public string FacLevel { get; set; }
 
- /// <summary>
- ///     鎶芥鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "CHECK_QTY")]
+   /// <summary>
+   ///     鎶芥鏁伴噺
+   /// </summary>
+   [SugarColumn(ColumnName = "CHECK_QTY")]
     public string CheckQty { get; set; }
 
- /// <summary>
- ///     鎵规鍙�  --鍒拌揣鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "LOT_NO")]
+   /// <summary>
+   ///     鎵规鍙�  --鍒拌揣鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "LOT_NO")]
     public string LotNo { get; set; }
 
- /// <summary>
- ///     鏄惁鎺ㄩ��
- /// </summary>
- [SugarColumn(ColumnName = "FMOVE")]
+   /// <summary>
+   ///     鏄惁鎺ㄩ��
+   /// </summary>
+   [SugarColumn(ColumnName = "FMOVE")]
     public string Fmove { get; set; }
 
- /// <summary>
- ///     鏄惁澶勭悊
- /// </summary>
- [SugarColumn(ColumnName = "FHANDLE")]
+   /// <summary>
+   ///     鏄惁澶勭悊
+   /// </summary>
+   [SugarColumn(ColumnName = "FHANDLE")]
     public string Fhandle { get; set; }
 
- /// <summary>
- ///     鍒涘缓浜�
- /// </summary>
- [SugarColumn(ColumnName = "CREATE_BY")]
+   /// <summary>
+   ///     鍒涘缓浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "CREATE_BY")]
     public string CreateBy { get; set; }
 
- /// <summary>
- ///     鍒涘缓鏃ユ湡
- /// </summary>
- [SugarColumn(ColumnName = "CREATE_DATE")]
+   /// <summary>
+   ///     鍒涘缓鏃ユ湡
+   /// </summary>
+   [SugarColumn(ColumnName = "CREATE_DATE")]
     public DateTime? CreateDate { get; set; }
 
- /// <summary>
- ///     鏇存柊浜�
- /// </summary>
- [SugarColumn(ColumnName = "LASTUPDATE_BY")]
+   /// <summary>
+   ///     鏇存柊浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "LASTUPDATE_BY")]
     public string LastupdateBy { get; set; }
 
- /// <summary>
- ///     鏇存柊鏃ユ湡
- /// </summary>
- [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
+   /// <summary>
+   ///     鏇存柊鏃ユ湡
+   /// </summary>
+   [SugarColumn(ColumnName = "LASTUPDATE_DATE")]
     public DateTime? LastupdateDate { get; set; }
 
- /// <summary>
- ///     鏄惁瀹℃牳
- /// </summary>
- [SugarColumn(ColumnName = "MODIFY1_FLAG")]
+   /// <summary>
+   ///     鏄惁瀹℃牳
+   /// </summary>
+   [SugarColumn(ColumnName = "MODIFY1_FLAG")]
     public decimal? Modify1Flag { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "MODIFY1_BY")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "MODIFY1_BY")]
     public string Modify1By { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "MODIFY1_DATE")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "MODIFY1_DATE")]
     public DateTime? Modify1Date { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "FACTORY")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "FACTORY")]
     public string Factory { get; set; }
 
- /// <summary>
- ///     XRF娴嬭瘯鎶ュ憡缂栧彿
- /// </summary>
- [SugarColumn(ColumnName = "FCHECK_REPNO")]
+   /// <summary>
+   ///     XRF娴嬭瘯鎶ュ憡缂栧彿
+   /// </summary>
+   [SugarColumn(ColumnName = "FCHECK_REPNO")]
     public string FcheckRepno { get; set; }
 
- /// <summary>
- ///     绗笁鏂规姤鍛�
- /// </summary>
- [SugarColumn(ColumnName = "FTHIRD_REP")]
+   /// <summary>
+   ///     绗笁鏂规姤鍛�
+   /// </summary>
+   [SugarColumn(ColumnName = "FTHIRD_REP")]
     public string FthirdRep { get; set; }
 
- /// <summary>
- ///     鏄惁浣滃簾
- /// </summary>
- [SugarColumn(ColumnName = "FCANCEL")]
+   /// <summary>
+   ///     鏄惁浣滃簾
+   /// </summary>
+   [SugarColumn(ColumnName = "FCANCEL")]
     public decimal? Fcancel { get; set; }
 
- /// <summary>
- ///     鎻愪氦鏍囪瘑
- /// </summary>
- [SugarColumn(ColumnName = "FSUBMIT")]
+   /// <summary>
+   ///     鎻愪氦鏍囪瘑
+   /// </summary>
+   [SugarColumn(ColumnName = "FSUBMIT")]
     public decimal? Fsubmit { get; set; }
 
- /// <summary>
- ///     妫�楠屼緷鎹�
- /// </summary>
- [SugarColumn(ColumnName = "FCHECK_ACCORD")]
+   /// <summary>
+   ///     妫�楠屼緷鎹�
+   /// </summary>
+   [SugarColumn(ColumnName = "FCHECK_ACCORD")]
     public string FcheckAccord { get; set; }
 
- /// <summary>
- ///     绫诲瀷(0 鏉ユ枡 1 鍦ㄥ簱)
- /// </summary>
- [SugarColumn(ColumnName = "FTYPE")]
+   /// <summary>
+   ///     绫诲瀷(0 鏉ユ枡 1 鍦ㄥ簱)
+   /// </summary>
+   [SugarColumn(ColumnName = "FTYPE")]
     public short? Ftype { get; set; }
 
- /// <summary>
- ///     鍗曚綅
- /// </summary>
- [SugarColumn(ColumnName = "ITEM_UNIT")]
+   /// <summary>
+   ///     鍗曚綅
+   /// </summary>
+   [SugarColumn(ColumnName = "ITEM_UNIT")]
     public string ItemUnit { get; set; }
 
- /// <summary>
- ///     鍑鸿揣鏃ユ湡
- /// </summary>
- [SugarColumn(ColumnName = "OUT_DATE")]
+   /// <summary>
+   ///     鍑鸿揣鏃ユ湡
+   /// </summary>
+   [SugarColumn(ColumnName = "OUT_DATE")]
     public string OutDate { get; set; }
 
- /// <summary>
- ///     鏄惁鍏嶆
- /// </summary>
- [SugarColumn(ColumnName = "FEXEMPTION")]
+   /// <summary>
+   ///     鏄惁鍏嶆
+   /// </summary>
+   [SugarColumn(ColumnName = "FEXEMPTION")]
     public decimal? Fexemption { get; set; }
 
- /// <summary>
- ///     妗d綅鏍囧噯
- /// </summary>
- [SugarColumn(ColumnName = "FGEAR_STAND")]
+   /// <summary>
+   ///     妗d綅鏍囧噯
+   /// </summary>
+   [SugarColumn(ColumnName = "FGEAR_STAND")]
     public string FgearStand { get; set; }
 
- /// <summary>
- ///     涓嶈壇澶勭悊鏂规硶
- /// </summary>
- [SugarColumn(ColumnName = "FNG_HANDLE")]
+   /// <summary>
+   ///     涓嶈壇澶勭悊鏂规硶
+   /// </summary>
+   [SugarColumn(ColumnName = "FNG_HANDLE")]
     public string FngHandle { get; set; }
 
- /// <summary>
- ///     绠$悊缂栧彿
- /// </summary>
- [SugarColumn(ColumnName = "FMANAGE_NO")]
+   /// <summary>
+   ///     绠$悊缂栧彿
+   /// </summary>
+   [SugarColumn(ColumnName = "FMANAGE_NO")]
     public string FmanageNo { get; set; }
 
- /// <summary>
- ///     杞崲鏁伴噺
- /// </summary>
- [SugarColumn(ColumnName = "FCOVERT_QTY")]
+   /// <summary>
+   ///     杞崲鏁伴噺
+   /// </summary>
+   [SugarColumn(ColumnName = "FCOVERT_QTY")]
     public string FcovertQty { get; set; }
 
- /// <summary>
- ///     鐗堟湰
- /// </summary>
- [SugarColumn(ColumnName = "FVERSION")]
+   /// <summary>
+   ///     鐗堟湰
+   /// </summary>
+   [SugarColumn(ColumnName = "FVERSION")]
     public decimal? Fversion { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "COMPANY")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "COMPANY")]
     public string Company { get; set; }
 
- /// <summary>
- /// </summary>
- [SugarColumn(ColumnName = "FSECOND_RESU")]
+   /// <summary>
+   /// </summary>
+   [SugarColumn(ColumnName = "FSECOND_RESU")]
     public string FsecondResu { get; set; }
 
- /// <summary>
- ///     鏈�澶ф娊妫�鏁�
- /// </summary>
- [SugarColumn(ColumnName = "MAX_CHECK_QTY")]
+   /// <summary>
+   ///     鏈�澶ф娊妫�鏁�
+   /// </summary>
+   [SugarColumn(ColumnName = "MAX_CHECK_QTY")]
     public decimal? MaxCheckQty { get; set; }
 
- /// <summary>
- ///     鐗瑰畾淇敼鏄惁瀹℃牳
- /// </summary>
- [SugarColumn(ColumnName = "MODIFY1_FLAG1")]
+   /// <summary>
+   ///     鐗瑰畾淇敼鏄惁瀹℃牳
+   /// </summary>
+   [SugarColumn(ColumnName = "MODIFY1_FLAG1")]
     public decimal? Modify1Flag1 { get; set; }
 
- /// <summary>
- ///     鐗瑰畾淇敼瀹℃牳浜�
- /// </summary>
- [SugarColumn(ColumnName = "MODIFY1_BY1")]
+   /// <summary>
+   ///     鐗瑰畾淇敼瀹℃牳浜�
+   /// </summary>
+   [SugarColumn(ColumnName = "MODIFY1_BY1")]
     public string Modify1By1 { get; set; }
 
- /// <summary>
- ///     鐗瑰畾淇敼瀹℃牳鏃堕棿
- /// </summary>
- [SugarColumn(ColumnName = "MODIFY1_DATE1")]
+   /// <summary>
+   ///     鐗瑰畾淇敼瀹℃牳鏃堕棿
+   /// </summary>
+   [SugarColumn(ColumnName = "MODIFY1_DATE1")]
     public DateTime? Modify1Date1 { get; set; }
 
- /// <summary>
- ///     灏忔壒娆″彿
- /// </summary>
- [SugarColumn(ColumnName = "LOT_NO1")]
+   /// <summary>
+   ///     灏忔壒娆″彿
+   /// </summary>
+   [SugarColumn(ColumnName = "LOT_NO1")]
     public string LotNo1 { get; set; }
 
- /// <summary>
- ///     閲囪喘鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "LOT_NO2")]
+   /// <summary>
+   ///     閲囪喘鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "LOT_NO2")]
     public string LotNo2 { get; set; }
 
- /// <summary>
- ///     浜у搧鍨嬪彿
- /// </summary>
- [SugarColumn(ColumnName = "BOARD_STYLE")]
+   /// <summary>
+   ///     浜у搧鍨嬪彿
+   /// </summary>
+   [SugarColumn(ColumnName = "BOARD_STYLE")]
     public string BoardStyle { get; set; }
 
- /// <summary>
- ///     浠诲姟鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "WORK_NO")]
+   /// <summary>
+   ///     浠诲姟鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "WORK_NO")]
     public string WorkNo { get; set; }
 
- /// <summary>
- ///     鍒拌揣鏃堕棿
- /// </summary>
- [SugarColumn(ColumnName = "DHA018")]
+   /// <summary>
+   ///     鍒拌揣鏃堕棿
+   /// </summary>
+   [SugarColumn(ColumnName = "DHA018")]
     public string Dha018 { get; set; }
 
- /// <summary>
- ///     琛屽彿
- /// </summary>
- [SugarColumn(ColumnName = "DHB002")]
+   /// <summary>
+   ///     琛屽彿
+   /// </summary>
+   [SugarColumn(ColumnName = "DHB002")]
     public decimal? Dhb002 { get; set; }
 
- /// <summary>
- ///     鍒拌揣鍗曞彿
- /// </summary>
- [SugarColumn(ColumnName = "DHB001")]
+   /// <summary>
+   ///     鍒拌揣鍗曞彿
+   /// </summary>
+   [SugarColumn(ColumnName = "DHB001")]
     public string Dhb001 { get; set; }
 
- /// <summary>
- ///     渚涘簲鍟�
- /// </summary>
- [SugarColumn(ColumnName = "LIFNR")]
+   /// <summary>
+   ///     渚涘簲鍟�
+   /// </summary>
+   [SugarColumn(ColumnName = "LIFNR")]
     public string Lifnr { get; set; }
 
- /// <summary>
- ///     閫�鏂欐柟寮�
- /// </summary>
- [SugarColumn(ColumnName = "FMRMODE")]
+   /// <summary>
+   ///     閫�鏂欐柟寮�
+   /// </summary>
+   [SugarColumn(ColumnName = "FMRMODE")]
     public string Fmrmode { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/MessageCenter.cs b/MES.Service/Modes/MessageCenter.cs
index 0575d17..637de92 100644
--- a/MES.Service/Modes/MessageCenter.cs
+++ b/MES.Service/Modes/MessageCenter.cs
@@ -111,6 +111,13 @@
     [SugarColumn(ColumnName = "Content_Type")]
     public string? ContentType { get; set; }
 
+    //
+    /// <summary>
+    ///     鏄惁鏄秷鎭�  0涓烘帹閫佸け璐� 1涓烘秷鎭�,榛樿涓�0
+    /// </summary>
+    [SugarColumn(ColumnName = "is_message")]
+    public short? IsMessage { get; set; }
+
 
     [SugarColumn(IsIgnore = true)] public int? isShow { get; set; }
 
diff --git a/MES.Service/Modes/Purdhb.cs b/MES.Service/Modes/Purdhb.cs
index 7fff6ee..b8de0cc 100644
--- a/MES.Service/Modes/Purdhb.cs
+++ b/MES.Service/Modes/Purdhb.cs
@@ -8,267 +8,267 @@
 [SugarTable("PURDHB")]
 public class Purdhb
 {
-   /// <summary>
-   ///     鍗曞彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB001")]
+ /// <summary>
+ ///     鍗曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB001")]
     public string Dhb001 { get; set; }
 
-   /// <summary>
-   ///     搴忓彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB002")]
+ /// <summary>
+ ///     搴忓彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB002")]
     public string Dhb002 { get; set; }
 
-   /// <summary>
-   ///     鐗╂枡缂栫爜
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB003")]
+ /// <summary>
+ ///     鐗╂枡缂栫爜
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB003")]
     public string Dhb003 { get; set; }
 
-   /// <summary>
-   ///     鐗╂枡鍚嶇О
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB004")]
+ /// <summary>
+ ///     鐗╂枡鍚嶇О
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB004")]
     public string Dhb004 { get; set; }
 
-   /// <summary>
-   ///     鐗╂枡瑙勬牸
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB005")]
+ /// <summary>
+ ///     鐗╂枡瑙勬牸
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB005")]
     public string Dhb005 { get; set; }
 
-   /// <summary>
-   ///     浜よ揣鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB006")]
+ /// <summary>
+ ///     浜よ揣鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB006")]
     public decimal? Dhb006 { get; set; }
 
-   /// <summary>
-   ///     鍗曚綅
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB007")]
+ /// <summary>
+ ///     鍗曚綅
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB007")]
     public string Dhb007 { get; set; }
 
-   /// <summary>
-   ///     浠撳簱
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB008")]
+ /// <summary>
+ ///     浠撳簱
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB008")]
     public string Dhb008 { get; set; }
 
-   /// <summary>
-   ///     浠撳簱鍚嶇О
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB009")]
+ /// <summary>
+ ///     浠撳簱鍚嶇О
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB009")]
     public string Dhb009 { get; set; }
 
-   /// <summary>
-   ///     鎵瑰彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB010")]
+ /// <summary>
+ ///     鎵瑰彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB010")]
     public string Dhb010 { get; set; }
 
-   /// <summary>
-   ///     鏉ユ簮鍗曞彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB011")]
+ /// <summary>
+ ///     鏉ユ簮鍗曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB011")]
     public string Dhb011 { get; set; }
 
-   /// <summary>
-   ///     鏉ユ簮搴忓彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB012")]
+ /// <summary>
+ ///     鏉ユ簮搴忓彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB012")]
     public decimal? Dhb012 { get; set; }
 
-   /// <summary>
-   ///     娓呯偣鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB013")]
+ /// <summary>
+ ///     娓呯偣鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB013")]
     public decimal? Dhb013 { get; set; }
 
-   /// <summary>
-   ///     鍒板巶鏃ユ湡
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB014")]
+ /// <summary>
+ ///     鍒板巶鏃ユ湡
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB014")]
     public string Dhb014 { get; set; }
 
-   /// <summary>
-   ///     楠屾敹鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB015")]
+ /// <summary>
+ ///     楠屾敹鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB015")]
     public decimal? Dhb015 { get; set; }
 
-   /// <summary>
-   ///     楠岄��鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB016")]
+ /// <summary>
+ ///     楠岄��鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB016")]
     public decimal? Dhb016 { get; set; }
 
-   /// <summary>
-   ///     杩涜揣鍗曚环
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB017")]
+ /// <summary>
+ ///     杩涜揣鍗曚环
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB017")]
     public decimal? Dhb017 { get; set; }
 
-   /// <summary>
-   ///     杩涜揣閲戦
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB018")]
+ /// <summary>
+ ///     杩涜揣閲戦
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB018")]
     public decimal? Dhb018 { get; set; }
 
-   /// <summary>
-   ///     瀹㈡埛鏂欏彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB019")]
+ /// <summary>
+ ///     瀹㈡埛鏂欏彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB019")]
     public string Dhb019 { get; set; }
 
-   /// <summary>
-   ///     閮ㄩ棬缂栧彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB020")]
+ /// <summary>
+ ///     閮ㄩ棬缂栧彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB020")]
     public string Dhb020 { get; set; }
 
-   /// <summary>
-   ///     璧犲搧鏁�
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB021")]
+ /// <summary>
+ ///     璧犲搧鏁�
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB021")]
     public decimal? Dhb021 { get; set; }
 
-   /// <summary>
-   ///     鏇存柊ERP
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB022")]
+ /// <summary>
+ ///     鏇存柊ERP
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB022")]
     public string Dhb022 { get; set; }
 
-   /// <summary>
-   ///     妫�楠岀姸鎬�
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB023")]
+ /// <summary>
+ ///     妫�楠岀姸鎬�
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB023")]
     public string Dhb023 { get; set; }
 
-   /// <summary>
-   ///     澶囨敞
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB024")]
+ /// <summary>
+ ///     澶囨敞
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB024")]
     public string Dhb024 { get; set; }
 
-   /// <summary>
-   ///     瀹℃牳
-   /// </summary>
-   [SugarColumn(ColumnName = "AUDITING")]
+ /// <summary>
+ ///     瀹℃牳
+ /// </summary>
+ [SugarColumn(ColumnName = "AUDITING")]
     public decimal? Auditing { get; set; }
 
-   /// <summary>
-   ///     ERP閲囪喘鍗曞彿ID
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB026")]
+ /// <summary>
+ ///     ERP閲囪喘鍗曞彿ID
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB026")]
     public decimal? Dhb026 { get; set; }
 
-   /// <summary>
-   ///     ERP閲囪喘搴忓彿ID
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB027")]
+ /// <summary>
+ ///     ERP閲囪喘搴忓彿ID
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB027")]
     public decimal? Dhb027 { get; set; }
 
-   /// <summary>
-   ///     ERP鐗╂枡ID
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB028")]
+ /// <summary>
+ ///     ERP鐗╂枡ID
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB028")]
     public decimal? Dhb028 { get; set; }
 
-   /// <summary>
-   ///     寰呮鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB029")]
+ /// <summary>
+ ///     寰呮鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB029")]
     public decimal? Dhb029 { get; set; }
 
-   /// <summary>
-   ///     妫�楠屾棩鏈�
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB030")]
+ /// <summary>
+ ///     妫�楠屾棩鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB030")]
     public string Dhb030 { get; set; }
 
-   /// <summary>
-   ///     妫�楠屽憳
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB031")]
+ /// <summary>
+ ///     妫�楠屽憳
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB031")]
     public string Dhb031 { get; set; }
 
-   /// <summary>
-   ///     鍏ュ簱鏁伴噺
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB032")]
+ /// <summary>
+ ///     鍏ュ簱鏁伴噺
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB032")]
     public decimal? Dhb032 { get; set; }
 
-   /// <summary>
-   ///     鍏ュ簱浜�
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB033")]
+ /// <summary>
+ ///     鍏ュ簱浜�
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB033")]
     public string Dhb033 { get; set; }
 
-   /// <summary>
-   ///     鍏ュ簱鏃堕棿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB034")]
+ /// <summary>
+ ///     鍏ュ簱鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB034")]
     public string Dhb034 { get; set; }
 
-   /// <summary>
-   ///     閫�璐ф暟閲�
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB035")]
+ /// <summary>
+ ///     閫�璐ф暟閲�
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB035")]
     public decimal? Dhb035 { get; set; }
 
-   /// <summary>
-   ///     ERPID
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB037")]
+ /// <summary>
+ ///     ERPID
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB037")]
     public decimal? Dhb037 { get; set; }
 
-   /// <summary>
-   ///     閫�璐т汉
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB036")]
+ /// <summary>
+ ///     閫�璐т汉
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB036")]
     public string Dhb036 { get; set; }
 
-   /// <summary>
-   ///     ERP鍘熷垎褰曞彿
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB038")]
+ /// <summary>
+ ///     ERP鍘熷垎褰曞彿
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB038")]
     public decimal? Dhb038 { get; set; }
 
-   /// <summary>
-   ///     ERP婧愬崟鍐呯爜
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB039")]
+ /// <summary>
+ ///     ERP婧愬崟鍐呯爜
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB039")]
     public decimal? Dhb039 { get; set; }
 
-   /// <summary>
-   ///     ERP婧愬崟绫诲瀷
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB040")]
+ /// <summary>
+ ///     ERP婧愬崟绫诲瀷
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB040")]
     public decimal? Dhb040 { get; set; }
 
-   /// <summary>
-   ///     ERP璁㈠崟鍐呯爜
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB041")]
+ /// <summary>
+ ///     ERP璁㈠崟鍐呯爜
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB041")]
     public decimal? Dhb041 { get; set; }
 
-   /// <summary>
-   ///     鑷鍒�
-   /// </summary>
-   [SugarColumn(ColumnName = "ID")]
+ /// <summary>
+ ///     鑷鍒�
+ /// </summary>
+ [SugarColumn(ColumnName = "ID")]
     public decimal? Id { get; set; }
 
-   /// <summary>
-   ///     鏄惁妫�楠岋紝1涓哄凡妫�
-   /// </summary>
-   [SugarColumn(ColumnName = "ISCHECK")]
+ /// <summary>
+ ///     鏄惁妫�楠岋紝1涓哄凡妫�
+ /// </summary>
+ [SugarColumn(ColumnName = "ISCHECK")]
     public decimal? Ischeck { get; set; }
 
-   /// <summary>
-   ///     浠撳簱
-   /// </summary>
-   [SugarColumn(ColumnName = "DHB042")]
+ /// <summary>
+ ///     浠撳簱
+ /// </summary>
+ [SugarColumn(ColumnName = "DHB042")]
     public string Dhb042 { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/Purdka.cs b/MES.Service/Modes/Purdka.cs
index 1c3ea40..4330c13 100644
--- a/MES.Service/Modes/Purdka.cs
+++ b/MES.Service/Modes/Purdka.cs
@@ -8,123 +8,123 @@
 [SugarTable("PURDKA")]
 public class Purdka
 {
-   /// <summary>
-   ///     鑷鍒�
-   /// </summary>
-   [SugarColumn(ColumnName = "ID")]
+ /// <summary>
+ ///     鑷鍒�
+ /// </summary>
+ [SugarColumn(ColumnName = "ID")]
     public decimal? Id { get; set; }
 
-   /// <summary>
-   ///     鍒涘缓浜哄憳
-   /// </summary>
-   [SugarColumn(ColumnName = "CREATEUSER")]
+ /// <summary>
+ ///     鍒涘缓浜哄憳
+ /// </summary>
+ [SugarColumn(ColumnName = "CREATEUSER")]
     public string Createuser { get; set; }
 
-   /// <summary>
-   ///     鍒涘缓鏃堕棿
-   /// </summary>
-   [SugarColumn(ColumnName = "CREATETIME")]
+ /// <summary>
+ ///     鍒涘缓鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "CREATETIME")]
     public string Createtime { get; set; }
 
-   /// <summary>
-   ///     淇敼鏃堕棿
-   /// </summary>
-   [SugarColumn(ColumnName = "MODIFYTIME")]
+ /// <summary>
+ ///     淇敼鏃堕棿
+ /// </summary>
+ [SugarColumn(ColumnName = "MODIFYTIME")]
     public string Modifytime { get; set; }
 
-   /// <summary>
-   ///     淇敼浜哄憳
-   /// </summary>
-   [SugarColumn(ColumnName = "MODIFYUSER")]
+ /// <summary>
+ ///     淇敼浜哄憳
+ /// </summary>
+ [SugarColumn(ColumnName = "MODIFYUSER")]
     public string Modifyuser { get; set; }
 
-   /// <summary>
-   ///     瀹℃牳
-   /// </summary>
-   [SugarColumn(ColumnName = "AUDITING")]
+ /// <summary>
+ ///     瀹℃牳
+ /// </summary>
+ [SugarColumn(ColumnName = "AUDITING")]
     public string Auditing { get; set; }
 
-   /// <summary>
-   ///     閫�璐у崟鍙�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA001")]
+ /// <summary>
+ ///     閫�璐у崟鍙�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA001")]
     public string Dka001 { get; set; }
 
-   /// <summary>
-   ///     閫�璐х被鍨�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA002")]
+ /// <summary>
+ ///     閫�璐х被鍨�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA002")]
     public string Dka002 { get; set; }
 
-   /// <summary>
-   ///     閫�璐ф棩鏈�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA003")]
+ /// <summary>
+ ///     閫�璐ф棩鏈�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA003")]
     public string Dka003 { get; set; }
 
-   /// <summary>
-   ///     閫�璐ф椂闂�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA004")]
+ /// <summary>
+ ///     閫�璐ф椂闂�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA004")]
     public string Dka004 { get; set; }
 
-   /// <summary>
-   ///     渚涘簲鍟�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA005")]
+ /// <summary>
+ ///     渚涘簲鍟�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA005")]
     public string Dka005 { get; set; }
 
-   /// <summary>
-   ///     渚涘簲鍟嗗悕绉�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA006")]
+ /// <summary>
+ ///     渚涘簲鍟嗗悕绉�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA006")]
     public string Dka006 { get; set; }
 
-   /// <summary>
-   ///     閮ㄩ棬
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA007")]
+ /// <summary>
+ ///     閮ㄩ棬
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA007")]
     public string Dka007 { get; set; }
 
-   /// <summary>
-   ///     瀹℃牳鑰�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA008")]
+ /// <summary>
+ ///     瀹℃牳鑰�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA008")]
     public string Dka008 { get; set; }
 
-   /// <summary>
-   ///     瀹℃牳鏃ユ湡
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA009")]
+ /// <summary>
+ ///     瀹℃牳鏃ユ湡
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA009")]
     public string Dka009 { get; set; }
 
-   /// <summary>
-   ///     閫�璐х姸鎬侊紝0鎴栫┖涓烘湭閫�璐э紝1涓哄凡閫�瀹�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA010")]
+ /// <summary>
+ ///     閫�璐х姸鎬侊紝0鎴栫┖涓烘湭閫�璐э紝1涓哄凡閫�瀹�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA010")]
     public string Dka010 { get; set; }
 
-   /// <summary>
-   ///     ERPID
-   /// </summary>
-   [SugarColumn(ColumnName = "ERPID")]
+ /// <summary>
+ ///     ERPID
+ /// </summary>
+ [SugarColumn(ColumnName = "ERPID")]
     public decimal? Erpid { get; set; }
 
-   /// <summary>
-   ///     淇濈鍛樼紪鐮�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA011")]
+ /// <summary>
+ ///     淇濈鍛樼紪鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA011")]
     public string Dka011 { get; set; }
 
-   /// <summary>
-   ///     楠屾敹鍛樼紪鐮�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA012")]
+ /// <summary>
+ ///     楠屾敹鍛樼紪鐮�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA012")]
     public string Dka012 { get; set; }
 
-   /// <summary>
-   ///     鏄惁鎺ㄩ�佺孩瀛楀叆搴�1-鎺ㄩ�侊紝0-鏈帹閫�
-   /// </summary>
-   [SugarColumn(ColumnName = "DKA013")]
+ /// <summary>
+ ///     鏄惁鎺ㄩ�佺孩瀛楀叆搴�1-鎺ㄩ�侊紝0-鏈帹閫�
+ /// </summary>
+ [SugarColumn(ColumnName = "DKA013")]
     public decimal? Dka013 { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/bin/Debug/net8.0/MES.Service.dll b/MES.Service/bin/Debug/net8.0/MES.Service.dll
index 66f28a5..c32a9c1 100644
--- a/MES.Service/bin/Debug/net8.0/MES.Service.dll
+++ b/MES.Service/bin/Debug/net8.0/MES.Service.dll
Binary files differ
diff --git a/MES.Service/bin/Debug/net8.0/MES.Service.pdb b/MES.Service/bin/Debug/net8.0/MES.Service.pdb
index 264ed84..c7e576a 100644
--- a/MES.Service/bin/Debug/net8.0/MES.Service.pdb
+++ b/MES.Service/bin/Debug/net8.0/MES.Service.pdb
Binary files differ
diff --git a/MES.Service/bin/Release/net8.0/MES.Service.dll b/MES.Service/bin/Release/net8.0/MES.Service.dll
index 310bae0..ba7933a 100644
--- a/MES.Service/bin/Release/net8.0/MES.Service.dll
+++ b/MES.Service/bin/Release/net8.0/MES.Service.dll
Binary files differ
diff --git a/MES.Service/bin/Release/net8.0/MES.Service.pdb b/MES.Service/bin/Release/net8.0/MES.Service.pdb
index 003c8cc..985eedb 100644
--- a/MES.Service/bin/Release/net8.0/MES.Service.pdb
+++ b/MES.Service/bin/Release/net8.0/MES.Service.pdb
Binary files differ
diff --git a/MES.Service/service/GetErpParametersServer.cs b/MES.Service/service/GetErpParametersServer.cs
index 4ffae67..1325ded 100644
--- a/MES.Service/service/GetErpParametersServer.cs
+++ b/MES.Service/service/GetErpParametersServer.cs
@@ -54,6 +54,8 @@
                 centers.Add(messageCenter);
 
                 break;
+
+
             default:
                 throw new Exception("鏃犳硶璇嗗埆TableName绫诲瀷");
         }
diff --git a/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs b/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs
index d2b4515..48f5973 100644
--- a/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs
+++ b/MES.Service/service/Warehouse/MesInvItemInCDetailsManager.cs
@@ -1,10 +1,8 @@
 锘縰sing System.Data;
 using MES.Service.DB;
-using MES.Service.Dto.@base;
 using MES.Service.Dto.service;
 using MES.Service.Modes;
 using MES.Service.util;
-using Microsoft.Extensions.Options;
 using Newtonsoft.Json;
 using SqlSugar;
 using DbType = System.Data.DbType;
@@ -49,7 +47,7 @@
                 base.GetSingle(it => it.ItemBarcode == entity.barcode);
 
             if (mesInvItemInCDetails == null)
-                throw new Exception("鍑虹幇寮傚父"); // 鎶涘嚭寮傚父浠ヤ緵鍓嶅彴澶勭悊
+                throw new Exception("鐗╂枡鍏ュ簱鏉$爜鏄庣粏涓嶅瓨鍦�"); // 鎶涘嚭寮傚父浠ヤ緵鍓嶅彴澶勭悊
 
             var itemInId = mesInvItemInCDetails.ItemInId;
             entity.id = itemInId;
@@ -145,7 +143,7 @@
 
         return result;
     }
-    
+
     public MessageCenter MesToErpParam(WarehouseQuery query)
     {
         var erpParameters = "";
@@ -162,7 +160,7 @@
             title = "閲囪喘鍏ュ簱鍗�" + query.billNo + "鍙嶅鏍�";
         }
 
-        string ErpUrl = AppsettingsUtility.Settings.TestErpUrl;
+        var ErpUrl = AppsettingsUtility.Settings.ProductionErpUrl;
         var message = new MessageCenter
         {
             TableName = tableName,
@@ -177,6 +175,7 @@
             Method = "POST",
             Seq = 1,
             Data = erpParameters,
+            IsMessage = 0,
             ContentType = "application/x-www-form-urlencoded"
         };
         return message;
diff --git a/MES.Service/service/Warehouse/MesInvItemOutCDetailsManager.cs b/MES.Service/service/Warehouse/MesInvItemOutCDetailsManager.cs
new file mode 100644
index 0000000..4d40c63
--- /dev/null
+++ b/MES.Service/service/Warehouse/MesInvItemOutCDetailsManager.cs
@@ -0,0 +1,78 @@
+锘縰sing MES.Service.DB;
+using MES.Service.Modes;
+using SqlSugar;
+
+namespace MES.Service.service.Warehouse;
+
+public class MesInvItemOutCDetailsManager : Repository<MesInvItemOutCDetails>
+{
+    //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
+
+    //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvItemOutCDetailsManager.cs
+
+
+    #region 鏁欏鏂规硶
+
+    /// <summary>
+    ///     浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉�
+    /// </summary>
+    public void Study()
+    {
+        /*********鏌ヨ*********/
+
+        var data1 = base.GetById(1); //鏍规嵁ID鏌ヨ
+        var data2 = base.GetList(); //鏌ヨ鎵�鏈�
+        var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ  
+        //var data4 = base.GetSingle(it => 1 == 1);//鏍规嵁鏉′欢鏌ヨ涓�鏉�,濡傛灉瓒呰繃涓�鏉′細鎶ラ敊
+
+        var p = new PageModel { PageIndex = 1, PageSize = 2 }; // 鍒嗛〉鏌ヨ
+        var data5 = base.GetPageList(it => 1 == 1, p);
+        Console.Write(p.TotalCount); //杩斿洖鎬绘暟
+
+        var data6 =
+            base.GetPageList(it => 1 == 1, p,
+                it => SqlFunc.GetRandom()); // 鍒嗛〉鏌ヨ鍔犳帓搴�
+        Console.Write(p.TotalCount); //杩斿洖鎬绘暟
+
+        var conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴�
+        conModels.Add(new ConditionalModel
+        {
+            FieldName = typeof(MesInvItemOutCDetails).GetProperties()[0].Name,
+            ConditionalType = ConditionalType.Equal, FieldValue = "1"
+        }); //id=1
+        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
+
+        AsQueryable().Where(x => 1 == 1)
+            .ToList(); //鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘
+
+
+        /*********鎻掑叆*********/
+        var insertData = new MesInvItemOutCDetails(); //娴嬭瘯鍙傛暟
+        var insertArray = new[] { insertData };
+        base.Insert(insertData); //鎻掑叆
+        base.InsertRange(insertArray); //鎵归噺鎻掑叆
+        var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒�
+        AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆
+
+
+        /*********鏇存柊*********/
+        var updateData = new MesInvItemOutCDetails(); //娴嬭瘯鍙傛暟
+        var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟
+        base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊
+        base.UpdateRange(updateArray); //鎵归噺鏇存柊
+        //base.Update(it => new MesInvItemOutCDetails() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1
+        AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏�
+
+
+        /*********鍒犻櫎*********/
+        var deldata = new MesInvItemOutCDetails(); //娴嬭瘯鍙傛暟
+        base.Delete(deldata); //鏍规嵁瀹炰綋鍒犻櫎
+        base.DeleteById(1); //鏍规嵁涓婚敭鍒犻櫎
+        base.DeleteById(new[] { 1, 2 }); //鏍规嵁涓婚敭鏁扮粍鍒犻櫎
+        base.Delete(it => 1 == 2); //鏍规嵁鏉′欢鍒犻櫎
+        AsDeleteable().Where(it => 1 == 2)
+            .ExecuteCommand(); //杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣�
+    }
+
+    #endregion
+}
\ No newline at end of file
diff --git a/MES.Service/service/Warehouse/MesInvItemOutsManager.cs b/MES.Service/service/Warehouse/MesInvItemOutsManager.cs
index db0ca42..d120804 100644
--- a/MES.Service/service/Warehouse/MesInvItemOutsManager.cs
+++ b/MES.Service/service/Warehouse/MesInvItemOutsManager.cs
@@ -1,7 +1,10 @@
-锘縰sing MES.Service.DB;
+锘縰sing System.Data;
+using MES.Service.DB;
 using MES.Service.Dto.service;
 using MES.Service.Modes;
+using MES.Service.util;
 using SqlSugar;
+using DbType = System.Data.DbType;
 
 namespace MES.Service.service.Warehouse;
 
@@ -10,16 +13,190 @@
     //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
     //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvItemOutsManager.cs
 
+    public bool ScanCode(WarehouseQuery query)
+    {
+        decimal billTypeId = 200;
+        decimal transactionNo = 203;
+
+        var count = Db.Queryable<MesInvItemOutCDetails>()
+            .Where(a =>
+                a.ItemBarcode == query.barcode && a.TaskNo == query.billNo)
+            .Count();
+
+        if (count > 0) throw new Exception("鏉$爜閲嶅鎵弿锛岃鏍稿锛�");
+
+        //楠岃瘉鏉$爜
+        var mesInvItemStocks = Db.Queryable<MesInvItemStocks>()
+            .Where(a => a.ItemBarcode == query.barcode
+                        && a.Quantity > 0).Single();
+
+        if (mesInvItemStocks == null)
+            throw new Exception(query.barcode + "搴撳瓨涓棤姝ゆ潯鐮侊紝璇锋牳瀵癸紒");
+
+        //楠岃瘉鍑哄簱鍗昺es_inv_item_outs
+        var mesInvItemOuts = Db.Queryable<MesInvItemOuts>()
+            .Where(d => d.ItemOutNo == query.billNo
+                        && d.BillTypeId == billTypeId &&
+                        d.TransactionNo == transactionNo).Single();
+
+        //鍑哄簱鍗曠殑鏍¢獙
+        if (mesInvItemOuts == null)
+            throw new Exception("鍑哄簱鍗�  " + query.billNo + " 涓嶅瓨鍦紝璇风‘璁わ紒");
+
+        //鏈鏍哥殑涓嶅厑璁哥户缁�
+        if (mesInvItemOuts.Status == null || mesInvItemOuts.Status == 0)
+            throw new Exception("鍑哄簱鍗�  " + query.billNo + "鏈鏍�");
+
+        //宸叉帹閫佺殑涓嶅厑璁哥户缁�
+        if (mesInvItemOuts.Nflag == 1)
+            throw new Exception("鍑哄簱鍗�  " + query.billNo + "宸茬粡鎺ㄩ�侊紝鏃犳硶閲嶅鎺ㄩ��");
+
+        var depotCodeOut = mesInvItemOuts.DepotCode ?? "0";
+        var depotsCodeStock = mesInvItemStocks.DepotsCode ?? "0";
+
+        if (!depotCodeOut.Equals(depotsCodeStock))
+        {
+            // 鍒涘缓閿欒娑堟伅
+            var errorMessage =
+                $"002[鏉$爜浠撳簱{depotsCodeStock}涓庣敵璇蜂粨搴搟depotCodeOut}涓嶄竴鑷达紝璇锋牳瀵癸紒";
+
+            throw new Exception(errorMessage);
+        }
+
+        var StocksNum = mesInvItemStocks.Quantity;
+
+        var sql = string.Format(
+            @"select nvl(SUM(S.QUANTITY),0) - nvl(SUM(S.TL_QTY),0)
+                  from MES_INV_ITEM_OUT_ITEMS S
+                  LEFT JOIN mes_inv_item_outs d
+                    ON S.ITEM_OUT_ID = D.ID
+                 where d.item_out_no = '{0}'
+                   and d.bill_type_id = {1}
+                   and d.transaction_no = {2}
+                   AND S.item_no = '{3}'
+                   and nvl(d.status, 0) = 1
+                   and nvl(d.nflag, 0) = 0", query.billNo, billTypeId,
+            transactionNo,
+            mesInvItemStocks.ItemNo);
+
+        var cqty = Db.Ado.SqlQuerySingle<decimal>(sql);
+
+        if (cqty == null)
+            throw new Exception("鐗╂枡" + mesInvItemStocks.ItemNo +
+                                "鐨勮緟鍔╁睘鎬т笌鏉$爜涓嶄竴鑷达紒璇锋鏌�");
+
+        if (cqty < StocksNum) throw new Exception("璇风‘璁ゅ彂鏂欐暟閲�");
+
+        //璋冪敤瀛樺偍杩囩▼
+        try
+        {
+            // 瀹氫箟杈撳嚭鍙傛暟
+            var outputResult = new SugarParameter("C_RESULT", null,
+                DbType.Int32, ParameterDirection.Output,
+                4000);
+
+            var outputMessage = new SugarParameter("MSG", null, DbType.String,
+                ParameterDirection.Output, 4000);
+
+            // 瀹氫箟杈撳叆鍙傛暟
+            var parameters = new List<SugarParameter>
+            {
+                new("p_item_barcode", query.barcode,
+                    DbType.String, ParameterDirection.Input),
+                new("p_bill_no", query.billNo, DbType.String,
+                    ParameterDirection.Input),
+                new("pi_factory", "1000", DbType.String,
+                    ParameterDirection.Input),
+                new("pi_company", "1000", DbType.String,
+                    ParameterDirection.Input),
+                new("c_user", query.userName, DbType.String,
+                    ParameterDirection.Input),
+                outputResult,
+                outputMessage
+            };
+
+            // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼
+            Db.Ado.ExecuteCommand(
+                "BEGIN MES_CG_UPDATE_BARCODES(:p_item_barcode, :p_bill_no, :pi_factory, :pi_company, :c_user, :C_RESULT, :MSG); END;",
+                parameters.ToArray());
+
+            // 鑾峰彇杈撳嚭鍙傛暟鐨勫��
+            var resultValue = outputResult.Value?.ToString();
+            var messageValue = outputMessage.Value?.ToString();
+
+            if ("1".Equals(resultValue)) throw new Exception("鏉$爜鎵i櫎澶辫触");
+        }
+        catch (Exception ex)
+        {
+            throw new Exception(ex.Message);
+        }
+
+        // 鍙橀噺鐢ㄤ簬淇濆瓨鏌ヨ缁撴灉
+        decimal? C_SQ_QTY = 0;
+        decimal? C_OK_QTY = 0;
+        var c_result = string.Empty;
+        var C_COUNT = 0;
+
+
+        sql = string.Format(@"
+                SELECT SUM(C.QUANTITY) AS SQ_QTY, SUM(D.QUANTITY_OK) AS OK_QTY
+                FROM MES_INV_ITEM_OUT_ITEMS C
+                LEFT JOIN (
+                    SELECT ITEM_OUT_ID, ITEM_NO, PBILL_NO, RK_NO, SUM(QUANTITY) AS QUANTITY_OK
+                    FROM MES_INV_ITEM_OUT_C_DETAILS
+                    GROUP BY ITEM_OUT_ID, ITEM_NO, PBILL_NO, RK_NO
+                ) D
+                ON D.ITEM_OUT_ID = C.ITEM_OUT_ID
+                AND D.ITEM_NO = C.ITEM_NO
+                AND D.RK_NO = C.RK_NO
+                AND NVL(C.PBILL_NO, '0') = NVL(D.PBILL_NO, '0')
+                WHERE C.ITEM_OUT_ID = {0}", mesInvItemOuts.Id);
+
+        var queryResult = Db.Ado.SqlQuerySingle<dynamic>(sql);
+
+        C_SQ_QTY = queryResult?.SQ_QTY;
+        C_OK_QTY = queryResult?.OK_QTY;
+
+        // 鍒ゆ柇閫昏緫
+        if (C_SQ_QTY < C_OK_QTY) throw new Exception("鎵弿鏁伴噺瓒呰繃鐢宠鏁伴噺,璇烽噸鏂版壂鎻忥紒");
+
+        if (C_SQ_QTY == C_OK_QTY) return true;
+
+        return false;
+    }
+
+
     public bool Audit(WarehouseQuery query)
     {
         // 瀹℃牳鍓嶆牎楠�
         Validate(query);
+        query.status = 1;
         //瀹℃牳
+        return Update(query);
+    }
+
+    public bool SetNFlag(WarehouseQuery query)
+    {
         return Db.Updateable<MesInvItemOuts>()
-            .SetColumns(s => s.Status == 1)
-            .SetColumns(s => s.CheckUser == query.userName)
+            .SetColumns(s => s.Nflag == 1)
+            .Where(s => s.ItemOutNo == query.billNo)
+            .ExecuteCommand() > 0;
+    }
+
+    public bool DeApprove(WarehouseQuery query)
+    {
+        query.date = null;
+        query.status = 0;
+        return Update(query);
+    }
+
+    private bool Update(WarehouseQuery entity)
+    {
+        return Db.Updateable<MesInvItemOuts>()
+            .SetColumns(s => s.Status == entity.status)
+            .SetColumns(s => s.CheckUser == entity.userName)
             .SetColumns(s => s.CheckDate == DateTime.Now)
-            .Where(s => s.Id == query.id).ExecuteCommand() > 0;
+            .Where(s => s.Id == entity.id).ExecuteCommand() > 0;
     }
 
 
@@ -218,6 +395,8 @@
                         a.CheckUser == u3.Fcode))
                 .WhereIF(query.id > 0,
                     (a, e, i, u1, u3) => a.Id == query.id)
+                .WhereIF(!string.IsNullOrEmpty(query.billNo),
+                    (a, e, i, u1, u3) => a.ItemOutNo == query.billNo)
                 .Select((a, e, i, u1, u3) => new MesInvItemOuts
                 {
                     Id = a.Id,
@@ -240,6 +419,35 @@
                     Status = a.Status,
                     ItemOutNo = a.ItemOutNo
                 }).ToPageList(query.PageIndex, query.Limit);
+    }
+
+    public List<MesInvItemOutCDetails> GetScanBarcode(WarehouseQuery query)
+    {
+        return Db.Queryable<MesInvItemOutCDetails, MesInvItemBarcodes, MesItems,
+                MesDepots>(
+                (b, bar, c, d) => new
+                    JoinQueryInfos(
+                        JoinType.Left, b.ItemBarcode == bar.ItemBarcode,
+                        JoinType.Left, b.ItemNo == c.ItemNo &&
+                                       b.Company == c.Company &&
+                                       b.Factory == c.Factory,
+                        JoinType.Left, b.DepotCode == d.DepotCode &&
+                                       b.Company == d.Company &&
+                                       b.Factory == d.Factory
+                    ))
+            .Where((b, bar, c, d) => b.ItemOutId == query.id)
+            .Select((b, bar, c, d) => new MesInvItemOutCDetails
+            {
+                Quantity = b.Quantity,
+                DepotSectionCode = b.DepotSectionCode,
+                DepotCode = b.DepotCode,
+                ItemNo = b.ItemNo,
+                ItemBarcode = b.ItemBarcode,
+                ItemName = c.ItemName,
+                ItemModel = c.ItemModel,
+                DepotName = d.DepotName,
+                Unit = bar.Unit
+            }).ToList();
     }
 
     //MESInvItemOutItems
@@ -280,8 +488,11 @@
         return results;
     }
 
-    public List<InventoryItem> GetSumItem(WarehouseQuery query)
+    public OutItemDto GetSumItem(WarehouseQuery query)
     {
+        var mesInvItemOuts = base.GetSingle(it => it.ItemOutNo == query.billNo);
+        if (mesInvItemOuts == null) throw new Exception("閲囪喘閫�璐у崟涓嶅瓨鍦�");
+
         var sql = string.Format(@"SELECT DEPOT ,ITEM_NO,ITEM_MODEL,
            ITEM_NAME,QTY FROM (SELECT SUM(QTY) QTY, DEPOT, ITEM_NO, ITEM_MODEL, ITEM_NAME
               FROM (SELECT f_get_section_code2('1000', '1000', b.ITEM_NO,'{0}') DEPOT,
@@ -300,11 +511,25 @@
                        AND nvl(b.QUANTITY, 0) - nvl(D.QUANTITY_OK, 0) > 0
                      ORDER BY f_get_section_code2('1000','1000',b.ITEM_NO,'{0}'),
                               A.ITEM_MODEL,A.ITEM_NAME)
-             GROUP BY DEPOT, ITEM_NO, ITEM_MODEL, ITEM_NAME)", query.DepotCode,
-            query.id);
+             GROUP BY DEPOT, ITEM_NO, ITEM_MODEL, ITEM_NAME)",
+            mesInvItemOuts.DepotCode,
+            mesInvItemOuts.Id);
 
         var results = Db.Ado.SqlQuery<InventoryItem>(sql);
-        return results;
+
+        var mesInvItemStocks = Db.Queryable<MesInvItemStocks>()
+            .Where(a => a.ItemBarcode == query.barcode).Single();
+
+        var dto = new OutItemDto();
+        dto.SumItem = results;
+
+        if (mesInvItemStocks != null)
+        {
+            dto.ItemNo = mesInvItemStocks.ItemNo;
+            dto.Quantity = mesInvItemStocks.Quantity;
+        }
+
+        return dto;
     }
 
     public List<InventoryItemDetail> SelectMaterials(WarehouseQuery query)
@@ -369,4 +594,112 @@
 
         return "NTL" + date + number;
     }
+
+    public MessageCenter SaveMessageCenter(WarehouseQuery query)
+    {
+        var message = MesToErpParam(query);
+
+        var executeReturnIdentity =
+            Db.Insertable(message).ExecuteReturnIdentity();
+        if (executeReturnIdentity > 0)
+        {
+            message.Id = executeReturnIdentity;
+            message.Pid = executeReturnIdentity;
+            return message;
+        }
+
+        throw new Exception("鑾峰彇鏁版嵁澶辫触");
+    }
+
+
+    public MessageCenter MesToErpParam(WarehouseQuery query)
+    {
+        var erpParameters = "";
+        var title = "";
+        var tableName = "MES_INV_ITEM_OUTS_" + query.Type;
+        if ("A".Equals(query.Type))
+        {
+            erpParameters = GetErpParameters(query.billNo);
+            title = "閲囪喘閫�璐у崟" + query.billNo + "瀹℃牳";
+        }
+        else if ("B".Equals(query.Type))
+        {
+            erpParameters = GetDeApprovePam(query.id);
+            title = "閲囪喘閫�璐у崟" + query.billNo + "鍙嶅鏍�";
+        }
+
+        var ErpUrl = AppsettingsUtility.Settings.ProductionErpUrl;
+        var message = new MessageCenter
+        {
+            TableName = tableName,
+            Url = ErpUrl,
+            Status = 1,
+            CreateBy = query.userName,
+            Route = query.billNo,
+            Title = title,
+            PageName = "Warehouse/PurchaseReturn/Add?id=" + query.id +
+                       "&itemOutNo=" + query.billNo,
+            CreateDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+            Method = "POST",
+            Seq = 1,
+            Data = erpParameters,
+            IsMessage = 0,
+            ContentType = "application/x-www-form-urlencoded"
+        };
+        return message;
+    }
+
+    public bool DeApproveBefore(WarehouseQuery query)
+    {
+        var mesInvItemOuts = base.GetById(query.id);
+        if (mesInvItemOuts == null) throw new Exception("鍑哄簱鍗曚笉瀛樺湪");
+
+        var nflag = mesInvItemOuts.Nflag ?? 0;
+
+        if (nflag != 0) return true;
+
+        return false;
+    }
+
+    private string GetDeApprovePam(decimal? id)
+    {
+        var sid = (int)id;
+        var encodedUrl = "taskname=CGTL&mesid=" + sid +
+                         "&optype=delete&datajson={}";
+
+        return encodedUrl;
+    }
+
+    private string GetErpParameters(string? billNo)
+    {
+        var invItemIns = Db.Queryable<MesInvItemOuts>()
+            .Single(x => x.ItemOutNo == billNo);
+
+        //璋冪敤function鍑芥暟
+        var sql =
+            $"SELECT F_GENERATE_DATA_INSERTED('{billNo}') FROM DUAL;";
+        var jsonString = Db.Ado.SqlQuerySingle<string>(sql);
+
+        var encodedUrl = "taskname=CGTL&mesid=" + invItemIns.Id +
+                         "&optype=create&datajson=" + jsonString;
+
+        return encodedUrl;
+    }
+
+    public List<string> GetItemOutNo()
+    {
+        var data5 = Db.Queryable<MesInvItemOuts>().Where(it =>
+                it.BillTypeId == 200 && it.TransactionNo == 203 &&
+                it.Status == 1)
+            .OrderBy(it => it.Id, OrderByType.Desc)
+            .ToPageList(1, 20);
+
+        var ItemOutNos = data5.FindAll(a => a.Nflag == null || a.Nflag == 0)
+            .Select(s => s.ItemOutNo).ToList();
+        //
+        // var ItemOutNos = data5
+        //     .Select(s => s.ItemOutNo).ToList();
+
+        return ItemOutNos;
+    }
 }
\ No newline at end of file
diff --git a/MES.Service/service/Warehouse/MesInvItemStocksManager.cs b/MES.Service/service/Warehouse/MesInvItemStocksManager.cs
new file mode 100644
index 0000000..57a4b41
--- /dev/null
+++ b/MES.Service/service/Warehouse/MesInvItemStocksManager.cs
@@ -0,0 +1,78 @@
+锘縰sing MES.Service.DB;
+using MES.Service.Modes;
+using SqlSugar;
+
+namespace MES.Service.service.Warehouse;
+
+public class MesInvItemStocksManager : Repository<MesInvItemStocks>
+{
+    //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
+
+    //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 MesInvItemStocksManager.cs
+
+
+    #region 鏁欏鏂规硶
+
+    /// <summary>
+    ///     浠撳偍鏂规硶婊¤冻涓嶄簡澶嶆潅涓氬姟闇�姹傦紝涓氬姟浠g爜璇峰湪杩欓噷闈㈠畾涔夋柟娉�
+    /// </summary>
+    public void Study()
+    {
+        /*********鏌ヨ*********/
+
+        var data1 = base.GetById(1); //鏍规嵁ID鏌ヨ
+        var data2 = base.GetList(); //鏌ヨ鎵�鏈�
+        var data3 = base.GetList(it => 1 == 1); //鏍规嵁鏉′欢鏌ヨ  
+        //var data4 = base.GetSingle(it => 1 == 1);//鏍规嵁鏉′欢鏌ヨ涓�鏉�,濡傛灉瓒呰繃涓�鏉′細鎶ラ敊
+
+        var p = new PageModel { PageIndex = 1, PageSize = 2 }; // 鍒嗛〉鏌ヨ
+        var data5 = base.GetPageList(it => 1 == 1, p);
+        Console.Write(p.TotalCount); //杩斿洖鎬绘暟
+
+        var data6 =
+            base.GetPageList(it => 1 == 1, p,
+                it => SqlFunc.GetRandom()); // 鍒嗛〉鏌ヨ鍔犳帓搴�
+        Console.Write(p.TotalCount); //杩斿洖鎬绘暟
+
+        var conModels = new List<IConditionalModel>(); //缁勮鏉′欢鏌ヨ浣滀负鏉′欢瀹炵幇 鍒嗛〉鏌ヨ鍔犳帓搴�
+        conModels.Add(new ConditionalModel
+        {
+            FieldName = typeof(MesInvItemStocks).GetProperties()[0].Name,
+            ConditionalType = ConditionalType.Equal, FieldValue = "1"
+        }); //id=1
+        var data7 = base.GetPageList(conModels, p, it => SqlFunc.GetRandom());
+
+        AsQueryable().Where(x => 1 == 1)
+            .ToList(); //鏀寔浜嗚浆鎹㈡垚queryable,鎴戜滑鍙互鐢╭ueryable瀹炵幇澶嶆潅鍔熻兘
+
+
+        /*********鎻掑叆*********/
+        var insertData = new MesInvItemStocks(); //娴嬭瘯鍙傛暟
+        var insertArray = new[] { insertData };
+        base.Insert(insertData); //鎻掑叆
+        base.InsertRange(insertArray); //鎵归噺鎻掑叆
+        var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒�
+        AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆
+
+
+        /*********鏇存柊*********/
+        var updateData = new MesInvItemStocks(); //娴嬭瘯鍙傛暟
+        var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟
+        base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊
+        base.UpdateRange(updateArray); //鎵归噺鏇存柊
+        //base.Update(it => new MesInvItemStocks() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1
+        AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏�
+
+
+        /*********鍒犻櫎*********/
+        var deldata = new MesInvItemStocks(); //娴嬭瘯鍙傛暟
+        base.Delete(deldata); //鏍规嵁瀹炰綋鍒犻櫎
+        base.DeleteById(1); //鏍规嵁涓婚敭鍒犻櫎
+        base.DeleteById(new[] { 1, 2 }); //鏍规嵁涓婚敭鏁扮粍鍒犻櫎
+        base.Delete(it => 1 == 2); //鏍规嵁鏉′欢鍒犻櫎
+        AsDeleteable().Where(it => 1 == 2)
+            .ExecuteCommand(); //杞垚Deleteable瀹炵幇澶嶆潅鐨勬搷浣�
+    }
+
+    #endregion
+}
\ No newline at end of file
diff --git a/MES.Service/service/WomcaaManager.cs b/MES.Service/service/WomcaaManager.cs
index 4203eb1..f6f8b8d 100644
--- a/MES.Service/service/WomcaaManager.cs
+++ b/MES.Service/service/WomcaaManager.cs
@@ -2,8 +2,6 @@
 using MES.Service.Dto.webApi;
 using MES.Service.Modes;
 using SqlSugar;
-using System;
-using System.Security.Cryptography;
 
 namespace MES.Service.service;
 
@@ -76,8 +74,7 @@
 
     private Womcaa MapErpCAAtoWomcaa(ErpCAA dto)
     {
-
-       var entity = new Womcaa
+        var entity = new Womcaa
         {
             Erpid = Convert.ToDecimal(dto.Id),
             Caa001 = dto.FBillNo,
@@ -161,7 +158,8 @@
                 Eid = Convert.ToDecimal(dto.PID)
             };
 
-            var entity = Db.Queryable<Womcab>().Where(s => s.Erpid == womcab.Erpid).Single();
+            var entity = Db.Queryable<Womcab>()
+                .Where(s => s.Erpid == womcab.Erpid).Single();
             if (entity != null) womcab.Id = entity.Id;
 
             womcabList.Add(womcab);
diff --git a/MES.Service/util/AppsettingsUtility.cs b/MES.Service/util/AppsettingsUtility.cs
index f769cc0..eabb6b4 100644
--- a/MES.Service/util/AppsettingsUtility.cs
+++ b/MES.Service/util/AppsettingsUtility.cs
@@ -5,20 +5,15 @@
 
 public class AppsettingsUtility
 {
-    private static AppSettings _appSettings;
-
-    public static AppSettings Settings
-    {
-        get { return _appSettings; }
-    }
+    public static AppSettings Settings { get; private set; }
 
     public void Initial(IConfiguration configuration)
     {
-        AppSettings myOwn = new AppSettings();
+        var myOwn = new AppSettings();
         //娉ㄦ剰锛氬彲浠ヤ娇鐢ㄥ啋鍙锋潵鑾峰彇鍐呭眰鐨勯厤缃」
         myOwn.TestErpUrl = configuration["AppSettings:TestErpUrl"];
         myOwn.ProductionErpUrl = configuration["AppSettings:ProductionErpUrl"];
         myOwn.DataBaseConn = configuration["AppSettings:DataBaseConn"];
-        _appSettings = myOwn;
+        Settings = myOwn;
     }
 }
\ No newline at end of file
diff --git a/MESApplication/Controllers/Warehouse/MesInvItemOutCDetailsController.cs b/MESApplication/Controllers/Warehouse/MesInvItemOutCDetailsController.cs
new file mode 100644
index 0000000..91c79f4
--- /dev/null
+++ b/MESApplication/Controllers/Warehouse/MesInvItemOutCDetailsController.cs
@@ -0,0 +1,163 @@
+锘縰sing System.Dynamic;
+using MES.Service.Modes;
+using MES.Service.service.Warehouse;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+
+namespace MESApplication.Controllers.Warehouse;
+
+[ApiController]
+[Route("api/[controller]")]
+public class MesInvItemOutCDetailsController : ControllerBase
+{
+    private readonly MesInvItemOutCDetailsManager m = new();
+
+
+    /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
+
+    /// <summary>
+    ///     鑾峰彇鎵�鏈�
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("GetList")]
+    public ResponseResult GetList()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.GetList();
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+
+    /// <summary>
+    ///     鏍规嵁涓婚敭鑾峰彇
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("GetById")]
+    public ResponseResult GetById(int id)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.GetById(id);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     鏍规嵁涓婚敭鍒犻櫎
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("DeleteByIds")]
+    public ResponseResult DeleteByIds([FromBody] object[] ids)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.DeleteByIds(ids);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     娣诲姞
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("Insert")]
+    public ResponseResult Add([FromBody] MesInvItemOutCDetails data)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.Insert(data);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     娣诲姞杩斿洖鑷
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("InsertReturnIdentity")]
+    public ResponseResult InsertReturnIdentity(
+        [FromBody] MesInvItemOutCDetails data)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.InsertReturnIdentity(data);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     淇敼
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("Update")]
+    public ResponseResult Update([FromBody] MesInvItemOutCDetails data)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.Update(data);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+}
\ No newline at end of file
diff --git a/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs b/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs
index 75de3a1..908f78a 100644
--- a/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs
+++ b/MESApplication/Controllers/Warehouse/MesInvItemOutsController.cs
@@ -13,6 +13,89 @@
 {
     private readonly MesInvItemOutsManager m = new();
 
+
+    [HttpPost("ScanCode")]
+    public ResponseResult ScanCode(WarehouseQuery entity)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.ScanCode(entity);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    [HttpPost("GetScanBarcode")]
+    public ResponseResult GetScanBarcode(WarehouseQuery entity)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.GetScanBarcode(entity);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    [HttpPost("SaveMessageCenter")]
+    public ResponseResult SaveMessageCenter(WarehouseQuery entity)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.SaveMessageCenter(entity);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    //GetItemOutNo
+    [HttpPost("GetItemOutNo")]
+    public ResponseResult GetItemOutNo()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.GetItemOutNo();
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+
     //Audit
     [HttpPost("Audit")]
     public ResponseResult Audit(WarehouseQuery query)
@@ -34,6 +117,68 @@
         }
     }
 
+    //SetNFlag
+    [HttpPost("SetNFlag")]
+    public ResponseResult SetNFlag(WarehouseQuery query)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.SetNFlag(query);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    //DeApproveBefore
+    [HttpPost("DeApproveBefore")]
+    public ResponseResult DeApproveBefore(WarehouseQuery entity)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.DeApproveBefore(entity);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    [HttpPost("DeApprove")]
+    public ResponseResult DeApprove(WarehouseQuery entity)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.DeApprove(entity);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
     //SaveCombination
     [HttpPost("SaveCombination")]
     public ResponseResult SaveCombination(OutItemDto dto)
diff --git a/MESApplication/Controllers/Warehouse/MesInvItemStocksController.cs b/MESApplication/Controllers/Warehouse/MesInvItemStocksController.cs
new file mode 100644
index 0000000..43605be
--- /dev/null
+++ b/MESApplication/Controllers/Warehouse/MesInvItemStocksController.cs
@@ -0,0 +1,162 @@
+锘縰sing System.Dynamic;
+using MES.Service.Modes;
+using MES.Service.service.Warehouse;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+
+namespace MESApplication.Controllers.Warehouse;
+
+[ApiController]
+[Route("api/[controller]")]
+public class MesInvItemStocksController : ControllerBase
+{
+    private readonly MesInvItemStocksManager m = new();
+
+
+    /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
+
+    /// <summary>
+    ///     鑾峰彇鎵�鏈�
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("GetList")]
+    public ResponseResult GetList()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.GetList();
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+
+    /// <summary>
+    ///     鏍规嵁涓婚敭鑾峰彇
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("GetById")]
+    public ResponseResult GetById(int id)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.GetById(id);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     鏍规嵁涓婚敭鍒犻櫎
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("DeleteByIds")]
+    public ResponseResult DeleteByIds([FromBody] object[] ids)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.DeleteByIds(ids);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     娣诲姞
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("Insert")]
+    public ResponseResult Add([FromBody] MesInvItemStocks data)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.Insert(data);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     娣诲姞杩斿洖鑷
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("InsertReturnIdentity")]
+    public ResponseResult InsertReturnIdentity([FromBody] MesInvItemStocks data)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.InsertReturnIdentity(data);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    ///     淇敼
+    /// </summary>
+    /// <returns></returns>
+    [HttpPost("Update")]
+    public ResponseResult Update([FromBody] MesInvItemStocks data)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.Update(data);
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+}
\ No newline at end of file
diff --git a/MESApplication/bin/Debug/net8.0/MES.Service.dll b/MESApplication/bin/Debug/net8.0/MES.Service.dll
index 66f28a5..c32a9c1 100644
--- a/MESApplication/bin/Debug/net8.0/MES.Service.dll
+++ b/MESApplication/bin/Debug/net8.0/MES.Service.dll
Binary files differ
diff --git a/MESApplication/bin/Debug/net8.0/MES.Service.pdb b/MESApplication/bin/Debug/net8.0/MES.Service.pdb
index 264ed84..c7e576a 100644
--- a/MESApplication/bin/Debug/net8.0/MES.Service.pdb
+++ b/MESApplication/bin/Debug/net8.0/MES.Service.pdb
Binary files differ
diff --git a/MESApplication/bin/Debug/net8.0/MESApplication.dll b/MESApplication/bin/Debug/net8.0/MESApplication.dll
index 175b841..618fa3c 100644
--- a/MESApplication/bin/Debug/net8.0/MESApplication.dll
+++ b/MESApplication/bin/Debug/net8.0/MESApplication.dll
Binary files differ
diff --git a/MESApplication/bin/Debug/net8.0/MESApplication.exe b/MESApplication/bin/Debug/net8.0/MESApplication.exe
index d1f929e..90db1ca 100644
--- a/MESApplication/bin/Debug/net8.0/MESApplication.exe
+++ b/MESApplication/bin/Debug/net8.0/MESApplication.exe
Binary files differ
diff --git a/MESApplication/bin/Debug/net8.0/MESApplication.pdb b/MESApplication/bin/Debug/net8.0/MESApplication.pdb
index 7b3eb85..63e5821 100644
--- a/MESApplication/bin/Debug/net8.0/MESApplication.pdb
+++ b/MESApplication/bin/Debug/net8.0/MESApplication.pdb
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/MES.Service.dll b/MESApplication/bin/Release/net8.0/MES.Service.dll
index 310bae0..ba7933a 100644
--- a/MESApplication/bin/Release/net8.0/MES.Service.dll
+++ b/MESApplication/bin/Release/net8.0/MES.Service.dll
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/MES.Service.pdb b/MESApplication/bin/Release/net8.0/MES.Service.pdb
index 003c8cc..985eedb 100644
--- a/MESApplication/bin/Release/net8.0/MES.Service.pdb
+++ b/MESApplication/bin/Release/net8.0/MES.Service.pdb
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/MESApplication.dll b/MESApplication/bin/Release/net8.0/MESApplication.dll
index d28e8f6..69e430c 100644
--- a/MESApplication/bin/Release/net8.0/MESApplication.dll
+++ b/MESApplication/bin/Release/net8.0/MESApplication.dll
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/MESApplication.exe b/MESApplication/bin/Release/net8.0/MESApplication.exe
index 681a2b8..90db1ca 100644
--- a/MESApplication/bin/Release/net8.0/MESApplication.exe
+++ b/MESApplication/bin/Release/net8.0/MESApplication.exe
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/MESApplication.pdb b/MESApplication/bin/Release/net8.0/MESApplication.pdb
index 48c28f8..73b37b4 100644
--- a/MESApplication/bin/Release/net8.0/MESApplication.pdb
+++ b/MESApplication/bin/Release/net8.0/MESApplication.pdb
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/appsettings.json b/MESApplication/bin/Release/net8.0/appsettings.json
index 93b64d3..41c8e8b 100644
--- a/MESApplication/bin/Release/net8.0/appsettings.json
+++ b/MESApplication/bin/Release/net8.0/appsettings.json
@@ -6,5 +6,10 @@
       "Microsoft.Hosting.Lifetime": "Information"
     }
   },
-  "AllowedHosts": "*"
+  "AllowedHosts": "*",
+  "AppSettings": {
+    "TestErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfo",
+    "ProductionErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfoFormal",
+    "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.251)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = sg_prd; Password=sgprd"
+  }
 }
diff --git a/MESApplication/bin/Release/net8.0/publish/MES.Service.dll b/MESApplication/bin/Release/net8.0/publish/MES.Service.dll
index 310bae0..ba7933a 100644
--- a/MESApplication/bin/Release/net8.0/publish/MES.Service.dll
+++ b/MESApplication/bin/Release/net8.0/publish/MES.Service.dll
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/publish/MES.Service.pdb b/MESApplication/bin/Release/net8.0/publish/MES.Service.pdb
index 003c8cc..985eedb 100644
--- a/MESApplication/bin/Release/net8.0/publish/MES.Service.pdb
+++ b/MESApplication/bin/Release/net8.0/publish/MES.Service.pdb
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/publish/MESApplication.dll b/MESApplication/bin/Release/net8.0/publish/MESApplication.dll
index d28e8f6..69e430c 100644
--- a/MESApplication/bin/Release/net8.0/publish/MESApplication.dll
+++ b/MESApplication/bin/Release/net8.0/publish/MESApplication.dll
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/publish/MESApplication.exe b/MESApplication/bin/Release/net8.0/publish/MESApplication.exe
index 681a2b8..90db1ca 100644
--- a/MESApplication/bin/Release/net8.0/publish/MESApplication.exe
+++ b/MESApplication/bin/Release/net8.0/publish/MESApplication.exe
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/publish/MESApplication.pdb b/MESApplication/bin/Release/net8.0/publish/MESApplication.pdb
index 48c28f8..73b37b4 100644
--- a/MESApplication/bin/Release/net8.0/publish/MESApplication.pdb
+++ b/MESApplication/bin/Release/net8.0/publish/MESApplication.pdb
Binary files differ
diff --git a/MESApplication/bin/Release/net8.0/publish/appsettings.json b/MESApplication/bin/Release/net8.0/publish/appsettings.json
index 93b64d3..41c8e8b 100644
--- a/MESApplication/bin/Release/net8.0/publish/appsettings.json
+++ b/MESApplication/bin/Release/net8.0/publish/appsettings.json
@@ -6,5 +6,10 @@
       "Microsoft.Hosting.Lifetime": "Information"
     }
   },
-  "AllowedHosts": "*"
+  "AllowedHosts": "*",
+  "AppSettings": {
+    "TestErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfo",
+    "ProductionErpUrl": "http://192.168.11.120:8098/WebService1.asmx/mesToErpinfoFormal",
+    "DataBaseConn": "Data Source = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.11.251)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORCL))); Persist Security Info=True;User ID = sg_prd; Password=sgprd"
+  }
 }

--
Gitblit v1.9.3