From 29de86cadafc88d13b51ab4d07aa2d12de6dcab0 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期四, 18 七月 2024 10:15:54 +0800
Subject: [PATCH] 更新erp生产订单接口

---
 MESApplication/bin/Release/net8.0/MESApplication.exe                      |    0 
 MES.Service/service/BasicData/MesStaffManager.cs                          |    6 
 MESApplication/bin/Release/net8.0/publish/MESApplication.pdb              |    0 
 MES.Service/Dto/webApi/ErpCAB.cs                                          |   24 
 MES.Service/service/BasicData/MesRohInManager.cs                          |  440 ++++++-------
 MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs |    3 
 MESApplication/bin/Debug/net8.0/MES.Service.pdb                           |    0 
 MESApplication/Controllers/BasicData/ShipmentDetailController.cs          |    2 
 MESApplication/Controllers/BasicData/SalesOrderDetailController.cs        |    2 
 MESApplication/bin/Release/net8.0/publish/MESApplication.dll              |    0 
 MES.Service/Modes/SalesOrder.cs                                           |    3 
 MES.Service/service/WomcaaManager.cs                                      |  156 +++++
 MESApplication/bin/Debug/net8.0/MES.Service.dll                           |    0 
 MESApplication/bin/Debug/net8.0/MESApplication.pdb                        |    0 
 MESApplication/bin/Release/net8.0/MES.Service.dll                         |    0 
 MESApplication/bin/Release/net8.0/MESApplication.dll                      |    0 
 MES.Service/Modes/Womcaa.cs                                               |  414 ++++---------
 MESApplication/bin/Release/net8.0/publish/MES.Service.pdb                 |    0 
 MESApplication/bin/Release/net8.0/MES.Service.pdb                         |    0 
 MESApplication/bin/Release/net8.0/publish/MESApplication.exe              |    0 
 MESApplication/Controllers/BasicData/ShipmentNoticeController.cs          |    2 
 MESApplication/bin/Release/net8.0/MESApplication.pdb                      |    0 
 MES.Service/Dto/webApi/ErpWOM.cs                                          |    7 
 MES.Service/bin/Debug/net8.0/MES.Service.pdb                              |    0 
 MESApplication/bin/Release/net8.0/publish/MES.Service.dll                 |    0 
 MES.Service/Dto/webApi/ErpCAA.cs                                          |   39 +
 MESApplication/bin/Debug/net8.0/MESApplication.dll                        |    0 
 MES.Service/bin/Debug/net8.0/MES.Service.dll                              |    0 
 MES.Service/service/BasicData/ShipmentNoticeManager.cs                    |   49 
 MESApplication/Controllers/WomcaaController.cs                            |  257 ++++++++
 MESApplication/Controllers/WomcabController.cs                            |  162 +++++
 MES.Service/Modes/Womcab.cs                                               |  155 +++++
 MESApplication/bin/Debug/net8.0/MESApplication.exe                        |    0 
 MES.Service/bin/Release/net8.0/MES.Service.dll                            |    0 
 MES.Service/service/WomcabManager.cs                                      |   78 ++
 MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs       |    2 
 MES.Service/bin/Release/net8.0/MES.Service.pdb                            |    0 
 37 files changed, 1,251 insertions(+), 550 deletions(-)

diff --git a/MES.Service/Dto/webApi/ErpCAA.cs b/MES.Service/Dto/webApi/ErpCAA.cs
new file mode 100644
index 0000000..4c02d46
--- /dev/null
+++ b/MES.Service/Dto/webApi/ErpCAA.cs
@@ -0,0 +1,39 @@
+锘縩amespace MES.Service.Dto.webApi;
+
+public class ErpCAA
+{
+    public string Id { get; set; }
+    public string? Type { get; set; }
+    public string? FBillNo { get; set; }
+    public string? FWorkShopID0 { get; set; }
+    public string? FRoutingId { get; set; }
+    public string? FREMWorkShopId { get; set; }
+    public string? FStockId { get; set; }
+    public string? FDate { get; set; }
+    public string? FBillType { get; set; }
+    public string? FStatus { get; set; }
+    public string? FMaterialId { get; set; }
+    public string? FUnitId { get; set; }
+    public string? FQty { get; set; }
+    public string? FWorkGroupId { get; set; }
+    public string? FPlannerID { get; set; }
+    public string? FPlanStartDate { get; set; }
+    public string? FPlanFinishDate { get; set; }
+    public string? FConveyDate { get; set; }
+    public string? FStockInLimitH { get; set; }
+    public string? FStockInLimitL { get; set; }
+    public string? FMTONO { get; set; }
+    public string? FLot { get; set; }
+    public string? FBomId { get; set; }
+    public string? F_UNW_Text_xsddh { get; set; }
+    public string? FCreateType { get; set; }
+    public string? FSrcBillType { get; set; }
+    public string? FSrcBillNo { get; set; }
+    public string? FSrcBillEntrySeq { get; set; }
+    public string? FSaleOrderNo { get; set; }
+    public string? FSaleOrderEntrySeq { get; set; }
+    public string? FForceCloserId { get; set; }
+    public string? FCloseType { get; set; }
+    public string? FSrcSplitBillNo { get; set; }
+    public string? FMemoItem { get; set; }
+}
\ No newline at end of file
diff --git a/MES.Service/Dto/webApi/ErpCAB.cs b/MES.Service/Dto/webApi/ErpCAB.cs
new file mode 100644
index 0000000..c052532
--- /dev/null
+++ b/MES.Service/Dto/webApi/ErpCAB.cs
@@ -0,0 +1,24 @@
+锘縩amespace MES.Service.Dto.webApi;
+
+public class ErpCAB
+{
+    public string? FBillNo { get; set; }
+    public string? FMaterialID2 { get; set; }
+    public string? FNeedQty2 { get; set; }
+    public string? FPickedQty { get; set; }
+    public string? FPositionNO { get; set; }
+    public string? FOwnerID { get; set; }
+    public string? FMTONO { get; set; }
+    public string? FLot { get; set; }
+    public string? FStockID { get; set; }
+    public string? FIssueType { get; set; }
+    public string? F_UNW_Text_tpgy { get; set; }
+    public string? FUnitID { get; set; }
+    public string? FSupplyType { get; set; }
+    public string? FStdQty { get; set; }
+    public string? FIsKeyItem { get; set; }
+    public string? FNumerator { get; set; }
+    public string? FDenominator { get; set; }
+    public string ID { get; set; }
+    public string PID { get; set; }
+}
\ No newline at end of file
diff --git a/MES.Service/Dto/webApi/ErpWOM.cs b/MES.Service/Dto/webApi/ErpWOM.cs
new file mode 100644
index 0000000..db82269
--- /dev/null
+++ b/MES.Service/Dto/webApi/ErpWOM.cs
@@ -0,0 +1,7 @@
+锘縩amespace MES.Service.Dto.webApi;
+
+public class ErpWOM
+{
+    public ErpCAA ErpCaa { get; set; }
+    public List<ErpCAB> ErpCabs { get; set; }
+}
\ No newline at end of file
diff --git a/MES.Service/Modes/SalesOrder.cs b/MES.Service/Modes/SalesOrder.cs
index 76d12b9..304b4ec 100644
--- a/MES.Service/Modes/SalesOrder.cs
+++ b/MES.Service/Modes/SalesOrder.cs
@@ -11,7 +11,8 @@
     /// <summary>
     ///     SEQ_sales搴忓垪
     /// </summary>
-    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales", IsPrimaryKey = true)]
+    [SugarColumn(ColumnName = "ID", OracleSequenceName = "SEQ_sales",
+        IsPrimaryKey = true)]
     public decimal Id { get; set; }
 
     /// <summary>
diff --git a/MES.Service/Modes/Womcaa.cs b/MES.Service/Modes/Womcaa.cs
index 678e40a..e6e2a2d 100644
--- a/MES.Service/Modes/Womcaa.cs
+++ b/MES.Service/Modes/Womcaa.cs
@@ -1,436 +1,276 @@
-using System.ComponentModel.DataAnnotations;
-using System.ComponentModel.DataAnnotations.Schema;
-using SqlSugar;
+锘縰sing SqlSugar;
 
 namespace MES.Service.Modes;
 
 /// <summary>
 ///     宸ュ崟琛�
 /// </summary>
