From bc43fe34a67fa68bcfb3a51b79308fad0be11c08 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期五, 31 十月 2025 09:18:11 +0800
Subject: [PATCH] 优化定时器时长

---
 /dev/null                                                                    |  129 -------------------------
 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs |   21 ++-
 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/MedicineGoodsServices.cs |   20 ++--
 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs              |   65 ++++++------
 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs    |    3 
 新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/InventoryServices.cs     |    8 +
 新建文件夹/WIDESEA_WMSServer/WIDESEA_WMSServer/InOrderJob.cs                      |   10 +
 新建文件夹/WIDESEA_WMSServer/WIDESEA_WMSServer/OutOrderJob.cs                     |   11 +
 新建文件夹/WIDESEA_WMSServer/WIDESEA_WMSServer/AlarmJob.cs                        |    3 
 新建文件夹/WIDESEA_WMSServer/WIDESEA_WMSServer/GoodsJob.cs                        |    3 
 10 files changed, 82 insertions(+), 191 deletions(-)

diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs"
deleted file mode 100644
index 240db8f..0000000
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_Model/Models/Basic/Dt_MaterielInfo.cs"
+++ /dev/null
@@ -1,129 +0,0 @@
-锘縰sing SqlSugar;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using WIDESEA_Common;
-using WIDESEA_Common.CommonEnum;
-using WIDESEA_Common.MaterielEnum;
-using WIDESEA_Core.DB.Models;
-
-namespace WIDESEA_Model.Models
-{
-    /// <summary>
-    /// 鐗╂枡淇℃伅
-    /// </summary>
-    [SugarTable(nameof(Dt_MaterielInfo1), "鐗╂枡淇℃伅")]
-    [SugarIndex("unique_materielinfo_materielcode", nameof(MaterielCode), OrderByType.Asc, true)]
-    public class Dt_MaterielInfo1 : BaseEntity//, BaseWarehouseEntity
-    {
-        /// <summary>
-        /// 涓婚敭
-        /// </summary>
-        [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnDescription = "涓婚敭")]
-        public int Id { get; set; }
-
-        /// <summary>
-        /// 浠撳簱缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "浠撳簱缂栧彿")]
-        public int WarehouseId { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡缂栧彿
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗╂枡缂栧彿")]
-        public string MaterielCode { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 200, ColumnDescription = "鐗╂枡鍚嶇О")]
-        public string MaterielName { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瑙勬牸
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 200, ColumnDescription = "鐗╂枡瑙勬牸")]
-        public string MaterielSpec { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍩烘湰鍒嗙被(1:鎴愬搧銆�2:鍗婃垚鍝併��3:鍘熸潗鏂欍��4:澶囦欢)
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐗╂枡鍩烘湰鍒嗙被(1:鎴愬搧銆�2:鍗婃垚鍝併��3:鍘熸潗鏂欍��4:澶囦欢)")]
-        public MaterielTypeEnum MaterielType { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡灞炴�у垎绫�(1:閲囪喘浠躲��2:鑷埗浠躲��3:閲囪喘&鑷埗浠�)
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐗╂枡灞炴�у垎绫�(1:閲囪喘浠躲��2:鑷埗浠躲��3:閲囪喘&鑷埗浠�)")]
-        public MaterielSourceTypeEnum MaterielSourceType { get; set; }
-
-        /// <summary>
-        /// 鍩烘湰鍗曚綅(buyUnitId/StockUnitId)
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鍩烘湰鍗曚綅(buyUnitId/StockUnitId)")]
-        public string MaterielUnit { get; set; }
-
-        /// <summary>
-        /// 鐗堟湰鍚嶇О
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "鐗堟湰鍚嶇О")]
-        public string MaterielVersion { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡灏哄
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鐗╂枡灏哄")]
-        public float? MaterielSize { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡闀垮害
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鐗╂枡闀垮害")]
-        public float? MaterielLength { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍘氬害
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鐗╂枡鍘氬害")]
-        public float? MaterielThickness { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡瀹藉害
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鐗╂枡瀹藉害")]
-        public float? MaterielWide { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鍨嬪彿
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDescription = "鐗╂枡鍨嬪彿")]
-        public string MaterielModel { get; set; }
-
-        /// <summary>
-        /// 鐗╂枡鐘舵��(0:绂佺敤銆�1:鍙敤)
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鐗╂枡鐘舵��(0:绂佺敤銆�1:鍙敤)")]
-        public EnableEnum MaterielState { get; set; }
-
-        /// <summary>
-        /// 搴撳瓨缁勭粐(榛樿:娣畨鐗瑰垱浜屽巶)
-        /// </summary>
-        [SugarColumn(IsNullable = false, Length = 50, ColumnDescription = "搴撳瓨缁勭粐(榛樿:娣畨鐗瑰垱浜屽巶)")]
-        public string MaterielInvOrgId { get; set; }
-
-        /// <summary>
-        /// 鏄惁闇�瑕佽川妫�
-        /// </summary>
-        [SugarColumn(IsNullable = false, ColumnDescription = "鏄惁闇�瑕佽川妫�")]
-        public WhetherEnum IsCheck { get; set; }
-
-        /// <summary>
-        /// 澶囨敞
-        /// </summary>
-        [SugarColumn(IsNullable = true, Length = 200, ColumnDescription = "澶囨敞")]
-        public string Remark { get; set; }
-    }
-}
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs"
index 5d99726..c66b08c 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/Business.cs"
@@ -16,6 +16,7 @@
 using WIDESEA_Common;
 using System.Xml.Linq;
 using WIDESEA_Common.OrderEnum;
+using static WIDESEA_DTO.SquareCabin.AlarmDto;
 
 namespace WIDESEA_WMSServer
 {
@@ -37,7 +38,7 @@
             _messageInfoService = messageInfoService;
         }
         #region 鑾峰彇ERP鍏ュ簱鍗�
-        static string SearchInDate = "2025-09-10 00:00:00";
+        static string SearchInDate = "2025-10-30 00:00:00";
         /// <summary>
         /// 鑾峰彇涓婃父绯荤粺鐨勫叆搴撳崟
         /// </summary>
@@ -59,14 +60,14 @@
                     searchDate = SearchInDate
                     //searchDate = "2022-10-10 20:45:16"  // 姝g‘鐨勬牸寮�
                 };
