李狗蛋 69cf26105d 0
2025-03-14 10:00:24 +08:00

61 lines
2.3 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using Kingdee.BOS.Core.Metadata;
using Kingdee.BOS.Core.Report.PlugIn;
using Kingdee.BOS.Core.Report.PlugIn.Args;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Pilot.Report.Exploitation.ResultsKanbanSummary
{
[Description("【报表表单插件】绩效看板汇总报表插件"), HotUpdate]
public class ResultsReportServicePlugIn: AbstractSysReportPlugIn
{
List<string> _rates = new string[] { "AttainmentRate", "SameGrowthRate", "PaymentRate" }.ToList();
public override void FormatCellValue(FormatCellValueArgs args)
{
// 格式化日期
base.FormatCellValue(args);
if (args.Header.ColType == Kingdee.BOS.SqlStorageType.SqlDatetime)
{
DateTime value = Convert.ToDateTime(args.FormateValue);
string afterValue = value.ToString("yyyy-MM-dd");
args.FormateValue = afterValue;
}
// 格式化金额 汇率不格式化
if (args.Header.ColType == Kingdee.BOS.SqlStorageType.SqlDecimal)
{
decimal value = decimal.Parse(args.FormateValue);
// 千分位
string afterValue = value.ToString("N");
args.FormateValue = afterValue;
}
if (args.Header.ColType == Kingdee.BOS.SqlStorageType.Sqlvarchar && _rates.Contains(args.Header.Key))
{
decimal value = decimal.Parse(args.FormateValue);
// 不显示小数
string afterValue = value.ToString("N") + "%"; // "F" 表示固定点格式,"0" 表示小数位数为0
args.FormateValue = afterValue;
}
}
public override void OnFormatRowConditions(ReportFormatConditionArgs args)
{
base.OnFormatRowConditions(args);
//行背景色FROWNO为偶数的行背景色设为灰色
if (Convert.ToInt32(args.DataRow["Sort"]) == 0 || Convert.ToInt32(args.DataRow["Sort"]) == 3)
{
FormatCondition FRow_FC = new FormatCondition()
{
BackColor = "#FCE4D6",
};
args.FormatConditions.Add(FRow_FC);
}
}
}
}