Browse Source

同步 alipay-sdk-NET-3.0.4

Roc 7 years ago
parent
commit
df51dfd774
75 changed files with 2249 additions and 62 deletions
  1. 71 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AiOcrTableContext.cs
  2. 22 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AiOcrTableRow.cs
  3. 55 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AliTrustAlipayCert.cs
  4. 48 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AliTrustCert.cs
  5. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayAccountFinriskInstriskmonitorKeywordsBatchqueryModel.cs
  6. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayCommerceIotMdeviceprodAssetQueryModel.cs
  7. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayCommerceIotMdeviceprodAssetapplyQueryModel.cs
  8. 2 2
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceApplyResultSyncModel.cs
  9. 8 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceTitleBatchqueryModel.cs
  10. 62 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoEduKtParentQueryModel.cs
  11. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoMycarParkingOrderPayModel.cs
  12. 8 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoMycarParkingParkinglotinfoCreateModel.cs
  13. 8 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoMycarParkingParkinglotinfoUpdateModel.cs
  14. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFinanceQuotationDtcrawlerSendModel.cs
  15. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveOcrImageclassifyQueryModel.cs
  16. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveOcrTablesQueryModel.cs
  17. 118 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingCouponTemplateCreateModel.cs
  18. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingDecodeData.cs
  19. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingExtData.cs
  20. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingProductContext.cs
  21. 36 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOverseasTravelExchangerateBatchqueryModel.cs
  22. 55 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOverseasTravelExchangerateQueryModel.cs
  23. 8 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeRefundModel.cs
  24. 57 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAccountDeviceInfoQueryModel.cs
  25. 62 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAccountDeviceInfoUploadModel.cs
  26. 62 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserCertifyStudentinfoSyncModel.cs
  27. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserElectronicidUserbarcodeCreateModel.cs
  28. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserIdenticalAuthbaseQueryModel.cs
  29. 21 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserSceneCooperationConsultModel.cs
  30. 55 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AppTokenExchangeSubElement.cs
  31. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetDeliveryAddress.cs
  32. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetDeliveryDetail.cs
  33. 21 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetDeliveryItem.cs
  34. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetProduceItem.cs
  35. 43 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AvailableTimeInfo.cs
  36. 76 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/CardBinVO.cs
  37. 29 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/Category.cs
  38. 43 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DataSecCheckContent.cs
  39. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DataSecCheckResult.cs
  40. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/InsPolicy.cs
  41. 8 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/InvoiceSendOpenModel.cs
  42. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ItemDeliveryDetail.cs
  43. 104 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ItemResp.cs
  44. 29 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbAdvertCascadeCommissionInfo.cs
  45. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbAdvertContentShareCodeModify.cs
  46. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbadvertSmartPromoResponse.cs
  47. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KeyanColumn.cs
  48. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiCateringOrderInfoSyncModel.cs
  49. 29 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataMallCheckGetModel.cs
  50. 64 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataMallRecommendGetModel.cs
  51. 48 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataSceneParkingoutUploadModel.cs
  52. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataShopCategoryGetModel.cs
  53. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiShopMallCardQueryModel.cs
  54. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiShopMallMemberIdentifyModel.cs
  55. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiShopMallMemberQueryModel.cs
  56. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiTradeTicketTicketcodeUseModel.cs
  57. 16 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiTradeVoucherItemTemplete.cs
  58. 22 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ListListComplexMockModel.cs
  59. 57 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/MallCardBo.cs
  60. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/MerchantModel.cs
  61. 22 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/OldListListComplexMockModel.cs
  62. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/OverseasTravelRate.cs
  63. 48 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ParkingOutScene.cs
  64. 15 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/SceneMarketingContent.cs
  65. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/UnAvailableTimeInfo.cs
  66. 36 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/UserInfoAndBenefitQueryResult.cs
  67. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ZhimaCreditEpFreedepositInitializeModel.cs
  68. 109 0
      src/Essensoft.AspNetCore.Payment.Alipay/Request/AlipayEbppInvoiceApplyResultSyncRequest.cs
  69. 4 4
      src/Essensoft.AspNetCore.Payment.Alipay/Request/AlipayEcoEduKtParentQueryRequest.cs
  70. 18 0
      src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayEbppInvoiceApplyResultSyncResponse.cs
  71. 18 0
      src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayEcoEduKtParentQueryResponse.cs
  72. 10 0
      src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayOpenAuthTokenAppResponse.cs
  73. 10 0
      src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayTradeFastpayRefundQueryResponse.cs
  74. 0 49
      src/Essensoft.AspNetCore.Payment.Alipay/Response/KoubeiItemBatchqueryResponse.cs
  75. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Response/KoubeiTradeTicketTicketcodeQueryResponse.cs

+ 71 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AiOcrTableContext.cs

@@ -0,0 +1,71 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AiOcrTableContext Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AiOcrTableContext : AlipayObject
+    {
+        /// <summary>
+        /// one past end column index(单元格所占的列数(colspan)为ex - sx)
+        /// </summary>
+        [JsonProperty("ex")]
+        [XmlElement("ex")]
+        public long Ex { get; set; }
+
+        /// <summary>
+        /// one past end row index(单元格所占的行数(rowspan)为ey - sy)
+        /// </summary>
+        [JsonProperty("ey")]
+        [XmlElement("ey")]
+        public long Ey { get; set; }
+
+        /// <summary>
+        /// cell height,图片上单元格的高度
+        /// </summary>
+        [JsonProperty("height")]
+        [XmlElement("height")]
+        public long Height { get; set; }
+
+        /// <summary>
+        /// start from column(单元格的起始列id)
+        /// </summary>
+        [JsonProperty("sx")]
+        [XmlElement("sx")]
+        public long Sx { get; set; }
+
+        /// <summary>
+        /// start row(单元格的起始行id)
+        /// </summary>
+        [JsonProperty("sy")]
+        [XmlElement("sy")]
+        public long Sy { get; set; }
+
+        /// <summary>
+        /// 表格文字内容
+        /// </summary>
+        [JsonProperty("text")]
+        [XmlArray("text")]
+        [XmlArrayItem("string")]
+        public List<string> Text { get; set; }
+
+        /// <summary>
+        /// 类型
+        /// </summary>
+        [JsonProperty("type")]
+        [XmlElement("type")]
+        public string Type { get; set; }
+
+        /// <summary>
+        /// cell width,图片上单元格的宽度
+        /// </summary>
+        [JsonProperty("width")]
+        [XmlElement("width")]
+        public long Width { get; set; }
+    }
+}

+ 22 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AiOcrTableRow.cs

@@ -0,0 +1,22 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AiOcrTableRow Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AiOcrTableRow : AlipayObject
+    {
+        /// <summary>
+        /// table一行的内容
+        /// </summary>
+        [JsonProperty("row")]
+        [XmlArray("row")]
+        [XmlArrayItem("ai_ocr_table_context")]
+        public List<AiOcrTableContext> Row { get; set; }
+    }
+}

+ 55 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AliTrustAlipayCert.cs

@@ -0,0 +1,55 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AliTrustAlipayCert Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AliTrustAlipayCert : AlipayObject
+    {
+        /// <summary>
+        /// 用户出生日期
+        /// </summary>
+        [JsonProperty("birthday")]
+        [XmlElement("birthday")]
+        public string Birthday { get; set; }
+
+        /// <summary>
+        /// 点击支付宝实名认证图标之后的跳转链接
+        /// </summary>
+        [JsonProperty("forward_url")]
+        [XmlElement("forward_url")]
+        public string ForwardUrl { get; set; }
+
+        /// <summary>
+        /// 用户性别(M/F)
+        /// </summary>
+        [JsonProperty("gender")]
+        [XmlElement("gender")]
+        public string Gender { get; set; }
+
+        /// <summary>
+        /// 支付宝实名认证图标的链接地址
+        /// </summary>
+        [JsonProperty("icon_url")]
+        [XmlElement("icon_url")]
+        public string IconUrl { get; set; }
+
+        /// <summary>
+        /// 当账户为支付宝实名认证时,取值为"T";否则为"F".
+        /// </summary>
+        [JsonProperty("is_certified")]
+        [XmlElement("is_certified")]
+        public string IsCertified { get; set; }
+
+        /// <summary>
+        /// 用户姓名
+        /// </summary>
+        [JsonProperty("name")]
+        [XmlElement("name")]
+        public string Name { get; set; }
+    }
+}

+ 48 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AliTrustCert.cs

