From b1c2dd1869a51b8f0e4acb9ddeb148f796db147f Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期三, 25 六月 2025 19:10:58 +0800 Subject: [PATCH] 1 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs | 220 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 216 insertions(+), 4 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..6a3ac42 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,15 @@ using WIDESEA_Core; using WIDESEA_StorageBasicRepository; using WIDESEAWCS_BasicInfoRepository; +using WIDESEA_IStoragIntegrationServices; +using WIDESEA.Common; +using WIDESEA_Common.ZY; +using Autofac.Core; +using NetTaste; +using AngleSharp.Io; +using WIDESEA_IRepository; +using WIDESEA_Core.Const; +using WIDESEA_IServices; namespace WIDESEA_StorageBasicService; @@ -16,10 +25,14 @@ { 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; + private readonly ISys_ConfigService _sys_ConfigService; + public Dt_WheelsStockService(IDt_WheelsStockRepository BaseDal, IDt_WheelsStock_htyRepository WheelsStock_HtyRepository, IDt_SelectionStandardsRepository selectionStandardsRepository, IToZYService toZYService, ISys_ConfigService ISys_ConfigService) : base(BaseDal) { _SelectionStandardsRepository = selectionStandardsRepository; _WheelsStock_HtyRepository = WheelsStock_HtyRepository; + _toZYService = toZYService; + _sys_ConfigService = ISys_ConfigService; } /// <summary> @@ -63,17 +76,16 @@ //杩囩泩閲忎笅闄� decimal selectionLowerValue = selectionStandards.lowerValue; - decimal mesStand = 0; string level = string.Empty; if ("left".Equals(wheelsPosition)) //鍖归厤宸﹁疆搴ц疆瀛� { - mesStand = decimal.Parse(CZInfo_Mes.ZLZZJ); + decimal mesStand = decimal.Parse(CZInfo_Mes.ZLZZJ); level = LevelChangeHelper.LevelChangeType(CZInfo_Mes.ZLZDJ); WheelsList = WheelsList.Where(x => mesStand - (decimal.Parse(x.Wheels_gkcc)) >= selectionLowerValue && mesStand - (decimal.Parse(x.Wheels_gkcc)) <= selectionUpperValue && x.Wheels_level == level && x.Wheels_NewOrOld == newOrOld).ToList(); } else //鍚﹀垯鍖归厤鍙宠疆搴ц疆瀛� { - mesStand = decimal.Parse(CZInfo_Mes.YLZZJ); + decimal mesStand = decimal.Parse(CZInfo_Mes.YLZZJ); level = LevelChangeHelper.LevelChangeType(CZInfo_Mes.YLZDJ); WheelsList = WheelsList.Where(x => mesStand - (decimal.Parse(x.Wheels_gkcc)) >= selectionLowerValue && mesStand - (decimal.Parse(x.Wheels_gkcc)) <= selectionUpperValue && x.Wheels_level == level && x.Wheels_NewOrOld == newOrOld).ToList(); } @@ -120,4 +132,204 @@ } 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, string wheelsProps) + { + try + { + //杩囩泩閲忎笂闄� + 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.JkChangeType(CZInfo_Mes.YLZDJ); + wheelsStocks = wheelsStocks.Where(x => x.venderno == level && x.repair_item == newOrOld).ToList(); + } + else //鍚﹀垯鍖归厤鍙宠疆搴ц疆瀛� + { + mesStand = decimal.Parse(CZInfo_Mes.YLZZJ); + level = LevelChangeHelper.JkChangeType(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 = ""; + string clsx = ""; + + SaveModel saveModel = new SaveModel(); + saveModel.MainData = new Dictionary<string, object> + { + { "cltm", item.wheel_code } + }; + WebResponseContent webResponse = _toZYService.ZY_GetCLInfo(saveModel); + if (webResponse.Status) + { + CLInfo_ZY data = (CLInfo_ZY)webResponse.Data; + + if(wheelsProps== data.CLSX) + { + wheelsStocks.Remove(item); + continue; + } + + Wheels_gkcc = data.gkcc; + // 姣傚瓟a鐣岄潰鍧囧�� + Wheels_gkzja = data.GKZJA; + //姣傚瓟b鐣岄潰鍧囧�� + Wheels_gkzjb = data.GKZJB; + //姣傚瓟c鐣岄潰鍧囧�� + Wheels_gkzjc = data.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); + continue; + } + 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); + continue; + } + } + 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); + continue; + } + + + } + } + } + + + } + + return wheelsStocks.OrderBy(x => x.dt_ins).FirstOrDefault(); + } + catch (Exception ex) + { + + throw; + } + } + + public WebResponseContent InventoryStatistics() + { + WebResponseContent content = new WebResponseContent(); + + List<Dt_WheelsStock> stockInfos = BaseDal.QueryData(); + + //鑾峰彇杞﹀瀷 + List<string> Wheels_CarTypeList = stockInfos.Select(x => x.Wheels_CarType).Distinct().ToList(); + List<WheelGroupInfo> groupedData = new List<WheelGroupInfo>(); + + foreach (var CarType in Wheels_CarTypeList) + { + var kd = stockInfos.Where(x => x.Wheels_CarType == CarType).GroupBy(w => w.Wheels_ldxh) + .Select(typeGroup => new WheelGroupInfo + { + Wheels_CarType = CarType, //杞﹀瀷 + Wheels_ldxh = typeGroup.Key, + Count = typeGroup.Count(), + + }).ToList(); + + groupedData.AddRange(kd); + } + content.Data = groupedData; + return content; + } + + + public class WheelGroupInfo + { + public string Wheels_CarType { get; set; } + public string Wheels_ldxh { get; set; } + public int Count { get; set; } + + } + + + public WebResponseContent UpdateInventoryStatue() + { + WebResponseContent content = new WebResponseContent(); + try + { + + List<Dt_WheelsStock> groupedData = new List<Dt_WheelsStock>(); + + var hourpara = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_Parameters, SysConfigConst.InventoryMarket); + int hour = hourpara.ConfigValue.ObjToInt(); //鑾峰彇璁剧疆鐨勯鏈熸椂闂� + + List<Dt_WheelsStock> WheelsList = BaseDal.QueryData(); //鑾峰彇鍏ㄩ儴杞﹁疆淇℃伅 + + foreach (var item in WheelsList) + { + TimeSpan timeDifference = DateTime.Today - item.CreateDate.Date; + item.Wheels_DateDet = (int)timeDifference.TotalDays; + + if (item.Wheels_DateDet >= hour) + { + item.Wheels_Statue = 1; + } + else + { + item.Wheels_Statue = 0; + } + groupedData.Add(item); + } + + BaseDal.UpdateData(groupedData); + + return content.OK(); + } + catch (Exception ex) + { + return content.Error(ex.Message); + throw; + } + } } \ No newline at end of file -- Gitblit v1.9.3