From a11a7e324d2b12a6637d4c84b7c0bc25c27b99cd Mon Sep 17 00:00:00 2001
From: 刘磊 <1161824510@qq.com>
Date: 星期二, 22 四月 2025 11:37:21 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/MeiXinLaiRui/LunDuiYa

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs |  117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 116 insertions(+), 1 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs"
index 73fd5fb..c520dd4 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs"
@@ -9,6 +9,11 @@
 using WIDESEA_Core;
 using WIDESEA_StorageBasicRepository;
 using WIDESEAWCS_BasicInfoRepository;
+using WIDESEA_IStoragIntegrationServices;
+using WIDESEA.Common;
+using WIDESEA_Common.ZY;
+using Autofac.Core;
+using NetTaste;
 
 namespace WIDESEA_StorageBasicService;
 
@@ -16,10 +21,12 @@
 {
     private readonly IDt_WheelsStock_htyRepository _WheelsStock_HtyRepository;
     private readonly IDt_SelectionStandardsRepository _SelectionStandardsRepository;
-    public Dt_WheelsStockService(IDt_WheelsStockRepository BaseDal, IDt_WheelsStock_htyRepository WheelsStock_HtyRepository, IDt_SelectionStandardsRepository selectionStandardsRepository) : base(BaseDal)
+    private readonly IToZYService _toZYService;
+    public Dt_WheelsStockService(IDt_WheelsStockRepository BaseDal, IDt_WheelsStock_htyRepository WheelsStock_HtyRepository, IDt_SelectionStandardsRepository selectionStandardsRepository, IToZYService toZYService) : base(BaseDal)
     {
         _SelectionStandardsRepository = selectionStandardsRepository;
         _WheelsStock_HtyRepository = WheelsStock_HtyRepository;
+        _toZYService = toZYService;
     }
 
     /// <summary>
@@ -120,4 +127,112 @@
         }
         return WheelsList.OrderBy(x => x.CreateDate).FirstOrDefault();
     }