@@ -0,0 +1,48 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AliTrustCert Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AliTrustCert : AlipayObject
+    {
+        /// <summary>
+        /// 点击信用认证图标之后的跳转链接
+        /// </summary>
+        [JsonProperty("forward_url")]
+        [XmlElement("forward_url")]
+        public string ForwardUrl { get; set; }
+
+        /// <summary>
+        /// 通过信用认证的图标链接
+        /// </summary>
+        [JsonProperty("icon_url")]
+        [XmlElement("icon_url")]
+        public string IconUrl { get; set; }
+
+        /// <summary>
+        /// 当通过信用认证时,取值为"T";否则为"F".
+        /// </summary>
+        [JsonProperty("is_certified")]
+        [XmlElement("is_certified")]
+        public string IsCertified { get; set; }
+
+        /// <summary>
+        /// 芝麻认证等级,取值为1,2,3
+        /// </summary>
+        [JsonProperty("level")]
+        [XmlElement("level")]
+        public string Level { get; set; }
+
+        /// <summary>
+        /// 当用户未通过芝麻认证时给出的原因提示
+        /// </summary>
+        [JsonProperty("message")]
+        [XmlElement("message")]
+        public string Message { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayAccountFinriskInstriskmonitorKeywordsBatchqueryModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayAccountFinriskInstriskmonitorKeywordsBatchqueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayAccountFinriskInstriskmonitorKeywordsBatchqueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 查询机构关键词
+        /// </summary>
+        [JsonProperty("content")]
+        [XmlElement("content")]
+        public string Content { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayCommerceIotMdeviceprodAssetQueryModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayCommerceIotMdeviceprodAssetQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayCommerceIotMdeviceprodAssetQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 模板ID(物料系统的item_id)
+        /// </summary>
+        [JsonProperty("item_id")]
+        [XmlElement("item_id")]
+        public string ItemId { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayCommerceIotMdeviceprodAssetapplyQueryModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayCommerceIotMdeviceprodAssetapplyQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayCommerceIotMdeviceprodAssetapplyQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 物料平台的申请单ID
+        /// </summary>
+        [JsonProperty("apply_order_id")]
+        [XmlElement("apply_order_id")]
+        public string ApplyOrderId { get; set; }
+    }
+}

+ 2 - 2
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceApplyResultSyncModel.cs

@@ -11,7 +11,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     public class AlipayEbppInvoiceApplyResultSyncModel : AlipayObject
     {
         /// <summary>
-        /// 支付宝发起发票申请的id,该id具有唯一性,该字段由支付宝向税控发起申请的时候带过去,作为支付宝向税控开票申请的唯一标志
+        /// 支付宝发起开票申请的id,该id具有唯一性,该字段由支付宝向税控发起申请的时候带过去,作为支付宝向税控开票申请的唯一标志
         /// </summary>
         [JsonProperty("apply_id")]
         [XmlElement("apply_id")]
@@ -39,7 +39,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ResultMsg { get; set; }
 
         /// <summary>
-        /// 该字段是税控商或ISV收到支付宝开票请求后生成的申请id,由税控商或isv自己生成,该id具有唯一性
+        /// 该字段是税控商或ISV收到支付宝开票请求后生成的申请id,由税控商或isv自己生成,该id具有唯一性  当ISV接入时是按照tax_apply_id来查询发票信息时,该字段必填。
         /// </summary>
         [JsonProperty("tax_apply_id")]
         [XmlElement("tax_apply_id")]

+ 8 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceTitleBatchqueryModel.cs

@@ -18,6 +18,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("end_invoice_date")]
         public string EndInvoiceDate { get; set; }
 
+        /// <summary>
+        /// 发票报销状态的查询条件,为空的情况下,查询所有状态的发票;可选值WAIT_EXPENSE:待报销状态;EXPENSE_PROCESSING:报销中;EXPENSE_FINISHED:已报销
+        /// </summary>
+        [JsonProperty("expense_status_list")]
+        [XmlArray("expense_status_list")]
+        [XmlArrayItem("string")]
+        public List<string> ExpenseStatusList { get; set; }
+
         /// <summary>
         /// 查询票种列表  可选值  PLAIN:增值税电子普通发票  SPECIAL:增值税专用发票  PLAIN_INVOICE:增值税普通发票  PAPER_INVOICE:增值税普通发票(卷式)  SALSE_INVOICE:机动车销售统一发票
         /// </summary>

+ 62 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoEduKtParentQueryModel.cs

@@ -0,0 +1,62 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayEcoEduKtParentQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayEcoEduKtParentQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 孩子或学生姓名
+        /// </summary>
+        [JsonProperty("child_name")]
+        [XmlElement("child_name")]
+        public string ChildName { get; set; }
+
+        /// <summary>
+        /// Isv的支付宝pid
+        /// </summary>
+        [JsonProperty("partner_id")]
+        [XmlElement("partner_id")]
+        public string PartnerId { get; set; }
+
+        /// <summary>
+        /// 学校编码,录入学校接口返回的school_no参数
+        /// </summary>
+        [JsonProperty("school_no")]
+        [XmlElement("school_no")]
+        public string SchoolNo { get; set; }
+
+        /// <summary>
+        /// 学校支付宝pid
+        /// </summary>
+        [JsonProperty("school_pid")]
+        [XmlElement("school_pid")]
+        public string SchoolPid { get; set; }
+
+        /// <summary>
+        /// 学生的学号,一个学校的学号必须是唯一。结果返回用户是否通过此学号添加此学生的缴费账户。user_mobile、student_code 、student_identify 必须并且只能填一项。
+        /// </summary>
+        [JsonProperty("student_code")]
+        [XmlElement("student_code")]
+        public string StudentCode { get; set; }
+
+        /// <summary>
+        /// 学生的身份证号,使用身份证规则验证。结果返回用户是否通过此身份证号添加此学生的缴费账户。user_mobile、student_code 、student_identify 必须并且只能填一项。
+        /// </summary>
+        [JsonProperty("student_identify")]
+        [XmlElement("student_identify")]
+        public string StudentIdentify { get; set; }
+
+        /// <summary>
+        /// 用户手机号,发账单时填写users数组中的一个手机号。结果返回用户是否通过此手机号添加此学生的缴费账户。user_mobile、student_code 、student_identify 必须并且只能填一项。
+        /// </summary>
+        [JsonProperty("user_mobile")]
+        [XmlElement("user_mobile")]
+        public string UserMobile { get; set; }
+    }
+}

+ 1 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoMycarParkingOrderPayModel.cs

@@ -60,7 +60,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ParkingId { get; set; }
 
         /// <summary>
-        /// 卖家支付宝用户号  卖家支付宝账号对应的支付宝唯一用户号。  以2088开头的纯16位数。与seller_logon_id不能同时为空
+        /// 卖家支付宝用户号  卖家支付宝账号对应的支付宝唯一用户号。  以2088开头的纯16位数。
         /// </summary>
         [JsonProperty("seller_id")]
         [XmlElement("seller_id")]

+ 8 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoMycarParkingParkinglotinfoCreateModel.cs

