using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; namespace LifePayment.Domain.Shared; public class SealSaveInput { /// <summary> /// å°ç« idï¼Œä¸ºç©ºæ—¶è¡¨ç¤ºæ·»åŠ ï¼Œä¸ä¸ºç©ºæ—¶è¡¨ç¤ºä¿®æ”¹ /// </summary> [JsonProperty("seal_id")] public string? SealId { get; set; } /// <summary> /// å°ç« åç§° /// </summary> [JsonProperty("seal_name")] [Required(ErrorMessage = "å°ç« å称是必填项")] public string SealName { get; set; } /// <summary> /// å°ç« æè¿° /// </summary> [JsonProperty("seal_description")] [Required(ErrorMessage = "å°ç« æè¿°æ˜¯å¿…填项")] public string SealDescription { get; set; } /// <summary> /// å°ç« 类型,ENTERPRISE-ä¼ä¸šå…¬ç« ,ENTERPRISE_WITH_CODE-带有统一社会代ç çš„ä¼ä¸šå…¬ç« ,CONTRACT-åˆåŒä¸“ç”¨ç« /// </summary> [JsonProperty("seal_type")] [Required(ErrorMessage = "å°ç« 类型是必填项")] public string SealType { get; set; } /// <summary> /// ä¼ä¸šåç§° /// </summary> [JsonProperty("enterprise_name")] [Required(ErrorMessage = "ä¼ä¸šå称是必填项")] public string EnterpriseName { get; set; } /// <summary> /// 统一社会信用代ç /// </summary> [JsonProperty("enterprise_cert_no")] [Required(ErrorMessage = "ç»Ÿä¸€ç¤¾ä¼šä¿¡ç”¨ä»£ç æ˜¯å¿…填项")] public string EnterpriseCertNo { get; set; } } public class SealBatchQueryInput { /// <summary> /// å°ç« id /// </summary> [JsonProperty("seal_id")] public string? SealId { get; set; } /// <summary> /// å°ç« åç§° /// </summary> [JsonProperty("seal_name")] public string? SealName { get; set; } /// <summary> /// 页数,默认1,必须大于0 /// </summary> [JsonProperty("page_no")] [Range(1, int.MaxValue, ErrorMessage = "页数必须大于0")] public int PageNo { get; set; } = 1; /// <summary> /// 页é¢å¤§å°ï¼Œé»˜è®¤200,必须大于0 /// </summary> [JsonProperty("page_size")] [Range(1, int.MaxValue, ErrorMessage = "页é¢å¤§å°å¿…须大于0")] public int PageSize { get; set; } = 200; } public class SealAuthInput { /// <summary> /// å°ç« ID /// </summary> [JsonProperty("seal_id")] [Required(ErrorMessage = "å°ç« ID是必填项")] public string SealId { get; set; } /// <summary> /// 授æƒå¼€å§‹æ—¶é—´ /// </summary> [JsonProperty("auth_start_date")] [Required(ErrorMessage = "授æƒå¼€å§‹æ—¶é—´æ˜¯å¿…填项")] public DateTime AuthStartDate { get; set; } /// <summary> /// 授æƒç»“æŸæ—¶é—´ /// </summary> [JsonProperty("auth_end_date")] [Required(ErrorMessage = "授æƒç»“æŸæ—¶é—´æ˜¯å¿…填项")] public DateTime AuthEndDate { get; set; } } public class FileUploadInput { /// <summary> /// 业务编ç :ecsign_contract_upload /// </summary> [JsonProperty("biz_code")] [Required(ErrorMessage = "ä¸šåŠ¡ç¼–ç æ˜¯å¿…填项")] public string BizCode { get; set; } = AliPayEcsignConstant.AliPayEcsignSignBizCode.EcsignContractUpload; /// <summary> /// 文件的md5值,如果ä¸ä¼ åˆ™ä¸æ ¡éªŒmd5 /// </summary> [JsonProperty("md5")] public string? Md5 { get; set; } /// <summary> /// æ–‡ä»¶å†…å®¹çš„äºŒè¿›åˆ¶æµ /// </summary> [JsonIgnore] [Required(ErrorMessage = "文件内容是必填项")] public byte[] FileContent { get; set; } /// <summary> /// 文件åç§° /// </summary> [JsonIgnore] public string FileName { get; set; } } public class TemplateSaveInput { /// <summary> /// 模æ¿IDï¼Œä¸ºç©ºæ—¶è¡¨ç¤ºæ·»åŠ ï¼Œä¸ä¸ºç©ºæ—¶è¡¨ç¤ºä¿®æ”¹ /// </summary> [JsonProperty("template_id")] public string? TemplateId { get; set; } /// <summary> /// 模æ¿å称,åŽç»ä¼šå±•示给用户 /// </summary> [JsonProperty("template_name")] [Required(ErrorMessage = "模æ¿å称是必填项")] public string TemplateName { get; set; } /// <summary> /// æ¨¡æ¿æè¿° /// </summary> [JsonProperty("template_memo")] [Required(ErrorMessage = "æ¨¡æ¿æè¿°æ˜¯å¿…å¡«é¡¹")] public string TemplateMemo { get; set; } /// <summary> /// 文件ID /// </summary> [JsonProperty("template_file_id")] [Required(ErrorMessage = "文件ID是必填项")] public string TemplateFileId { get; set; } /// <summary> /// ä¼ä¸šå°ç« 控件列表 /// </summary> [JsonProperty("corporate_seal_rects")] public List<RectItem> CorporateSealRects { get; set; } = new List<RectItem>(); /// <summary> /// 个人å°ç« 控件列表 /// </summary> [JsonProperty("personal_seal_rects")] public List<PersonalSealRectItem> PersonalSealRects { get; set; } = new List<PersonalSealRectItem>(); /// <summary> /// 时间戳控件列表 /// </summary> [JsonProperty("time_stamp_rects")] public List<TimeStampRectItem> TimeStampRects { get; set; } = new List<TimeStampRectItem>(); /// <summary> /// å•行文本框控件列表 /// </summary> [JsonProperty("singleline_text_rects")] [Required(ErrorMessage = "å•行文本框控件列表是必填项")] public List<TextRectItem> SinglelineTextRects { get; set; } = new List<TextRectItem>(); /// <summary> /// 多行文本框控件列表 /// </summary> [JsonProperty("multilineTextRects")] public List<TextRectItem> MultilineTextRects { get; set; } = new List<TextRectItem>(); } public class RectItem { /// <summary> /// 输入项控件唯一表示IDï¼Œä½¿ç”¨æ¨¡æ¿æ—¶å¯ä»¥æ ¹æ®rect_id进行填充 /// </summary> [JsonProperty("rect_id")] [Required(ErrorMessage = "控件ID是必填项")] public string RectId { get; set; } /// <summary> /// 控件åç§° /// </summary> [JsonProperty("rect_name")] [Required(ErrorMessage = "控件å称是必填项")] public string RectName { get; set; } /// <summary> /// PDF页ç /// </summary> [JsonProperty("page")] [Required(ErrorMessage = "PDFé¡µç æ˜¯å¿…填项")] public int Page { get; set; } /// <summary> /// xè½´åæ ‡ï¼Œå·¦ä¸‹è§’为原点 /// </summary> [JsonProperty("offset_x")] [Required(ErrorMessage = "xè½´åæ ‡æ˜¯å¿…填项")] public int OffsetX { get; set; } /// <summary> /// yè½´åæ ‡ï¼Œå·¦ä¸‹è§’为原点 /// </summary> [JsonProperty("offset_y")] [Required(ErrorMessage = "yè½´åæ ‡æ˜¯å¿…填项")] public int OffsetY { get; set; } } public class PersonalSealRectItem : RectItem { /// <summary> /// 个人ç¾ç« æ–¹å¼ï¼šPERSONAL_SEAL-电åç¾ç« ,HAND_WRITE-手写ç¾å /// </summary> [JsonProperty("signature_type")] public string? SignatureType { get; set; } } public class TimeStampRectItem : RectItem { /// <summary> /// æ—¶é—´æˆ³æ ¼å¼ï¼šyyyy-MM-dd,yyyy/MM/dd,yyyyå¹´MM月ddæ—¥ /// </summary> [JsonProperty("time_format")] [Required(ErrorMessage = "æ—¶é—´æˆ³æ ¼å¼æ˜¯å¿…填项")] public string TimeFormat { get; set; } } public class TextRectItem : RectItem { /// <summary> /// 是å¦å¿…填,默认true /// </summary> [JsonProperty("required")] public bool Required { get; set; } = true; /// <summary> /// æŽ§ä»¶æ ·å¼ /// </summary> [JsonProperty("rectStyle")] [Required(ErrorMessage = "æŽ§ä»¶æ ·å¼æ˜¯å¿…填项")] public RectStyle RectStyle { get; set; } } public class RectStyle { /// <summary> /// 控件宽度,文å—超出部分会被è£å‰ª /// </summary> [JsonProperty("width")] [Required(ErrorMessage = "控件宽度是必填项")] public double Width { get; set; } /// <summary> /// 控件高度 /// </summary> [JsonProperty("height")] public double Height { get; set; } = 22.0; /// <summary> /// å¡«å……å—体,默认 1-宋体 /// </summary> [JsonProperty("font")] public int Font { get; set; } = 1; /// <summary> /// å¡«å……å—体大å°ï¼Œé»˜è®¤12 /// </summary> [JsonProperty("font_size")] public int FontSize { get; set; } = 12; /// <summary> /// å¡«å……å—体颜色,默认#000000 黑色 /// </summary> [JsonProperty("text_color")] public string TextColor { get; set; } = "#000000"; } public class TemplateBatchQueryInput { /// <summary> /// 模æ¿ID(å¯é€‰ï¼‰ /// </summary> [JsonProperty("template_id")] public string TemplateId { get; set; } /// <summary> /// 模æ¿å称(å¯é€‰ï¼‰ /// </summary> [JsonProperty("template_name")] public string TemplateName { get; set; } /// <summary> /// 页数,默认1,必须大于0(å¯é€‰ï¼‰ /// </summary> [JsonProperty("page_no")] public int PageNo { get; set; } = 1; /// <summary> /// 页é¢å¤§å°ï¼Œé»˜è®¤200(å¯é€‰ï¼‰ /// </summary> [JsonProperty("page_size")] public int PageSize { get; set; } = 200; } public class TemplateQueryInput { [JsonProperty("template_id")] public string TemplateId { get; set; } } public class SolutionSaveInput { /// <summary> /// ç¾çº¦æ–¹æ¡ˆç¼–ç ï¼Œä¸ºç©ºæ—¶è¡¨ç¤ºæ·»åŠ ï¼Œä¸ä¸ºç©ºæ—¶è¡¨ç¤ºä¿®æ”¹ /// </summary> [JsonProperty("solution_code")] public string? SolutionCode { get; set; } /// <summary> /// ç¾çº¦æ–¹æ¡ˆå称,ç¾ç½²æ—¶ä¼šå¯¹å®¢å±•示 /// </summary> [JsonProperty("solution_name")] [Required(ErrorMessage = "ç¾çº¦æ–¹æ¡ˆå称是必填项")] public string SolutionName { get; set; } /// <summary> /// ç¾çº¦æ–¹æ¡ˆæè¿° /// </summary> [JsonProperty("solution_description")] [Required(ErrorMessage = "ç¾çº¦æ–¹æ¡ˆæè¿°æ˜¯å¿…填项")] public string SolutionDescription { get; set; } /// <summary> /// ç¾çº¦åˆåŒåˆ—表 /// </summary> [JsonProperty("template_vo_list")] [Required(ErrorMessage = "ç¾çº¦åˆåŒåˆ—表是必填项")] public List<TemplateVo> TemplateVoList { get; set; } = new List<TemplateVo>(); /// <summary> /// ç¾çº¦æ ¸èº«é…ç½® /// </summary> [JsonProperty("attribute_vo_list")] [Required(ErrorMessage = "ç¾çº¦æ ¸èº«é…置是必填项")] public List<AttributeVo> AttributeVoList { get; set; } = new List<AttributeVo>(); } public class TemplateVo { /// <summary> /// åˆåŒæ¨¡æ¿ID /// </summary> [JsonProperty("template_id")] [Required(ErrorMessage = "åˆåŒæ¨¡æ¿ID是必填项")] public string TemplateId { get; set; } } public class AttributeVo { /// <summary> /// ç¾çº¦æ–¹å¼ï¼šEXTERNAL_H5-端外H5,MINI_APP-支付å®å°ç¨‹åº/æ’ä»¶ /// </summary> [JsonProperty("access_config_code")] [Required(ErrorMessage = "ç¾çº¦æ–¹å¼æ˜¯å¿…填项")] public string AccessConfigCode { get; set; } /// <summary> /// æ ¸èº«æ–¹å¼ï¼š /// EXTERNAL_H5_SMS-端外H5, /// FACE_PASSWORD_ALIPAY-支付å®å°ç¨‹åº/æ’ä»¶ /// </summary> [JsonProperty("verify_code")] [Required(ErrorMessage = "æ ¸èº«æ–¹å¼æ˜¯å¿…填项")] public string VerifyCode { get; set; } } public class SolutionBatchQueryInput { /// <summary> /// ç¾çº¦æ–¹æ¡ˆç¼–ç /// </summary> [JsonProperty("solution_code")] public string? SolutionCode { get; set; } /// <summary> /// ç¾çº¦æ–¹æ¡ˆåç§° /// </summary> [JsonProperty("solution_name")] public string? SolutionName { get; set; } /// <summary> /// 页数,默认1,必须大于0 /// </summary> [JsonProperty("page_no")] [Range(1, int.MaxValue, ErrorMessage = "页数必须大于0")] public int PageNo { get; set; } = 1; /// <summary> /// 页é¢å¤§å°ï¼Œé»˜è®¤200 /// </summary> [JsonProperty("page_size")] [Range(1, int.MaxValue, ErrorMessage = "页é¢å¤§å°å¿…须大于0")] public int PageSize { get; set; } = 200; } public class SolutionQueryInput { /// <summary> /// ç¾çº¦æ–¹æ¡ˆç¼–ç /// </summary> [JsonProperty("solution_code")] public string SolutionCode { get; set; } } public class DataprepareCreateInput { /// <summary> /// ä¸šåŠ¡æµæ°´å·ï¼Œä¸šåŠ¡éœ€ä¿è¯å†…部唯一 /// </summary> [JsonProperty("out_order_no")] [Required(ErrorMessage = "ä¸šåŠ¡æµæ°´å·æ˜¯å¿…填项")] public string OutOrderNo { get; set; } /// <summary> /// ç¾çº¦æ–¹æ¡ˆç¼–ç ,ç¾çº¦æ–¹æ¡ˆç®¡ç†ä¸æ–°å¢žèŽ·å¾— /// </summary> [JsonProperty("solution_code")] [Required(ErrorMessage = "ç¾çº¦æ–¹æ¡ˆç¼–ç æ˜¯å¿…填项")] public string SolutionCode { get; set; } /// <summary> /// 跳转类型,NORMAL-链接跳转 /// </summary> [JsonProperty("jump_type")] [Required(ErrorMessage = "跳转类型是必填项")] public string JumpType { get; set; } = "NORMAL"; /// <summary> /// ç¾çº¦ç”¨æˆ·ä¿¡æ¯ /// </summary> [JsonIgnore] [Required(ErrorMessage = "ç¾çº¦ç”¨æˆ·ä¿¡æ¯æ˜¯å¿…填项")] public SignUser SignUser { get; set; } /// <summary> /// åˆåŒæ¨¡æ¿å‚æ•° /// </summary> [JsonIgnore] public Dictionary<string, object> TemplateData { get; set; } /// <summary> /// ç¾çº¦æ‰©å±•å—æ®µï¼Œæ— éœ€ä¼ å…¥ï¼Œåªéœ€è¦ä¼ å…¥SignUserå’ŒTemplateData å°†æ ¹æ®è¿™ä¸¤ä¸ªå—段自动生æˆï¼Œå¡«å†™ç”¨æˆ·ä¿¡æ¯ä»¥åпާ件rect_idçš„value值,查看åˆåŒæ—¶ä¼šè¿›è¡Œæ ¡éªŒ /// </summary> [JsonProperty("ext_info")] public string ExtInfo { get; set; } } public class SignUser { /// <summary> /// ç¾çº¦çš„用户姓å /// </summary> [JsonProperty("signerName")] [Required(ErrorMessage = "ç¾çº¦çš„ç”¨æˆ·å§“åæ˜¯å¿…填项")] public string SignerName { get; set; } /// <summary> /// ç¾çº¦çš„用户身份è¯å· /// </summary> [JsonProperty("certNo")] [Required(ErrorMessage = "ç¾çº¦çš„用户身份è¯å·æ˜¯å¿…填项")] public string CertNo { get; set; } /// <summary> /// ç¾çº¦çš„ç”¨æˆ·æ‰‹æœºå· /// </summary> [JsonProperty("bindedMobile")] public string? BindedMobile { get; set; } } public class SignorderQueryInput { /// <summary> /// ç¾çº¦æ–¹æ¡ˆç¼–ç /// </summary> [JsonProperty("solution_code")] [Required(ErrorMessage = "ç¾çº¦æ–¹æ¡ˆç¼–ç æ˜¯å¿…填项")] public string SolutionCode { get; set; } /// <summary> /// å‘èµ·ç¾çº¦çš„ä¸šåŠ¡æµæ°´å· /// </summary> [JsonProperty("out_order_no")] [Required(ErrorMessage = "å‘èµ·ç¾çº¦çš„ä¸šåŠ¡æµæ°´å·æ˜¯å¿…填项")] public string OutOrderNo { get; set; } }