From f9c7ed5ec6c23a15ec3a6aba9f9c1ca18ea799bd Mon Sep 17 00:00:00 2001 From: "qianhao.xu" Date: Mon, 17 Mar 2025 11:42:27 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=AC=E6=9C=88=E5=90=84=E7=BB=84=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E6=97=B6=E9=97=B4=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MES/BI/AndonDataAnalysisService.cs | 47 ++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/DOAN.Service/MES/BI/AndonDataAnalysisService.cs b/DOAN.Service/MES/BI/AndonDataAnalysisService.cs index f70547c..ff3cfd7 100644 --- a/DOAN.Service/MES/BI/AndonDataAnalysisService.cs +++ b/DOAN.Service/MES/BI/AndonDataAnalysisService.cs @@ -236,7 +236,52 @@ namespace DOAN.Service.MES.BI /// public EchartsOptions MonthLineShutDown() { - return null; + EchartsOptions echartsOptions = new EchartsOptions(); + echartsOptions.Title = new EchartsTitle { Text = "本月各组异常时间统计", SubText = "本月各组异常时间统计" }; + + // X轴 + EchartsXAxis echartsXAxis = new EchartsXAxis(); + + echartsXAxis.Data= Context.Queryable().Where(it=>it.Status>0).Select(it=>it.Code).ToList(); + echartsOptions.XAxis = echartsXAxis; + + + //系列 + EchartsSeries echartsSeries = new EchartsSeries(); + echartsSeries.Name = "各组异常时间"; + echartsSeries.Type = "bar"; + + List seriesData = new List(); + + var subquery= Context.Queryable().GroupBy(it => it.LineCode) + .Select(it => new + { + LineCode = it.LineCode, + TotalDuration = SqlFunc.AggregateSum(it.Duration) + }); + + Context.Queryable().LeftJoin(subquery,(r,s)=>r.Code==s.LineCode) + .Select((r, s) => new + { + Code = r.Code, + TotalDuration = SqlFunc.IsNullOrEmpty(s.TotalDuration) ? 0 : s.TotalDuration + }) + .ToList() + .ForEach(it => + { + seriesData.Add(new EchartsSeriesData + { + Name = it.Code, + Value = it.TotalDuration??0 + }); + }); + + echartsSeries.Data=seriesData; + + echartsOptions.Series=new List { echartsSeries }; + + + return echartsOptions; } }