@@ -10,6 +10,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class AlipayEcoMycarParkingParkinglotinfoCreateModel : AlipayObject
     {
+        /// <summary>
+        /// 服务商ID(2088开头的16位纯数字),由服务商提供给ISV
+        /// </summary>
+        [JsonProperty("agent_id")]
+        [XmlElement("agent_id")]
+        public string AgentId { get; set; }
+
         /// <summary>
         /// 该参数废弃
         /// </summary>
@@ -109,7 +116,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ParkingFeeDescription { get; set; }
 
         /// <summary>
-        /// 停车场类型,1为小区停车场、2为商圈停车场、3为路面停车场、4为园区停车场、5为写字楼停车场、6为私人停车场
+        /// 停车场类型,1为居民小区、2为商圈停车场(购物中心商业广场商场等)、3为路侧停车、4为公园景点(景点乐园公园老街古镇等)、5为商务楼宇(酒店写字楼商务楼园区等)、6为其他、7为交通枢纽(机场火车站汽车站码头港口等)、8为市政设施(体育场博物图书馆医院学校等)
         /// </summary>
         [JsonProperty("parking_lot_type")]
         [XmlElement("parking_lot_type")]

+ 8 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEcoMycarParkingParkinglotinfoUpdateModel.cs

@@ -10,6 +10,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class AlipayEcoMycarParkingParkinglotinfoUpdateModel : AlipayObject
     {
+        /// <summary>
+        /// 服务商ID(2088开头的16位纯数字),由服务商提供给ISV
+        /// </summary>
+        [JsonProperty("agent_id")]
+        [XmlElement("agent_id")]
+        public string AgentId { get; set; }
+
         /// <summary>
         /// 该参数废弃
         /// </summary>
@@ -116,7 +123,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ParkingId { get; set; }
 
         /// <summary>
-        /// 停车场类型,1为小区停车场、2为商圈停车场、3为路面停车场、4为园区停车场、5为写字楼停车场、6为私人停车场
+        /// 停车场类型,1为居民小区、2为商圈停车场(购物中心商业广场商场等)、3为路侧停车、4为公园景点(景点乐园公园老街古镇等)、5为商务楼宇(酒店写字楼商务楼园区等)、6为其他、7为交通枢纽(机场火车站汽车站码头港口等)、8为市政设施(体育场博物图书馆医院学校等)
         /// </summary>
         [JsonProperty("parking_lot_type")]
         [XmlElement("parking_lot_type")]

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFinanceQuotationDtcrawlerSendModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayFinanceQuotationDtcrawlerSendModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayFinanceQuotationDtcrawlerSendModel : AlipayObject
+    {
+        /// <summary>
+        /// 爬虫平台推送数据,为json字符串,bizNo 为推送流水号,taskName为任务名,业务数据包含在bizData中
+        /// </summary>
+        [JsonProperty("content")]
+        [XmlElement("content")]
+        public string Content { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveOcrImageclassifyQueryModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayIserviceCognitiveOcrImageclassifyQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayIserviceCognitiveOcrImageclassifyQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 图片base64加密后的内容,大小控制在1.5M
+        /// </summary>
+        [JsonProperty("image_content")]
+        [XmlElement("image_content")]
+        public string ImageContent { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveOcrTablesQueryModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayIserviceCognitiveOcrTablesQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayIserviceCognitiveOcrTablesQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 图片base64后内容,大小控制在1M以内
+        /// </summary>
+        [JsonProperty("image_content")]
+        [XmlElement("image_content")]
+        public string ImageContent { get; set; }
+    }
+}

+ 118 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingCouponTemplateCreateModel.cs

@@ -0,0 +1,118 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayMarketingCouponTemplateCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayMarketingCouponTemplateCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 创建红包模板时录入的品牌信息,由商户自定义,在通用模板中展示在红包LOGO下方。根据红包使用场景的不同,该信息的展示位置可能会有不同。
+        /// </summary>
+        [JsonProperty("brand_name")]
+        [XmlElement("brand_name")]
+        public string BrandName { get; set; }
+
+        /// <summary>
+        /// 扩展字段,JSON字符串。目前支持使用模式扩展:{"coupon_AppActiveUrl":"http://www.yourdomain.com"},yourdomain.com需要添加白名单
+        /// </summary>
+        [JsonProperty("extension_info")]
+        [XmlElement("extension_info")]
+        public string ExtensionInfo { get; set; }
+
+        /// <summary>
+        /// 最低额度。设置红包使用门槛,只有订单金额大于等于最低额度时红包才能使用。币种为人民币,单位为元。该数值不能小于等于0,小数点以后最多保留两位,没有则设置为0。
+        /// </summary>
+        [JsonProperty("floor_amount")]
+        [XmlElement("floor_amount")]
+        public string FloorAmount { get; set; }
+
+        /// <summary>
+        /// 出资人登录账号。用于发红包的资金会从该账号划拨到发红包专用账户上。当调用创建接口成功后,会返回付款订单页面,仅当前传入资金账号可进行付款,付款完成后红包变更为激活状态,可进行发放。
+        /// </summary>
+        [JsonProperty("fund_account")]
+        [XmlElement("fund_account")]
+        public string FundAccount { get; set; }
+
+        /// <summary>
+        /// 红包变动异步通知地址,传入此字段后,红包的核销将会进行异步通知,通知具体内容见下方触发异步通知字段描述
+        /// </summary>
+        [JsonProperty("notify_uri")]
+        [XmlElement("notify_uri")]
+        public string NotifyUri { get; set; }
+
+        /// <summary>
+        /// 外部业务单号。用作幂等控制。同一个pid下相同的外部业务单号作唯一键,参数不变的情况下,再次请求返回同样的模板id。请求成功后,修改参数再次提交,需要更换订单号
+        /// </summary>
+        [JsonProperty("out_biz_no")]
+        [XmlElement("out_biz_no")]
+        public string OutBizNo { get; set; }
+
+        /// <summary>
+        /// 发放结束时间,晚于该时间不能发红包。红包的发放结束时间和发放开始时间跨度不能大于90天。发放结束时间必须晚于发放开始时间。格式为:yyyy-MM-dd HH:mm:ss
+        /// </summary>
+        [JsonProperty("publish_end_time")]
+        [XmlElement("publish_end_time")]
+        public string PublishEndTime { get; set; }
+
+        /// <summary>
+        /// 发放开始时间,早于该时间不能发红包。发放开始时间不能大于当前时间15天。格式为:yyyy-MM-dd HH:mm:ss
+        /// </summary>
+        [JsonProperty("publish_start_time")]
+        [XmlElement("publish_start_time")]
+        public string PublishStartTime { get; set; }
+
+        /// <summary>
+        /// 重定向地址。支付成功后需要重定向的地址,如果为空则不做重定向。
+        /// </summary>
+        [JsonProperty("redirect_uri")]
+        [XmlElement("redirect_uri")]
+        public string RedirectUri { get; set; }
+
+        /// <summary>
+        /// 规则配置,JSON字符串,格式为K-V模式,当同一个KEY下规则为多个值时,用英文逗号进行分隔。目前支持的规则KEY有:核销商户ID(PID),核销内部门店ID(STORE),指定收款账户(payeeUserId),子产品交易码(bizProduct),缴费机构/类型(CUSTOMBUSINESS),缴费户号(EBPPUSERNUM)。一旦商户设置了规则,当前红包实例必须满足指定规则才能进行核销。
+        /// </summary>
+        [JsonProperty("rule_conf")]
+        [XmlElement("rule_conf")]
+        public string RuleConf { get; set; }
+
+        /// <summary>
+        /// 模板总金额。本次发放模板设置的总金额。币种为人民币,单位为元。该数值不能小于1.00元,小数点以后最多保留两位。
+        /// </summary>
+        [JsonProperty("total_amount")]
+        [XmlElement("total_amount")]
+        public string TotalAmount { get; set; }
+
+        /// <summary>
+        /// 红包使用说明。JSON数组字符串,最多可以有10条,每条最多50字。如果未传入该字段,将填充为默认描述
+        /// </summary>
+        [JsonProperty("voucher_description")]
+        [XmlElement("voucher_description")]
+        public string VoucherDescription { get; set; }
+
+        /// <summary>
+        /// 类型。可枚举,暂时只支持"红包"(COUPON),使用示例voucher_type=COUPON。红包可以拆分多次使用,比如:1元红包,可以先用掉0.5元,剩余的0.5元可以继续使用;可以多个红包叠加使用,一笔支付最多叠加10个红包;红包被使用后发生退款,如果红包有效期还在,会退还给用户红包,如果有效期已过,就会将资金退回原红包模板出资账户。
+        /// </summary>
+        [JsonProperty("voucher_type")]
+        [XmlElement("voucher_type")]
+        public string VoucherType { get; set; }
+
+        /// <summary>
+        /// 红包使用场景。可枚举,目前支持“支付宝通用全场红包”(ALIPAY_COUPON_ALL) ,该场景设置后,使用规则字段允许为空,只要支付宝支付产品支持核销此类型的红包,用户红包就可以核销。“花呗还款红包”(HUABEI_COUPON_REPAYMENT) ,该场景设置后,会自动填充花呗还款对应的规则,无需填入rule_conf,代表仅花呗还款场景可以核销此红包。“支付宝普通红包”(ALIPAY_COUPON_COMMON) 该场景下必须设置一条规则rule_conf。场景值会关联当前红包的展示模板,默认描述等信息。
+        /// </summary>
+        [JsonProperty("voucher_use_scene")]
+        [XmlElement("voucher_use_scene")]
+        public string VoucherUseScene { get; set; }
+
+        /// <summary>
+        /// "ABSOLUTE", "start": "2017-01-10 00:00:00", "end": "2017-01-13 23:59:59"}。相对时间有3个key:type、duration、unit,type取值固定为"RELATIVE",duration表示从发红包时间开始到往后推duration个单位时间为止作为红包的使用有效期,unit表示有效时间单位,有效时间单位可枚举:MINUTE, HOUR, DAY。示例:{"type": "RELATIVE", "duration": 1 , "unit": "DAY" },如果此刻发红包,那么该红包从现在开始生效1(duration)天(unit)后失效。
+        /// </summary>
+        [JsonProperty("voucher_valid_period")]
+        [XmlElement("voucher_valid_period")]
+        public string VoucherValidPeriod { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingDecodeData.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayMarketingDecodeData Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayMarketingDecodeData : AlipayObject
+    {
+        /// <summary>
+        /// 钱包二维码码值
+        /// </summary>
+        [JsonProperty("code")]
+        [XmlElement("code")]
+        public string Code { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingExtData.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayMarketingExtData Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayMarketingExtData : AlipayObject
+    {
+        /// <summary>
+        /// 复杂模型
+        /// </summary>
+        [JsonProperty("lbs_info")]
+        [XmlElement("lbs_info")]
+        public AlipayMarketingIbsInfo LbsInfo { get; set; }
+
+        /// <summary>
+        /// 外部uid
+        /// </summary>
+        [JsonProperty("out_user_id")]
+        [XmlElement("out_user_id")]
+        public string OutUserId { get; set; }
+    }
+}

+ 34 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingProductContext.cs

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayMarketingProductContext Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayMarketingProductContext : AlipayObject
+    {
+        /// <summary>
+        /// 客户端client_id
+        /// </summary>
+        [JsonProperty("client_id")]
+        [XmlElement("client_id")]
+        public string ClientId { get; set; }
+
+        /// <summary>
+        /// product需要接入的时候和支付宝码平台约定。  目前仅支持建行app使用ccb_wallet
+        /// </summary>
+        [JsonProperty("product")]
+        [XmlElement("product")]
+        public string Product { get; set; }
+
+        /// <summary>
+        /// 版本号
+        /// </summary>
+        [JsonProperty("product_version")]
+        [XmlElement("product_version")]
+        public string ProductVersion { get; set; }
+    }
+}

+ 36 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOverseasTravelExchangerateBatchqueryModel.cs

@@ -0,0 +1,36 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayOverseasTravelExchangerateBatchqueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayOverseasTravelExchangerateBatchqueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 货币代码列表,货币代码遵循ISO标准alpha- 3币种代码,用英文半角逗号分隔,支持的币种可以联系支付宝技术支持获取
+        /// </summary>
+        [JsonProperty("currencies")]
+        [XmlArray("currencies")]
+        [XmlArrayItem("string")]
+        public List<string> Currencies { get; set; }
+
+        /// <summary>
+        /// 业务扩展参数,用于商户的特 定业务信息的传递,json格式
+        /// </summary>
+        [JsonProperty("extend_param")]
+        [XmlElement("extend_param")]
+        public string ExtendParam { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 55 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOverseasTravelExchangerateQueryModel.cs

@@ -0,0 +1,55 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayOverseasTravelExchangerateQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayOverseasTravelExchangerateQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 用户当前所在国家的国家码,ISO-3166标准三位数字国家码,currency、countryCode、longitude & latitude三者不能同时为空
+        /// </summary>
+        [JsonProperty("country_code")]
+        [XmlElement("country_code")]
+        public string CountryCode { get; set; }
+
+        /// <summary>
+        /// 货币代码,ISO标准alpha- 3币种代码,currency、countryCode、longitude & latitude三者不能同时为空
+        /// </summary>
+        [JsonProperty("currency")]
+        [XmlElement("currency")]
+        public string Currency { get; set; }
+
+        /// <summary>
+        /// 业务扩展参数,用于商户的特定业务信息的传递,json格式
+        /// </summary>
+        [JsonProperty("extend_param")]
+        [XmlElement("extend_param")]
+        public string ExtendParam { get; set; }
+
+        /// <summary>
+        /// 用户当前定位纬度,currency、countryCode、longitude & latitude三者不能同时为空
+        /// </summary>
+        [JsonProperty("latitude")]
+        [XmlElement("latitude")]
+        public string Latitude { get; set; }
+
+        /// <summary>
+        /// 用户当前定位经度,currency、countryCode、longitude & latitude三者不能同时为空
+        /// </summary>
+        [JsonProperty("longitude")]
+        [XmlElement("longitude")]
+        public string Longitude { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID,唯一,如有该字段,可以获取该币种对应会员等级的汇率
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 8 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeRefundModel.cs

@@ -61,6 +61,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("refund_reason")]
         public string RefundReason { get; set; }
 
+        /// <summary>
+        /// 退分账明细信息
+        /// </summary>
+        [JsonProperty("refund_royalty_parameters")]
+        [XmlArray("refund_royalty_parameters")]
+        [XmlArrayItem("open_api_royalty_detail_info_pojo")]
+        public List<OpenApiRoyaltyDetailInfoPojo> RefundRoyaltyParameters { get; set; }
+
         /// <summary>
         /// 商户的门店编号
         /// </summary>

+ 57 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAccountDeviceInfoQueryModel.cs

@@ -0,0 +1,57 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserAccountDeviceInfoQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserAccountDeviceInfoQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// idfa或者imei号数组。同一笔请求中,数组中只能是idfa或者imei,不能既有imei,又有idfa
+        /// </summary>
+        [JsonProperty("device_ids")]
+        [XmlArray("device_ids")]
+        [XmlArrayItem("string")]
+        public List<string> DeviceIds { get; set; }
+
+        /// <summary>
+        /// 设备类型,IMEI、IDFA、MOBILE(大小写敏感)
+        /// </summary>
+        [JsonProperty("device_type")]
+        [XmlElement("device_type")]
+        public string DeviceType { get; set; }
+
+        /// <summary>
+        /// 设备id的加密方式,如没有加密,可以不传。一般MD5即可满足需求,如其他方式,请和支付宝技术支持联系
+        /// </summary>
+        [JsonProperty("encrypt_type")]
+        [XmlElement("encrypt_type")]
+        public string EncryptType { get; set; }
+
+        /// <summary>
+        /// 扩展参数,如设备系统类型,系统版本等,格式为基本字符串组成的json串
+        /// </summary>
+        [JsonProperty("extra_info")]
+        [XmlElement("extra_info")]
+        public string ExtraInfo { get; set; }
+
+        /// <summary>
+        /// 一般代表调用的合作机构名称,可写简称,大小写敏感
+        /// </summary>
+        [JsonProperty("request_from")]
+        [XmlElement("request_from")]
+        public string RequestFrom { get; set; }
+
+        /// <summary>
+        /// 目标人群类型,切记,如需要使用该字段,请跟支付宝技术支持联系
+        /// </summary>
+        [JsonProperty("target_crowd_type")]
+        [XmlElement("target_crowd_type")]
+        public string TargetCrowdType { get; set; }
+    }
+}

+ 62 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAccountDeviceInfoUploadModel.cs

@@ -0,0 +1,62 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserAccountDeviceInfoUploadModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserAccountDeviceInfoUploadModel : AlipayObject
+    {
+        /// <summary>
+        /// 回调地址
+        /// </summary>
+        [JsonProperty("call_back")]
+        [XmlElement("call_back")]
+        public string CallBack { get; set; }
+
+        /// <summary>
+        /// 设备id,必须和device_type一一对应,即如果传的是device_type=IDFA,则改字段传设备id,如果device_type=IMEI,传设备IMEI号.
+        /// </summary>
+        [JsonProperty("device_id")]
+        [XmlElement("device_id")]
+        public string DeviceId { get; set; }
+
+        /// <summary>
+        /// 设备类型:IMEI、IDFA、MOBILE等(大小写敏感)
+        /// </summary>
+        [JsonProperty("device_type")]
+        [XmlElement("device_type")]
+        public string DeviceType { get; set; }
+
+        /// <summary>
+        /// 设备id的加密方式,如没有加 密,可以不传。一般sha256即可满足需求,如其他方式,请提前和支付宝技术支持联系
+        /// </summary>
+        [JsonProperty("encrypt_type")]
+        [XmlElement("encrypt_type")]
+        public string EncryptType { get; set; }
+
+        /// <summary>
+        /// 扩展参数,如设备系统类型,系统版本等,格式为基本字符串组成的json串
+        /// </summary>
+        [JsonProperty("extra_info")]
+        [XmlElement("extra_info")]
+        public string ExtraInfo { get; set; }
+
+        /// <summary>
+        /// 链接参数信息,格式为基本字符串组成的json串
+        /// </summary>
+        [JsonProperty("params")]
+        [XmlElement("params")]
+        public string Params { get; set; }
+
+        /// <summary>
+        /// 一般代表调用的合作机构名称,可写简称,大小写敏感
+        /// </summary>
+        [JsonProperty("request_from")]
+        [XmlElement("request_from")]
+        public string RequestFrom { get; set; }
+    }
+}

+ 62 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserCertifyStudentinfoSyncModel.cs

@@ -0,0 +1,62 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserCertifyStudentinfoSyncModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserCertifyStudentinfoSyncModel : AlipayObject
+    {
+        /// <summary>
+        /// 证件号码
+        /// </summary>
+        [JsonProperty("cert_no")]
+        [XmlElement("cert_no")]
+        public string CertNo { get; set; }
+
+        /// <summary>
+        /// 教育层次
+        /// </summary>
+        [JsonProperty("education_level")]
+        [XmlElement("education_level")]
+        public string EducationLevel { get; set; }
+
+        /// <summary>
+        /// 入学日期
+        /// </summary>
+        [JsonProperty("entry_date")]
+        [XmlElement("entry_date")]
+        public string EntryDate { get; set; }
+
+        /// <summary>
+        /// 预期毕业日期
+        /// </summary>
+        [JsonProperty("graduation_date")]
+        [XmlElement("graduation_date")]
+        public string GraduationDate { get; set; }
+
+        /// <summary>
+        /// 姓名
+        /// </summary>
+        [JsonProperty("name")]
+        [XmlElement("name")]
+        public string Name { get; set; }
+
+        /// <summary>
+        /// 学校名称
+        /// </summary>
+        [JsonProperty("school_name")]
+        [XmlElement("school_name")]
+        public string SchoolName { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserElectronicidUserbarcodeCreateModel.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserElectronicidUserbarcodeCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserElectronicidUserbarcodeCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 机构方根据cert_id查到机构内部用户信息的唯一字符串。比如:身份证号+姓名 AES加密后的值;
+        /// </summary>
+        [JsonProperty("cert_id")]
+        [XmlElement("cert_id")]
+        public string CertId { get; set; }
+
+        /// <summary>
+        /// 二维码超时时间,单位秒
+        /// </summary>
+        [JsonProperty("expire_time")]
+        [XmlElement("expire_time")]
+        public long ExpireTime { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserIdenticalAuthbaseQueryModel.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserIdenticalAuthbaseQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserIdenticalAuthbaseQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 需要校验的userId,该参数需要用作请求路由
+        /// </summary>
+        [JsonProperty("base_user_id")]
+        [XmlElement("base_user_id")]
+        public string BaseUserId { get; set; }
+
+        /// <summary>
+        /// 另一个需要校验的用户的支付宝账户ID
+        /// </summary>
+        [JsonProperty("comparator_user_id")]
+        [XmlElement("comparator_user_id")]
+        public string ComparatorUserId { get; set; }
+    }
+}

+ 21 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserSceneCooperationConsultModel.cs

@@ -10,6 +10,27 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class AlipayUserSceneCooperationConsultModel : AlipayObject
     {
+        /// <summary>
+        /// 人传人场景码。如果商户需要接入人传人活动建立邀请关系,则需要设置此参数表示人传人场景。当前所有接入人传人的商户统一使用 CommerceService
+        /// </summary>
+        [JsonProperty("invite_scene")]
+        [XmlElement("invite_scene")]
+        public string InviteScene { get; set; }
+
+        /// <summary>
+        /// 商户用来标识自己的合作方ID,可用于人传人下级渠道多级返奖
+        /// </summary>
+        [JsonProperty("partner_id")]
+        [XmlElement("partner_id")]
+        public string PartnerId { get; set; }
+
+        /// <summary>
+        /// 用来标识商户实体,可以是商户的支付宝用户ID
+        /// </summary>
+        [JsonProperty("pid")]
+        [XmlElement("pid")]
+        public string Pid { get; set; }
+
         /// <summary>
         /// 用户主体信息。要求AlipayUserPrincipalInfo中的user_id、mobile(不加国家码)、email属性,有且只有一个非空。否则接口会忽略除去优先级最高的属性之外的其他属性。user_id优先级最高,mobile次之,email最后
         /// </summary>

+ 55 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AppTokenExchangeSubElement.cs

@@ -0,0 +1,55 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AppTokenExchangeSubElement Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AppTokenExchangeSubElement : AlipayObject
+    {
+        /// <summary>
+        /// 应用授权令牌
+        /// </summary>
+        [JsonProperty("app_auth_token")]
+        [XmlElement("app_auth_token")]
+        public string AppAuthToken { get; set; }
+
+        /// <summary>
+        /// 刷新令牌
+        /// </summary>
+        [JsonProperty("app_refresh_token")]
+        [XmlElement("app_refresh_token")]
+        public string AppRefreshToken { get; set; }
+
+        /// <summary>
+        /// 授权商户appid
+        /// </summary>
+        [JsonProperty("auth_app_id")]
+        [XmlElement("auth_app_id")]
+        public string AuthAppId { get; set; }
+
+        /// <summary>
+        /// 过期时间
+        /// </summary>
+        [JsonProperty("expires_in")]
+        [XmlElement("expires_in")]
+        public string ExpiresIn { get; set; }
+
+        /// <summary>
+        /// 刷新令牌过期时间
+        /// </summary>
+        [JsonProperty("re_expires_in")]
+        [XmlElement("re_expires_in")]
+        public string ReExpiresIn { get; set; }
+
+        /// <summary>
+        /// 授权商户的user_id
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 14 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetDeliveryAddress.cs

@@ -52,6 +52,20 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("province")]
         public string Province { get; set; }
 
+        /// <summary>
+        /// 仓库id
+        /// </summary>
+        [JsonProperty("warehouse_id")]
+        [XmlElement("warehouse_id")]
+        public string WarehouseId { get; set; }
+
+        /// <summary>
+        /// 供应商的仓库名称
+        /// </summary>
+        [JsonProperty("warehouse_name")]
+        [XmlElement("warehouse_name")]
+        public string WarehouseName { get; set; }
+
         /// <summary>
         /// 邮编
         /// </summary>

+ 7 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetDeliveryDetail.cs

@@ -25,6 +25,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("assign_item_id")]
         public string AssignItemId { get; set; }
 
+        /// <summary>
+        /// 由供应商自定义的分批反馈批次号,用于保持幂等,此值不传则需要按整批反馈.(由字母,数字,下划线组成)
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
         /// <summary>
         /// 物流单信息
         /// </summary>

+ 21 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetDeliveryItem.cs

@@ -94,6 +94,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("memo")]
         public string Memo { get; set; }
 
+        /// <summary>
+        /// 1. 如果该物料是套组的子物料, 那么该值为套组物料id;  2, 其他情况和物料id(即, item_id)一致或者为空.
+        /// </summary>
+        [JsonProperty("parent_item_id")]
+        [XmlElement("parent_item_id")]
+        public string ParentItemId { get; set; }
+
         /// <summary>
         /// 面单信息
         /// </summary>
@@ -101,6 +108,20 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("print_data")]
         public string PrintData { get; set; }
 
+        /// <summary>
+        /// 生产调拨对应的生产指令.
+        /// </summary>
+        [JsonProperty("produce_order_item_id")]
+        [XmlElement("produce_order_item_id")]
+        public string ProduceOrderItemId { get; set; }
+
+        /// <summary>
+        /// TO_CUSTOMER : 到客户的配送指令; INTERIM : 中转配送指令. 可选值详见openApi文档.
+        /// </summary>
+        [JsonProperty("record_type")]
+        [XmlElement("record_type")]
+        public string RecordType { get; set; }
+
         /// <summary>
         /// 对应供应商pid
         /// </summary>

+ 14 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetProduceItem.cs

@@ -115,6 +115,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("memo")]
         public string Memo { get; set; }
 