-                SearchInDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
+                SearchInDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                 // 鍙戣捣璇锋眰
                 var result = HttpHelper.Post(url, requestData.ToJsonString());
 
                 // 鍙嶅簭鍒楀寲
                 var response = JsonConvert.DeserializeObject<UpstreamResponse<UpstreamOrderInfo>>(result);
 
-                if (response == null || response.resultCode != "0" || requestData == null)
+                if (response == null || response.resultCode != "0" )
                 {
                     // 璋冪敤寮傚父鎺ュ彛
                     //SendErrorToUpstream(1, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
@@ -79,7 +80,7 @@
                 }
                 var ordernos = response.data.Select(x => x.order_no).ToList();
                 // 鑾峰彇鎵�鏈夊凡瀛樺湪鐨勫叆搴撳崟鍙�
-                var existingOrderNos = _cabinOrderServices.Db.Queryable<Dt_CabinOrder>()
+                var existingOrderNos = _cabinOrderServices.Db.CopyNew().Queryable<Dt_CabinOrder>()
                     .Where(x => ordernos.Contains(x.Order_no))
                     .Select(x => x.Order_no)
                     .Distinct().ToList();
@@ -103,7 +104,6 @@
                 {
                     try
                     {
-                        _unitOfWorkManage.BeginTran();
                         if (order.order_type == "1") //姝e父鍏ュ簱
                         {
                             name = "鍒涘缓姝e父鍏ュ簱鍗�";
@@ -111,7 +111,7 @@
                             if (!responseContent.Status) throw new Exception(responseContent.Message);
                             List<Dt_CabinOrder>? dt_CabinOrders = responseContent.Data as List<Dt_CabinOrder>;
                             if (dt_CabinOrders != null)
-                                _cabinOrderServices.Db.InsertNav(dt_CabinOrders).Include(x => x.Details).ExecuteCommand();
+                                _cabinOrderServices.Db.CopyNew().InsertNav(dt_CabinOrders).Include(x => x.Details).ExecuteCommand();
                         }
                         else if (order.order_type == "3")//鍏ュ簱閫�鏂�
                         {
@@ -148,11 +148,9 @@
                             var content = _cabinOrderServices.CreateCheckInOrder(order);
                             if (!content.Status) throw new Exception(content.Message);
                         }
-                        _unitOfWorkManage.CommitTran();
                     }
                     catch (Exception ex)
                     {
-                        _unitOfWorkManage.RollbackTran();
                         _messageInfoService.AddMessageInfo(messageGroupBy, name, ex.Message, messageStatus);
                         //SendErrorToUpstream(1, "", ex.Message, "");
                         //return responseContent.Error("鍚屾澶辫触: " + ex.Message);
@@ -171,7 +169,7 @@
         #endregion
 
         #region 鑾峰彇ERP鍑哄簱鍗�
-        static string SearchOutDate = "2025-09-10 00:00:00";
+        static string SearchOutDate = "2025-10-30 00:00:00";
         public WebResponseContent GetUpstreamOutOrder()
         {
             var responseContent = new WebResponseContent();
@@ -186,15 +184,15 @@
                     searchDate = SearchOutDate
                     //searchDate = "2022-10-10 20:45:16"  // 姝g‘鐨勬牸寮�
                 };
-                SearchOutDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
+                SearchOutDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
 
                 var result = HttpHelper.Post(url, requestData.ToJsonString());
                 var response = JsonConvert.DeserializeObject<UpstreamResponse<UpstramOutOrderInfo>>(result);
 
-                if (response.resultCode != "0")
+                if (response==null||response.resultCode != "0")
                 {
                     //SendErrorToUpstream(3, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
-                    return responseContent.Error(response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触");
+                    return responseContent.Error(response?.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触");
                 }
 
                 if (response.data == null || !response.data.Any())
@@ -203,7 +201,7 @@
                 }
                 var ordernos = response.data.Select(x => x.order_no).ToList();
                 // 宸插瓨鍦ㄥ嚭搴撳崟鍙�
-                var existingOutOrderNos = _deliveryOrderServices.Db.Queryable<Dt_DeliveryOrder>()
+                var existingOutOrderNos = _deliveryOrderServices.Db.CopyNew().Queryable<Dt_DeliveryOrder>()
                     .Where(x => ordernos.Contains(x.Out_no))
                     .Select(x => x.Out_no)
                     .Distinct().ToList();
@@ -229,7 +227,6 @@
                 {
                     try
                     {
-                        _unitOfWorkManage.BeginTran();
                         if (outorder.order_type == "1") // 姝e父鍑哄簱鍗�
                         {
                             name = "鍒涘缓姝e父鍑哄簱鍗�";
@@ -266,7 +263,7 @@
                             if (!responseContent.Status) throw new Exception(responseContent.Message);
                             List<Dt_CabinOrder>? dt_CabinOrders = responseContent.Data as List<Dt_CabinOrder>;
                             if (dt_CabinOrders != null && dt_CabinOrders.Count > 0)
-                                _cabinOrderServices.Db.InsertNav(dt_CabinOrders).Include(x => x.Details).ExecuteCommand();
+                                _cabinOrderServices.Db.CopyNew().InsertNav(dt_CabinOrders).Include(x => x.Details).ExecuteCommand();
                             #endregion
                         }
                         else if (outorder.order_type == "6")//鎶ユ崯鍑哄簱
@@ -276,11 +273,9 @@
                             var content = _deliveryOrderServices.CreateCheckOutOrder(outorder);
                             if (!content.Status) throw new Exception(content.Message);
                         }
-                        _unitOfWorkManage.CommitTran();
                     }
                     catch (Exception ex)
                     {
-                        _unitOfWorkManage.RollbackTran();
                         _messageInfoService.AddMessageInfo(messageGroupBy, name, ex.Message, messageStatus);
                         //SendErrorToUpstream(3, "", ex.Message, "");
                         //return responseContent.Error("鍚屾澶辫触: " + ex.Message);
@@ -316,15 +311,15 @@
                 // 3. 鍐嶈繃婊ゆ帀涓嶇鍚堟潯浠剁殑鏄庣粏锛堝彧淇濈暀 Status=0锛�
                 foreach (var order in orders)
                 {
-                    Console.WriteLine($"璁㈠崟 {order.Order_no} 鍘熸槑缁嗘暟锛歿order.Details.Count}");
+                    //Console.WriteLine($"璁㈠崟 {order.Order_no} 鍘熸槑缁嗘暟锛歿order.Details.Count}");
                     order.Details = order.Details.Where(d => d.Status == 0).ToList();
-                    Console.WriteLine($"璁㈠崟 {order.Order_no} 杩囨护鍚庢槑缁嗘暟锛歿order.Details.Count}");
+                    //Console.WriteLine($"璁㈠崟 {order.Order_no} 杩囨护鍚庢槑缁嗘暟锛歿order.Details.Count}");
                 }
 
 
-                if (orders == null || !orders.Any())
+                if (orders.Count < 1)
                 {
-                    Console.WriteLine("娌℃湁绗﹀悎鏉′欢鐨勮鍗曢渶瑕佹帹閫�");
+                    //Console.WriteLine("娌℃湁绗﹀悎鏉′欢鐨勮鍗曢渶瑕佹帹閫�");
                     return WebResponseContent.Instance.Error("娌℃湁绗﹀悎鏉′欢鐨勮鍗曢渶瑕佹帹閫�");
                 }
 
@@ -395,9 +390,10 @@
                     }
                     else
                     {
+                        continue;
                         //SendErrorToUpstream(3, order.Order_no, resp?.msg ?? "WCS 鎺ㄩ�佸け璐�", "");
-                        Console.WriteLine($"璁㈠崟 {order.Order_no} 鎺ㄩ�佸け璐ワ細{resp?.msg}");
-                        return new WebResponseContent { Status = false, Message = "璁㈠崟鎺ㄩ�佸け璐�" };
+                        //Console.WriteLine($"璁㈠崟 {order.Order_no} 鎺ㄩ�佸け璐ワ細{resp?.msg}");
+                        //return new WebResponseContent { Status = false, Message = "璁㈠崟鎺ㄩ�佸け璐�" };
                     }
                 }
                 return new WebResponseContent { Status = true, Message = "鎺ㄩ�佹垚鍔�" };
@@ -430,9 +426,9 @@
                     order.Details = order.Details.Where(d => d.Status == 0).ToList();
                 }
 
-                if (outOrders == null || !outOrders.Any())
+                if (outOrders.Count < 1)
                 {
-                    Console.WriteLine("娌℃湁绗﹀悎鏉′欢鐨勮鍗曢渶瑕佹帹閫�");
+                    //Console.WriteLine("娌℃湁绗﹀悎鏉′欢鐨勮鍗曢渶瑕佹帹閫�");
                     return responseContent.Error("娌℃湁绗﹀悎鏉′欢鐨勮鍗曢渶瑕佹帹閫�");
                 }
 
@@ -493,13 +489,13 @@
                         if (resp != null && resp.code == "0")
                         {
                             // 鏇存柊琛ㄥご鐘舵��
-                            _cabinDetailServices.Db.Updateable<Dt_DeliveryOrder>()
+                            _cabinDetailServices.Db.CopyNew().Updateable<Dt_DeliveryOrder>()
                               .SetColumns(o => new Dt_DeliveryOrder { OutStatus = "寮�濮�" })
                               .Where(o => o.Id == order.Id)
                               .ExecuteCommand();
 
                             // 鏇存柊鏄庣粏鐘舵��
-                            _deliveryOrderDetailServices.Db.Updateable<Dt_DeliveryOrderDetail>()
+                            _deliveryOrderDetailServices.Db.CopyNew().Updateable<Dt_DeliveryOrderDetail>()
                               .SetColumns(d => new Dt_DeliveryOrderDetail { Status = 1, OotDetailStatus = "寮�濮�" })
                               .Where(d => d.DeliveryOrderId == order.Id && d.Status == 0)
                               .ExecuteCommand();
@@ -507,15 +503,16 @@
                         }
                         else
                         {
+                            continue;
                             //SendErrorToUpstream(3, order.Out_no, resp?.msg ?? "WCS 鎺ㄩ�佸け璐�", "");
-                            Console.WriteLine($"璁㈠崟 {order.Out_no} 鎺ㄩ�佸け璐ワ細{resp?.msg}");
+                            //Console.WriteLine($"璁㈠崟 {order.Out_no} 鎺ㄩ�佸け璐ワ細{resp?.msg}");
                         }
                         //鍒犻櫎鍏ㄩ儴鐘朵负宸插畬鎴愮殑鏄庣粏鍜岃〃澶达紝绉诲叆鍘嗗彶琛�
                     }
                     catch (Exception ex)
                     {
                         //SendErrorToUpstream(3, order.Out_no, ex.Message, "");
-                        Console.WriteLine($"璁㈠崟 {order.Out_no} 鎺ㄩ�佸紓甯革細{ex.Message}");
+                        //Console.WriteLine($"璁㈠崟 {order.Out_no} 鎺ㄩ�佸紓甯革細{ex.Message}");
                     }
                 }
 
