| | |
| | | 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; |
| | | |
| | |
| | | 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> |
| | |
| | | //è¿çéä¸é |
| | | 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(); |
| | | } |
| | |
| | | |
| | | |
| | | |
| | | 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; |
| | | } |
| | | } |
| | | } |