+        /// <summary>
+        /// 1. 如果该物料是套组的子物料, 那么该值为套组物料id; 2, 其他情况和物料id(即, item_id)一致或者为空.
+        /// </summary>
+        [JsonProperty("parent_template_id")]
+        [XmlElement("parent_template_id")]
+        public string ParentTemplateId { get; set; }
+
         /// <summary>
         /// 收件人地址邮编; 收钱码吊牌和贴纸类型不为空
         /// </summary>
@@ -122,6 +129,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("postcode")]
         public string Postcode { get; set; }
 
+        /// <summary>
+        /// 面单打印信息
+        /// </summary>
+        [JsonProperty("print_data")]
+        [XmlElement("print_data")]
+        public string PrintData { get; set; }
+
         /// <summary>
         /// 生产单号
         /// </summary>

+ 43 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AvailableTimeInfo.cs

@@ -0,0 +1,43 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AvailableTimeInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AvailableTimeInfo : AlipayObject
+    {
+        /// <summary>
+        /// limit_period_unit为WEEK_DAY,周范围内日单位[1,7],limit_period_unit 为DAY,月范围内日单位[1,31]
+        /// </summary>
+        [JsonProperty("available_days")]
+        [XmlArray("available_days")]
+        [XmlArrayItem("number")]
+        public List<long> AvailableDays { get; set; }
+
+        /// <summary>
+        /// 开始时间如 13:00  代表下午1点
+        /// </summary>
+        [JsonProperty("from_time")]
+        [XmlElement("from_time")]
+        public string FromTime { get; set; }
+
+        /// <summary>
+        /// WEEK_DAY, "周范围内日单位[1,7], DAY, "月范围内日单位[1,31]
+        /// </summary>
+        [JsonProperty("limit_period_unit")]
+        [XmlElement("limit_period_unit")]
+        public string LimitPeriodUnit { get; set; }
+
+        /// <summary>
+        /// 结束时间 如 14:10  代表下午2点10分
+        /// </summary>
+        [JsonProperty("to_time")]
+        [XmlElement("to_time")]
+        public string ToTime { get; set; }
+    }
+}