@@ -523,7 +520,7 @@
             }
             catch (Exception ex)
             {
-                Console.WriteLine("EdiOut 寮傚父锛�" + ex.Message);
+                //Console.WriteLine("EdiOut 寮傚父锛�" + ex.Message);
                 return responseContent.Error("鍑哄簱璁㈠崟鎺ㄩ�佸け璐ワ細" + ex.Message);
             }
         }
@@ -545,7 +542,7 @@
                 var inorders = _cabinOrderServices.Repository.QueryData(x => x.OdrderStatus == "宸插畬鎴�").Select(x => x.Order_no).Distinct().ToList();
                 foreach (var inorder in inorders)
                 {
-                    var Orders = _cabinOrderServices.Db.Queryable<Dt_CabinOrder>().Where(x => x.Order_no == inorder).Includes(x => x.Details).ToList();
+                    var Orders = _cabinOrderServices.Db.CopyNew().Queryable<Dt_CabinOrder>().Where(x => x.Order_no == inorder).Includes(x => x.Details).ToList();
 
                     if (!Orders.Where(x => x.OdrderStatus != "宸插畬鎴�").Any())
                     {
@@ -568,7 +565,7 @@
 
                             var result = HttpHelper.Post(url, new { order_no = inorder }.ToJsonString());
                             var response = JsonConvert.DeserializeObject<UpstreamOrderResponse>(result);
-                            if (response.resultCode == "0")
+                            if (response != null&&response.resultCode == "0")
                             {
                                 foreach (var item in Orders)
                                 {
@@ -589,7 +586,7 @@
                                 continue;
                             }
                         }
-                        
+
 
                     }
                 }
