This commit is contained in:
李狗蛋 2025-03-23 20:10:52 +08:00
parent 0cf24f34c1
commit 064bd4be1b

View File

@ -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<string> xsyList = new List<string>();
//循环获取物料信息
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<SummaryField> 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;
}
}