+ 76 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/CardBinVO.cs

@@ -0,0 +1,76 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// CardBinVO Data Structure.
+    /// </summary>
+    [Serializable]
+    public class CardBinVO : AlipayObject
+    {
+        /// <summary>
+        /// 卡的别名
+        /// </summary>
+        [JsonProperty("card_alias")]
+        [XmlElement("card_alias")]
+        public string CardAlias { get; set; }
+
+        /// <summary>
+        /// 卡bin值,通常为卡号的前6位
+        /// </summary>
+        [JsonProperty("card_bin_value")]
+        [XmlElement("card_bin_value")]
+        public string CardBinValue { get; set; }
+
+        /// <summary>
+        /// 卡类型对象定义
+        /// </summary>
+        [JsonProperty("card_type_vo")]
+        [XmlElement("card_type_vo")]
+        public CardTypeVO CardTypeVo { get; set; }
+
+        /// <summary>
+        /// 卡域模型定义
+        /// </summary>
+        [JsonProperty("domain_vo")]
+        [XmlElement("domain_vo")]
+        public CardDomainVO DomainVo { get; set; }
+
+        /// <summary>
+        /// 机构内标
+        /// </summary>
+        [JsonProperty("inst_id")]
+        [XmlElement("inst_id")]
+        public string InstId { get; set; }
+
+        /// <summary>
+        /// 卡号长度
+        /// </summary>
+        [JsonProperty("inst_len")]
+        [XmlElement("inst_len")]
+        public string InstLen { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [JsonProperty("memo")]
+        [XmlElement("memo")]
+        public string Memo { get; set; }
+
+        /// <summary>
+        /// 操作员
+        /// </summary>
+        [JsonProperty("operator")]
+        [XmlElement("operator")]
+        public string Operator { get; set; }
+
+        /// <summary>
+        /// 卡版本信息
+        /// </summary>
+        [JsonProperty("version")]
+        [XmlElement("version")]
+        public string Version { get; set; }
+    }
+}

+ 29 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/Category.cs

@@ -0,0 +1,29 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// Category Data Structure.
+    /// </summary>
+    [Serializable]
+    public class Category : AlipayObject
+    {
+        /// <summary>
+        /// 店铺分类ID集合
+        /// </summary>
+        [JsonProperty("shop_cate_ids")]
+        [XmlArray("shop_cate_ids")]
+        [XmlArrayItem("string")]
+        public List<string> ShopCateIds { get; set; }
+
+        /// <summary>
+        /// 美食/娱乐等分类条目
+        /// </summary>
+        [JsonProperty("shop_cate_name")]
+        [XmlElement("shop_cate_name")]
+        public string ShopCateName { get; set; }
+    }
+}

+ 43 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/DataSecCheckContent.cs

@@ -0,0 +1,43 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DataSecCheckContent Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DataSecCheckContent : AlipayObject
+    {
+        /// <summary>
+        /// 文本或图片对应的请求唯一值,用于标识文本或图片内容
+        /// </summary>
+        [JsonProperty("data_id")]
+        [XmlElement("data_id")]
+        public string DataId { get; set; }
+
+        /// <summary>
+        /// 数据来源类型:TEXT--文本,IMAGE--图片
+        /// </summary>
+        [JsonProperty("scene_type")]
+        [XmlElement("scene_type")]
+        public string SceneType { get; set; }
+
+        /// <summary>
+        /// 待校验的文本数据(如果包含富文本,请一起传入)
+        /// </summary>
+        [JsonProperty("text")]
+        [XmlElement("text")]
+        public string Text { get; set; }
+
+        /// <summary>
+        /// 待校验图片对应地址
+        /// </summary>
+        [JsonProperty("urls")]
+        [XmlArray("urls")]
+        [XmlArrayItem("string")]
+        public List<string> Urls { get; set; }
+    }
+}

+ 34 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/DataSecCheckResult.cs

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DataSecCheckResult Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DataSecCheckResult : AlipayObject
+    {
+        /// <summary>
+        /// 口碑校验时间
+        /// </summary>
+        [JsonProperty("check_date")]
+        [XmlElement("check_date")]
+        public string CheckDate { get; set; }
+
+        /// <summary>
+        /// 保证传入唯一,用于标识唯一文本或图片
+        /// </summary>
+        [JsonProperty("data_id")]
+        [XmlElement("data_id")]
+        public string DataId { get; set; }
+
+        /// <summary>
+        /// 数据返回状态 PASSED--数据识别通过,DELETE--删除,SYNCNOTICE--异步通知,RETRY--需要重试
+        /// </summary>
+        [JsonProperty("data_status")]
+        [XmlElement("data_status")]
+        public string DataStatus { get; set; }
+    }
+}

+ 14 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/InsPolicy.cs

@@ -92,6 +92,20 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("out_policy_no")]
         public string OutPolicyNo { get; set; }
 
+        /// <summary>
+        /// 终缴时间,用于健康险、寿险等场景,用户需要按期缴费使用
+        /// </summary>
+        [JsonProperty("pay_end_time")]
+        [XmlElement("pay_end_time")]
+        public string PayEndTime { get; set; }
+
+        /// <summary>
+        /// 缴至时间,用于健康险、寿险等场景,用户需要按期缴费使用
+        /// </summary>
+        [JsonProperty("pay_to_time")]
+        [XmlElement("pay_to_time")]
+        public string PayToTime { get; set; }
+
         /// <summary>
         /// 保单凭证号;蚂蚁保险平台生成的保单凭证号,用户可以通过此单号去保险公司查询保单信息.
         /// </summary>

+ 8 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/InvoiceSendOpenModel.cs