@@ -621,7 +618,7 @@
                 var outorders = _deliveryOrderServices.Repository.QueryData(x => x.OutStatus == "宸插畬鎴�").Select(x => x.Out_no).Distinct().ToList();
                 foreach (var outorder in outorders)
                 {
-                    var Orders = _deliveryOrderServices.Db.Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == outorder).Includes(x => x.Details).ToList();
+                    var Orders = _deliveryOrderServices.Db.CopyNew().Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == outorder).Includes(x => x.Details).ToList();
 
                     if (!Orders.Where(x => x.OutStatus != "宸插畬鎴�").Any())
                     {
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs"
index 50d8b4e..853c420 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs"
@@ -486,6 +486,7 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
+                _unitOfWorkManage.BeginTran();
                 string WareCodeMJ = WarehouseEnum.楹荤簿搴�.ObjToInt().ToString("000");
                 string WareCodeLD = WarehouseEnum.鍐峰喕搴�.ObjToInt().ToString("000");
                 #region 鐗规畩搴撴埧
@@ -747,9 +748,11 @@
                         }
                     }
                 }
+                _unitOfWorkManage.CommitTran();
             }
             catch (Exception ex)
             {
+                _unitOfWorkManage.RollbackTran();
                 //_messageInfoService.AddMessageInfo(MessageGroupByEnum.InOrderAlarm, "鍒涘缓鐩樼泩鍏ュ簱鍗�", ex.Message);
                 content.Error(ex.Message);
             }
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs"
index edbeaf3..9883488 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/DeliveryOrderServices.cs"
@@ -71,6 +71,7 @@
             WebResponseContent webResponseContent = new WebResponseContent();
             try
             {
+                _unitOfWorkManage.BeginTran();
                 Dt_Tactics tactics = _tacticsService.Repository.QueryFirst(x => x.TacticeName == "鍑哄簱绛栫暐");
                 #region 鐗规畩搴撴埧鍑哄簱
                 string WareCodeMJ = WarehouseEnum.楹荤簿搴�.ObjToInt().ToString("000");
@@ -98,7 +99,7 @@
                             Status = 2, // pad骞冲簱锛屾棤闇�鍚屾
                         }).ToList()
                     };