-[Table("WOMCAA")]
-[SugarTable("WOMCAA")] //鐢ㄤ簬SqlSugar
+[SugarTable("WOMCAA")]
 public class Womcaa
 {
     /// <summary>
+    ///     鑷鍒�  SEQ_AOI
+    /// </summary>
+    [SugarColumn(ColumnName = "ID", IsPrimaryKey = true,
+        OracleSequenceName = "SEQ_AOI")]
+    public decimal? Id { get; set; }
+
+    /// <summary>
+    ///     ERPID
+    /// </summary>
+    [SugarColumn(ColumnName = "ERPID")]
+    public decimal? Erpid { get; set; }
+
+    /// <summary>
     ///     鍗曞彿
     /// </summary>
-    [Column("CAA001")]
-    [SugarColumn(ColumnName = "CAA001")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鍗曞彿闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa001 { get; set; }
+    [SugarColumn(ColumnName = "CAA001")]
+    public string Caa001 { get; set; }
 
     /// <summary>
-    ///     ERP宸ュ崟鎵规
+    ///     鍗曟嵁绫诲瀷 1銆佺洿鎺ュ叆搴�-鏅�氱敓浜� SCDD03_SYS2銆佺洿鎺ュ叆搴�-杩斿伐鐢熶骇 SCDD04_SYS3銆佸伐搴忔眹鎶�-鏅�氱敓浜�
+    ///     SCDD01_SYS4銆佸伐搴忔眹鎶�-杩斿伐鐢熶骇 SCDD02_SYS
     /// </summary>
-    [Column("CAA002")]
-    [SugarColumn(ColumnName = "CAA002")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "ERP宸ュ崟鎵规闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa002 { get; set; }
-
-    /// <summary>
-    ///     瀹㈡埛缂栧彿
-    /// </summary>
-    [Column("CAA003")]
-    [SugarColumn(ColumnName = "CAA003")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "瀹㈡埛缂栧彿闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa003 { get; set; }
-
-    /// <summary>
-    ///     鍗曟嵁绫诲瀷
-    /// </summary>
-    [Column("CAA004")]
-    [SugarColumn(ColumnName = "CAA004")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鍗曟嵁绫诲瀷闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa004 { get; set; }
+    [SugarColumn(ColumnName = "CAA004")]
+    public string Caa004 { get; set; }
 
     /// <summary>
     ///     寮�鍗曟棩鏈�
     /// </summary>
-    [Column("CAA005")]
-    [SugarColumn(ColumnName = "CAA005")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "寮�鍗曟棩鏈熼暱搴︿笉鑳借秴鍑�50")]
-    public string? Caa005 { get; set; }
+    [SugarColumn(ColumnName = "CAA005")]
+    public string Caa005 { get; set; }
 
     /// <summary>
     ///     浜у搧缂栫爜
     /// </summary>
-    [Column("CAA006")]
-    [SugarColumn(ColumnName = "CAA006")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "浜у搧缂栫爜闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa006 { get; set; }
-
-    /// <summary>
-    ///     浜у搧鍚嶇О
-    /// </summary>
-    [Column("CAA007")]
-    [SugarColumn(ColumnName = "CAA007")] //鐢ㄤ簬SqlSugar
-    [StringLength(100, ErrorMessage = "浜у搧鍚嶇О闀垮害涓嶈兘瓒呭嚭100")]
-    public string? Caa007 { get; set; }
-
-    /// <summary>
-    ///     浜у搧瑙勬牸
-    /// </summary>
-    [Column("CAA008")]
-    [SugarColumn(ColumnName = "CAA008")] //鐢ㄤ簬SqlSugar
-    [StringLength(200, ErrorMessage = "浜у搧瑙勬牸闀垮害涓嶈兘瓒呭嚭200")]
-    public string? Caa008 { get; set; }
+    [SugarColumn(ColumnName = "CAA006")]
+    public string Caa006 { get; set; }
 
     /// <summary>
     ///     鍗曚綅
     /// </summary>
-    [Column("CAA009")]
-    [SugarColumn(ColumnName = "CAA009")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鍗曚綅闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa009 { get; set; }
+    [SugarColumn(ColumnName = "CAA009")]
+    public string Caa009 { get; set; }
 
     /// <summary>
     ///     棰勮寮�宸ユ椂闂�
     /// </summary>
-    [Column("CAA010")]
-    [SugarColumn(ColumnName = "CAA010")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "棰勮寮�宸ユ椂闂撮暱搴︿笉鑳借秴鍑�50")]
-    public string? Caa010 { get; set; }
+    [SugarColumn(ColumnName = "CAA010")]
+    public string Caa010 { get; set; }
 
     /// <summary>
     ///     棰勮瀹屽伐鏃堕棿
     /// </summary>
-    [Column("CAA011")]
-    [SugarColumn(ColumnName = "CAA011")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "棰勮瀹屽伐鏃堕棿闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa011 { get; set; }
+    [SugarColumn(ColumnName = "CAA011")]
+    public string Caa011 { get; set; }
 
     /// <summary>
     ///     鏁伴噺
     /// </summary>
-    [Column("CAA012")]
-    [SugarColumn(ColumnName = "CAA012")] //鐢ㄤ簬SqlSugar
+    [SugarColumn(ColumnName = "CAA012")]
     public decimal? Caa012 { get; set; }
 
     /// <summary>
     ///     BOM鐗堟
     /// </summary>
-    [Column("CAA013")]
-    [SugarColumn(ColumnName = "CAA013")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "BOM鐗堟闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa013 { get; set; }
-
-    /// <summary>
-    ///     瀹㈡埛璁㈠崟鍙�
-    /// </summary>
-    [Column("CAA014")]
-    [SugarColumn(ColumnName = "CAA014")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "瀹㈡埛璁㈠崟鍙烽暱搴︿笉鑳借秴鍑�50")]
-    public string? Caa014 { get; set; }
+    [SugarColumn(ColumnName = "CAA013")]
+    public string Caa013 { get; set; }
 
     /// <summary>
     ///     閿�鍞鍗曞彿
     /// </summary>
-    [Column("CAA015")]
-    [SugarColumn(ColumnName = "CAA015")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "閿�鍞鍗曞彿闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa015 { get; set; }
+    [SugarColumn(ColumnName = "CAA015")]
+    public string Caa015 { get; set; }
 
     /// <summary>
     ///     澶囨敞
     /// </summary>
-    [Column("CAA016")]
-    [SugarColumn(ColumnName = "CAA016")] //鐢ㄤ簬SqlSugar
-    [StringLength(200, ErrorMessage = "澶囨敞闀垮害涓嶈兘瓒呭嚭200")]
-    public string? Caa016 { get; set; }
+    [SugarColumn(ColumnName = "CAA016")]
+    public string Caa016 { get; set; }
 
     /// <summary>
     ///     宸叉帓鏁伴噺
     /// </summary>
-    [Column("CAA017")]
-    [SugarColumn(ColumnName = "CAA017")] //鐢ㄤ簬SqlSugar
+    [SugarColumn(ColumnName = "CAA017")]
     public decimal? Caa017 { get; set; }
 
     /// <summary>
     ///     ERP婧愬崟ID
     /// </summary>
-    [Column("CAA018")]
-    [SugarColumn(ColumnName = "CAA018")] //鐢ㄤ簬SqlSugar
+    [SugarColumn(ColumnName = "CAA018")]
     public decimal? Caa018 { get; set; }
 
     /// <summary>
     ///     ERP婧愬崟琛屽彿
     /// </summary>
-    [Column("CAA019")]
-    [SugarColumn(ColumnName = "CAA019")] //鐢ㄤ簬SqlSugar
+    [SugarColumn(ColumnName = "CAA019")]
     public decimal? Caa019 { get; set; }
 
     /// <summary>
     ///     ERP婧愬崟鍗曞彿(浠诲姟鍗曞彿)
     /// </summary>
-    [Column("CAA020")]
-    [SugarColumn(ColumnName = "CAA020")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "ERP婧愬崟鍗曞彿(浠诲姟鍗曞彿)闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa020 { get; set; }
+    [SugarColumn(ColumnName = "CAA020")]
+    public string Caa020 { get; set; }
 
     /// <summary>
     ///     宸ヤ綔杞﹂棿
     /// </summary>
-    [Column("CAA021")]
-    [SugarColumn(ColumnName = "CAA021")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "宸ヤ綔杞﹂棿闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa021 { get; set; }
+    [SugarColumn(ColumnName = "CAA021")]
+    public string Caa021 { get; set; }
 
     /// <summary>
-    ///     鏈帓鏁伴噺
+    ///     瀹℃牳鐮�
     /// </summary>
-    [Column("CAA022")]
-    [SugarColumn(ColumnName = "CAA022")] //鐢ㄤ簬SqlSugar
-    public decimal? Caa022 { get; set; }
-
-    /// <summary>
-    ///     鐘舵�� 瀹屽伐锛屾湭瀹屽伐
-    /// </summary>
-    [Column("CAA023")]
-    [SugarColumn(ColumnName = "CAA023")] //鐢ㄤ簬SqlSugar
-    [StringLength(20, ErrorMessage = "鐘舵�� 瀹屽伐锛屾湭瀹屽伐闀垮害涓嶈兘瓒呭嚭20")]
-    public string? Caa023 { get; set; }
-
-    /// <summary>
-    ///     宸插叆搴撴暟閲�
-    /// </summary>
-    [Column("CAA024")]
-    [SugarColumn(ColumnName = "CAA024")] //鐢ㄤ簬SqlSugar
-    public decimal? Caa024 { get; set; }
-
-    /// <summary>
-    ///     缁撴鏍囪瘑
-    /// </summary>
-    [Column("CAA025")]
-    [SugarColumn(ColumnName = "CAA025")] //鐢ㄤ簬SqlSugar
-    public decimal? Caa025 { get; set; }
-
-    /// <summary>
-    ///     澶辫触鍘熷洜
-    /// </summary>
-    [Column("CAA026")]
-    [SugarColumn(ColumnName = "CAA026")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "澶辫触鍘熷洜闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Caa026 { get; set; }
-
-    /// <summary>
-    ///     缁撴鏃堕棿
-    /// </summary>
-    [Column("CAA027")]
-    [SugarColumn(ColumnName = "CAA027")] //鐢ㄤ簬SqlSugar
-    public DateTime? Caa027 { get; set; }
-
-    /// <summary>
-    ///     渚涘簲鍟嗙紪鐮�
-    /// </summary>
-    [Column("CAA028")]
-    [SugarColumn(ColumnName = "CAA028")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "渚涘簲鍟嗙紪鐮侀暱搴︿笉鑳借秴鍑�50")]
-    public string? Caa028 { get; set; }
+    [SugarColumn(ColumnName = "FSTATUS")]
+    public decimal? Fstatus { get; set; }
 
     /// <summary>
     ///     瀹℃牳鏃ユ湡
     /// </summary>
-    [Column("CHECK_DATE")]
-    [SugarColumn(ColumnName = "CHECK_DATE")] //鐢ㄤ簬SqlSugar
+    [SugarColumn(ColumnName = "CHECK_DATE")]
     public DateTime? CheckDate { get; set; }
 
     /// <summary>
     ///     瀹℃牳浜�
     /// </summary>
-    [Column("CHECK_USER")]
-    [SugarColumn(ColumnName = "CHECK_USER")] //鐢ㄤ簬SqlSugar
-    [StringLength(20, ErrorMessage = "瀹℃牳浜洪暱搴︿笉鑳借秴鍑�20")]
-    public string? CheckUser { get; set; }
+    [SugarColumn(ColumnName = "CHECK_USER")]
+    public string CheckUser { get; set; }
 
     /// <summary>
-    ///     ERPID
+    ///     鏈帓鏁伴噺
     /// </summary>
-    [Column("ERPID")]
-    [SugarColumn(ColumnName = "ERPID")] //鐢ㄤ簬SqlSugar
-    public decimal? Erpid { get; set; }
+    [SugarColumn(ColumnName = "CAA022")]
+    public decimal? Caa022 { get; set; }
 
     /// <summary>
-    ///     瀹℃牳鐮�
+    ///     鐘舵�� 瀹屽伐锛屾湭瀹屽伐
     /// </summary>
-    [Column("FSTATUS")]
-    [SugarColumn(ColumnName = "FSTATUS")] //鐢ㄤ簬SqlSugar
-    public decimal? Fstatus { get; set; }
+    [SugarColumn(ColumnName = "CAA023")]
+    public string Caa023 { get; set; }
 
     /// <summary>
-    ///     鑷鍒�
+    ///     宸插叆搴撴暟閲�
     /// </summary>
-    [Column("ID")]
-    [SugarColumn(ColumnName = "ID")] //鐢ㄤ簬SqlSugar
-    public decimal? Id { get; set; }
-
-    /// <summary>
-    ///     鏇存柊鏃ユ湡
-    /// </summary>
-    [Column("LASTTIME")]
-    [SugarColumn(ColumnName = "LASTTIME")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鏇存柊鏃ユ湡闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Lasttime { get; set; }
-
-    /// <summary>
-    ///     妯″叿鍙�
-    /// </summary>
-    [Column("MOLD_NO")]
-    [SugarColumn(ColumnName = "MOLD_NO")] //鐢ㄤ簬SqlSugar
-    [StringLength(200, ErrorMessage = "妯″叿鍙烽暱搴︿笉鑳借秴鍑�200")]
-    public string? MoldNo { get; set; }
+    [SugarColumn(ColumnName = "CAA024")]
+    public decimal? Caa024 { get; set; }
 
     /// <summary>
     ///     宸ヨ壓璺嚎
     /// </summary>
-    [Column("TLA021")]
-    [SugarColumn(ColumnName = "TLA021")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "宸ヨ壓璺嚎闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla021 { get; set; }
+    [SugarColumn(ColumnName = "ROUTING_ID")]
+    public string RoutingId { get; set; }
 
     /// <summary>
-    ///     闇�姹傚崟鎹彿鐮�
+    ///     浜х嚎
     /// </summary>
-    [Column("TLA022")]
-    [SugarColumn(ColumnName = "TLA022")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "闇�姹傚崟鎹彿鐮侀暱搴︿笉鑳借秴鍑�50")]
-    public string? Tla022 { get; set; }
+    [SugarColumn(ColumnName = "WORK_SHOP_ID")]
+    public string WorkShopId { get; set; }
 
     /// <summary>
-    ///     琛屽彿
+    ///     浠撳簱
     /// </summary>
-    [Column("TLA023")]
-    [SugarColumn(ColumnName = "TLA023")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "琛屽彿闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla023 { get; set; }
+    [SugarColumn(ColumnName = "DEPOT_CODE")]
+    public string DepotCode { get; set; }
 
     /// <summary>
-    ///     鐢熶骇璁㈠崟鍙风爜
+    ///     鍗曟嵁鏃ユ湡
     /// </summary>
-    [Column("TLA024")]
-    [SugarColumn(ColumnName = "TLA024")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鐢熶骇璁㈠崟鍙风爜闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla024 { get; set; }
+    [SugarColumn(ColumnName = "CREATE_DATE")]
+    public string CreateDate { get; set; }
 
     /// <summary>
-    ///     鐢熶骇璁㈠崟鍙风爜
+    ///     璁″垝缁�
     /// </summary>
-    [Column("TLA025")]
-    [SugarColumn(ColumnName = "TLA025")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鐢熶骇璁㈠崟鍙风爜闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla025 { get; set; }
+    [SugarColumn(ColumnName = "WORK_GROUP_ID")]
+    public string WorkGroupId { get; set; }
 
     /// <summary>
+    ///     璁″垝鍛�
     /// </summary>
-    [Column("TLA025A")]
-    [SugarColumn(ColumnName = "TLA025A")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "Tla025a闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla025a { get; set; }
+    [SugarColumn(ColumnName = "PLAN_ID")]
+    public string PlanId { get; set; }
 
     /// <summary>
-    ///     鍏ュ簱璐т富绫诲瀷
+    ///     鍏ュ簱涓婇檺
     /// </summary>
-    [Column("TLA026")]
-    [SugarColumn(ColumnName = "TLA026")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鍏ュ簱璐т富绫诲瀷闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla026 { get; set; }
+    [SugarColumn(ColumnName = "STOCK_INLIMITH")]
+    public string StockInlimith { get; set; }
 
     /// <summary>
-    ///     鍏ュ簱璐т富
+    ///     鍏ュ簱涓嬮檺
     /// </summary>
-    [Column("TLA027")]
-    [SugarColumn(ColumnName = "TLA027")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鍏ュ簱璐т富闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla027 { get; set; }
-
-    /// <summary>
-    ///     鍏ュ簱缁勭粐
-    /// </summary>
-    [Column("TLA028")]
-    [SugarColumn(ColumnName = "TLA028")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "鍏ュ簱缁勭粐闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla028 { get; set; }
-
-    /// <summary>
-    /// </summary>
-    [Column("TLA029")]
-    [SugarColumn(ColumnName = "TLA029")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "Tla029闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla029 { get; set; }
-
-    /// <summary>
-    /// </summary>
-    [Column("TLA030")]
-    [SugarColumn(ColumnName = "TLA030")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "Tla030闀垮害涓嶈兘瓒呭嚭50")]
-    public string? Tla030 { get; set; }
+    [SugarColumn(ColumnName = "STOCK_INLIMITL")]
+    public string StockInlimitl { get; set; }
 
     /// <summary>
     ///     璁″垝璺熻釜鍙�
     /// </summary>
-    [Column("TLA031")]
-    [SugarColumn(ColumnName = "TLA031")] //鐢ㄤ簬SqlSugar
-    [StringLength(50, ErrorMessage = "璁″垝璺熻釜鍙烽暱搴︿笉鑳借秴鍑�50")]
-    public string? Tla031 { get; set; }
+    [SugarColumn(ColumnName = "MTONO")]
+    public string Mtono { get; set; }
 
     /// <summary>
-    ///     宸ュ崟鐘舵��
+    ///     鎵瑰彿
     /// </summary>
-    [Column("TLA032")]
-    [SugarColumn(ColumnName = "TLA032")] //鐢ㄤ簬SqlSugar
-    [StringLength(10, ErrorMessage = "宸ュ崟鐘舵�侀暱搴︿笉鑳借秴鍑�10")]
-    public string? Tla032 { get; set; }
+    [SugarColumn(ColumnName = "LOT")]
+    public string Lot { get; set; }
 
     /// <summary>
-    ///     鏁寸伅鍨嬪彿
+    ///     閿�鍞鍗曡鍙�
     /// </summary>
-    [Column("TLA033")]
-    [SugarColumn(ColumnName = "TLA033")] //鐢ㄤ簬SqlSugar
-    [StringLength(500, ErrorMessage = "鏁寸伅鍨嬪彿闀垮害涓嶈兘瓒呭嚭500")]
-    public string? Tla033 { get; set; }
+    [SugarColumn(ColumnName = "CAA015_HEAD")]
+    public string Caa015Head { get; set; }
 
     /// <summary>
-    ///     宸ュ簭璁″垝鍙�
+    ///     鐢熸垚鏂瑰紡
     /// </summary>
-    [Column("TLA034")]
-    [SugarColumn(ColumnName = "TLA034")] //鐢ㄤ簬SqlSugar
-    [StringLength(100, ErrorMessage = "宸ュ簭璁″垝鍙烽暱搴︿笉鑳借秴鍑�100")]
-    public string? Tla034 { get; set; }
+    [SugarColumn(ColumnName = "CREATE_TYPE")]
+    public string CreateType { get; set; }
 
     /// <summary>
-    ///     瀹㈡埛
+    ///     婧愬崟绫诲瀷
     /// </summary>
-    [Column("TLA035")]
-    [SugarColumn(ColumnName = "TLA035")] //鐢ㄤ簬SqlSugar
-    [StringLength(100, ErrorMessage = "瀹㈡埛闀垮害涓嶈兘瓒呭嚭100")]
-    public string? Tla035 { get; set; }
+    [SugarColumn(ColumnName = "SRC_BILL_TYPE")]
+    public string SrcBillType { get; set; }
 
     /// <summary>
-    ///     鍗曟嵁绫诲瀷
+    ///     婧愬崟缂栧彿
     /// </summary>
-    [Column("TLA036")]
-    [SugarColumn(ColumnName = "TLA036")] //鐢ㄤ簬SqlSugar
-    [StringLength(100, ErrorMessage = "鍗曟嵁绫诲瀷闀垮害涓嶈兘瓒呭嚭100")]
-    public string? Tla036 { get; set; }
+    [SugarColumn(ColumnName = "SRC_BILL_NO")]
+    public string SrcBillNo { get; set; }
 
     /// <summary>
-    ///     鏇存柊娆℃暟
+    ///     婧愬崟鍒嗗綍琛屽彿
     /// </summary>
-    [Column("UPCX")]
-    [SugarColumn(ColumnName = "UPCX")] //鐢ㄤ簬SqlSugar
-    public decimal? Upcx { get; set; }
+    [SugarColumn(ColumnName = "SRC_BILLENTRYSEQ")]
+    public string SrcBillentryseq { get; set; }
 
     /// <summary>
-    ///     鏇存柊鏍囪瘑
+    ///     闇�姹傚崟鎹彿
     /// </summary>
-    [Column("UPFLAG")]
-    [SugarColumn(ColumnName = "UPFLAG")] //鐢ㄤ簬SqlSugar
-    [StringLength(2, ErrorMessage = "鏇存柊鏍囪瘑闀垮害涓嶈兘瓒呭嚭2")]
-    public string? Upflag { get; set; }
+    [SugarColumn(ColumnName = "SALE_ORDER_NO")]
+    public string SaleOrderNo { get; set; }
 
     /// <summary>
-    ///     鐗堟湰
+    ///     闇�姹傚崟鎹鍙�
     /// </summary>
-    [Column("VNO")]
-    [SugarColumn(ColumnName = "VNO")] //鐢ㄤ簬SqlSugar
-    public decimal? Vno { get; set; }
+    [SugarColumn(ColumnName = "SALE_ORDER_ENTRYSEQ")]
+    public string SaleOrderEntryseq { get; set; }
+
+    /// <summary>
+    ///     缁撴浜�
+    /// </summary>
+    [SugarColumn(ColumnName = "FORCE_CLOSERID")]
+    public string ForceCloserid { get; set; }
+
+    /// <summary>
+    ///     缁撴绫诲瀷
+    /// </summary>
+    [SugarColumn(ColumnName = "CLOSE_TYPE")]
+    public string CloseType { get; set; }
+
+    /// <summary>
+    ///     婧愭媶鍒嗚鍗曠紪鍙�
+    /// </summary>
+    [SugarColumn(ColumnName = "SRC_SPLIT_BILLNO")]
+    public string SrcSplitBillno { get; set; }
 }
\ No newline at end of file
diff --git a/MES.Service/Modes/Womcab.cs b/MES.Service/Modes/Womcab.cs
new file mode 100644
index 0000000..ed90591
--- /dev/null
+++ b/MES.Service/Modes/Womcab.cs
@@ -0,0 +1,155 @@
+锘縰sing SqlSugar;
+
+namespace MES.Service.Modes;
+
+/// <summary>
+///     宸ュ崟瀛愯〃
+/// </summary>
+[SugarTable("WOMCAB")]
+public class Womcab
+{
+    /// <summary>
+    ///     鑷鍒�
+    /// </summary>
+    [SugarColumn(ColumnName = "ID", IsPrimaryKey = true,
+        OracleSequenceName = "SEQ_AOI")]
+    public decimal? Id { get; set; }
+
+    /// <summary>
+    ///     ERPID
+    /// </summary>
+    [SugarColumn(ColumnName = "ERPID")]
+    public decimal? Erpid { get; set; }
+
+    /// <summary>
+    ///     鍗曞彿
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB001")]
+    public string Cab001 { get; set; }
+
+    /// <summary>
+    ///     搴忓彿
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB002")]
+    public string Cab002 { get; set; }
+
+    /// <summary>
+    ///     鏉愭枡缂栫爜
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB003")]
+    public string Cab003 { get; set; }
+
+    /// <summary>
+    ///     闇�棰嗙敤閲�
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB006")]
+    public decimal? Cab006 { get; set; }
+
+    /// <summary>
+    ///     宸查鐢ㄩ噺
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB007")]
+    public decimal? Cab007 { get; set; }
+
+    /// <summary>
+    ///     宸ヨ壓
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB008")]
+    public string Cab008 { get; set; }
+
+    /// <summary>
+    ///     鍗曚綅
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB009")]
+    public string Cab009 { get; set; }
+
+    /// <summary>
+    ///     缁勬垚鐢ㄩ噺
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB012")]
+    public decimal? Cab012 { get; set; }
+
+    /// <summary>
+    ///     鏄惁鏇挎枡
+    /// </summary>
+    [SugarColumn(ColumnName = "CAB014")]
+    public string Cab014 { get; set; }
+
+    /// <summary>
+    ///     PID
+    /// </summary>
+    [SugarColumn(ColumnName = "PID")]
+    public decimal? Pid { get; set; }
+
+    /// <summary>
+    ///     ERP澶碔D
+    /// </summary>
+    [SugarColumn(ColumnName = "EID")]
+    public decimal? Eid { get; set; }
+
+    /// <summary>
+    ///     浣嶇疆鍙�
+    /// </summary>
+    [SugarColumn(ColumnName = "POSITION_NO")]
+    public string PositionNo { get; set; }
+
+    /// <summary>
+    ///     鍙戞枡缁勭粐
+    /// </summary>
+    [SugarColumn(ColumnName = "ISSUING_ORGANIZATION")]
+    public string IssuingOrganization { get; set; }
+
+    /// <summary>
+    ///     渚涘簲缁勭粐
+    /// </summary>
+    [SugarColumn(ColumnName = "SUPPLY_ORGANIZATION")]
+    public string SupplyOrganization { get; set; }
+
+    /// <summary>
+    ///     璐т富
+    /// </summary>
+    [SugarColumn(ColumnName = "OWNER_ID")]
+    public string OwnerId { get; set; }
+
+    /// <summary>
+    ///     璁″垝璺熻釜鍙�
+    /// </summary>
+    [SugarColumn(ColumnName = "MTONO")]
+    public string Mtono { get; set; }
+
+    /// <summary>
+    ///     鎵瑰彿
+    /// </summary>
+    [SugarColumn(ColumnName = "LOT")]
+    public string Lot { get; set; }
+
+    /// <summary>
+    ///     浠撳簱
+    /// </summary>
+    [SugarColumn(ColumnName = "DEPOT_CODE")]
+    public string DepotCode { get; set; }
+
+    /// <summary>
+    ///     鍙戞枡鏂瑰紡
+    /// </summary>
+    [SugarColumn(ColumnName = "ISSUE_TYPE")]
+    public string IssueType { get; set; }
+
+    /// <summary>
+    ///     渚涘簲绫诲瀷
+    /// </summary>
+    [SugarColumn(ColumnName = "SUPPLY_TYPE")]
+    public string SupplyType { get; set; }
+
+    /// <summary>
+    ///     鍒嗗瓙
+    /// </summary>
+    [SugarColumn(ColumnName = "NUMERATOR")]
+    public string Numerator { get; set; }
+
+    /// <summary>
+    ///     鍒嗘瘝
+    /// </summary>
+    [SugarColumn(ColumnName = "DENOMINATOR")]
+    public string Denominator { 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 4e9e9d5..51bc172 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 8af1782..40c5073 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 0da6d03..6aed25f 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 7d1e047..437449f 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/BasicData/MesRohInManager.cs b/MES.Service/service/BasicData/MesRohInManager.cs
index 384fc85..35acb3c 100644
--- a/MES.Service/service/BasicData/MesRohInManager.cs
+++ b/MES.Service/service/BasicData/MesRohInManager.cs
@@ -1,66 +1,74 @@
 锘縰sing MES.Service.DB;
 using MES.Service.Dto.webApi;
 using MES.Service.Modes;
-using MES.Service.util;
 using SqlSugar;
 
-namespace MES.Service.service.BasicData
+namespace MES.Service.service.BasicData;
+
+public class MesRohInManager : Repository<MesRohIn>
 {
-    public class MesRohInManager : Repository<MesRohIn>
+    private readonly MesRohInDataManager rohInDataManager = new();
+
+    // Save 鏂规硶鐢ㄤ簬淇濆瓨鍗曚釜 RohIn 璁板綍锛屾牴鎹被鍨嬫墽琛屼笉鍚岀殑鎿嶄綔
+    public bool Save(RohIn rohIn)
     {
-        private readonly MesRohInDataManager rohInDataManager = new();
+        var rohInErpRohIn = rohIn.ErpRohIn;
+        var mesRohIn = GetMesRohIn(rohInErpRohIn);
+        var mesRohInDatas =
+            GetMesRohInDatas(rohIn.ErpRohinDatas, rohInErpRohIn.Type);
 
-        // Save 鏂规硶鐢ㄤ簬淇濆瓨鍗曚釜 RohIn 璁板綍锛屾牴鎹被鍨嬫墽琛屼笉鍚岀殑鎿嶄綔
-        public bool Save(RohIn rohIn)
+        return UseTransaction(db =>
         {
-            var rohInErpRohIn = rohIn.ErpRohIn;
-            var mesRohIn = GetMesRohIn(rohInErpRohIn);
-            var mesRohInDatas =
-                GetMesRohInDatas(rohIn.ErpRohinDatas, rohInErpRohIn.Type);
-
-            return UseTransaction(db =>
+            switch (rohInErpRohIn.Type)
             {
-                switch (rohInErpRohIn.Type)
-                {
-                    // case "2":
-                    //     return InsertData(db, mesRohIn, mesRohInDatas,
-                    //         rohInErpRohIn.FBILLTYPE)
-                    //         ? 1
-                    //         : 0;
-                    case "3":
-                        return UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
-                    case "2":
-                    case "4":
-                        return SaveOrUpdateData(db, mesRohIn, mesRohInDatas)
-                            ? 1
-                            : 0;
-                    default:
-                        throw new NotImplementedException(
-                            $"type娌℃湁{rohInErpRohIn.Type}杩欎釜绫诲瀷");
-                }
-            }) > 0;
-        }
+                // case "2":
+                //     return InsertData(db, mesRohIn, mesRohInDatas,
+                //         rohInErpRohIn.FBILLTYPE)
+                //         ? 1
+                //         : 0;
+                case "3":
+                    return UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
+                case "2":
+                case "4":
+                    return SaveOrUpdateData(db, mesRohIn, mesRohInDatas)
+                        ? 1
+                        : 0;
+                default:
+                    throw new NotImplementedException(
+                        $"type娌℃湁{rohInErpRohIn.Type}杩欎釜绫诲瀷");
+            }
+        }) > 0;
+    }
 
-        // 鎻掑叆鏁版嵁鐨勬柟娉�
-        private bool InsertData(SqlSugarScope db, MesRohIn mesRohIn,
-            List<MesRohInData> mesRohInDatas, string FBILLTYPE)
+    // 鎻掑叆鏁版嵁鐨勬柟娉�
+    private bool InsertData(SqlSugarScope db, MesRohIn mesRohIn,
+        List<MesRohInData> mesRohInDatas, string FBILLTYPE)
+    {
+        switch (FBILLTYPE)
         {
-            switch (FBILLTYPE)
+            case "A":
             {
-                case "A":
+                var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
+
+                if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id);
+
+                if (decimals.Length > 0)
+                    db.Deleteable<MesRohInData>().In(decimals).ExecuteCommand();
+
+                var insert = base.Insert(mesRohIn);
+                var insertRange =
+                    rohInDataManager.InsertRange(mesRohInDatas);
+
+                if (insert && insertRange) return true;
+                throw new NotImplementedException("鎻掑叆澶辫触");
+            }
+            case "B":
+            {
+                var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
+                if (base.DeleteById(mesRohIn.Id) && db
+                        .Deleteable<MesRohInData>().In(decimals)
+                        .ExecuteCommand() > 0)
                 {
-                    var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
-
-                    if (mesRohIn.Id != null)
-                    {
-                        base.DeleteById(mesRohIn.Id);
-                    }
-
-                    if (decimals.Length > 0)
-                    {
-                        db.Deleteable<MesRohInData>().In(decimals).ExecuteCommand();
-                    }
-                    
                     var insert = base.Insert(mesRohIn);
                     var insertRange =
                         rohInDataManager.InsertRange(mesRohInDatas);
@@ -68,207 +76,187 @@
                     if (insert && insertRange) return true;
                     throw new NotImplementedException("鎻掑叆澶辫触");
                 }
-                case "B":
-                {
-                    var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
-                    if (base.DeleteById(mesRohIn.Id) && db
-                            .Deleteable<MesRohInData>().In(decimals)
-                            .ExecuteCommand() > 0)
-                    {
-                        var insert = base.Insert(mesRohIn);
-                        var insertRange =
-                            rohInDataManager.InsertRange(mesRohInDatas);
 
-                        if (insert && insertRange) return true;
-                        throw new NotImplementedException("鎻掑叆澶辫触");
-                    }
-
-                    break;
-                }
+                break;
             }
-
-            throw new NotImplementedException("閲囪喘璁㈠崟绫诲瀷閿欒");
         }
 
-        // 鏇存柊鏁版嵁鐨勬柟娉�
-        private bool UpdateData(SqlSugarScope db, MesRohIn mesRohIn,
-            List<MesRohInData> mesRohInDatas)
-        {
-            var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
-            var update = base.DeleteById(mesRohIn.Id);
-            var insertOrUpdate = db
-                .Deleteable<MesRohInData>().In(decimals)
-                .ExecuteCommand() > 0;
+        throw new NotImplementedException("閲囪喘璁㈠崟绫诲瀷閿欒");
+    }
 
-            if (update && insertOrUpdate) return true;
-            throw new NotImplementedException("鏇存柊澶辫触");
-        }
+    // 鏇存柊鏁版嵁鐨勬柟娉�
+    private bool UpdateData(SqlSugarScope db, MesRohIn mesRohIn,
+        List<MesRohInData> mesRohInDatas)
+    {
+        var decimals = mesRohInDatas.Select(s => s.Id).ToArray();
+        var update = base.DeleteById(mesRohIn.Id);
+        var insertOrUpdate = db
+            .Deleteable<MesRohInData>().In(decimals)
+            .ExecuteCommand() > 0;
 
-        // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶
-        private bool SaveOrUpdateData(SqlSugarScope db, MesRohIn mesRohIn,
-            List<MesRohInData> mesRohInDatas)
-        {
-            
-            if (mesRohIn.Id != null)
-            {
-                base.DeleteById(mesRohIn.Id);
-            }
+        if (update && insertOrUpdate) return true;
+        throw new NotImplementedException("鏇存柊澶辫触");
+    }
 
-            if (mesRohInDatas.Count > 0)
-            {
-                db.Deleteable<MesRohInData>().Where(s=>s.ErpId == mesRohIn.EbelnK3id).ExecuteCommand();
-            }
+    // 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶
+    private bool SaveOrUpdateData(SqlSugarScope db, MesRohIn mesRohIn,
+        List<MesRohInData> mesRohInDatas)
+    {
+        if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id);
 
-            var orUpdate = base.Insert(mesRohIn);
-            var baOrUpdate = rohInDataManager.InsertRange(mesRohInDatas);
-            if (orUpdate && baOrUpdate) return true;
-            throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
-        }
+        if (mesRohInDatas.Count > 0)
+            db.Deleteable<MesRohInData>()
+                .Where(s => s.ErpId == mesRohIn.EbelnK3id).ExecuteCommand();
 
-        // 鎵归噺淇濆瓨璁板綍鐨勬柟娉�
-        public bool SaveList(List<RohIn> rohIns)
-        {
-            var result = rohIns.Select(Save).ToList();
-            return result.All(b => b);
-        }
+        var orUpdate = base.Insert(mesRohIn);
+        var baOrUpdate = rohInDataManager.InsertRange(mesRohInDatas);
+        if (orUpdate && baOrUpdate) return true;
+        throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
+    }
 
-        // 灏� ErpRohIn 瀵硅薄杞崲涓� MesRohIn 瀵硅薄鐨勬柟娉�
-        public MesRohIn GetMesRohIn(ErpRohIn rohIn)
-        {
-            var eid = Convert.ToDecimal(rohIn.id);
-            var mesRohIn = new MesRohIn();
+    // 鎵归噺淇濆瓨璁板綍鐨勬柟娉�
+    public bool SaveList(List<RohIn> rohIns)
+    {
+        var result = rohIns.Select(Save).ToList();
+        return result.All(b => b);
+    }
 
-            var single = base.GetSingle(it => it.EbelnK3id == eid);
-            if (single != null) mesRohIn.Id = single.Id;
+    // 灏� ErpRohIn 瀵硅薄杞崲涓� MesRohIn 瀵硅薄鐨勬柟娉�
+    public MesRohIn GetMesRohIn(ErpRohIn rohIn)
+    {
+        var eid = Convert.ToDecimal(rohIn.id);
+        var mesRohIn = new MesRohIn();
 
-            mesRohIn.EbelnK3id = eid;
-            mesRohIn.BillNo = rohIn.FBillNo;
-            mesRohIn.DocumentStatus = rohIn.FDocumentStatus;
-            mesRohIn.DocumentType = rohIn.FBillTypeID;
-            mesRohIn.BusinessType = rohIn.FBusinessType;
+        var single = base.GetSingle(it => it.EbelnK3id == eid);
+        if (single != null) mesRohIn.Id = single.Id;
 
-            if (rohIn.FDate != null)
-                mesRohIn.PurchaseDate = DateTime.ParseExact(rohIn.FDate,
+        mesRohIn.EbelnK3id = eid;
+        mesRohIn.BillNo = rohIn.FBillNo;
+        mesRohIn.DocumentStatus = rohIn.FDocumentStatus;
+        mesRohIn.DocumentType = rohIn.FBillTypeID;
+        mesRohIn.BusinessType = rohIn.FBusinessType;
+
+        if (rohIn.FDate != null)
+            mesRohIn.PurchaseDate = DateTime.ParseExact(rohIn.FDate,
+                "yyyy-MM-dd HH:mm:ss", null);
+
+        mesRohIn.Supplier = rohIn.FSupplierId;
+        mesRohIn.CloseStatus = rohIn.FCloseStatus;
+        mesRohIn.PurchaseOrg = rohIn.FPurchaseOrgId;
+        mesRohIn.PurchaseDept = rohIn.FPurchaseDeptId;
+        mesRohIn.PurchaseGroup = rohIn.FPurchaserGroupId;
+        mesRohIn.QtyAcceptance = rohIn.Facctype;
+        mesRohIn.Purchaser = rohIn.FPurchaserId;
+        mesRohIn.QualityReq = rohIn.F_UNW_Remarks_zlyq;
+        mesRohIn.SettlementParty = rohIn.FSettleId;
+        mesRohIn.PaymentParty = rohIn.FChargeId;
+        mesRohIn.Email = rohIn.FProviderEMail;
+        mesRohIn.TransportMethod = rohIn.F_UNW_Text_ysfs;
+        mesRohIn.Remarks = rohIn.F_UNW_BZ;
+        mesRohIn.FixtureMoldProcurement = rohIn.F_UNW_Combo_zjmj;
+        mesRohIn.CancellationStatus = rohIn.FCancelStatus;
+        mesRohIn.CancellationPerson = rohIn.FCancellerId;
+
+        if (rohIn.FCancelDate != null)
+            mesRohIn.CancellationDate =
+                DateTime.ParseExact(rohIn.FCancelDate,
                     "yyyy-MM-dd HH:mm:ss", null);
 
-            mesRohIn.Supplier = rohIn.FSupplierId;
-            mesRohIn.CloseStatus = rohIn.FCloseStatus;
-            mesRohIn.PurchaseOrg = rohIn.FPurchaseOrgId;
-            mesRohIn.PurchaseDept = rohIn.FPurchaseDeptId;
-            mesRohIn.PurchaseGroup = rohIn.FPurchaserGroupId;
-            mesRohIn.QtyAcceptance = rohIn.Facctype;
-            mesRohIn.Purchaser = rohIn.FPurchaserId;
-            mesRohIn.QualityReq = rohIn.F_UNW_Remarks_zlyq;
-            mesRohIn.SettlementParty = rohIn.FSettleId;
-            mesRohIn.PaymentParty = rohIn.FChargeId;
-            mesRohIn.Email = rohIn.FProviderEMail;
-            mesRohIn.TransportMethod = rohIn.F_UNW_Text_ysfs;
-            mesRohIn.Remarks = rohIn.F_UNW_BZ;
-            mesRohIn.FixtureMoldProcurement = rohIn.F_UNW_Combo_zjmj;
-            mesRohIn.CancellationStatus = rohIn.FCancelStatus;
-            mesRohIn.CancellationPerson = rohIn.FCancellerId;
+        mesRohIn.CreateBy = rohIn.FCreatorId;
 
-            if (rohIn.FCancelDate != null)
-                mesRohIn.CancellationDate =
-                    DateTime.ParseExact(rohIn.FCancelDate,
-                        "yyyy-MM-dd HH:mm:ss", null);
+        if (rohIn.FCreateDate != null)
+            mesRohIn.CreateDate = DateTime.ParseExact(rohIn.FCreateDate,
+                "yyyy-MM-dd HH:mm:ss", null);
 
-            mesRohIn.CreateBy = rohIn.FCreatorId;
+        mesRohIn.LastupdateBy = rohIn.FModifierId;
 
-            if (rohIn.FCreateDate != null)
-                mesRohIn.CreateDate = DateTime.ParseExact(rohIn.FCreateDate,
-                    "yyyy-MM-dd HH:mm:ss", null);
+        if (rohIn.FModifyDate != null)
+            mesRohIn.LastupdateDate = DateTime.ParseExact(rohIn.FModifyDate,
+                "yyyy-MM-dd HH:mm:ss", null);
 
-            mesRohIn.LastupdateBy = rohIn.FModifierId;
+        mesRohIn.ErpCheckBy = rohIn.FApproverId;
+        mesRohIn.ErpCheckDate = rohIn.FApproveDate;
+        mesRohIn.Changereason = rohIn.FCHANGEREASON;
 
-            if (rohIn.FModifyDate != null)
-                mesRohIn.LastupdateDate = DateTime.ParseExact(rohIn.FModifyDate,
-                    "yyyy-MM-dd HH:mm:ss", null);
+        return mesRohIn;
+    }
 
-            mesRohIn.ErpCheckBy = rohIn.FApproverId;
-            mesRohIn.ErpCheckDate = rohIn.FApproveDate;
-            mesRohIn.Changereason = rohIn.FCHANGEREASON;
-
-            return mesRohIn;
-        }
-
-        // 灏� ErpRohinData 瀵硅薄杞崲涓� MesRohInData 瀵硅薄鐨勬柟娉�
-        public List<MesRohInData> GetMesRohInDatas(
-            List<ErpRohinData> erpRohinDatas, string type)
+    // 灏� ErpRohinData 瀵硅薄杞崲涓� MesRohInData 瀵硅薄鐨勬柟娉�
+    public List<MesRohInData> GetMesRohInDatas(
+        List<ErpRohinData> erpRohinDatas, string type)
+    {
+        return erpRohinDatas.Select(s =>
         {
-            return erpRohinDatas.Select(s =>
+            var entity = new MesRohInData
             {
-                var entity = new MesRohInData
-                {
-                    EbelnK3id = Convert.ToDecimal(s.id),
-                    ErpId = Convert.ToDecimal(s.Eid),
-                    BillNo = s.FBillNo,
-                    SalesOrderId = s.F_UNW_Text_xsddh,
-                    ItemId = s.FMaterialId,
-                    PurchaseUnit = s.FUnitId,
-                    PurchaseQty = Convert.ToDecimal(s.FQty),
-                    InventoryUnit = s.FStockUnitID,
-                    PricingUnit = s.FPriceUnitId,
-                    PricingQty = Convert.ToDecimal(s.FPriceUnitQty),
-                    DeliveryDate = s.FDeliveryDate != null
-                        ? DateTime.ParseExact(s.FDeliveryDate,
-                            "yyyy-MM-dd HH:mm:ss", null)
-                        : null,
-                    EarliestDeliveryDate = s.FDeliveryEarlyDate != null
-                        ? DateTime.ParseExact(s.FDeliveryEarlyDate,
-                            "yyyy-MM-dd HH:mm:ss", null)
-                        : null,
-                    LatestDeliveryDate = s.FDeliveryLastDate != null
-                        ? DateTime.ParseExact(s.FDeliveryLastDate,
-                            "yyyy-MM-dd HH:mm:ss", null)
-                        : null,
-                    IsGift = s.FGiveAway,
-                    Remarks = s.FEntryNote,
-                    SupplierItemCode = s.FSupMatId,
-                    SupplierItemName = s.FSupMatName,
-                    OutsourcingOrderId = s.FSUBREQBILLNO,
-                    BatchNumber = s.FLot,
-                    BusinessClose = s.FMRPCloseStatus,
-                    BusinessFreeze = s.FMRPFreezeStatus,
-                    Freezer = s.FFreezerId,
-                    FreezeTime = s.FFreezeDate != null
-                        ? DateTime.ParseExact(s.FFreezeDate,
-                            "yyyy-MM-dd HH:mm:ss", null)
-                        : null,
-                    BusinessTerminate = s.FMRPTerminateStatus,
-                    Terminator = s.FTerminaterId,
-                    TerminateTime = s.FTerminateDate != null
-                        ? DateTime.ParseExact(s.FTerminateDate,
-                            "yyyy-MM-dd HH:mm:ss", null)
-                        : null,
-                    TotalReceivedQty = Convert.ToDecimal(s.FReceiveQty),
-                    RemainingReceivedQty =
-                        Convert.ToDecimal(s.FRemainReceiveQty),
-                    TotalStoredQty = Convert.ToDecimal(s.FStockInQty),
-                    RemainingStoredQty = Convert.ToDecimal(s.FRemainStockINQty),
-                    TotalReturnedQty = Convert.ToDecimal(s.FMrbQty),
-                    ReturnableReceivedQty = Convert.ToDecimal(s.FCHECKRETQTY),
-                    ReturnableStoredQty = Convert.ToDecimal(s.FSTOCKRETQTY),
-                    SourceDocumentType = s.FSrcBillTypeId,
-                    SourceDocumentId = s.FSrcBillNo,
-                    DemandTrackingId = s.FReqTraceNo,
-                    PlanTrackingId = s.FMtoNo,
-                    ChangeFlag = s.FChangeFlag,
-                    DemandSource = s.FDEMANDTYPE,
-                    DemandDocumentId = s.FDEMANDBILLNO,
-                    DemandDocumentLineId = s.FDEMANDBILLENTRYSEQ,
-                    PurchaseOrderLineNumber = s.PurchaseOrderLineNumber,
-                    Demand = s.Demand,
-                    Receiving = s.Receiving,
-                    Settlement = s.Settlement
-                };
+                EbelnK3id = Convert.ToDecimal(s.id),
+                ErpId = Convert.ToDecimal(s.Eid),
+                BillNo = s.FBillNo,
+                SalesOrderId = s.F_UNW_Text_xsddh,
+                ItemId = s.FMaterialId,
+                PurchaseUnit = s.FUnitId,
+                PurchaseQty = Convert.ToDecimal(s.FQty),
+                InventoryUnit = s.FStockUnitID,
+                PricingUnit = s.FPriceUnitId,
+                PricingQty = Convert.ToDecimal(s.FPriceUnitQty),
+                DeliveryDate = s.FDeliveryDate != null
+                    ? DateTime.ParseExact(s.FDeliveryDate,
+                        "yyyy-MM-dd HH:mm:ss", null)
+                    : null,
+                EarliestDeliveryDate = s.FDeliveryEarlyDate != null
+                    ? DateTime.ParseExact(s.FDeliveryEarlyDate,
+                        "yyyy-MM-dd HH:mm:ss", null)
+                    : null,
+                LatestDeliveryDate = s.FDeliveryLastDate != null
+                    ? DateTime.ParseExact(s.FDeliveryLastDate,
+                        "yyyy-MM-dd HH:mm:ss", null)
+                    : null,
+                IsGift = s.FGiveAway,
+                Remarks = s.FEntryNote,
+                SupplierItemCode = s.FSupMatId,
+                SupplierItemName = s.FSupMatName,
+                OutsourcingOrderId = s.FSUBREQBILLNO,
+                BatchNumber = s.FLot,
+                BusinessClose = s.FMRPCloseStatus,
+                BusinessFreeze = s.FMRPFreezeStatus,
+                Freezer = s.FFreezerId,
+                FreezeTime = s.FFreezeDate != null
+                    ? DateTime.ParseExact(s.FFreezeDate,
+                        "yyyy-MM-dd HH:mm:ss", null)
+                    : null,
+                BusinessTerminate = s.FMRPTerminateStatus,
+                Terminator = s.FTerminaterId,
+                TerminateTime = s.FTerminateDate != null
+                    ? DateTime.ParseExact(s.FTerminateDate,
+                        "yyyy-MM-dd HH:mm:ss", null)
+                    : null,
+                TotalReceivedQty = Convert.ToDecimal(s.FReceiveQty),
+                RemainingReceivedQty =
+                    Convert.ToDecimal(s.FRemainReceiveQty),
+                TotalStoredQty = Convert.ToDecimal(s.FStockInQty),
+                RemainingStoredQty = Convert.ToDecimal(s.FRemainStockINQty),
+                TotalReturnedQty = Convert.ToDecimal(s.FMrbQty),
+                ReturnableReceivedQty = Convert.ToDecimal(s.FCHECKRETQTY),
+                ReturnableStoredQty = Convert.ToDecimal(s.FSTOCKRETQTY),
+                SourceDocumentType = s.FSrcBillTypeId,
+                SourceDocumentId = s.FSrcBillNo,
+                DemandTrackingId = s.FReqTraceNo,
+                PlanTrackingId = s.FMtoNo,
+                ChangeFlag = s.FChangeFlag,
+                DemandSource = s.FDEMANDTYPE,
+                DemandDocumentId = s.FDEMANDBILLNO,
+                DemandDocumentLineId = s.FDEMANDBILLENTRYSEQ,
+                PurchaseOrderLineNumber = s.PurchaseOrderLineNumber,
+                Demand = s.Demand,
+                Receiving = s.Receiving,
+                Settlement = s.Settlement
+            };
 
-                var single = rohInDataManager.GetSingle(it =>
-                    it.EbelnK3id == entity.EbelnK3id);
-                if (single != null) entity.Id = single.Id;
+            var single = rohInDataManager.GetSingle(it =>
+                it.EbelnK3id == entity.EbelnK3id);
+            if (single != null) entity.Id = single.Id;
 
-                return entity;
-            }).ToList();
-        }
+            return entity;
+        }).ToList();
     }
 }
\ No newline at end of file
diff --git a/MES.Service/service/BasicData/MesStaffManager.cs b/MES.Service/service/BasicData/MesStaffManager.cs
index ec8ed98..366f989 100644
--- a/MES.Service/service/BasicData/MesStaffManager.cs
+++ b/MES.Service/service/BasicData/MesStaffManager.cs
@@ -65,9 +65,9 @@
         if (exists)
         {
             var updateUser = db.Updateable<SysUser>()
-                .SetColumns(s=>s.Fcode == sysUser.Fcode)
-                .SetColumns(s=>s.Fname == sysUser.Fname)
-                .Where(s=>s.Sid == sysUser.Sid)
+                .SetColumns(s => s.Fcode == sysUser.Fcode)
+                .SetColumns(s => s.Fname == sysUser.Fname)
+                .Where(s => s.Sid == sysUser.Sid)
                 .ExecuteCommand();
             if (updateUser > 0)
             {
diff --git a/MES.Service/service/BasicData/ShipmentNoticeManager.cs b/MES.Service/service/BasicData/ShipmentNoticeManager.cs
index c116032..26380a5 100644
--- a/MES.Service/service/BasicData/ShipmentNoticeManager.cs
+++ b/MES.Service/service/BasicData/ShipmentNoticeManager.cs
@@ -1,7 +1,6 @@
 锘縰sing MES.Service.DB;
 using MES.Service.Dto.webApi;
 using MES.Service.Modes;
-using SqlSugar;
 
 namespace MES.Service.service.BasicData;
 
@@ -15,30 +14,26 @@
         var shipmentNotice = GetShipmentNotice(shipment.ShipmentNotice);
 
         var shipmentDetails = GetShipmentDetails(shipment.ShipmentDetails);
-        
+
         return false;
     }
 
     private ShipmentNotice GetShipmentNotice(ErpShipmentNotice notice)
     {
-        ShipmentNotice entity = new ShipmentNotice();
+        var entity = new ShipmentNotice();
 
         entity.Creator = notice.FCreatorId;
         entity.DocId = notice.FBillNo;
         entity.Approver = notice.FApproverID;
 
         if (notice.FCreateDate != null)
-        {
             entity.CreateDate = DateTime.ParseExact(notice.FCreateDate,
                 "yyyy-MM-dd HH:mm:ss", null);
-        }
 
         if (notice.FApproveDate != null)
-        {
             entity.ApproveDate = DateTime.ParseExact(notice.FApproveDate,
                 "yyyy-MM-dd HH:mm:ss", null);
-        }
-        
+
         entity.DeptCode = notice.FSaleDeptId;
         entity.CustCode = notice.FCustomerID;
         entity.ListNote = notice.FNote;
@@ -51,25 +46,25 @@
         List<ErpShipmentDetail> shipmentDetails)
     {
         return shipmentDetails.Select(s =>
+        {
+            var entity = new ShipmentDetail
             {
-                var entity = new ShipmentDetail
-                {
-                    ErpId = s.ErpId,
-                    ErpHeadId = s.ErpHeadId,
-                    ProdCode = s.FMaterialID,
-                    ProdName = s.FMaterialName,
-                    Amount = Convert.ToDouble(s.FAmount),
-                    UnitPrice = Convert.ToDouble(s.FPrice),
-                    Quantity = Convert.ToDouble(s.FQty),
-                    BatchNo = s.FLot,
-                    Remarks = s.FNoteEntry,
-                    OrderNo = s.F_UNW_Text_xsddh,
-                    OrderId = s.FSOEntryId,
-                    BasePrice = Convert.ToDouble(s.FPrice),
-                    WarehouseCode = s.FStockID,
-                    Unit = s.FBaseUnitID
-                };
-                return entity;
-            }).ToList();
+                ErpId = s.ErpId,
+                ErpHeadId = s.ErpHeadId,
+                ProdCode = s.FMaterialID,
+                ProdName = s.FMaterialName,
+                Amount = Convert.ToDouble(s.FAmount),
+                UnitPrice = Convert.ToDouble(s.FPrice),
+                Quantity = Convert.ToDouble(s.FQty),
+                BatchNo = s.FLot,
+                Remarks = s.FNoteEntry,
+                OrderNo = s.F_UNW_Text_xsddh,
+                OrderId = s.FSOEntryId,
+                BasePrice = Convert.ToDouble(s.FPrice),
+                WarehouseCode = s.FStockID,
+                Unit = s.FBaseUnitID
+            };
+            return entity;
+        }).ToList();
     }
 }
\ No newline at end of file
diff --git a/MES.Service/service/WomcaaManager.cs b/MES.Service/service/WomcaaManager.cs
new file mode 100644
index 0000000..354a2c3
--- /dev/null
+++ b/MES.Service/service/WomcaaManager.cs
@@ -0,0 +1,156 @@
+锘縰sing MES.Service.DB;
+using MES.Service.Dto.webApi;
+using MES.Service.Modes;
+using SqlSugar;
+
+namespace MES.Service.service;
+
+public class WomcaaManager : Repository<Womcaa>
+{
+    //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
+
+    //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomcaaManager.cs
+
+    private readonly WomcabManager _womcabManager = new();
+
+    public bool SaveList(List<ErpWOM> rohIns)
+    {
+        var result = rohIns.Select(Save).ToList();
+        return result.All(b => b);
+    }
+
+    public bool Save(ErpWOM wom)
+    {
+        var womErpCaa = wom.ErpCaa;
+        var mesWomcaa = MapErpCAAtoWomcaa(womErpCaa);
+        var mesWomcabs =
+            MapErpCABtoWomcab(wom.ErpCabs);
+
+        return UseTransaction(db =>
+        {
+            switch (womErpCaa.Type)
+            {
+                case "3":
+                    return UpdateData(db, mesWomcaa, mesWomcabs) ? 1 : 0;
+                case "2":
+                case "4":
+                    return SaveOrUpdateData(db, mesWomcaa, mesWomcabs)
+                        ? 1
+                        : 0;
+                default:
+                    throw new NotImplementedException(
+                        $"type娌℃湁{womErpCaa.Type}杩欎釜绫诲瀷");
+            }
+        }) > 0;
+    }
+
+    private bool SaveOrUpdateData(SqlSugarScope db, Womcaa mesWomcaa,
+        List<Womcab> mesWomcabs)
+    {
+        if (mesWomcaa.Id != null) base.DeleteById(mesWomcaa.Id);
+
+        if (mesWomcabs.Count > 0)
+            db.Deleteable<Womcab>()
+                .Where(s => s.Eid == mesWomcaa.Erpid).ExecuteCommand();
+
+        var orUpdate = base.Insert(mesWomcaa);
+        var baOrUpdate = _womcabManager.InsertRange(mesWomcabs);
+        if (orUpdate && baOrUpdate) return true;
+        throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
+    }
+
+    private bool UpdateData(SqlSugarScope db, Womcaa mesWomcaa,
+        List<Womcab> mesWomcabs)
+    {
+        var decimals = mesWomcabs.Select(s => s.Id).ToArray();
+        var update = base.DeleteById(mesWomcaa.Id);
+        var insertOrUpdate = db
+            .Deleteable<Womcab>().In(decimals)
+            .ExecuteCommand() > 0;
+
+        if (update && insertOrUpdate) return true;
+        throw new NotImplementedException("鏇存柊澶辫触");
+    }
+
+    private Womcaa MapErpCAAtoWomcaa(ErpCAA dto)
+    {
+        return new Womcaa
+        {
+            Erpid = Convert.ToDecimal(dto.Id),
+            Caa001 = dto.FBillNo,
+            WorkShopId = dto.FWorkShopID0,
+            RoutingId = dto.FRoutingId,
+            DepotCode = dto.FStockId,
+            CreateDate = dto.FDate,
+            Caa004 = dto.FBillType,
+            Caa023 = dto.FStatus,
+            Caa006 = dto.FMaterialId,
+            Caa009 = dto.FUnitId,
+            Caa012 = !string.IsNullOrEmpty(dto.FQty)
+                ? Convert.ToDecimal(dto.FQty)
+                : null,
+            WorkGroupId = dto.FWorkGroupId,
+            PlanId = dto.FPlannerID,
+            Caa010 = dto.FPlanStartDate,
+            Caa011 = dto.FPlanFinishDate,
+            Caa005 = dto.FConveyDate,
+            StockInlimith = dto.FStockInLimitH,
+            StockInlimitl = dto.FStockInLimitL,
+            Mtono = dto.FMTONO,
+            Lot = dto.FLot,
+            Caa013 = dto.FBomId,
+            Caa015 = dto.F_UNW_Text_xsddh,
+            CreateType = dto.FCreateType,
+            SrcBillType = dto.FSrcBillType,
+            SrcBillNo = dto.FSrcBillNo,
+            SrcBillentryseq = dto.FSrcBillEntrySeq,
+            SaleOrderNo = dto.FSaleOrderNo,
+            SaleOrderEntryseq = dto.FSaleOrderEntrySeq,
+            ForceCloserid = dto.FForceCloserId,
+            CloseType = dto.FCloseType,
+            SrcSplitBillno = dto.FSrcSplitBillNo,
+            Caa016 = dto.FMemoItem
+        };
+    }
+
+    private List<Womcab> MapErpCABtoWomcab(List<ErpCAB> dtoList)
+    {
+        var womcabList = new List<Womcab>();
+
+        foreach (var dto in dtoList)
+        {
+            var womcab = new Womcab
+            {
+                Erpid = Convert.ToDecimal(dto.ID),
+                Cab001 = dto.FBillNo,
+                Cab003 = dto.FMaterialID2,
+                Cab006 = !string.IsNullOrEmpty(dto.FNeedQty2)
+                    ? Convert.ToDecimal(dto.FNeedQty2)
+                    : null,
+                Cab007 = !string.IsNullOrEmpty(dto.FPickedQty)
+                    ? Convert.ToDecimal(dto.FPickedQty)
+                    : null,
+                PositionNo = dto.FPositionNO,
+                OwnerId = dto.FOwnerID,
+                Mtono = dto.FMTONO,
+                Lot = dto.FLot,
+                DepotCode = dto.FStockID,
+                IssueType = dto.FIssueType,
+                Cab008 = dto.F_UNW_Text_tpgy,
+                Cab009 = dto.FUnitID,
+                SupplyType = dto.FSupplyType,
+                Cab012 = !string.IsNullOrEmpty(dto.FStdQty)
+                    ? Convert.ToDecimal(dto.FStdQty)
+                    : null,
+                Cab014 = dto.FIsKeyItem,
+                Numerator = dto.FNumerator,
+                Denominator = dto.FDenominator,
+                Eid = Convert.ToDecimal(dto.PID)
+            };
+
+            womcabList.Add(womcab);
+        }
+
+        return womcabList;
+    }
+}
\ No newline at end of file
diff --git a/MES.Service/service/WomcabManager.cs b/MES.Service/service/WomcabManager.cs
new file mode 100644
index 0000000..5275176
--- /dev/null
+++ b/MES.Service/service/WomcabManager.cs
@@ -0,0 +1,78 @@
+锘縰sing MES.Service.DB;
+using MES.Service.Modes;
+using SqlSugar;
+
+namespace MES.Service.service;
+
+public class WomcabManager : Repository<Womcab>
+{
+    //褰撳墠绫诲凡缁忕户鎵夸簡 Repository 澧炪�佸垹銆佹煡銆佹敼鐨勬柟娉�
+
+    //杩欓噷闈㈠啓鐨勪唬鐮佷笉浼氱粰瑕嗙洊,濡傛灉瑕侀噸鏂扮敓鎴愯鍒犻櫎 WomcabManager.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(Womcab).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 Womcab(); //娴嬭瘯鍙傛暟
+        var insertArray = new[] { insertData };
+        base.Insert(insertData); //鎻掑叆
+        base.InsertRange(insertArray); //鎵归噺鎻掑叆
+        var id = base.InsertReturnIdentity(insertData); //鎻掑叆杩斿洖鑷鍒�
+        AsInsertable(insertData).ExecuteCommand(); //鎴戜滑鍙互杞垚 Insertable瀹炵幇澶嶆潅鎻掑叆
+
+
+        /*********鏇存柊*********/
+        var updateData = new Womcab(); //娴嬭瘯鍙傛暟
+        var updateArray = new[] { updateData }; //娴嬭瘯鍙傛暟
+        base.Update(updateData); //鏍规嵁瀹炰綋鏇存柊
+        base.UpdateRange(updateArray); //鎵归噺鏇存柊
+        //base.Update(it => new Womcab() { ClassName = "a", CreateTime = DateTime.Now }, it => it.id==1);// 鍙洿鏂癈lassName鍒楀拰CreateTime鍒楋紝鍏跺畠鍒椾笉鏇存柊锛屾潯浠秈d=1
+        AsUpdateable(updateData).ExecuteCommand(); //杞垚Updateable鍙互瀹炵幇澶嶆潅鐨勬彃鍏�
+
+
+        /*********鍒犻櫎*********/
+        var deldata = new Womcab(); //娴嬭瘯鍙傛暟
+        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/MESApplication/Controllers/BasicData/SalesOrderDetailController.cs b/MESApplication/Controllers/BasicData/SalesOrderDetailController.cs
index ad304ba..1a5a9b0 100644
--- a/MESApplication/Controllers/BasicData/SalesOrderDetailController.cs
+++ b/MESApplication/Controllers/BasicData/SalesOrderDetailController.cs
@@ -10,7 +10,7 @@
 [Route("api/[controller]")]
 public class SalesOrderDetailController : ControllerBase
 {
-    private SalesOrderDetailManager m = new SalesOrderDetailManager();
+    private readonly SalesOrderDetailManager m = new();
 
 
     /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
diff --git a/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs b/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs
index ba82e5d..8df7421 100644
--- a/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs
+++ b/MESApplication/Controllers/BasicData/SalesReturnNoticeController.cs
@@ -10,7 +10,7 @@
 [Route("api/[controller]")]
 public class SalesReturnNoticeController : ControllerBase
 {
-    private SalesReturnNoticeManager m = new SalesReturnNoticeManager();
+    private readonly SalesReturnNoticeManager m = new();
 
 
     /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
diff --git a/MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs b/MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs
index 4e8286f..3ed35a0 100644
--- a/MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs
+++ b/MESApplication/Controllers/BasicData/SalesReturnNoticeDetailController.cs
@@ -10,8 +10,7 @@
 [Route("api/[controller]")]
 public class SalesReturnNoticeDetailController : ControllerBase
 {
-    private SalesReturnNoticeDetailManager m =
-        new SalesReturnNoticeDetailManager();
+    private readonly SalesReturnNoticeDetailManager m = new();
 
 
     /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
diff --git a/MESApplication/Controllers/BasicData/ShipmentDetailController.cs b/MESApplication/Controllers/BasicData/ShipmentDetailController.cs
index 2a08400..a2a764f 100644
--- a/MESApplication/Controllers/BasicData/ShipmentDetailController.cs
+++ b/MESApplication/Controllers/BasicData/ShipmentDetailController.cs
@@ -10,7 +10,7 @@
 [Route("api/[controller]")]
 public class ShipmentDetailController : ControllerBase
 {
-    private ShipmentDetailManager m = new ShipmentDetailManager();
+    private readonly ShipmentDetailManager m = new();
 
 
     /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
diff --git a/MESApplication/Controllers/BasicData/ShipmentNoticeController.cs b/MESApplication/Controllers/BasicData/ShipmentNoticeController.cs
index 099ca48..67f6e27 100644
--- a/MESApplication/Controllers/BasicData/ShipmentNoticeController.cs
+++ b/MESApplication/Controllers/BasicData/ShipmentNoticeController.cs
@@ -10,7 +10,7 @@
 [Route("api/[controller]")]
 public class ShipmentNoticeController : ControllerBase
 {
-    private ShipmentNoticeManager m = new ShipmentNoticeManager();
+    private readonly ShipmentNoticeManager m = new();
 
 
     /***杩涘叆妯$増绠$悊鍙互淇敼妯$増***/
diff --git a/MESApplication/Controllers/WomcaaController.cs b/MESApplication/Controllers/WomcaaController.cs
new file mode 100644
index 0000000..7ca725a
--- /dev/null
+++ b/MESApplication/Controllers/WomcaaController.cs
@@ -0,0 +1,257 @@
+锘縰sing System.Dynamic;
+using MES.Service.Dto.webApi;
+using MES.Service.Modes;
+using MES.Service.service;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+using Newtonsoft.Json;
+
+namespace MESApplication.Controllers;
+
+[ApiController]
+[Route("api/[controller]")]
+public class WomcaaController : ControllerBase
+{
+    private readonly WomcaaManager m = new();
+
+    private readonly MessageCenterManager _manager = new();
+
+    private readonly string METHOD = "POST";
+
+    private readonly string TableName = "WOMCAA";
+
+    private readonly string URL = "http://localhost:10054/api/Womcaa/";
+
+    //
+    [HttpPost("Save")]
+    public ResponseResult Save(ErpWOM rohIn)
+    {
+        var entity = new MessageCenter();
+        entity.TableName = TableName;
+        entity.Url = URL + "Save";
+        entity.Method = METHOD;
+        entity.Data = JsonConvert.SerializeObject(rohIn);
+        entity.Status = 1;
+        entity.CreateBy = "PL017";
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            var save = m.Save(rohIn);
+
+            resultInfos.tbBillList = save;
+
+            entity.Result = 0;
+            if (save) entity.Result = 1;
+
+            entity.DealWith = 1;
+            _manager.save(entity);
+
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            entity.Result = 0;
+
+            entity.DealWith = 0;
+
+            entity.ResultData = ex.Message;
+
+            _manager.save(entity);
+
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    [HttpPost("SaveList")]
+    public ResponseResult SaveList(List<ErpWOM> units)
+    {
+        var entity = new MessageCenter();
+        entity.TableName = TableName;
+        entity.Url = URL + "SaveList";
+        entity.Method = METHOD;
+        entity.Data = JsonConvert.SerializeObject(units);
+        entity.Status = 1;
+        entity.CreateBy = "PL017";
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            var save = m.SaveList(units);
+            resultInfos.tbBillList = save;
+
+            entity.Result = 0;
+            if (save) entity.Result = 1;
+
+            entity.DealWith = 1;
+            _manager.save(entity);
+
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            entity.Result = 0;
+
+            entity.DealWith = 0;
+
+            entity.ResultData = ex.Message;
+
+            _manager.save(entity);
+
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <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] Womcaa 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] Womcaa 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] Womcaa 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/WomcabController.cs b/MESApplication/Controllers/WomcabController.cs
new file mode 100644
index 0000000..701e2af
--- /dev/null
+++ b/MESApplication/Controllers/WomcabController.cs
@@ -0,0 +1,162 @@
+锘縰sing System.Dynamic;
+using MES.Service.Modes;
+using MES.Service.service;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+
+namespace MESApplication.Controllers;
+
+[ApiController]
+[Route("api/[controller]")]
+public class WomcabController : ControllerBase
+{
+    private readonly WomcabManager 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] Womcab 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] Womcab 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] Womcab 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 4e9e9d5..51bc172 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 8af1782..40c5073 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 c260dbb..0383e0a 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 c40235b..d0eabea 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 36b9709..e58fd66 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 0da6d03..6aed25f 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 7d1e047..437449f 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 b0291af..0f10fd0 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 c40235b..d0eabea 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 ed7fcd5..4c9c54a 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/publish/MES.Service.dll b/MESApplication/bin/Release/net8.0/publish/MES.Service.dll
index 0da6d03..6aed25f 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 7d1e047..437449f 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 b0291af..0f10fd0 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 c40235b..d0eabea 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 ed7fcd5..4c9c54a 100644
--- a/MESApplication/bin/Release/net8.0/publish/MESApplication.pdb
+++ b/MESApplication/bin/Release/net8.0/publish/MESApplication.pdb
Binary files differ

--
Gitblit v1.9.3