@@ -11,6 +11,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class InvoiceSendOpenModel : AlipayObject
     {
+        /// <summary>
+        /// 支付宝端的申请id。如果在开票过程中,是通过支付宝提交的申请到机构端,支付宝会带上开票申请在支付宝生成的申请id,机构在回传发票的时候只需要回传这个申请id,不用获取用户的uid,支付宝可以根据申请id将发票归集到对应的用户名下
+        /// </summary>
+        [JsonProperty("apply_id")]
+        [XmlElement("apply_id")]
+        public string ApplyId { get; set; }
+
         /// <summary>
         /// 票面上的校验码信息。
         /// </summary>
@@ -195,7 +202,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string TaxAmount { get; set; }
 
         /// <summary>
-        /// 支付宝用户userId,当发送红字发票时,即invoice_type=RED时,可选填;其他情况必填。
+        /// 支付宝用户userId,当发送红字发票时,即invoice_type=RED时,可选填;或者apply_id不为空的时候,可选填;其他情况必填。
         /// </summary>
         [JsonProperty("user_id")]
         [XmlElement("user_id")]

+ 14 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/ItemDeliveryDetail.cs

@@ -10,6 +10,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class ItemDeliveryDetail : AlipayObject
     {
+        /// <summary>
+        /// 已生产数量, 分批反馈时候必传.
+        /// </summary>
+        [JsonProperty("amount")]
+        [XmlElement("amount")]
+        public string Amount { get; set; }
+
         /// <summary>
         /// 订单明细ID
         /// </summary>
@@ -17,6 +24,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("assign_item_id")]
         public string AssignItemId { get; set; }
 
+        /// <summary>
+        /// 由供应商自定义的分批反馈批次号,用于保持幂等,此值不传则需要按整批反馈.(由字母,数字,下划线组成)
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
         /// <summary>
         /// 物流公司code, 比如: SF-顺丰, POST-中国邮政, CAINIAO-菜鸟.
         /// </summary>

+ 104 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/ItemResp.cs

@@ -0,0 +1,104 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// ItemResp Data Structure.
+    /// </summary>
+    [Serializable]
+    public class ItemResp : AlipayObject
+    {
+        /// <summary>
+        /// 内容分类
+        /// </summary>
+        [JsonProperty("category")]
+        [XmlElement("category")]
+        public string Category { get; set; }
+
+        /// <summary>
+        /// 用户是否已购买或已领取:true-已购买/已领取,false-未购买/未领取
+        /// </summary>
+        [JsonProperty("has_recive")]
+        [XmlElement("has_recive")]
+        public bool HasRecive { get; set; }
+
+        /// <summary>
+        /// 小图标地址
+        /// </summary>
+        [JsonProperty("icon")]
+        [XmlElement("icon")]
+        public string Icon { get; set; }
+
+        /// <summary>
+        /// 营销图片
+        /// </summary>
+        [JsonProperty("image")]
+        [XmlElement("image")]
+        public string Image { get; set; }
+
+        /// <summary>
+        /// 商品、券ID
+        /// </summary>
+        [JsonProperty("item_id")]
+        [XmlElement("item_id")]
+        public string ItemId { get; set; }
+
+        /// <summary>
+        /// 内容意义
+        /// </summary>
+        [JsonProperty("meaning")]
+        [XmlElement("meaning")]
+        public string Meaning { get; set; }
+
+        /// <summary>
+        /// 商品价格或折扣
+        /// </summary>
+        [JsonProperty("price")]
+        [XmlElement("price")]
+        public string Price { get; set; }
+
+        /// <summary>
+        /// 简要描述
+        /// </summary>
+        [JsonProperty("summary")]
+        [XmlElement("summary")]
+        public string Summary { get; set; }
+
+        /// <summary>
+        /// 内容标签
+        /// </summary>
+        [JsonProperty("tags")]
+        [XmlElement("tags")]
+        public string Tags { get; set; }
+
+        /// <summary>
+        /// 限制及特性描述
+        /// </summary>
+        [JsonProperty("tips")]
+        [XmlElement("tips")]
+        public string Tips { get; set; }
+
+        /// <summary>
+        /// 标题
+        /// </summary>
+        [JsonProperty("title")]
+        [XmlElement("title")]
+        public string Title { get; set; }
+
+        /// <summary>
+        /// 类型:VOUCHER(券)、ITEM(商品)
+        /// </summary>
+        [JsonProperty("type")]
+        [XmlElement("type")]
+        public string Type { get; set; }
+
+        /// <summary>
+        /// 内容跳转地址
+        /// </summary>
+        [JsonProperty("url")]
+        [XmlElement("url")]
+        public string Url { get; set; }
+    }
+}

+ 29 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbAdvertCascadeCommissionInfo.cs

