From 064bd4be1b7275bf406607a859bdf1849c3702ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E7=8B=97=E8=9B=8B?= <12086832+li-goudan233@user.noreply.gitee.com> Date: Sun, 23 Mar 2025 20:10:52 +0800 Subject: [PATCH] 1 --- .../ResultsKanbanSumReport.cs | 48 +++++++++++++------ 1 file changed, 34 insertions(+), 14 deletions(-) diff --git a/Pilot.Report.Exploitation/ResultsKanbanSummary/ResultsKanbanSumReport.cs b/Pilot.Report.Exploitation/ResultsKanbanSummary/ResultsKanbanSumReport.cs index c6ceb42..d62d8b0 100644 --- a/Pilot.Report.Exploitation/ResultsKanbanSummary/ResultsKanbanSumReport.cs +++ b/Pilot.Report.Exploitation/ResultsKanbanSummary/ResultsKanbanSumReport.cs @@ -13,6 +13,9 @@ using Kingdee.BOS.Orm.DataEntity; using System.Data; using Pilot.Report.Exploitation.PublicClass; using Pilot.Report.Exploitation.Common; +using NPOI.SS.Formula.Functions; +using Kingdee.BOS.Core.Enums; +using DocumentFormat.OpenXml.Bibliography; namespace Pilot.Report.Exploitation.ResultsKanbanSummary { @@ -34,7 +37,7 @@ namespace Pilot.Report.Exploitation.ResultsKanbanSummary this.IsCreateTempTableByPlugin = true; // this.IsCreateTempTableByPlugin = true; - // + //支持分组汇总 this.ReportProperty.IsGroupSummary = true; // this.ReportProperty.SimpleAllCols = false; @@ -139,20 +142,37 @@ namespace Pilot.Report.Exploitation.ResultsKanbanSummary StringBuilder strwhere = new StringBuilder(); //创建字符串构建器; var xsy = customFilter["F_Salesperson"] as DynamicObjectCollection; + strwhere.AppendLine("WHERE 1 = 1"); + if (xsy.Count > 0) { + List xsyList = new List(); + //循环获取物料信息 + foreach (DynamicObject dobj in xsy) + { + xsyList.Add(Convert.ToString((dobj["F_Salesperson"] as DynamicObject)["Name"])); + } + strwhere.AppendFormat(string.Format(@"AND 销售员 IN ({0})"),string.Join(",",xsyList.ToArray())); + } + return strwhere.ToString(); + } - //判定为空情况 - if (xsy == null && xsy.Count <= 0) - { - strwhere.AppendLine("where 1=1"); - } - else - { - //当字段不为空时 - strwhere.AppendFormat("where 1=1"); - strwhere.AppendFormat("AND [销售员] IN ({0})",string.Join(",",xsy.Select(n => ObjectUtils.Object2String( - n["F_Salesperson_FName"])))); - } - return strwhere.ToString(); + //设置报表合计列 + public override List GetSummaryColumnInfo(IRptParams filter) + { + var result = base.GetSummaryColumnInfo(filter); + result.Add(new SummaryField("本年业绩目标_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年派诺业绩_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年兴诺业绩_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年武汉派诺_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年碳索业绩_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年香港派诺业绩_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年华夏云联业绩_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("往年订单变更金额_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("本年业绩合计_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("去年合计业绩额_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("回款额_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("已发货应收款_万元", BOSEnums.Enu_SummaryType.SUM)); + result.Add(new SummaryField("已到期应收款_万元", BOSEnums.Enu_SummaryType.SUM)); + return result; } }