-                    BaseDal.Db.InsertNav(entityOrder).Include(x => x.Details).ExecuteCommand();
+                    BaseDal.Db.CopyNew().InsertNav(entityOrder).Include(x => x.Details).ExecuteCommand();
                     #endregion
                     #region 澶勭悊搴撳瓨銆佸簱瀛樻壒娆°�佹坊鍔犲嚭搴撲换鍔�
                     List<Dt_SupplyTask> supplyTasks = new List<Dt_SupplyTask>();
@@ -448,15 +449,17 @@
                         }
                     }
                     if (entityOrder.Details.Count > 0)
-                        BaseDal.Db.InsertNav(entityOrder).Include(x => x.Details).ExecuteCommand();
+                        BaseDal.Db.CopyNew().InsertNav(entityOrder).Include(x => x.Details).ExecuteCommand();
                     if (entityOrderLK.Details.Count > 0)
-                        BaseDal.Db.InsertNav(entityOrderLK).Include(x => x.Details).ExecuteCommand();
+                        BaseDal.Db.CopyNew().InsertNav(entityOrderLK).Include(x => x.Details).ExecuteCommand();
                     #endregion
                 }
+                _unitOfWorkManage.CommitTran();
                 webResponseContent.OK();
             }
             catch (Exception ex)
             {
+                _unitOfWorkManage.RollbackTran();
                 webResponseContent.Error(ex.Message);
             }
             return webResponseContent;