@@ -0,0 +1,29 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KbAdvertCascadeCommissionInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbAdvertCascadeCommissionInfo : AlipayObject
+    {
+        /// <summary>
+        /// 二级分佣条款信息
+        /// </summary>
+        [JsonProperty("commission_clause_infos")]
+        [XmlArray("commission_clause_infos")]
+        [XmlArrayItem("kb_advert_commission_clause")]
+        public List<KbAdvertCommissionClause> CommissionClauseInfos { get; set; }
+
+        /// <summary>
+        /// 二级分佣任务认领人类型  PROMOTER:其他推广者  KOUBEI_PLATFORM:口碑平台
+        /// </summary>
+        [JsonProperty("commission_user_type")]
+        [XmlElement("commission_user_type")]
+        public string CommissionUserType { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbAdvertContentShareCodeModify.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KbAdvertContentShareCodeModify Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbAdvertContentShareCodeModify : AlipayObject
+    {
+        /// <summary>
+        /// 宣传展示标题(不能超过30个字符)
+        /// </summary>
+        [JsonProperty("display_title")]
+        [XmlElement("display_title")]
+        public string DisplayTitle { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbadvertSmartPromoResponse.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KbadvertSmartPromoResponse Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbadvertSmartPromoResponse : AlipayObject
+    {
+        /// <summary>
+        /// 智能营销分组ID
+        /// </summary>
+        [JsonProperty("group_id")]
+        [XmlElement("group_id")]
+        public string GroupId { get; set; }
+
+        /// <summary>
+        /// 智能营销方案ID
+        /// </summary>
+        [JsonProperty("plan_id")]
+        [XmlElement("plan_id")]
+        public string PlanId { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KeyanColumn.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KeyanColumn Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KeyanColumn : AlipayObject
+    {
+        /// <summary>
+        /// 密码
+        /// </summary>
+        [JsonProperty("password")]
+        [XmlElement("password")]
+        public string Password { get; set; }
+    }
+}

+ 1 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiCateringOrderInfoSyncModel.cs

@@ -18,7 +18,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string Action { get; set; }
 
         /// <summary>
-        /// 操作内容信息,Map<String,String> actionInfo = new HashMap<String,String>();  actionInfo.put("NO","5100");// 取餐号  JSONObject.toJSONString(actionInfo);
+        /// 操作内容信息,Map<String,String> actionInfo = new HashMap<String,String>();  actionInfo.put("NO","5100");// 取餐号  JSONObject.toJSONString(actionInfo);拒单原因/主动退款原因/同意退款原因包括:1、RECEIVE_TIMEOUT超时未接单,2、BUSY店铺太忙,无法接待3、DUPLICATE_ORDER重复订单,4、SHOP_CLOSE店铺已打烊5、SELL_OUT菜品售完,5、OTHER_REASON 其他原因;拒绝退款原因包括:1、RECEIVE_TIMEOUT用户已取餐,2、UNDER_LINE_NEGOTIATION和用户协商一致,线下解决,3、OTHER_REASON其他原因
         /// </summary>
         [JsonProperty("action_info")]
         [XmlElement("action_info")]

+ 29 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataMallCheckGetModel.cs

@@ -0,0 +1,29 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiMarketingDataMallCheckGetModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiMarketingDataMallCheckGetModel : AlipayObject
+    {
+        /// <summary>
+        /// 安全校验数据内容入参
+        /// </summary>
+        [JsonProperty("check_contents")]
+        [XmlArray("check_contents")]
+        [XmlArrayItem("data_sec_check_content")]
+        public List<DataSecCheckContent> CheckContents { get; set; }
+
+        /// <summary>
+        /// 数据源:USER--C端,MERCHANT--B端
+        /// </summary>
+        [JsonProperty("data_source")]
+        [XmlElement("data_source")]
+        public string DataSource { get; set; }
+    }
+}

+ 64 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataMallRecommendGetModel.cs

@@ -0,0 +1,64 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiMarketingDataMallRecommendGetModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiMarketingDataMallRecommendGetModel : AlipayObject
+    {
+        /// <summary>
+        /// 获取几条数据,最大值传入50,默认值10
+        /// </summary>
+        [JsonProperty("count")]
+        [XmlElement("count")]
+        public long Count { get; set; }
+
+        /// <summary>
+        /// 获取的数据类型:big_item(商圈商品)、small_item(商圈下门店商品)、big_voucher(商圈券)、small_voucher(商圈下门店券)
+        /// </summary>
+        [JsonProperty("data_type")]
+        [XmlElement("data_type")]
+        public string DataType { get; set; }
+
+        /// <summary>
+        /// 设备ID
+        /// </summary>
+        [JsonProperty("device_id")]
+        [XmlElement("device_id")]
+        public string DeviceId { get; set; }
+
+        /// <summary>
+        /// 商圈ID
+        /// </summary>
+        [JsonProperty("mall_id")]
+        [XmlElement("mall_id")]
+        public string MallId { get; set; }
+
+        /// <summary>
+        /// 店铺类目ID
+        /// </summary>
+        [JsonProperty("shop_category_ids")]
+        [XmlArray("shop_category_ids")]
+        [XmlArrayItem("string")]
+        public List<string> ShopCategoryIds { get; set; }
+
+        /// <summary>
+        /// 起始数据下标,默认值0
+        /// </summary>
+        [JsonProperty("start")]
+        [XmlElement("start")]
+        public long Start { get; set; }
+
+        /// <summary>
+        /// 支付宝用户ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 48 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataSceneParkingoutUploadModel.cs

@@ -0,0 +1,48 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiMarketingDataSceneParkingoutUploadModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiMarketingDataSceneParkingoutUploadModel : AlipayObject
+    {
+        /// <summary>
+        /// 停车出库场景业务参数
+        /// </summary>
+        [JsonProperty("biz_info")]
+        [XmlElement("biz_info")]
+        public ParkingOutScene BizInfo { get; set; }
+
+        /// <summary>
+        /// 扩展信息
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
+        /// <summary>
+        /// 外部请求号,确保唯一,用于幂等控制
+        /// </summary>
+        [JsonProperty("out_request_no")]
+        [XmlElement("out_request_no")]
+        public string OutRequestNo { get; set; }
+
+        /// <summary>
+        /// 场景类型
+        /// </summary>
+        [JsonProperty("scene_type")]
+        [XmlElement("scene_type")]
+        public string SceneType { get; set; }
+
+        /// <summary>
+        /// 支付宝用户的userId
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiMarketingDataShopCategoryGetModel.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiMarketingDataShopCategoryGetModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiMarketingDataShopCategoryGetModel : AlipayObject
+    {
+        /// <summary>
+        /// 该参数标识需要返回几个分类,多余的分类将会放于other字段中,最大值传入50,默认值10
+        /// </summary>
+        [JsonProperty("count")]
+        [XmlElement("count")]
+        public long Count { get; set; }
+
+        /// <summary>
+        /// 商圈ID
+        /// </summary>
+        [JsonProperty("mall_id")]
+        [XmlElement("mall_id")]
+        public string MallId { get; set; }
+    }
+}

+ 20 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiShopMallCardQueryModel.cs

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiShopMallCardQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiShopMallCardQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 商圈ID
+        /// </summary>
+        [JsonProperty("mall_id")]
+        [XmlElement("mall_id")]
+        public string MallId { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiShopMallMemberIdentifyModel.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiShopMallMemberIdentifyModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiShopMallMemberIdentifyModel : AlipayObject
+    {
+        /// <summary>
+        /// 商圈ID
+        /// </summary>
+        [JsonProperty("mall_id")]
+        [XmlElement("mall_id")]
+        public string MallId { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiShopMallMemberQueryModel.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiShopMallMemberQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiShopMallMemberQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 商圈ID
+        /// </summary>
+        [JsonProperty("mall_id")]
+        [XmlElement("mall_id")]
+        public string MallId { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

+ 1 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiTradeTicketTicketcodeUseModel.cs

@@ -32,7 +32,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string OrderNo { get; set; }
 
         /// <summary>
-        /// 核销份数,次卡业务必填
+        /// 核销份数,次卡业务必填;非次卡业务不能填写
         /// </summary>
         [JsonProperty("quantity")]
         [XmlElement("quantity")]

+ 16 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiTradeVoucherItemTemplete.cs

@@ -11,6 +11,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class KoubeiTradeVoucherItemTemplete : AlipayObject
     {
+        /// <summary>
+        /// 商品可用时间段
+        /// </summary>
+        [JsonProperty("available_time_info_list")]
+        [XmlArray("available_time_info_list")]
+        [XmlArrayItem("available_time_info")]
+        public List<AvailableTimeInfo> AvailableTimeInfoList { get; set; }
+
         /// <summary>
         /// 购买须知,列表类型,最多10项
         /// </summary>
@@ -26,6 +34,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("support_book")]
         public string SupportBook { get; set; }
 
+        /// <summary>
+        /// 不可用日期
+        /// </summary>
+        [JsonProperty("un_available_time_info_list")]
+        [XmlArray("un_available_time_info_list")]
+        [XmlArrayItem("un_available_time_info")]
+        public List<UnAvailableTimeInfo> UnAvailableTimeInfoList { get; set; }
+
         /// <summary>
         /// 购买有效期:商品自购买起多长时间内有效,取值范围 7-360,单位天。举例,如果是7的话,是到第七天晚上23:59:59失效。商品购买后,没有在有效期内核销,则自动退款给用户。举例:买了一个高级造型师洗剪吹的商品,有效期一个月,如果一个月之后,用户没有使用商品来进行洗剪吹的服务,则自动退款给用户。
         /// </summary>

+ 22 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/ListListComplexMockModel.cs

@@ -0,0 +1,22 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// ListListComplexMockModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class ListListComplexMockModel : AlipayObject
+    {
+        /// <summary>
+        /// 复杂对象list
+        /// </summary>
+        [JsonProperty("cm_list")]
+        [XmlArray("cm_list")]
+        [XmlArrayItem("complext_mock_model")]
+        public List<ComplextMockModel> CmList { get; set; }
+    }
+}

+ 57 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/MallCardBo.cs

@@ -0,0 +1,57 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// MallCardBo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class MallCardBo : AlipayObject
+    {
+        /// <summary>
+        /// 商圈会员卡权益描述
+        /// </summary>
+        [JsonProperty("benefit_desc")]
+        [XmlArray("benefit_desc")]
+        [XmlArrayItem("string")]
+        public List<string> BenefitDesc { get; set; }
+
+        /// <summary>
+        /// 会员卡图片url
+        /// </summary>
+        [JsonProperty("card_logo_url")]
+        [XmlElement("card_logo_url")]
+        public string CardLogoUrl { get; set; }
+
+        /// <summary>
+        /// 扩展信息
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
+        /// <summary>
+        /// 等级展示名称
+        /// </summary>
+        [JsonProperty("level_show_name")]
+        [XmlElement("level_show_name")]
+        public string LevelShowName { get; set; }
+
+        /// <summary>
+        /// 会员卡卡模版ID
+        /// </summary>
+        [JsonProperty("template_id")]
+        [XmlElement("template_id")]
+        public string TemplateId { get; set; }
+
+        /// <summary>
+        /// 权益标题 多个权益用,分隔
+        /// </summary>
+        [JsonProperty("title")]
+        [XmlElement("title")]
+        public string Title { get; set; }
+    }
+}

+ 7 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/MerchantModel.cs

@@ -37,5 +37,12 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [JsonProperty("name")]
         [XmlElement("name")]
         public string Name { get; set; }
+
+        /// <summary>
+        /// 商户或者isv的pid
+        /// </summary>
+        [JsonProperty("pid")]
+        [XmlElement("pid")]
+        public string Pid { get; set; }
     }
 }

+ 22 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/OldListListComplexMockModel.cs

@@ -0,0 +1,22 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// OldListListComplexMockModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class OldListListComplexMockModel : AlipayObject
+    {
+        /// <summary>
+        /// 复杂模型list
+        /// </summary>
+        [JsonProperty("cm_list")]
+        [XmlArray("cm_list")]
+        [XmlArrayItem("old_complext_mock_model")]
+        public List<OldComplextMockModel> CmList { get; set; }
+    }
+}

+ 34 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/OverseasTravelRate.cs

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// OverseasTravelRate Data Structure.
+    /// </summary>
+    [Serializable]
+    public class OverseasTravelRate : AlipayObject
+    {
+        /// <summary>
+        /// 货币代码,ISO标准alpha- 3币种代码
+        /// </summary>
+        [JsonProperty("currency")]
+        [XmlElement("currency")]
+        public string Currency { get; set; }
+
+        /// <summary>
+        /// 货币icon的url地址
+        /// </summary>
+        [JsonProperty("currency_icon")]
+        [XmlElement("currency_icon")]
+        public string CurrencyIcon { get; set; }
+
+        /// <summary>
+        /// 汇率,double类型,为支付宝当面付的当前币种/CNY的汇率值,如1美元=6.2345人民币元,即汇率为6.2345
+        /// </summary>
+        [JsonProperty("rate")]
+        [XmlElement("rate")]
+        public string Rate { get; set; }
+    }
+}

+ 48 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/ParkingOutScene.cs

@@ -0,0 +1,48 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// ParkingOutScene Data Structure.
+    /// </summary>
+    [Serializable]
+    public class ParkingOutScene : AlipayObject
+    {
+        /// <summary>
+        /// 车牌号
+        /// </summary>
+        [JsonProperty("car_number")]
+        [XmlElement("car_number")]
+        public string CarNumber { get; set; }
+
+        /// <summary>
+        /// 停车费用
+        /// </summary>
+        [JsonProperty("fee")]
+        [XmlElement("fee")]
+        public string Fee { get; set; }
+
+        /// <summary>
+        /// 出场时间
+        /// </summary>
+        [JsonProperty("out_time")]
+        [XmlElement("out_time")]
+        public string OutTime { get; set; }
+
+        /// <summary>
+        /// 停车场id
+        /// </summary>
+        [JsonProperty("parking_id")]
+        [XmlElement("parking_id")]
+        public string ParkingId { get; set; }
+
+        /// <summary>
+        /// 停车场名称
+        /// </summary>
+        [JsonProperty("parking_name")]
+        [XmlElement("parking_name")]
+        public string ParkingName { get; set; }
+    }
+}

+ 15 - 1
src/Essensoft.AspNetCore.Payment.Alipay/Domain/SceneMarketingContent.cs

@@ -11,6 +11,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class SceneMarketingContent : AlipayObject
     {
+        /// <summary>
+        /// 美食 娱乐等分类条目
+        /// </summary>
+        [JsonProperty("category")]
+        [XmlElement("category")]
+        public string Category { get; set; }
+
         /// <summary>
         /// 小图标地址
         /// </summary>
@@ -32,6 +39,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("meaning")]
         public string Meaning { get; set; }
 
+        /// <summary>
+        /// 优惠信息的html格式展示参考
+        /// </summary>
+        [JsonProperty("meaning_desc")]
+        [XmlElement("meaning_desc")]
+        public string MeaningDesc { get; set; }
+
         /// <summary>
         /// 营销内容标签
         /// </summary>
@@ -56,7 +70,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string Title { get; set; }
 
         /// <summary>
-        /// 营销内容类型
+        /// 营销内容类型,例如优惠好店,商圈特惠
         /// </summary>
         [JsonProperty("type")]
         [XmlElement("type")]

+ 27 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/UnAvailableTimeInfo.cs

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// UnAvailableTimeInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class UnAvailableTimeInfo : AlipayObject
+    {
+        /// <summary>
+        /// 起始时间
+        /// </summary>
+        [JsonProperty("from_date")]
+        [XmlElement("from_date")]
+        public string FromDate { get; set; }
+
+        /// <summary>
+        /// 结束时间
+        /// </summary>
+        [JsonProperty("to_date")]
+        [XmlElement("to_date")]
+        public string ToDate { get; set; }
+    }
+}

+ 36 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/UserInfoAndBenefitQueryResult.cs

@@ -0,0 +1,36 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// UserInfoAndBenefitQueryResult Data Structure.
+    /// </summary>
+    [Serializable]
+    public class UserInfoAndBenefitQueryResult : AlipayObject
+    {
+        /// <summary>
+        /// 用户的蚂蚁会员积分余额
+        /// </summary>
+        [JsonProperty("balance")]
+        [XmlElement("balance")]
+        public long Balance { get; set; }
+
+        /// <summary>
+        /// 蚂蚁会员权益配置信息列表
+        /// </summary>
+        [JsonProperty("benefit_info_list")]
+        [XmlArray("benefit_info_list")]
+        [XmlArrayItem("benefit_grade_point")]
+        public List<BenefitGradePoint> BenefitInfoList { get; set; }
+
+        /// <summary>
+        /// 用户的蚂蚁会员等级
+        /// </summary>
+        [JsonProperty("grade")]
+        [XmlElement("grade")]
+        public string Grade { get; set; }
+    }
+}

+ 7 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/ZhimaCreditEpFreedepositInitializeModel.cs

@@ -87,6 +87,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("name")]
         public string Name { get; set; }
 
+        /// <summary>
+        /// 外部请求号,用作关联使用,该号可以是前置业务产生传递给商户,需要商户验签后解析使用
+        /// </summary>
+        [JsonProperty("out_request_no")]
+        [XmlElement("out_request_no")]
+        public string OutRequestNo { get; set; }
+
         /// <summary>
         /// 企业免押额度申请产品码
         /// </summary>