+
+
+
+    public Dt_WheelsStock_Old GetSelectionWheels(List<Dt_WheelsStock_Old> wheelsStocks, Dt_SelectionStandards selectionStandards, Dt_CZInfo_mes CZInfo_Mes, string wheelsPosition, string newOrOld)
+    {
+        //杩囩泩閲忎笂闄�
+        decimal selectionUpperValue = selectionStandards.upperValue;
+        //杩囩泩閲忎笅闄�
+        decimal selectionLowerValue = selectionStandards.lowerValue;
+
+        decimal mesStand = 0;
+        string level = string.Empty;
+
+
+        if ("left".Equals(wheelsPosition))  //鍖归厤宸﹁疆搴ц疆瀛�
+        {
+            mesStand = decimal.Parse(CZInfo_Mes.ZLZZJ);
+            level = LevelChangeHelper.LevelChangeType(CZInfo_Mes.ZLZDJ);
+            wheelsStocks = wheelsStocks.Where(x =>  x.venderno == level && x.repair_item == newOrOld).ToList();
+        }
+        else    //鍚﹀垯鍖归厤鍙宠疆搴ц疆瀛�
+        {
+            mesStand = decimal.Parse(CZInfo_Mes.YLZZJ);
+            level = LevelChangeHelper.LevelChangeType(CZInfo_Mes.YLZDJ);
+            wheelsStocks = wheelsStocks.Where(x =>  x.venderno == level && x.repair_item == newOrOld).ToList();
+        }
+        foreach (var item in wheelsStocks)
+        {
+            string Wheels_gkcc = "";
+            string Wheels_gkzja = "";
+            string Wheels_gkzjb = "";
+            string Wheels_gkzjc = "";
+
+            SaveModel saveModel = new SaveModel();
+            saveModel.MainData = new Dictionary<string, object>
+            {
+                { "cltm", item.wheel_code }
+            };
+            WebResponseContent webResponse= _toZYService.ZY_GetCLInfo(saveModel);
+            if (webResponse.Status)
+            {
+                var dta = JsonConvert.DeserializeObject<CLInfo_ZY>(webResponse.Data.ToString());
+
+                Wheels_gkcc = dta.gkcc;
+                // 姣傚瓟a鐣岄潰鍧囧��
+                Wheels_gkzja = dta.GKZJA;
+                //姣傚瓟b鐣岄潰鍧囧��
+                Wheels_gkzjb = dta.GKZJB;
+                //姣傚瓟c鐣岄潰鍧囧��
+                Wheels_gkzjc = dta.GKZJC;
+            }
+
+            if(Wheels_gkcc !="" && Wheels_gkzja!="" && Wheels_gkzjb !="" && Wheels_gkzjc != "")
+            {
+                //鏌ュ嚭鏉ュ湪鑼冨洿涔嬪鐨勮繘琛屽垹闄�
+                if (mesStand - (decimal.Parse(Wheels_gkcc)) < selectionLowerValue && mesStand - (decimal.Parse(Wheels_gkcc)) > selectionUpperValue)
+                {
+
+                    wheelsStocks.Remove(item);
+                }
+                if (selectionStandards.isCantainGK)
+                {
+                    //鎴潰杩囩泩閲忎笂闄�
+                    decimal selectionUpperValue_gk = selectionStandards.upperValue_gk;
+                    //鎴潰杩囩泩閲忎笅闄�
+                    decimal selectionLowerValue_gk = selectionStandards.lowerValue_gk;
+
+                    if ("left".Equals(wheelsPosition))
+                    {
+                        decimal ZLZA = decimal.Parse(CZInfo_Mes.ZLZA);
+                        decimal ZLZB = decimal.Parse(CZInfo_Mes.ZLZB);
+                        decimal ZLZC = decimal.Parse(CZInfo_Mes.ZLZC);
+
+                        //鍒ゆ柇鍙栧弽锛岃繘琛屽垹闄�
+                        if (ZLZA - (decimal.Parse(Wheels_gkzja)) < selectionLowerValue_gk && ZLZA - (decimal.Parse(Wheels_gkzja)) > selectionUpperValue_gk
+                            && ZLZB - (decimal.Parse(Wheels_gkzjb)) < selectionLowerValue_gk && ZLZB - (decimal.Parse(Wheels_gkzjb)) > selectionUpperValue_gk
+                            && ZLZC - (decimal.Parse(Wheels_gkzjc)) < selectionLowerValue_gk && ZLZC - (decimal.Parse(Wheels_gkzjc)) > selectionUpperValue_gk)
+                        {
+                            wheelsStocks.Remove(item);
+                        }
+                    }
+                    else
+                    {
+                        decimal YLZA = decimal.Parse(CZInfo_Mes.YLZA);
+                        decimal YLZB = decimal.Parse(CZInfo_Mes.YLZB);
+                        decimal YLZC = decimal.Parse(CZInfo_Mes.YLZC);
+
+                        if (YLZA - (decimal.Parse(Wheels_gkzja)) >= selectionLowerValue_gk && YLZA - (decimal.Parse(Wheels_gkzja)) <= selectionUpperValue_gk
+                            && YLZB - (decimal.Parse(Wheels_gkzjb)) >= selectionLowerValue_gk && YLZB - (decimal.Parse(Wheels_gkzjb)) <= selectionUpperValue_gk
+                            && YLZC - (decimal.Parse(Wheels_gkzjc)) >= selectionLowerValue_gk && YLZC - (decimal.Parse(Wheels_gkzjc)) <= selectionUpperValue_gk)
+                        {
+                            wheelsStocks.Remove(item);
+                        }
+
+
+                    }
+                }
+            }
+            
+
+        }
+
+        return wheelsStocks.OrderBy(x => x.dt_ins).FirstOrDefault();
+    }
+
+
+
+    
 }
\ No newline at end of file

--
Gitblit v1.9.3