@@ -469,6 +472,7 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
+                _unitOfWorkManage.BeginTran();
                 string WareCodeMJ = WarehouseEnum.楹荤簿搴�.ObjToInt().ToString("000");
                 string WareCodeLD = WarehouseEnum.鍐峰喕搴�.ObjToInt().ToString("000");
                 #region 鐗规畩搴撴埧
@@ -725,12 +729,15 @@
                             //Repository.AddData(entityOrder);
                             #endregion
                         }
-                        return WebResponseContent.Instance.OK("鎴愬姛");
+                        //return WebResponseContent.Instance.OK("鎴愬姛");
                     }
                 }
+                _unitOfWorkManage.CommitTran();
+                return WebResponseContent.Instance.OK("鎴愬姛");
             }
             catch (Exception ex)
             {
+                _unitOfWorkManage.RollbackTran();
                 content.Error(ex.Message);
             }
             return content;
@@ -745,7 +752,7 @@
             try
             {
                 // 1锔忊儯 鏌ユ壘鎸囧畾鎵规涓庣墿鏂欑殑搴撳瓨淇℃伅
-                var batchInfo = BaseDal.Db.Queryable<Dt_Inventory_Batch>()
+                var batchInfo = BaseDal.Db.CopyNew().Queryable<Dt_Inventory_Batch>()
                     .Where(x => x.BatchNo == batchNo && x.MaterielCode == goodsNo)
                     .First();
 
@@ -887,7 +894,7 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
-                Dt_DeliveryOrder? cabinOrder = BaseDal.Db.Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == supplyTask.OrderNo && x.Warehouse_no == supplyTask.WarehouseCode).Includes(x => x.Details).First();
+                Dt_DeliveryOrder? cabinOrder = BaseDal.Db.CopyNew().Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == supplyTask.OrderNo && x.Warehouse_no == supplyTask.WarehouseCode).Includes(x => x.Details).First();
                 if (cabinOrder == null) return WebResponseContent.Instance.Error($"鍑哄簱鍗曞凡瀹屾垚");
 
                 Dt_DeliveryOrderDetail? cabinOrderDetail = cabinOrder.Details.Where(x => x.Batch_num == supplyTask.BatchNo && x.Reservoirarea == supplyTask.WarehouseCode && x.Goods_no == supplyTask.MaterielCode).FirstOrDefault();
@@ -911,7 +918,7 @@
                     //_deliveryOrderDetailServices.Repository.DeleteAndMoveIntoHty(cabinOrderDetail, OperateTypeEnum.鑷姩瀹屾垚);
                 }
                 _deliveryOrderDetailServices.Repository.UpdateData(cabinOrderDetail);
-                var cabinOrder1 = BaseDal.Db.Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == cabinOrder.Out_no && x.Warehouse_no == supplyTask.WarehouseCode && x.Out_type != "20").Includes(x => x.Details).First();
+                var cabinOrder1 = BaseDal.Db.CopyNew().Queryable<Dt_DeliveryOrder>().Where(x => x.Out_no == cabinOrder.Out_no && x.Warehouse_no == supplyTask.WarehouseCode && x.Out_type != "20").Includes(x => x.Details).First();
                 if (!cabinOrder1.Details.Where(x => x.OotDetailStatus != "宸插畬鎴�").Any())
                     cabinOrder.OutStatus = "宸插畬鎴�";
                 Repository.UpdateData(cabinOrder);
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/InventoryServices.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/InventoryServices.cs"
index 6611878..37bc1f4 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/InventoryServices.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/InventoryServices.cs"
@@ -179,8 +179,12 @@
                                 #endregion
                                 else
                                 {
-                                    if (cabinOrder == null || cabinOrder.OdrderStatus == "宸插畬鎴�")
-                                        throw new Exception($"鍏ュ簱鍗曞凡瀹屾垚");
+                                    if (cabinOrder.OdrderStatus == "宸插畬鎴�")
+                                        return new ApiResponse<Dt_InventoryInfo>
+                                        {
+                                            code = "0",
+                                            msg = "鎴愬姛"
+                                        };
                                     Dt_CabinOrderDetail cabinOrderDetail = cabinOrder.Details.Where(x => x.Goods_no == detail.productCode && x.Batch_num == detail.batchNo && x.Status == 1).First();
                                     if (cabinOrderDetail == null || cabinOrderDetail.OrderDetailStatus == "宸插畬鎴�")
                                         throw new Exception($"鍏ュ簱鍗曟槑缁嗗凡瀹屾垚");
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/MedicineGoodsServices.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/MedicineGoodsServices.cs"
index 7746d1b..b5fbd06 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/MedicineGoodsServices.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/MedicineGoodsServices.cs"
@@ -27,7 +27,7 @@
         }
         public IRepository<Dt_MedicineGoods> Repository => BaseDal;
 
