61 lines
2.3 KiB
C#
61 lines
2.3 KiB
C#
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);
|
||
}
|
||
}
|
||
}
|
||
}
|