From f4c3f82a3bd142bc555ec7f632dabc66ef86f5af Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期二, 19 八月 2025 16:51:45 +0800
Subject: [PATCH] 11
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Stock/Dt_WheelsStockService.cs | 271 ++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 184 insertions(+), 87 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 c520dd4..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"
@@ -14,6 +14,10 @@
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;
@@ -22,11 +26,13 @@
private readonly IDt_WheelsStock_htyRepository _WheelsStock_HtyRepository;
private readonly IDt_SelectionStandardsRepository _SelectionStandardsRepository;
private readonly IToZYService _toZYService;
- public Dt_WheelsStockService(IDt_WheelsStockRepository BaseDal, IDt_WheelsStock_htyRepository WheelsStock_HtyRepository, IDt_SelectionStandardsRepository selectionStandardsRepository, IToZYService toZYService) : base(BaseDal)
+ 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>
@@ -70,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();
}
@@ -130,109 +135,201 @@
- public Dt_WheelsStock_Old GetSelectionWheels(List<Dt_WheelsStock_Old> wheelsStocks, Dt_SelectionStandards selectionStandards, Dt_CZInfo_mes CZInfo_Mes, string wheelsPosition, string newOrOld)
+ public Dt_WheelsStock_Old GetSelectionWheels(List<Dt_WheelsStock_Old> wheelsStocks, Dt_SelectionStandards selectionStandards, Dt_CZInfo_mes CZInfo_Mes, string wheelsPosition, string newOrOld, string wheelsProps)
{
- //杩囩泩閲忎笂闄�
- decimal selectionUpperValue = selectionStandards.upperValue;
- //杩囩泩閲忎笅闄�
- decimal selectionLowerValue = selectionStandards.lowerValue;
-
- decimal mesStand = 0;
- string level = string.Empty;
-
-
- if ("left".Equals(wheelsPosition)) //鍖归厤宸﹁疆搴ц疆瀛�
+ try
{
- 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 = "";
+ //杩囩泩閲忎笂闄�
+ decimal selectionUpperValue = selectionStandards.upperValue;
+ //杩囩泩閲忎笅闄�
+ decimal selectionLowerValue = selectionStandards.lowerValue;
- SaveModel saveModel = new SaveModel();
- saveModel.MainData = new Dictionary<string, object>
+ decimal mesStand = 0;
+ string level = string.Empty;
+
+
+ if ("left".Equals(wheelsPosition)) //鍖归厤宸﹁疆搴ц疆瀛�
{
- { "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;
+ mesStand = decimal.Parse(CZInfo_Mes.ZLZZJ);
+ level = LevelChangeHelper.JkChangeType(CZInfo_Mes.YLZDJ);
+ wheelsStocks = wheelsStocks.Where(x => x.venderno == level && x.repair_item == newOrOld).ToList();
}
-
- if(Wheels_gkcc !="" && Wheels_gkzja!="" && Wheels_gkzjb !="" && Wheels_gkzjc != "")
+ else //鍚﹀垯鍖归厤鍙宠疆搴ц疆瀛�
{
- //鏌ュ嚭鏉ュ湪鑼冨洿涔嬪鐨勮繘琛屽垹闄�
- if (mesStand - (decimal.Parse(Wheels_gkcc)) < selectionLowerValue && mesStand - (decimal.Parse(Wheels_gkcc)) > selectionUpperValue)
- {
+ mesStand = decimal.Parse(CZInfo_Mes.YLZZJ);
+ level = LevelChangeHelper.JkChangeType(CZInfo_Mes.YLZDJ);
- wheelsStocks.Remove(item);
- }
- if (selectionStandards.isCantainGK)
- {
- //鎴潰杩囩泩閲忎笂闄�
- decimal selectionUpperValue_gk = selectionStandards.upperValue_gk;
- //鎴潰杩囩泩閲忎笅闄�
- decimal selectionLowerValue_gk = selectionStandards.lowerValue_gk;
+ 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 = "";
- if ("left".Equals(wheelsPosition))
+ 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)
{
- decimal ZLZA = decimal.Parse(CZInfo_Mes.ZLZA);
- decimal ZLZB = decimal.Parse(CZInfo_Mes.ZLZB);
- decimal ZLZC = decimal.Parse(CZInfo_Mes.ZLZC);
+ wheelsStocks.Remove(item);
+ continue;
+ }
- //鍒ゆ柇鍙栧弽锛岃繘琛屽垹闄�
- 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)
+ 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))
{
- wheelsStocks.Remove(item);
+ 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;
+ }
+
+
}
}
- 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();
}
+ catch (Exception ex)
+ {
- return wheelsStocks.OrderBy(x => x.dt_ins).FirstOrDefault();
+ 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