-        static string SearchDate = "2025-10-1 20:45:16";
+        static string SearchDate = "2025-10-30 00:00:00";
 
         /// <summary>
         /// 鑾峰彇鑽搧鍩虹淇℃伅鍚屾鎺ュ彛
@@ -51,27 +51,27 @@
                 if (string.IsNullOrEmpty(SearchDate))
                 {
                     // 榛樿鏌ヨ杩囧幓24灏忔椂鐨勬暟鎹�
-                    SearchDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
+                    SearchDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                 }
                 // 璇锋眰鍙傛暟
                 var requestData = new
                 {
                     searchDate = SearchDate
                 };
-                SearchDate = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd HH:mm:ss");
+                SearchDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                 // 鍙戣捣璇锋眰
                 var result = HttpHelper.Post(url, requestData.ToJsonString());
 
                 // 鍙嶅簭鍒楀寲
                 var response = JsonConvert.DeserializeObject<UpstreamResponse<MedicationsInfo>>(result);
 
-                if (response.resultCode != "0")
+                if (response == null || response.resultCode != "0")
                 {
                     // 璋冪敤寮傚父鎺ュ彛
                     //SendErrorToUpstream(5, "", response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触", "");
-                    return responseContent.Error(response.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触");
+                    return responseContent.Error(response?.resultMsg ?? "涓婃父鎺ュ彛杩斿洖澶辫触");
                 }
-                if (response.data == null || !response.data.Any())
+                if (response.data.Count < 1)
                 {
                     return responseContent.OK("鏃犳柊鑽搧鏁版嵁");
                 }
@@ -93,7 +93,7 @@
                     MaterielSpec = Medicat.model,
                     Factory = Medicat.factory,
                     MaterielUnit = Medicat.unit,//鍗曚綅
-                    MaterielSourceType=MaterielSourceTypeEnum.PurchasePart,
+                    MaterielSourceType = MaterielSourceTypeEnum.PurchasePart,
                     // 浣跨敤 ?? 杩愮畻绗︽彁渚涢粯璁ゅ��
                     MaterielLength = (float?)Medicat.item_length,
                     MaterielWide = (float?)Medicat.item_width,
@@ -108,7 +108,7 @@
                 // 涓�娆℃�ф壒閲忔彃鍏ユ暟鎹簱
                 BaseDal.Db.Insertable(entityList).ExecuteCommand();
 
-                ProductSynchronous();
+                //ProductSynchronous();
                 return responseContent.OK("鍚屾鎴愬姛");
             }
 
@@ -130,8 +130,8 @@
             {
                 //鎶婂皬浠舵湭涓嬪彂鐨勭殑淇℃伅鍜岀瑙勪负0锛屾渶浣庡簱瀛樹负0鐨勮繃婊ゆ帀
                 //var list = BaseDal.Db.Queryable<Dt_MaterielInfo>().Where(x => x.GoodStatusState == "鏈笅鍙�" && x.MaterielSourceType == MaterielSourceTypeEnum.SelfMadePart).ToList();
-                var list = BaseDal.Db.Queryable<Dt_MaterielInfo>().Where(x =>x.MaterielSourceType == MaterielSourceTypeEnum.SelfMadePart&&x.BoxQty!=0&&x.MinQty!=0&& x.GoodStatusState == "鏈笅鍙�").ToList();
-                if (list == null || !list.Any())
+                var list = BaseDal.Db.Queryable<Dt_MaterielInfo>().Where(x => x.MaterielSourceType == MaterielSourceTypeEnum.SelfMadePart && x.BoxQty != 0 && x.MinQty != 0 && x.GoodStatusState == "鏈笅鍙�").ToList();
+                if (list.Count < 1)
                 {
                     return new WebResponseContent().OK("鏃犳湭涓嬪彂鑽搧");
                 }
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/AlarmJob.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/AlarmJob.cs"
index 1244572..94b4d60 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/AlarmJob.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/AlarmJob.cs"
@@ -19,7 +19,7 @@
             _inventoryInfoService = inventoryInfoService;
         }
         //姣忛殧1绉掓墽琛屼竴娆�
