From 9be8d6e3232971246ec6cb2acac1ad4d05798e9b Mon Sep 17 00:00:00 2001
From: hutongqing <hutongqing@hnkhzn.com>
Date: 星期六, 11 一月 2025 10:54:37 +0800
Subject: [PATCH] 1

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs |   73 ++++++++++++++++++++++++++++++++----
 1 files changed, 64 insertions(+), 9 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs"
index 220c2a5..e93ce7b 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/PalletCodeInfoService.cs"
@@ -18,9 +18,12 @@
     public class PalletCodeInfoService : ServiceBase<Dt_PalletCodeInfo, IPalletCodeInfoRepository>, IPalletCodeInfoService
     {
         private readonly IWarehouseRepository _warehouseRepository;
-        public PalletCodeInfoService(IPalletCodeInfoRepository BaseDal, IWarehouseRepository warehouseRepository) : base(BaseDal)
+        private readonly IPalletTypeInfoRepository _palletTypeInfoRepository;
+
+        public PalletCodeInfoService(IPalletCodeInfoRepository BaseDal, IWarehouseRepository warehouseRepository, IPalletTypeInfoRepository palletTypeInfoRepository) : base(BaseDal)
         {
             _warehouseRepository = warehouseRepository;
+            _palletTypeInfoRepository = palletTypeInfoRepository;
         }
 
         static object locker = new object();
@@ -51,9 +54,9 @@
                 {
                     serialNo = 1;
                 }
-                Dt_Warehouse _Warehouse = _warehouseRepository.QueryFirst(x=>x.WarehouseId== warehouseId);
-
-                string uplen = _Warehouse.WarehouseCode switch
+                Dt_Warehouse _Warehouse = _warehouseRepository.QueryFirst(x => x.WarehouseId == warehouseId);
+                string uplen = "";
+                switch (_Warehouse.WarehouseCode)
                 {
                     "HA57" => "B",
                     "HA58" => "P",
@@ -67,11 +70,11 @@
                 };
                 for (int i = 0; i < count; i++)
                 {
-                    
+
                     palletCodeInfos.Add(new Dt_PalletCodeInfo
                     {
                         SerialNo = serialNo,
-                        PalletCode = uplen+now.ToString("yyyyMMdd") + serialNo.ToString().PadLeft(3, '0'),
+                        PalletCode = uplen + now.ToString("yyyyMMdd") + serialNo.ToString().PadLeft(3, '0'),
                         PalletType = 1,
                         PalletTypeId = 0,
                         WarehouseId = warehouseId,
@@ -84,13 +87,65 @@
                 return base.AddData(palletCodeInfos);
             }
         }
+
+        public WebResponseContent AddData(int warehouseId, int count, int palletTypeId)
+        {
+            try
+            {
+                Dt_PalletTypeInfo palletTypeInfo = _palletTypeInfoRepository.QueryFirst(x => x.Id == palletTypeId && x.WarehouseId == warehouseId);
+                if (palletTypeInfo == null)
+                {
+                    return WebResponseContent.Instance.Error($"鏈壘鍒版墭鐩樼被鍨嬮厤缃俊鎭�");
+                }
+                lock (locker)
+                {
+                    List<Dt_PalletCodeInfo> palletCodeInfos = new List<Dt_PalletCodeInfo>();
+                    int serialNo = 0;
+                    DateTime now = DateTime.Now;
+                    Dt_PalletCodeInfo palletCodeInfo = BaseDal.QueryFirst(x => x.WarehouseId == warehouseId, new Dictionary<string, OrderByType> { { nameof(Dt_PalletCodeInfo.SerialNo), OrderByType.Desc } });
+                    if (palletCodeInfo != null && palletCodeInfo.CreateDate.Year == now.Year && palletCodeInfo.CreateDate.Month == now.Month && palletCodeInfo.CreateDate.Day == now.Day)
+                    {
+                        serialNo = palletCodeInfo.SerialNo + 1;
+
+                    }
+                    else
+                    {
+                        serialNo = 1;
+                    }
+
+                    for (int i = 0; i < count; i++)
+                    {
+
+                        palletCodeInfos.Add(new Dt_PalletCodeInfo
+                        {
+                            SerialNo = serialNo,
+                            PalletCode = palletTypeInfo.CodeStartStr + now.ToString("yyyyMMdd") + serialNo.ToString().PadLeft(3, '0'),
+                            PalletType = 1,
+                            PalletTypeId = 0,
+                            WarehouseId = warehouseId,
+                            Status = 0,
+                            Size = 0
+                        });
+
+                        serialNo = serialNo + 1;
+                    }
+                    BaseDal.AddData(palletCodeInfos);
+                }
+                return WebResponseContent.Instance.OK();
+            }
+            catch(Exception ex)
+            {
+                return WebResponseContent.Instance.Error(ex.Message);
+            }
+        }
+
         public WebResponseContent PrintStatusUp(string printCode)
         {
             WebResponseContent content = new WebResponseContent();
             try
             {
-                Dt_PalletCodeInfo palletCodeInfo = BaseDal.QueryFirst(x=>x.PalletCode==printCode);
-                if (palletCodeInfo==null)
+                Dt_PalletCodeInfo palletCodeInfo = BaseDal.QueryFirst(x => x.PalletCode == printCode);
+                if (palletCodeInfo == null)
                 {
                     return content.Error("鎵撳嵃鐨勬墭鐩樼爜涓嶅瓨鍦�");
                 }
@@ -100,7 +155,7 @@
             }
             catch (Exception ex)
             {
-                content.Error("閿欒:"+ex.Message);
+                content.Error("閿欒:" + ex.Message);
             }
             return content;
         }

--
Gitblit v1.9.3