From a46b0171f379cd03149ea1e7d8c204ffd8b980a9 Mon Sep 17 00:00:00 2001 From: chenyong <chenyong@hnkhzn.com> Date: 星期四, 22 五月 2025 16:11:53 +0800 Subject: [PATCH] 新增二楼大屏接口,以及二楼大屏前端 --- Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs | 155 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 155 insertions(+), 0 deletions(-) diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs index 08c99d2..94fcd69 100644 --- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs +++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs @@ -4,6 +4,7 @@ using WIDESEA_Core.Const; using WIDESEA_DTO.MOM; using WIDESEA_DTO.WMS; +using WIDESEA_Model.Models.Basic; using WIDESEAWCS_Model.Models; using WIDESEAWCS_QuartzJob.Models; @@ -1360,6 +1361,160 @@ } return content; } + /// <summary> + /// 鑾峰彇浠诲姟绫诲瀷鎻忚堪鏂规硶 + /// </summary> + /// <param name="taskType"></param> + /// <returns></returns> + private string GetTaskTypeDesc(int taskType) + { + return taskType switch + { + (int)TaskInboundTypeEnum.Inbound => TaskInboundTypeEnum.Inbound.GetIntegralRuleTypeEnumDesc(), + (int)TaskInboundTypeEnum.InTray => TaskInboundTypeEnum.InTray.GetIntegralRuleTypeEnumDesc(), + (int)TaskInboundTypeEnum.InNG => TaskInboundTypeEnum.InNG.GetIntegralRuleTypeEnumDesc(), + (int)TaskInboundTypeEnum.InQuality => TaskInboundTypeEnum.InQuality.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutboundTypeEnum.OutTray => TaskOutboundTypeEnum.OutTray.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutboundTypeEnum.Outbound => TaskOutboundTypeEnum.Outbound.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutboundTypeEnum.OutNG => TaskOutboundTypeEnum.OutNG.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutboundTypeEnum.InToOut=> TaskOutboundTypeEnum.InToOut.GetIntegralRuleTypeEnumDesc(), + }; + } #endregion + + #region 澶у睆鎺ュ彛 + + /// <summary> + /// 鑾峰彇浠诲姟淇℃伅 + /// </summary> + /// <returns></returns> + public WebResponseContent GetTaskInfo() + { + WebResponseContent content = new WebResponseContent(); + try + { + var task = BaseDal.QueryData(x => true).ToList(); + var newTask = task.Select(x => new + { + x.PalletCode, + x.Roadway, + x.SourceAddress, + x.TargetAddress, + x.ProductionLine, + TaskType = new List<string> { GetTaskTypeDesc(x.TaskType) }[0], // 姣忎釜浠诲姟鐙珛鐢熸垚 TaskType + TaskState = new List<string> { GetTaskStateDesc(x.TaskState) }[0] // 姣忎釜浠诲姟鐙珛鐢熸垚 TaskState + }).ToList(); + + return content.OK(data: newTask); + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + } + // 瀹氫箟鑾峰彇浠诲姟鐘舵�佹弿杩版柟娉� + private string GetTaskStateDesc(int? taskState) + { + return taskState switch + { + (int)TaskInStatusEnum.InNew => TaskInStatusEnum.InNew.GetIntegralRuleTypeEnumDesc(), + (int)TaskInStatusEnum.Line_InExecuting => TaskInStatusEnum.Line_InExecuting.GetIntegralRuleTypeEnumDesc(), + (int)TaskInStatusEnum.Line_InFinish => TaskInStatusEnum.Line_InFinish.GetIntegralRuleTypeEnumDesc(), + (int)TaskInStatusEnum.SC_InExecuting => TaskInStatusEnum.SC_InExecuting.GetIntegralRuleTypeEnumDesc(), + (int)TaskInStatusEnum.SC_InFinish => TaskInStatusEnum.SC_InFinish.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutStatusEnum.OutNew => TaskOutStatusEnum.OutNew.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutStatusEnum.SC_OutExecuting => TaskOutStatusEnum.SC_OutExecuting.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutStatusEnum.SC_OutFinish => TaskOutStatusEnum.SC_OutFinish.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutStatusEnum.Line_OutExecuting => TaskOutStatusEnum.Line_OutExecuting.GetIntegralRuleTypeEnumDesc(), + (int)TaskOutStatusEnum.Line_OutFinish => TaskOutStatusEnum.Line_OutFinish.GetIntegralRuleTypeEnumDesc(), + }; + } + /// <summary> + /// 鑾峰彇搴撳瓨淇℃伅 + /// </summary> + /// <returns></returns> + public WebResponseContent GetStockInfo() + { + WebResponseContent content = new WebResponseContent(); + try + { + var now = DateTime.Now; + var startOfDay = new DateTime(now.Year, now.Month, now.Day); + var endOfDay = startOfDay.AddDays(1); + var filteredItems = _stockInfoRepository.Db.Queryable<DtStockInfo>() + .Where(x => x.OutboundTime >= startOfDay && x.OutboundTime < endOfDay && x.IsFull) + .Includes(x => x.StockInfoDetails) + .ToList(); + + var result = filteredItems + .GroupBy(x => x.AreaCode) + .Select(g => new GroupedStockInfo + { + AreaCode = g.Key, + TotalQuantity = g.Sum(item => item.StockInfoDetails?.Count ?? 0), + Items = g.ToList() + }) + .ToList(); + return content.OK(data: result); + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + } + /// <summary> + /// 鑾峰彇璐т綅鐘舵�� + /// </summary> + /// <returns></returns> + public WebResponseContent GetStockQuantity() + { + WebResponseContent content = new WebResponseContent(); + try + { + var location = _locationRepository.Db.Queryable<DtLocationInfo>().ToList(); + + return content.OK(data: location); + + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + } + public WebResponseContent Getproductionvolume() + { + WebResponseContent content = new WebResponseContent(); + try + { + var now = DateTime.Now; + var startOfDay = new DateTime(now.Year, now.Month, now.Day); + var endOfDay1 = startOfDay.AddDays(-7); + var taskHty = _task_HtyRepository.Db.Queryable<Dt_Task_Hty>().Where(it => it.CreateDate > endOfDay1).ToList(); + return content.OK(data: taskHty); + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + + } + + public WebResponseContent Getoutput() + { + WebResponseContent content = new WebResponseContent(); + try + { + var now = DateTime.Now; + var firstDayOfYear = new DateTime(now.Year, 1, 1); + var taskHty = _task_HtyRepository.Db.Queryable<Dt_Task_Hty>().Where(it => it.CreateDate > firstDayOfYear && it.TaskType == 100).ToList(); + return content.OK(data: taskHty); + } + catch (Exception ex) + { + return content.Error(ex.Message); + } + + } + #endregion } \ No newline at end of file -- Gitblit v1.9.3