+ 109 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Request/AlipayEbppInvoiceApplyResultSyncRequest.cs

@@ -0,0 +1,109 @@
+using System.Collections.Generic;
+using Essensoft.AspNetCore.Payment.Alipay.Response;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Request
+{
+    /// <summary>
+    /// AOP API: alipay.ebpp.invoice.apply.result.sync
+    /// </summary>
+    public class AlipayEbppInvoiceApplyResultSyncRequest : IAlipayRequest<AlipayEbppInvoiceApplyResultSyncResponse>
+    {
+        /// <summary>
+        /// 同步发票申请结果
+        /// </summary>
+        public string BizContent { get; set; }
+
+        #region IAlipayRequest Members
+		private bool  needEncrypt=false;
+        private string apiVersion = "1.0";
+		private string terminalType;
+		private string terminalInfo;
+        private string prodCode;
+		private string notifyUrl;
+        private string returnUrl;
+		private AlipayObject bizModel;
+
+		public void SetNeedEncrypt(bool needEncrypt){
+             this.needEncrypt=needEncrypt;
+        }
+
+        public bool GetNeedEncrypt(){
+
+            return needEncrypt;
+        }
+
+		public void SetNotifyUrl(string notifyUrl){
+            this.notifyUrl = notifyUrl;
+        }
+
+        public string GetNotifyUrl(){
+            return notifyUrl;
+        }
+
+        public void SetReturnUrl(string returnUrl){
+            this.returnUrl = returnUrl;
+        }
+
+        public string GetReturnUrl(){
+            return returnUrl;
+        }
+
+        public void SetTerminalType(string terminalType){
+			this.terminalType=terminalType;
+		}
+
+    	public string GetTerminalType(){
+    		return terminalType;
+    	}
+
+    	public void SetTerminalInfo(string terminalInfo){
+    		this.terminalInfo=terminalInfo;
+    	}
+
+    	public string GetTerminalInfo(){
+    		return terminalInfo;
+    	}
+
+        public void SetProdCode(string prodCode){
+            this.prodCode=prodCode;
+        }
+
+        public string GetProdCode(){
+            return prodCode;
+        }
+
+        public string GetApiName()
+        {
+            return "alipay.ebpp.invoice.apply.result.sync";
+        }
+
+        public void SetApiVersion(string apiVersion){
+            this.apiVersion=apiVersion;
+        }
+
+        public string GetApiVersion(){
+            return apiVersion;
+        }
+
+        public IDictionary<string, string> GetParameters()
+        {
+            var parameters = new AlipayDictionary
+            {
+                { "biz_content", BizContent }
+            };
+            return parameters;
+        }
+
+		public AlipayObject GetBizModel()
+        {
+            return bizModel;
+        }
+
+        public void SetBizModel(AlipayObject bizModel)
+        {
+            this.bizModel = bizModel;
+        }
+
+        #endregion
+    }
+}

+ 4 - 4
src/Essensoft.AspNetCore.Payment.Alipay/Request/KoubeiItemBatchqueryRequest.cs → src/Essensoft.AspNetCore.Payment.Alipay/Request/AlipayEcoEduKtParentQueryRequest.cs

@@ -4,12 +4,12 @@ using Essensoft.AspNetCore.Payment.Alipay.Response;
 namespace Essensoft.AspNetCore.Payment.Alipay.Request
 {
     /// <summary>
-    /// AOP API: koubei.item.batchquery
+    /// AOP API: alipay.eco.edu.kt.parent.query
     /// </summary>
-    public class KoubeiItemBatchqueryRequest : IAlipayRequest<KoubeiItemBatchqueryResponse>
+    public class AlipayEcoEduKtParentQueryRequest : IAlipayRequest<AlipayEcoEduKtParentQueryResponse>
     {
         /// <summary>
-        /// 口碑商品查询
+        /// 查询学生家长状态接口
         /// </summary>
         public string BizContent { get; set; }
 
@@ -74,7 +74,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Request
 
         public string GetApiName()
         {
-            return "koubei.item.batchquery";
+            return "alipay.eco.edu.kt.parent.query";
         }
 
         public void SetApiVersion(string apiVersion){

+ 18 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayEbppInvoiceApplyResultSyncResponse.cs

@@ -0,0 +1,18 @@
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Response
+{
+    /// <summary>
+    /// AlipayEbppInvoiceApplyResultSyncResponse.
+    /// </summary>
+    public class AlipayEbppInvoiceApplyResultSyncResponse : AlipayResponse
+    {
+        /// <summary>
+        /// 标注是否需要调用方重试,在请求失败的情况下返回,如果该字段返回true表明该失败的情况通过重试补偿可解决,为false表明失败情况通过重试无法解决
+        /// </summary>
+        [JsonProperty("retry_flag")]
+        [XmlElement("retry_flag")]
+        public bool RetryFlag { get; set; }
+    }
+}

+ 18 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayEcoEduKtParentQueryResponse.cs

@@ -0,0 +1,18 @@
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Response
+{
+    /// <summary>
+    /// AlipayEcoEduKtParentQueryResponse.
+    /// </summary>
+    public class AlipayEcoEduKtParentQueryResponse : AlipayResponse
+    {
+        /// <summary>
+        /// 如果用户已经添加过这个孩子,则返回SUCCESS , 失败返回FAIL。
+        /// </summary>
+        [JsonProperty("status")]
+        [XmlElement("status")]
+        public string Status { get; set; }
+    }
+}

+ 10 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayOpenAuthTokenAppResponse.cs

@@ -1,5 +1,7 @@
 using Newtonsoft.Json;
 using System.Xml.Serialization;
+using System.Collections.Generic;
+using Essensoft.AspNetCore.Payment.Alipay.Domain;
 
 namespace Essensoft.AspNetCore.Payment.Alipay.Response
 {
@@ -43,6 +45,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Response
         [XmlElement("re_expires_in")]
         public string ReExpiresIn { get; set; }
 
+        /// <summary>
+        /// 批量授权换码访问令牌列表
+        /// </summary>
+        [JsonProperty("tokens")]
+        [XmlArray("tokens")]
+        [XmlArrayItem("app_token_exchange_sub_element")]
+        public List<AppTokenExchangeSubElement> Tokens { get; set; }
+
         /// <summary>
         /// 授权商户的user_id
         /// </summary>

+ 10 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Response/AlipayTradeFastpayRefundQueryResponse.cs

@@ -1,5 +1,7 @@
 using Newtonsoft.Json;
 using System.Xml.Serialization;
+using System.Collections.Generic;
+using Essensoft.AspNetCore.Payment.Alipay.Domain;
 
 namespace Essensoft.AspNetCore.Payment.Alipay.Response
 {
@@ -71,6 +73,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Response
         [XmlElement("refund_reason")]
         public string RefundReason { get; set; }
 
+        /// <summary>
+        /// 退分账明细信息
+        /// </summary>
+        [JsonProperty("refund_royaltys")]
+        [XmlArray("refund_royaltys")]
+        [XmlArrayItem("refund_royalty_result")]
+        public List<RefundRoyaltyResult> RefundRoyaltys { get; set; }
+
         /// <summary>
         /// 只在使用异步退款接口情况下才返回该字段。REFUND_PROCESSING 退款处理中;REFUND_SUCCESS 退款处理成功;REFUND_FAIL 退款失败;
         /// </summary>

+ 0 - 49
src/Essensoft.AspNetCore.Payment.Alipay/Response/KoubeiItemBatchqueryResponse.cs

@@ -1,49 +0,0 @@
-using Newtonsoft.Json;
-using System.Xml.Serialization;
-using System.Collections.Generic;
-using Essensoft.AspNetCore.Payment.Alipay.Domain;
-
-namespace Essensoft.AspNetCore.Payment.Alipay.Response
-{
-    /// <summary>
-    /// KoubeiItemBatchqueryResponse.
-    /// </summary>
-    public class KoubeiItemBatchqueryResponse : AlipayResponse
-    {
-        /// <summary>
-        /// 当前页码
-        /// </summary>
-        [JsonProperty("current_page_no")]
-        [XmlElement("current_page_no")]
-        public string CurrentPageNo { get; set; }
-
-        /// <summary>
-        /// 商品信息
-        /// </summary>
-        [JsonProperty("item_infos")]
-        [XmlArray("item_infos")]
-        [XmlArrayItem("item_query_response")]
-        public List<ItemQueryResponse> ItemInfos { get; set; }
-
-        /// <summary>
-        /// 每页记录数
-        /// </summary>
-        [JsonProperty("page_size")]
-        [XmlElement("page_size")]
-        public string PageSize { get; set; }
-
-        /// <summary>
-        /// 总共商品数目
-        /// </summary>
-        [JsonProperty("total_items")]
-        [XmlElement("total_items")]
-        public string TotalItems { get; set; }
-
-        /// <summary>
-        /// 总页码数目
-        /// </summary>
-        [JsonProperty("total_page_no")]
-        [XmlElement("total_page_no")]
-        public string TotalPageNo { get; set; }
-    }
-}

+ 14 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Response/KoubeiTradeTicketTicketcodeQueryResponse.cs

@@ -10,6 +10,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Response
     /// </summary>
     public class KoubeiTradeTicketTicketcodeQueryResponse : AlipayResponse
     {
+        /// <summary>
+        /// 次卡场景,可用核销份数。仅当次卡场景有值
+        /// </summary>
+        [JsonProperty("available_quantity")]
+        [XmlElement("available_quantity")]
+        public string AvailableQuantity { get; set; }
+
         /// <summary>
         /// 用户购买时商品的现价
         /// </summary>
@@ -88,6 +95,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Response
         [XmlArrayItem("ticket_trans_info")]
         public List<TicketTransInfo> TicketTransInfoList { get; set; }
 
+        /// <summary>
+        /// 是否次卡。是次卡场景值为true,反之为false
+        /// </summary>
+        [JsonProperty("time_cards")]
+        [XmlElement("time_cards")]
+        public string TimeCards { get; set; }
+
         /// <summary>
         /// 券码对应的凭证资产id
         /// </summary>