Files
zszq-trs/YLErpDAL/Modules/SuperviseReportModule/SAC/Model/PeriodicReportQuarterModel.cs
T
2024-05-09 14:06:26 +08:00

75 lines
3.0 KiB
C#

using System.ComponentModel;
using System.Xml.Serialization;
using YLErp.Modules.SuperviseReportModule.SAC.Common;
using static YLErp.DBModels.Consts.ConsReport;
namespace YLErp.Modules.SuperviseReportModule.SAC.Model
{
public class PeriodicReportQuarterModel : ReportBaseModel
{
/// <summary>
/// 操作标识
/// <para>长度:1</para>
/// <para>必填:是</para>
/// <para>说明:<see cref="OptFlagsEnum"/></para>
/// </summary>
[XmlIgnore]
[SacDescription("OperationType", "操作标识", "1", true, "")]
public OptFlagsEnum OperationType { get; set; }
/// <summary>
/// 业务编号
/// <para>长度:50</para>
/// <para>必填:否</para>
/// <para>说明:校验规则:补正时必填;</para>
/// </summary>
[CheckConditionStringValue(ConditionName = nameof(OperationType), ConditionValue = "A", CheckHandleNameArr = new[] { "B" })]
[CheckConditionStringNEQValue(ConditionName = nameof(OperationType), ConditionValue = "A", CheckHandleNameArr = new[] { "A" })]
[CheckStringMaxLength(MaxLength = 50, CheckHandleName = "A")]
[CheckStringMaxLength(MaxLength = 50, Required = false, CheckHandleName = "B")]
[DefaultValue("")]
[SacDescription("BizID", "业务编号", "50", false, "校验规则:补正时必填;")]
public new string BizID { get; set; }
/// <summary>
/// 年份
/// <para>长度:4</para>
/// <para>必填:是</para>
/// <para>说明:校验规则:必须是4位整数;</para>
/// </summary>
[CheckStringLength(Length = 4)]
[DefaultValue("")]
[SacDescription("Year", "年份", "4", true, "校验规则:必须是4位整数;")]
public string Year { get; set; }
/// <summary>
/// 季度
/// <para>长度:2</para>
/// <para>必填:是</para>
/// <para>说明:01~04为季度;05为半年报</para>
/// </summary>
[CheckStringInMap(Map = new[] { "01", "02", "03", "04", "05" })]
[DefaultValue("")]
[SacDescription("Quarter", "季度", "2", true, "01~04为季度;\r\n05为半年报;")]
public string Quarter { get; set; }
/// <summary>
/// 季报报告文件
/// </summary>
[CheckIEnumerableTMinCount(MinCount = 1)]
[XmlElement]
[SacDescription("DerivativesQuarterlyReportAnnexTuple", "季报报告文件", "", false, "")]
public List<DerivativesQuarterlyReportAnnexModel> DerivativesQuarterlyReportAnnexTuple { get; set; }
}
public class DerivativesQuarterlyReportAnnexModel
{
/// <summary>
/// 季报报告文件
/// </summary>
[CheckStringEndsWith(EndsWithString = ".pdf")]
[DefaultValue("")]
[SacDescription("DerivativesQuarterlyReportAnnex", "季报报告文件", "", true, "校验规则:只支持 PDF 格式;")]
public string DerivativesQuarterlyReportAnnex { get; set; }
}
}