-        [Invoke(Begin = "2025-09-01", Interval = 1000 * 60, IsEnabled = true, SkipWhileExecuting = true)]
+        [Invoke(Begin = "2025-09-01", Interval = 1000 * 10, IsEnabled = true, SkipWhileExecuting = true)]
         public void Run()
         {
             //鍐峰簱
@@ -27,6 +27,7 @@
             _equipmentAlarmInforService.getDeviceStatus();
             _inventoryInfoService.GetExpiredAndlow();
             _messageInfoService.GetMessageInfo();
+            Console.WriteLine($"WMS浠诲姟鎵ц缁撴潫锛歿DateTime.Now}");
         }
     }
 }
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/GoodsJob.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/GoodsJob.cs"
index 5153ee3..a7c3fb9 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/GoodsJob.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/GoodsJob.cs"
@@ -12,11 +12,12 @@
             _medicineGoodsServices = medicineGoodsServices;
         }
         //姣忛殧1绉掓墽琛屼竴娆�
-        [Invoke(Begin = "2025-09-01", Interval = 1000 * 30, IsEnabled = true, SkipWhileExecuting = true)]
+        [Invoke(Begin = "2025-09-01", Interval = 1000 * 60, IsEnabled = true, SkipWhileExecuting = true)]
         public void Run()
         {
             _medicineGoodsServices.GetMedicineGoodsInfom();
             _medicineGoodsServices.ProductSynchronous();
+            Console.WriteLine($"鐗╂枡淇℃伅浠诲姟鎵ц缁撴潫锛歿DateTime.Now}");
         }
     }
 }
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/InOrderJob.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/InOrderJob.cs"
index 36bd893..b7b0004 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/InOrderJob.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/InOrderJob.cs"
@@ -6,17 +6,21 @@
     public class InOrderJob : Job
     {
         private readonly IBusiness _business;
-        public InOrderJob(IBusiness  business)
+        public InOrderJob(IBusiness business)
         {
             _business = business;
         }
         //姣忛殧1绉掓墽琛屼竴娆�
-        [Invoke(Begin = "2025-09-01", Interval = 1000 * 30, IsEnabled =true,SkipWhileExecuting = true)]
+        [Invoke(Begin = "2025-09-01", Interval = 1000 * 60 * 10, IsEnabled = true, SkipWhileExecuting = true)]
         public void Run()
         {
             _business.GetUpstreamOrder();
-            _business.EdiIn();
+            _business.GetUpstreamOutOrder();
+            //_business.EdiIn();
+            //_business.CompleteAllOrders();
             _business.CompleteAllOrders();
+            _business.CompleteAllOutOrders();
+            Console.WriteLine($"ERP浠诲姟鎵ц缁撴潫锛歿DateTime.Now}");
         }
     }
 }
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/OutOrderJob.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/OutOrderJob.cs"
index 672c4ad..7865117 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/OutOrderJob.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_WMSServer/OutOrderJob.cs"
@@ -11,14 +11,17 @@
             _business = business;
         }
         //姣忛殧1绉掓墽琛屼竴娆�
-        [Invoke(Begin = "2025-09-01", Interval = 1000 * 30, IsEnabled = true, SkipWhileExecuting = true)]
+        [Invoke(Begin = "2025-09-01", Interval = 1000 * 60, IsEnabled = true, SkipWhileExecuting = true)]
         public void Run()
         {
             //鑾峰彇涓婃父鍑哄簱鍗曟暟鎹�
-            _business.GetUpstreamOutOrder();
-            //涓嬪彂wcs
+
+
+            _business.EdiIn();
             _business.EdiOut();
-            _business.CompleteAllOutOrders();
+
+            
+            Console.WriteLine($"WCS浠诲姟鎵ц缁撴潫锛歿DateTime.Now}");
 
         }
     }

--
Gitblit v1.9.3