فهرست منبع

同步 alipay-sdk-NET-3.2.0

Roc 7 سال پیش
والد
کامیت
8e6e8f9c30
100فایلهای تغییر یافته به همراه3627 افزوده شده و 28 حذف شده
  1. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayCommerceMedicalCardQueryModel.cs
  2. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayDataDataexchangeDtmorseSyncModel.cs
  3. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayDataDataexchangeDtmorsepordSyncModel.cs
  4. 43 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayDataDataserviceAntlbsCrowdMatchModel.cs
  5. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceAuthSignModel.cs
  6. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceAuthUnsignModel.cs
  7. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayEbppInvoiceTaxnoBatchqueryModel.cs
  8. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundAuthOrderAppFreezeModel.cs
  9. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundAuthOrderFreezeModel.cs
  10. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundAuthOrderUnfreezeModel.cs
  11. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundAuthOrderVoucherCreateModel.cs
  12. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransAacollectBatchCloseModel.cs
  13. 90 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransAacollectBatchCreateModel.cs
  14. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransAacollectBatchQueryModel.cs
  15. 55 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransAacollectPayorderCreateModel.cs
  16. 83 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransCollectSinglemoneytokenCreateModel.cs
  17. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransToaccountTransferModel.cs
  18. 22 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayInsSceneApplicationGroupApplyModel.cs
  19. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveAswfDagQueryModel.cs
  20. 36 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveImageRouteQueryModel.cs
  21. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingCampaignSubcertQueryModel.cs
  22. 62 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMarketingToolPromocommoptOpeneventSendModel.cs
  23. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayMsaasMediarecogAftscvpayTransactionInitializeModel.cs
  24. 29 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenAgentSignstatusQueryModel.cs
  25. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenAppLingbalingliuQueryModel.cs
  26. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenAppSilanApigrayQueryModel.cs
  27. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenAppSilanApigrayoneQueryModel.cs
  28. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenEchoSendModel.cs
  29. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenMiniSetintentiondataSetModel.cs
  30. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenMiniTinyappExistQueryModel.cs
  31. 8 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenServicemarketOrderItemCancelModel.cs
  32. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenServicemarketOrderItemCompleteModel.cs
  33. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenServicemarketOrderItemConfirmModel.cs
  34. 55 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenServicemarketYcstestQueryModel.cs
  35. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOverseasTravelAppleCampprizeDetectModel.cs
  36. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayPcreditLoanCollateralValuationSyncModel.cs
  37. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayPcreditLoanDeductApplyModel.cs
  38. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipaySecurityProdIfaaDevicepubkeyQueryModel.cs
  39. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipaySecurityProdXwbtestprodQueryModel.cs
  40. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipaySecurityRiskContentDetectModel.cs
  41. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipaySecurityRiskContentResultGetModel.cs
  42. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipaySecurityRiskOfflinevarsQueryModel.cs
  43. 43 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeBatchSettleModel.cs
  44. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeCreateModel.cs
  45. 50 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeOrderPayModel.cs
  46. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeOrderinfoSyncModel.cs
  47. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradePaygrowthPayabilityQueryModel.cs
  48. 0 7
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAccountDeviceInfoQueryModel.cs
  49. 48 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAntpaasRoleDeleteModel.cs
  50. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserAntpaasTokenidentityCreateModel.cs
  51. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserCustomertagSaveModel.cs
  52. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserElectronicidMerchantbarcodeCreateModel.cs
  53. 78 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserGroupshoppingBenefitQueryModel.cs
  54. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserGroupshoppingNewbieQueryModel.cs
  55. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserUnicomDataQueryModel.cs
  56. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandActivitySignupCreateModel.cs
  57. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandActivitySignupQueryModel.cs
  58. 22 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandAssetinfoDeliverySyncModel.cs
  59. 22 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandAssetinfoProduceSyncModel.cs
  60. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandAutomatApplyModifyModel.cs
  61. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandAutomatApplyUploadModel.cs
  62. 16 2
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectCreateModel.cs
  63. 16 2
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectModifyModel.cs
  64. 9 2
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectQueryModel.cs
  65. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectTransferModel.cs
  66. 209 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectZftConsultModel.cs
  67. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectZftCreateModel.cs
  68. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectZftModifyModel.cs
  69. 62 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIsvDeviceBindModel.cs
  70. 92 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIsvDeviceCreateModel.cs
  71. 155 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIsvShopCreateModel.cs
  72. 164 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandShopConsultModel.cs
  73. 165 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandShopCreateModel.cs
  74. 21 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetInfoItem.cs
  75. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/AssetResult.cs
  76. 90 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/BatchDetailInfo.cs
  77. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/BuyerPayDetail.cs
  78. 76 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ContractBasicInfo.cs
  79. 62 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DeliveryInfo.cs
  80. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DeviceApplyTemplate.cs
  81. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DeviceResultInfo.cs
  82. 55 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DiscountInfos.cs
  83. 149 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/DishList.cs
  84. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/EbppUserChargeInstInfo.cs
  85. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/ExtendMedicalCard.cs
  86. 20 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/FaceExtInfo.cs
  87. 34 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/FaceSearchUserInfo.cs
  88. 48 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/InsCoupon.cs
  89. 14 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/InvoiceElementModel.cs
  90. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/InvoiceTitleModel.cs
  91. 2 2
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishCookInfo.cs
  92. 1 1
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishDictionary.cs
  93. 3 3
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishEstimatedInfo.cs
  94. 69 4
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishInfo.cs
  95. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishMaterialBindingInfo.cs
  96. 90 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishMaterialInfo.cs
  97. 36 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishPropertyInfo.cs
  98. 27 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishPropertyValueInfo.cs
  99. 7 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishSkuInfo.cs
  100. 41 0
      src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiCateringCookConditionBatchqueryModel.cs

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

@@ -46,7 +46,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ReturnUrl { get; set; }
 
         /// <summary>
-        /// 支付场景  条码支付,取值:bar_code  声波支付,取值:wave_code
+        /// 支付场景  条码支付,取值:bar_code  声波支付,取值:wave_code  人脸支付,取值:face_code
         /// </summary>
         [JsonProperty("scene")]
         [XmlElement("scene")]

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayDataDataexchangeDtmorseSyncModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayDataDataexchangeDtmorseSyncModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayDataDataexchangeDtmorseSyncModel : AlipayObject
+    {
+        /// <summary>
+        /// 外部商户发送给域内系统的信息
+        /// </summary>
+        [JsonProperty("data")]
+        [XmlElement("data")]
+        public string Data { get; set; }
+
+        /// <summary>
+        /// 扩展字段,用于补充
+        /// </summary>
+        [JsonProperty("extent_info")]
+        [XmlElement("extent_info")]
+        public string ExtentInfo { get; set; }
+
+        /// <summary>
+        /// 多方安全计算分配给商户的唯一id,由管理员分配给商户的唯一识别号;
+        /// </summary>
+        [JsonProperty("mid")]
+        [XmlElement("mid")]
+        public string Mid { get; set; }
+
+        /// <summary>
+        /// 服务操作类型,商户同步信息到域内,类型枚举:modeling_back;根据不同场景管理员分配;
+        /// </summary>
+        [JsonProperty("operate_type")]
+        [XmlElement("operate_type")]
+        public string OperateType { get; set; }
+    }
+}

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayDataDataexchangeDtmorsepordSyncModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayDataDataexchangeDtmorsepordSyncModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayDataDataexchangeDtmorsepordSyncModel : AlipayObject
+    {
+        /// <summary>
+        /// 外部商户发送给域内系统的信息
+        /// </summary>
+        [JsonProperty("data")]
+        [XmlElement("data")]
+        public string Data { get; set; }
+
+        /// <summary>
+        /// 扩展字段,用于补充
+        /// </summary>
+        [JsonProperty("extent_info")]
+        [XmlElement("extent_info")]
+        public string ExtentInfo { get; set; }
+
+        /// <summary>
+        /// 多方安全计算分配给商户的唯一id,由管理员分配给商户的唯一识别号;
+        /// </summary>
+        [JsonProperty("mid")]
+        [XmlElement("mid")]
+        public string Mid { get; set; }
+
+        /// <summary>
+        /// 服务操作类型,商户同步信息到域内,类型枚举:sample_init;根据不同场景管理员分配;
+        /// </summary>
+        [JsonProperty("operate_type")]
+        [XmlElement("operate_type")]
+        public string OperateType { get; set; }
+    }
+}

+ 43 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayDataDataserviceAntlbsCrowdMatchModel.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>
+    /// AlipayDataDataserviceAntlbsCrowdMatchModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayDataDataserviceAntlbsCrowdMatchModel : AlipayObject
+    {
+        /// <summary>
+        /// crowd_code + 客群匹配接口 + 客群码,创建客群时可获取
+        /// </summary>
+        [JsonProperty("crowd_code")]
+        [XmlArray("crowd_code")]
+        [XmlArrayItem("string")]
+        public List<string> CrowdCode { get; set; }
+
+        /// <summary>
+        /// scene_code + 客群匹配接口 + 客群归属的场景,在icrowd平台上可以看到
+        /// </summary>
+        [JsonProperty("scene_code")]
+        [XmlElement("scene_code")]
+        public string SceneCode { get; set; }
+
+        /// <summary>
+        /// uid + 客群匹配接口 + 用户唯一ID,目前只支持支付宝账号,其他ID类型请联系接口负责人确认是否支持
+        /// </summary>
+        [JsonProperty("uid")]
+        [XmlElement("uid")]
+        public string Uid { get; set; }
+
+        /// <summary>
+        /// uid_type + 客群匹配接口 + ID类型,目前只支持支付宝账号(USER_ID),其他ID类型请联系接口负责人确认是否支持
+        /// </summary>
+        [JsonProperty("uid_type")]
+        [XmlElement("uid_type")]
+        public string UidType { get; set; }
+    }
+}

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayEbppInvoiceAuthSignModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayEbppInvoiceAuthSignModel : AlipayObject
+    {
+        /// <summary>
+        /// 发票授权类型,可选值:INVOICE_AUTO_SYNC(发票自动回传)
+        /// </summary>
+        [JsonProperty("authorization_type")]
+        [XmlElement("authorization_type")]
+        public string AuthorizationType { get; set; }
+
+        /// <summary>
+        /// 开票商户品牌简称,与商户入驻时的品牌简称保持一致。
+        /// </summary>
+        [JsonProperty("m_short_name")]
+        [XmlElement("m_short_name")]
+        public string MShortName { get; set; }
+
+        /// <summary>
+        /// 支付宝用户userId
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayEbppInvoiceAuthUnsignModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayEbppInvoiceAuthUnsignModel : AlipayObject
+    {
+        /// <summary>
+        /// 发票授权类型,可选值:INVOICE_AUTO_SYNC(发票自动回传)
+        /// </summary>
+        [JsonProperty("authorization_type")]
+        [XmlElement("authorization_type")]
+        public string AuthorizationType { get; set; }
+
+        /// <summary>
+        /// 开票商户品牌简称,与商户入驻时的品牌简称保持一致。
+        /// </summary>
+        [JsonProperty("m_short_name")]
+        [XmlElement("m_short_name")]
+        public string MShortName { get; set; }
+
+        /// <summary>
+        /// 支付宝用户userId
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -33,6 +33,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("limit_size")]
         public long LimitSize { get; set; }
 
+        /// <summary>
+        /// 当前页码,为空时默认第一页
+        /// </summary>
+        [JsonProperty("page_num")]
+        [XmlElement("page_num")]
+        public long PageNum { get; set; }
+
         /// <summary>
         /// 发票要素获取应用场景  INVOICE_EXPENSE-发票报销
         /// </summary>

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

@@ -17,6 +17,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("amount")]
         public string Amount { get; set; }
 
+        /// <summary>
+        /// 商户可用该参数指定用户可使用的支付渠道,本期支持商户可支持三种支付渠道,余额宝(MONEY_FUND)、花呗(PCREDIT_PAY)以及芝麻信用(CREDITZHIMA)。商户可设置一种支付渠道,也可设置多种支付渠道。
+        /// </summary>
+        [JsonProperty("enable_pay_channels")]
+        [XmlElement("enable_pay_channels")]
+        public string EnablePayChannels { get; set; }
+
         /// <summary>
         /// 业务扩展参数,用于商户的特定业务信息的传递,json格式。 1.授权业务对应的类目,key为category,value由支付宝分配,比如充电桩业务传 "CHARGE_PILE_CAR"; 2. 外部商户的门店编号,key为outStoreCode,可选; 3. 外部商户的门店简称,key为outStoreAlias,可选。
         /// </summary>

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

@@ -31,6 +31,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("auth_code_type")]
         public string AuthCodeType { get; set; }
 
+        /// <summary>
+        /// 商户可用该参数指定用户可使用的支付渠道,本期支持商户可支持三种支付渠道,余额宝(MONEY_FUND)、花呗(PCREDIT_PAY)以及芝麻信用(CREDITZHIMA)。商户可设置一种支付渠道,也可设置多种支付渠道。
+        /// </summary>
+        [JsonProperty("enable_pay_channels")]
+        [XmlElement("enable_pay_channels")]
+        public string EnablePayChannels { get; set; }
+
         /// <summary>
         /// 业务扩展参数,用于商户的特定业务信息的传递,json格式。   1.间联模式必须传入二级商户ID,key为secondaryMerchantId;  2. 当面资金授权业务对应的类目,key为category,value由支付宝分配,酒店业务传 "HOTEL";  3. 外部商户的门店编号,key为outStoreCode,可选;  4. 外部商户的门店简称,key为outStoreAlias,可选。
         /// </summary>

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

@@ -24,6 +24,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("auth_no")]
         public string AuthNo { get; set; }
 
+        /// <summary>
+        /// 解冻扩展信息,json格式;unfreezeBizInfo 目前为芝麻消费字段,支持Key值如下:  "bizComplete":"true" -- 选填:标识本次解冻用户是否履约,如果true信用单会完结为COMPLETE
+        /// </summary>
+        [JsonProperty("extra_param")]
+        [XmlElement("extra_param")]
+        public string ExtraParam { get; set; }
+
         /// <summary>
         /// 商户本次资金操作的请求流水号,同一商户每次不同的资金操作请求,商户请求流水号不能重复
         /// </summary>

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

@@ -17,6 +17,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("amount")]
         public string Amount { get; set; }
 
+        /// <summary>
+        /// 商户可用该参数指定用户可使用的支付渠道,本期支持商户可支持三种支付渠道,余额宝(MONEY_FUND)、花呗(PCREDIT_PAY)以及芝麻信用(CREDITZHIMA)。商户可设置一种支付渠道,也可设置多种支付渠道。
+        /// </summary>
+        [JsonProperty("enable_pay_channels")]
+        [XmlElement("enable_pay_channels")]
+        public string EnablePayChannels { get; set; }
+
         /// <summary>
         /// 业务扩展参数,用于商户的特定业务信息的传递,json格式。   1.间联模式必须传入二级商户ID,key为secondaryMerchantId;  2. 当面资金授权业务对应的类目,key为category,value由支付宝分配,酒店业务传 "HOTEL"(信用预授权场景下必传);  3. 外部商户的门店编号,key为outStoreCode,可选;  4. 外部商户的门店简称,key为outStoreAlias,可选。
         /// </summary>

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayFundTransAacollectBatchCloseModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayFundTransAacollectBatchCloseModel : AlipayObject
+    {
+        /// <summary>
+        /// 批次号
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
+        /// <summary>
+        /// 创建批次返回 的token
+        /// </summary>
+        [JsonProperty("batch_token")]
+        [XmlElement("batch_token")]
+        public string BatchToken { get; set; }
+
+        /// <summary>
+        /// 当前支付宝用户id
+        /// </summary>
+        [JsonProperty("current_user_id")]
+        [XmlElement("current_user_id")]
+        public string CurrentUserId { get; set; }
+    }
+}

+ 90 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransAacollectBatchCreateModel.cs

@@ -0,0 +1,90 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayFundTransAacollectBatchCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayFundTransAacollectBatchCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 收款备注,显示在支付宝账单
+        /// </summary>
+        [JsonProperty("batch_memo")]
+        [XmlElement("batch_memo")]
+        public string BatchMemo { get; set; }
+
+        /// <summary>
+        /// 渠道,由支付宝业务方提供值,目前只打印日志      taobao:淘系过来的       alipay:钱包内的      mini:小程序       other:其他来源
+        /// </summary>
+        [JsonProperty("channel")]
+        [XmlElement("channel")]
+        public string Channel { get; set; }
+
+        /// <summary>
+        /// 调用方扩充参数,按照Map<String,String>格式json
+        /// </summary>
+        [JsonProperty("ext_param")]
+        [XmlElement("ext_param")]
+        public string ExtParam { get; set; }
+
+        /// <summary>
+        /// 是否限定份数,true/false, 默认为不限定
+        /// </summary>
+        [JsonProperty("limit_items_total")]
+        [XmlElement("limit_items_total")]
+        public string LimitItemsTotal { get; set; }
+
+        /// <summary>
+        /// 单笔金额,平均后的金额
+        /// </summary>
+        [JsonProperty("pay_amount_single")]
+        [XmlElement("pay_amount_single")]
+        public string PayAmountSingle { get; set; }
+
+        /// <summary>
+        /// 收款总金额,不限份数不传
+        /// </summary>
+        [JsonProperty("pay_amount_total")]
+        [XmlElement("pay_amount_total")]
+        public string PayAmountTotal { get; set; }
+
+        /// <summary>
+        /// 当前支付宝userId,即收款方支付宝userId
+        /// </summary>
+        [JsonProperty("payee_user_id")]
+        [XmlElement("payee_user_id")]
+        public string PayeeUserId { get; set; }
+
+        /// <summary>
+        /// 付款方支付宝uid列表,按照List<String>格式json      每个uid生成一条BatchDetailModel      限定份数时必传,且人数=实际份数
+        /// </summary>
+        [JsonProperty("payer_user_ids")]
+        [XmlElement("payer_user_ids")]
+        public string PayerUserIds { get; set; }
+
+        /// <summary>
+        /// 实际创建总笔数(若包括自己,这里为showitemsTotal-1),不限份数不传
+        /// </summary>
+        [JsonProperty("real_items_total")]
+        [XmlElement("real_items_total")]
+        public string RealItemsTotal { get; set; }
+
+        /// <summary>
+        /// 显示总笔数(选择的人数),不限份数不传
+        /// </summary>
+        [JsonProperty("show_items_total")]
+        [XmlElement("show_items_total")]
+        public string ShowItemsTotal { get; set; }
+
+        /// <summary>
+        /// 来源,如支付宝、小程序,涉及ctu属性      钱包内淘宝求赞助:innerTBH5       钱包群收:innerBiz      小程序收款:fromMini
+        /// </summary>
+        [JsonProperty("source")]
+        [XmlElement("source")]
+        public string Source { get; set; }
+    }
+}

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayFundTransAacollectBatchQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayFundTransAacollectBatchQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 批次号
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
+        /// <summary>
+        /// 防止接口被遍历所设置的查询token,在调用创建批次时生成,随批次号下发
+        /// </summary>
+        [JsonProperty("batch_token")]
+        [XmlElement("batch_token")]
+        public string BatchToken { get; set; }
+    }
+}

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

@@ -0,0 +1,55 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayFundTransAacollectPayorderCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayFundTransAacollectPayorderCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 批次号,创建批次返回
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
+        /// <summary>
+        /// 创建批次返回的batchToken
+        /// </summary>
+        [JsonProperty("batch_token")]
+        [XmlElement("batch_token")]
+        public string BatchToken { get; set; }
+
+        /// <summary>
+        /// 调用方扩充参数,json格式map
+        /// </summary>
+        [JsonProperty("ext_param")]
+        [XmlElement("ext_param")]
+        public string ExtParam { get; set; }
+
+        /// <summary>
+        /// 支付金额
+        /// </summary>
+        [JsonProperty("pay_amount")]
+        [XmlElement("pay_amount")]
+        public string PayAmount { get; set; }
+
+        /// <summary>
+        /// 当前支付宝userId,即付款方支付宝用户uid
+        /// </summary>
+        [JsonProperty("payer_user_id")]
+        [XmlElement("payer_user_id")]
+        public string PayerUserId { get; set; }
+
+        /// <summary>
+        /// 进入付款来源,仅记录      吱口令:shakeCode      二维码:qrCode      小程序:mini      其他来源(包括正常流程):null
+        /// </summary>
+        [JsonProperty("source")]
+        [XmlElement("source")]
+        public string Source { get; set; }
+    }
+}

+ 83 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayFundTransCollectSinglemoneytokenCreateModel.cs

@@ -0,0 +1,83 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayFundTransCollectSinglemoneytokenCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayFundTransCollectSinglemoneytokenCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 业务回调通知参数,由业务方定义,用于支付成功后mnotify回调通知透传
+        /// </summary>
+        [JsonProperty("biz_context")]
+        [XmlElement("biz_context")]
+        public string BizContext { get; set; }
+
+        /// <summary>
+        /// 收款模式,枚举类型: 0 普通收钱 1 一码一付 2 一人一付,微供场景填2
+        /// </summary>
+        [JsonProperty("collect_mode")]
+        [XmlElement("collect_mode")]
+        public string CollectMode { get; set; }
+
+        /// <summary>
+        /// 订单过期时间戳,指定单据过期时间,必须大于当前时间,精确到秒,
+        /// </summary>
+        [JsonProperty("expire_date")]
+        [XmlElement("expire_date")]
+        public string ExpireDate { get; set; }
+
+        /// <summary>
+        /// 扩展参数,对于一些CTU需要使用的参数请通过该参数传递
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
+        /// <summary>
+        /// 外部单据号,微供1688场景对应商品订单号,用作幂等控制
+        /// </summary>
+        [JsonProperty("out_biz_no")]
+        [XmlElement("out_biz_no")]
+        public string OutBizNo { get; set; }
+
+        /// <summary>
+        /// 渠道来源,由接口业务方分配,目前微供1688场景传递1688
+        /// </summary>
+        [JsonProperty("out_channel")]
+        [XmlElement("out_channel")]
+        public string OutChannel { get; set; }
+
+        /// <summary>
+        /// 收款金额,单位元
+        /// </summary>
+        [JsonProperty("pay_amount")]
+        [XmlElement("pay_amount")]
+        public string PayAmount { get; set; }
+
+        /// <summary>
+        /// 收款备注,显示在支付宝账单,不传不展示,不支持emoji表情符号
+        /// </summary>
+        [JsonProperty("pay_memo")]
+        [XmlElement("pay_memo")]
+        public string PayMemo { get; set; }
+
+        /// <summary>
+        /// 进入付款的模式,枚举类型:1吱口令,2二维码
+        /// </summary>
+        [JsonProperty("pay_mode")]
+        [XmlElement("pay_mode")]
+        public string PayMode { get; set; }
+
+        /// <summary>
+        /// 收款方支付宝用户ID,对于微供吱口令场景即微商支付宝用户ID
+        /// </summary>
+        [JsonProperty("payee_user_id")]
+        [XmlElement("payee_user_id")]
+        public string PayeeUserId { get; set; }
+    }
+}

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

@@ -18,7 +18,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string Amount { get; set; }
 
         /// <summary>
-        /// 扩展参数,json字符串格式,目前仅支持的key:order_title:收款方转账账单标题。  用于商户的特定业务信息的传递,只有商户与支付宝约定了传递此参数且约定了参数含义,此参数才有效
+        /// 扩展参数,json字符串格式,目前仅支持的key=order_title,表示收款方的转账账单标题,value可以根据自己的业务定制
         /// </summary>
         [JsonProperty("ext_param")]
         [XmlElement("ext_param")]

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

@@ -40,6 +40,21 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("bill_title")]
         public string BillTitle { get; set; }
 
+        /// <summary>
+        /// 权益,可选不唯一,优惠使用,优惠决策时产生。
+        /// </summary>
+        [JsonProperty("coupons")]
+        [XmlArray("coupons")]
+        [XmlArrayItem("ins_coupon")]
+        public List<InsCoupon> Coupons { get; set; }
+
+        /// <summary>
+        /// 优惠单号,可选不唯一,优惠使用,优惠决策时产生。
+        /// </summary>
+        [JsonProperty("discount_id")]
+        [XmlElement("discount_id")]
+        public string DiscountId { get; set; }
+
         /// <summary>
         /// 商户生成的外部投保业务号,必须保证唯一
         /// </summary>
@@ -54,6 +69,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("prod_code")]
         public string ProdCode { get; set; }
 
+        /// <summary>
+        /// 报价单号,可选不唯一,用于指定投保订单对应的报价单,报价时产生。
+        /// </summary>
+        [JsonProperty("quote_biz_id")]
+        [XmlElement("quote_biz_id")]
+        public string QuoteBizId { get; set; }
+
         /// <summary>
         /// 渠道来源
         /// </summary>

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveAswfDagQueryModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayIserviceCognitiveAswfDagQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayIserviceCognitiveAswfDagQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 业务唯一标识,不可空
+        /// </summary>
+        [JsonProperty("biz_id")]
+        [XmlElement("biz_id")]
+        public string BizId { get; set; }
+
+        /// <summary>
+        /// 业务的任务描述
+        /// </summary>
+        [JsonProperty("ctxs")]
+        [XmlElement("ctxs")]
+        public string Ctxs { get; set; }
+
+        /// <summary>
+        /// DAG模板ID,不可空
+        /// </summary>
+        [JsonProperty("template_id")]
+        [XmlElement("template_id")]
+        public string TemplateId { get; set; }
+
+        /// <summary>
+        /// 业务请求唯一id
+        /// </summary>
+        [JsonProperty("trace_id")]
+        [XmlElement("trace_id")]
+        public string TraceId { get; set; }
+    }
+}

+ 36 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayIserviceCognitiveImageRouteQueryModel.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>
+    /// AlipayIserviceCognitiveImageRouteQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayIserviceCognitiveImageRouteQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 业务id
+        /// </summary>
+        [JsonProperty("biz_id")]
+        [XmlElement("biz_id")]
+        public string BizId { get; set; }
+
+        /// <summary>
+        /// 业务请求详细内容
+        /// </summary>
+        [JsonProperty("ctx")]
+        [XmlArray("ctx")]
+        [XmlArrayItem("string")]
+        public List<string> Ctx { get; set; }
+
+        /// <summary>
+        /// 业务pv唯一id
+        /// </summary>
+        [JsonProperty("trace_id")]
+        [XmlElement("trace_id")]
+        public string TraceId { get; set; }
+    }
+}

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayMarketingCampaignSubcertQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayMarketingCampaignSubcertQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 用户登录账号名:邮箱或手机号。已知支付宝账号的活动触发调用中,user_id与login_id至少有一个非空,都非空时,以user_id为准。
+        /// </summary>
+        [JsonProperty("login_id")]
+        [XmlElement("login_id")]
+        public string LoginId { get; set; }
+
+        /// <summary>
+        /// 营销平台凭证批次号
+        /// </summary>
+        [JsonProperty("lot_num")]
+        [XmlElement("lot_num")]
+        public string LotNum { get; set; }
+
+        /// <summary>
+        /// 支付宝用户uid:支付宝用户唯一标识。该参数用于已知支付宝账号的活动触发。user_id、login_id两个参数至少有一个非空。
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -0,0 +1,62 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayMarketingToolPromocommoptOpeneventSendModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayMarketingToolPromocommoptOpeneventSendModel : AlipayObject
+    {
+        /// <summary>
+        /// 外部事件发生时间,必须是(yyyy-MM-dd HH:mm:ss)格式
+        /// </summary>
+        [JsonProperty("biz_time")]
+        [XmlElement("biz_time")]
+        public string BizTime { get; set; }
+
+        /// <summary>
+        /// 唯一事件编码,用来区分不同的事件类型。事件类型是给定的,当前事件类型只有PARKING(停车场事件)一种
+        /// </summary>
+        [JsonProperty("event_code")]
+        [XmlElement("event_code")]
+        public string EventCode { get; set; }
+
+        /// <summary>
+        /// 每一个事件码对应的扩展信息,是Map<String,String>的类型JSON格式化的字符串。  事件类型为PARKING的KEY如下:  parking_lot_id:停车场ID(必填)  action: IN(进场)、OUT 出场(必填)  content_id:内容ID(必填)
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
+        /// <summary>
+        /// 事件发生的纬度信息。经度信息和纬度信息必须同时存在,要么都填,要么都不填。
+        /// </summary>
+        [JsonProperty("latitude")]
+        [XmlElement("latitude")]
+        public long Latitude { get; set; }
+
+        /// <summary>
+        /// 事件发生的经度信息。经度信息和纬度信息必须同时存在,要么都填,要么都不填。
+        /// </summary>
+        [JsonProperty("longitude")]
+        [XmlElement("longitude")]
+        public long Longitude { get; set; }
+
+        /// <summary>
+        /// 事件唯一编号,用来做幂等控制。每一次用户在商户所发生的事件,out_biz_no都不能一样。比如用户每次进入停车场、离开停车场的out_biz_no不能一样。
+        /// </summary>
+        [JsonProperty("out_biz_no")]
+        [XmlElement("out_biz_no")]
+        public string OutBizNo { get; set; }
+
+        /// <summary>
+        /// 支付宝用户ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -19,6 +19,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlArrayItem("good_info")]
         public List<GoodInfo> GoodsInfos { get; set; }
 
+        /// <summary>
+        /// 标识是什么场景下的视觉识别请求
+        /// </summary>
+        [JsonProperty("scene")]
+        [XmlElement("scene")]
+        public string Scene { get; set; }
+
         /// <summary>
         /// 售卖设备编号
         /// </summary>

+ 29 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenAgentSignstatusQueryModel.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>
+    /// AlipayOpenAgentSignstatusQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayOpenAgentSignstatusQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// isv要查询签约状态的商户账号,是支付宝账号pid(2088开头)
+        /// </summary>
+        [JsonProperty("pid")]
+        [XmlElement("pid")]
+        public string Pid { get; set; }
+
+        /// <summary>
+        /// isv要查询商户签约状态的产品码,产品码是支付宝内部对产品的唯一标识
+        /// </summary>
+        [JsonProperty("product_codes")]
+        [XmlArray("product_codes")]
+        [XmlArrayItem("string")]
+        public List<string> ProductCodes { get; set; }
+    }
+}

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

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

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

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

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

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

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

@@ -10,6 +10,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class AlipayOpenEchoSendModel : AlipayObject
     {
+        /// <summary>
+        /// city
+        /// </summary>
+        [JsonProperty("city")]
+        [XmlElement("city")]
+        public string City { get; set; }
+
         /// <summary>
         /// xxx
         /// </summary>

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayOpenMiniSetintentiondataSetModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayOpenMiniSetintentiondataSetModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayOpenMiniSetintentiondataSetModel : AlipayObject
+    {
+        /// <summary>
+        /// 本次更新动作类型,put:新增或覆盖,remove:删除
+        /// </summary>
+        [JsonProperty("action")]
+        [XmlElement("action")]
+        public string Action { get; set; }
+
+        /// <summary>
+        /// 当前批次的唯一编号,对应本批次上传的多条意图数据,开发者自定义
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
+        /// <summary>
+        /// 用于标识数据所属的服务类目
+        /// </summary>
+        [JsonProperty("category")]
+        [XmlElement("category")]
+        public string Category { get; set; }
+
+        /// <summary>
+        /// 推送到服务库的数据列表,json array格式的字符串
+        /// </summary>
+        [JsonProperty("data")]
+        [XmlElement("data")]
+        public string Data { get; set; }
+    }
+}

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

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayOpenMiniTinyappExistQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayOpenMiniTinyappExistQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 支付宝账号ID
+        /// </summary>
+        [JsonProperty("pid")]
+        [XmlElement("pid")]
+        public string Pid { get; set; }
+    }
+}

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

@@ -25,7 +25,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string CommodityOrderId { get; set; }
 
         /// <summary>
-        /// 订购服务门店ID
+        /// 商家订购服务选择的某一小程序的APPID,如果该订单为蚂蚁服务市场发布的小程序插件服务所产生的订单,则此字段必填
+        /// </summary>
+        [JsonProperty("mini_app_id")]
+        [XmlElement("mini_app_id")]
+        public string MiniAppId { get; set; }
+
+        /// <summary>
+        /// 商家订购服务选择的某一门店的ID,如果该订单为口碑服务市场发布的服务所产生的订单,则此字段必填
         /// </summary>
         [JsonProperty("shop_id")]
         [XmlElement("shop_id")]

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

@@ -17,6 +17,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("commodity_order_id")]
         public string CommodityOrderId { get; set; }
 
+        /// <summary>
+        /// 商家订购服务选择的某一小程序的APPID,如果该订单为蚂蚁服务市场发布的小程序插件服务所产生的订单,则此字段必填
+        /// </summary>
+        [JsonProperty("mini_app_id")]
+        [XmlElement("mini_app_id")]
+        public string MiniAppId { get; set; }
+
         /// <summary>
         /// 商家订购服务选择的某一门店的ID,如果该订单为口碑服务市场发布的服务所产生的订单,则此字段必填
         /// </summary>

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

@@ -17,6 +17,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("commodity_order_id")]
         public string CommodityOrderId { get; set; }
 
+        /// <summary>
+        /// 商家订购服务选择的某一小程序的APPID,如果该订单为蚂蚁服务市场发布的小程序插件服务所产生的订单,则此字段必填
+        /// </summary>
+        [JsonProperty("mini_app_id")]
+        [XmlElement("mini_app_id")]
+        public string MiniAppId { get; set; }
+
         /// <summary>
         /// 商家订购服务选择的某一门店的ID,如果该订单为口碑服务市场发布的服务所产生的订单,则此字段必填
         /// </summary>

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

@@ -0,0 +1,55 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayOpenServicemarketYcstestQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayOpenServicemarketYcstestQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// aaaa
+        /// </summary>
+        [JsonProperty("in_1")]
+        [XmlElement("in_1")]
+        public string In1 { get; set; }
+
+        /// <summary>
+        /// 222
+        /// </summary>
+        [JsonProperty("in_2")]
+        [XmlElement("in_2")]
+        public bool In2 { get; set; }
+
+        /// <summary>
+        /// 333
+        /// </summary>
+        [JsonProperty("in_3")]
+        [XmlElement("in_3")]
+        public string In3 { get; set; }
+
+        /// <summary>
+        /// 444
+        /// </summary>
+        [JsonProperty("in_4")]
+        [XmlElement("in_4")]
+        public long In4 { get; set; }
+
+        /// <summary>
+        /// 55
+        /// </summary>
+        [JsonProperty("in_5")]
+        [XmlElement("in_5")]
+        public string In5 { get; set; }
+
+        /// <summary>
+        /// 66666
+        /// </summary>
+        [JsonProperty("in_6")]
+        [XmlElement("in_6")]
+        public XwbTestData In6 { get; set; }
+    }
+}

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

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

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

@@ -24,6 +24,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("eval_time")]
         public string EvalTime { get; set; }
 
+        /// <summary>
+        /// JSON格式的扩展信息,具体操作和机构约定具体的扩展信息。  {"annualIncome":"200000.00","downPayment":"30000.00","installmentNum":"12","installmentOrg":"0","isInstallment":"1","isLocal":"1","isMortgaged":"1","monthlyPayment":"11000.00","paidNum":"3","serviceProvider":"杭州服务商","totalAmount":"150000.00","unpaidAmount":"99000.00"}
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
         /// <summary>
         /// 机构请求流水号,请求的幂等字段,作为业务幂等性控制
         /// </summary>

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayPcreditLoanDeductApplyModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayPcreditLoanDeductApplyModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayPcreditLoanDeductApplyModel : AlipayObject
+    {
+        /// <summary>
+        /// 贷款申请单号,客户申请贷款时借呗系统生成的全局唯一业务流水号
+        /// </summary>
+        [JsonProperty("loan_apply_no")]
+        [XmlElement("loan_apply_no")]
+        public string LoanApplyNo { 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("out_request_no")]
+        [XmlElement("out_request_no")]
+        public string OutRequestNo { get; set; }
+    }
+}

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipaySecurityProdIfaaDevicepubkeyQueryModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipaySecurityProdIfaaDevicepubkeyQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipaySecurityProdIfaaDevicepubkeyQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 用于协商ECDH的publickey,base6编码
+        /// </summary>
+        [JsonProperty("ecdh_publickey")]
+        [XmlElement("ecdh_publickey")]
+        public string EcdhPublickey { get; set; }
+
+        /// <summary>
+        /// 已返回记录的最大ID,初次请求输入0
+        /// </summary>
+        [JsonProperty("max_id")]
+        [XmlElement("max_id")]
+        public string MaxId { get; set; }
+
+        /// <summary>
+        /// 安全设备的ID。
+        /// </summary>
+        [JsonProperty("security_device_id")]
+        [XmlElement("security_device_id")]
+        public string SecurityDeviceId { get; set; }
+
+        /// <summary>
+        /// 安全设备类型,SGX或者加密机
+        /// </summary>
+        [JsonProperty("security_schema")]
+        [XmlElement("security_schema")]
+        public string SecuritySchema { get; set; }
+    }
+}

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

@@ -10,6 +10,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     [Serializable]
     public class AlipaySecurityProdXwbtestprodQueryModel : AlipayObject
     {
+        /// <summary>
+        /// Stop
+        /// </summary>
+        [JsonProperty("in_a")]
+        [XmlElement("in_a")]
+        public string InA { get; set; }
+
         /// <summary>
         /// 省份编码,国标码
         /// </summary>

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

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipaySecurityRiskContentDetectModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipaySecurityRiskContentDetectModel : AlipayObject
+    {
+        /// <summary>
+        /// 需要识别的文本,不要包含特殊字符以及双引号等可能引起json格式化错误问题的字符.
+        /// </summary>
+        [JsonProperty("content")]
+        [XmlElement("content")]
+        public string Content { get; set; }
+    }
+}

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

@@ -23,5 +23,12 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [JsonProperty("app_scene_data_id")]
         [XmlElement("app_scene_data_id")]
         public string AppSceneDataId { get; set; }
+
+        /// <summary>
+        /// 内容检测事件id,根据此id查询异步检测结果
+        /// </summary>
+        [JsonProperty("event_id")]
+        [XmlElement("event_id")]
+        public string EventId { get; set; }
     }
 }

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

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipaySecurityRiskOfflinevarsQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipaySecurityRiskOfflinevarsQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 查询离线变量的主键
+        /// </summary>
+        [JsonProperty("rowkeys")]
+        [XmlElement("rowkeys")]
+        public string Rowkeys { get; set; }
+    }
+}

+ 43 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeBatchSettleModel.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>
+    /// AlipayTradeBatchSettleModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayTradeBatchSettleModel : AlipayObject
+    {
+        /// <summary>
+        /// 收单产品码,商家和支付宝签约的产品码
+        /// </summary>
+        [JsonProperty("biz_product")]
+        [XmlElement("biz_product")]
+        public string BizProduct { get; set; }
+
+        /// <summary>
+        /// 扩展参数
+        /// </summary>
+        [JsonProperty("extend_params")]
+        [XmlElement("extend_params")]
+        public string ExtendParams { get; set; }
+
+        /// <summary>
+        /// 结算请求外部流水号,32个字符以内、可包含字母、数字、下划线;需保证在商户端不重复
+        /// </summary>
+        [JsonProperty("out_request_no")]
+        [XmlElement("out_request_no")]
+        public string OutRequestNo { get; set; }
+
+        /// <summary>
+        /// 结算明细条款
+        /// </summary>
+        [JsonProperty("settle_clauses")]
+        [XmlArray("settle_clauses")]
+        [XmlArrayItem("settle_clause")]
+        public List<SettleClause> SettleClauses { get; set; }
+    }
+}

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

@@ -89,6 +89,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlArrayItem("goods_detail")]
         public List<GoodsDetail> GoodsDetail { get; set; }
 
+        /// <summary>
+        /// 物流信息
+        /// </summary>
+        [JsonProperty("logistics_detail")]
+        [XmlElement("logistics_detail")]
+        public LogisticsDetail LogisticsDetail { get; set; }
+
         /// <summary>
         /// 商户原始订单号,最大长度限制32位
         /// </summary>
@@ -110,6 +117,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("out_trade_no")]
         public string OutTradeNo { get; set; }
 
+        /// <summary>
+        /// 收货人及地址信息
+        /// </summary>
+        [JsonProperty("receiver_address_info")]
+        [XmlElement("receiver_address_info")]
+        public ReceiverAddressInfo ReceiverAddressInfo { get; set; }
+
         /// <summary>
         /// 描述分账信息,json格式。
         /// </summary>

+ 50 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeOrderPayModel.cs

@@ -0,0 +1,50 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayTradeOrderPayModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayTradeOrderPayModel : AlipayObject
+    {
+        /// <summary>
+        /// 买家的支付宝用户id    注:  1.用于校验与已存交易中的买家是否相等
+        /// </summary>
+        [JsonProperty("buyer_id")]
+        [XmlElement("buyer_id")]
+        public string BuyerId { get; set; }
+
+        /// <summary>
+        /// 买家支付明细    目前支持的支付渠道为:  - offline_pos:本次买家使用的是pos刷卡支付    注:  各支付工具金额总和=订单总金额
+        /// </summary>
+        [JsonProperty("buyer_pay_detail")]
+        [XmlArray("buyer_pay_detail")]
+        [XmlArrayItem("buyer_pay_detail")]
+        public List<BuyerPayDetail> BuyerPayDetail { get; set; }
+
+        /// <summary>
+        /// 销售产品码
+        /// </summary>
+        [JsonProperty("product_code")]
+        [XmlElement("product_code")]
+        public string ProductCode { get; set; }
+
+        /// <summary>
+        /// 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]    注:  1.用于校验与已存交易中的金额是否相等
+        /// </summary>
+        [JsonProperty("total_amount")]
+        [XmlElement("total_amount")]
+        public string TotalAmount { get; set; }
+
+        /// <summary>
+        /// 支付宝交易号
+        /// </summary>
+        [JsonProperty("trade_no")]
+        [XmlElement("trade_no")]
+        public string TradeNo { get; set; }
+    }
+}

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradeOrderinfoSyncModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayTradeOrderinfoSyncModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayTradeOrderinfoSyncModel : AlipayObject
+    {
+        /// <summary>
+        /// 交易信息同步对应的业务类型,具体值与支付宝约定;信用授权场景下传CREDIT_AUTH
+        /// </summary>
+        [JsonProperty("biz_type")]
+        [XmlElement("biz_type")]
+        public string BizType { get; set; }
+
+        /// <summary>
+        /// 商户传入同步信息,具体值要和支付宝约定;用于芝麻信用租车、单次授权等信息同步场景,格式为json格式
+        /// </summary>
+        [JsonProperty("order_biz_info")]
+        [XmlElement("order_biz_info")]
+        public string OrderBizInfo { get; set; }
+
+        /// <summary>
+        /// 标识一笔交易多次请求,同一笔交易多次信息同步时需要保证唯一
+        /// </summary>
+        [JsonProperty("out_request_no")]
+        [XmlElement("out_request_no")]
+        public string OutRequestNo { get; set; }
+
+        /// <summary>
+        /// 支付宝交易号,和商户订单号不能同时为空
+        /// </summary>
+        [JsonProperty("trade_no")]
+        [XmlElement("trade_no")]
+        public string TradeNo { get; set; }
+    }
+}

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayTradePaygrowthPayabilityQueryModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayTradePaygrowthPayabilityQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayTradePaygrowthPayabilityQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 业务标识,用于支付场景,需要根据具体的支付类型传值。
+        /// </summary>
+        [JsonProperty("biz_identity")]
+        [XmlElement("biz_identity")]
+        public string BizIdentity { get; set; }
+
+        /// <summary>
+        /// 实际支付金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]
+        /// </summary>
+        [JsonProperty("real_pay_amount")]
+        [XmlElement("real_pay_amount")]
+        public string RealPayAmount { get; set; }
+
+        /// <summary>
+        /// 请求来源,必传,新的场景取值需要根据业务定义。
+        /// </summary>
+        [JsonProperty("request_from")]
+        [XmlElement("request_from")]
+        public string RequestFrom { get; set; }
+
+        /// <summary>
+        /// 支付宝userId,不能为空
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -46,12 +46,5 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [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; }
     }
 }

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

@@ -0,0 +1,48 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserAntpaasRoleDeleteModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserAntpaasRoleDeleteModel : AlipayObject
+    {
+        /// <summary>
+        /// 业务场景
+        /// </summary>
+        [JsonProperty("biz_scene")]
+        [XmlElement("biz_scene")]
+        public string BizScene { get; set; }
+
+        /// <summary>
+        /// 角色Id
+        /// </summary>
+        [JsonProperty("ip_role_id")]
+        [XmlElement("ip_role_id")]
+        public string IpRoleId { get; set; }
+
+        /// <summary>
+        /// 被动建立关系的 会员来源业务平台类型。104-金融云平台,103-淘宝平台,102-保险平台
+        /// </summary>
+        [JsonProperty("join_rel_role_biz_platform")]
+        [XmlElement("join_rel_role_biz_platform")]
+        public string JoinRelRoleBizPlatform { get; set; }
+
+        /// <summary>
+        /// 主操作员ID
+        /// </summary>
+        [JsonProperty("operator_id")]
+        [XmlElement("operator_id")]
+        public string OperatorId { get; set; }
+
+        /// <summary>
+        /// 角色关系类型,1-保险业务,2-金融云业务
+        /// </summary>
+        [JsonProperty("rel_biz_typ")]
+        [XmlElement("rel_biz_typ")]
+        public string RelBizTyp { get; set; }
+    }
+}

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

@@ -24,6 +24,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("biz_scene")]
         public string BizScene { get; set; }
 
+        /// <summary>
+        /// 额外附加信息
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
         /// <summary>
         /// 附加信息Id,如淘宝虚拟账号Id
         /// </summary>

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserCustomertagSaveModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserCustomertagSaveModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserCustomertagSaveModel : AlipayObject
+    {
+        /// <summary>
+        /// 业务场景码。由支付宝产品经理分配,相当于存储标签的使用凭证。
+        /// </summary>
+        [JsonProperty("biz_type")]
+        [XmlElement("biz_type")]
+        public string BizType { get; set; }
+
+        /// <summary>
+        /// 标签名字
+        /// </summary>
+        [JsonProperty("tag_name")]
+        [XmlElement("tag_name")]
+        public string TagName { get; set; }
+
+        /// <summary>
+        /// 标签值,常见为T,F
+        /// </summary>
+        [JsonProperty("tag_value")]
+        [XmlElement("tag_value")]
+        public string TagValue { get; set; }
+
+        /// <summary>
+        /// 支付宝会员uid
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserElectronicidMerchantbarcodeCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserElectronicidMerchantbarcodeCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 动态码过期时间,单位秒,当type为DYNAMIC时为必填参数
+        /// </summary>
+        [JsonProperty("expire_time")]
+        [XmlElement("expire_time")]
+        public long ExpireTime { get; set; }
+
+        /// <summary>
+        /// 生成商家网证二维码的类型,用于区分二维码有效期类型,动态二维码:DYNAMIC,静态二维码:STATIC
+        /// </summary>
+        [JsonProperty("type")]
+        [XmlElement("type")]
+        public string Type { get; set; }
+
+        /// <summary>
+        /// 商户提供的唯一标识,不感知大小写等问题,支付宝只做透传,当用户扫商户时,商户会拿到的这个透传值
+        /// </summary>
+        [JsonProperty("unique_id")]
+        [XmlElement("unique_id")]
+        public string UniqueId { get; set; }
+    }
+}

+ 78 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AlipayUserGroupshoppingBenefitQueryModel.cs

@@ -0,0 +1,78 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserGroupshoppingBenefitQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserGroupshoppingBenefitQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 支付宝淘宝拼团的组团id
+        /// </summary>
+        [JsonProperty("group_id")]
+        [XmlElement("group_id")]
+        public string GroupId { get; set; }
+
+        /// <summary>
+        /// 拼团是否混合出资
+        /// </summary>
+        [JsonProperty("is_platform_invest")]
+        [XmlElement("is_platform_invest")]
+        public bool IsPlatformInvest { get; set; }
+
+        /// <summary>
+        /// 淘宝支付宝拼团的商品id
+        /// </summary>
+        [JsonProperty("item_id")]
+        [XmlElement("item_id")]
+        public string ItemId { get; set; }
+
+        /// <summary>
+        /// 拼团原始价格
+        /// </summary>
+        [JsonProperty("original_prize")]
+        [XmlElement("original_prize")]
+        public string OriginalPrize { get; set; }
+
+        /// <summary>
+        /// 拼团的价格
+        /// </summary>
+        [JsonProperty("pin_prize")]
+        [XmlElement("pin_prize")]
+        public string PinPrize { get; set; }
+
+        /// <summary>
+        /// 1表示拼团中;2表示拼团成功;3表示拼团失败
+        /// </summary>
+        [JsonProperty("pin_status")]
+        [XmlElement("pin_status")]
+        public string PinStatus { get; set; }
+
+        /// <summary>
+        /// DETAIL_PAGE拼团详情页,FINISH_PAGE拼团成功页
+        /// </summary>
+        [JsonProperty("scene")]
+        [XmlElement("scene")]
+        public string Scene { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+
+        /// <summary>
+        /// 当前已参团的用户id
+        /// </summary>
+        [JsonProperty("user_id_list")]
+        [XmlArray("user_id_list")]
+        [XmlArrayItem("string")]
+        public List<string> UserIdList { get; set; }
+    }
+}

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AlipayUserGroupshoppingNewbieQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AlipayUserGroupshoppingNewbieQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 支付宝淘宝拼团的组团id
+        /// </summary>
+        [JsonProperty("group_id")]
+        [XmlElement("group_id")]
+        public string GroupId { get; set; }
+
+        /// <summary>
+        /// 淘宝支付宝拼团的商品id
+        /// </summary>
+        [JsonProperty("item_id")]
+        [XmlElement("item_id")]
+        public string ItemId { get; set; }
+
+        /// <summary>
+        /// 蚂蚁统一会员ID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

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

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandActivitySignupCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandActivitySignupCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 参数名:活动标识  应用场景:天猫小二帮某商家报名活动  如何获取:该活动code需要由活动中心新增活动后运营提供给天猫。
+        /// </summary>
+        [JsonProperty("activity_code")]
+        [XmlElement("activity_code")]
+        public string ActivityCode { get; set; }
+
+        /// <summary>
+        /// 报名信息扩展字段,可为空,具体传参由开发约定
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+    }
+}

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandActivitySignupQueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandActivitySignupQueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 参数名:活动标识  应用场景:天猫小二帮某商家报名活动  如何获取:该活动code需要由活动中心新增活动后运营提供给天猫。
+        /// </summary>
+        [JsonProperty("activity_code")]
+        [XmlElement("activity_code")]
+        public string ActivityCode { get; set; }
+
+        /// <summary>
+        /// 报名信息扩展字段,可为空,具体传参由开发约定
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+    }
+}

+ 22 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandAssetinfoDeliverySyncModel.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>
+    /// AntMerchantExpandAssetinfoDeliverySyncModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandAssetinfoDeliverySyncModel : AlipayObject
+    {
+        /// <summary>
+        /// 传入需要反馈的物料信息对象列表。
+        /// </summary>
+        [JsonProperty("asset_infos")]
+        [XmlArray("asset_infos")]
+        [XmlArrayItem("asset_info_item")]
+        public List<AssetInfoItem> AssetInfos { get; set; }
+    }
+}

+ 22 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandAssetinfoProduceSyncModel.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>
+    /// AntMerchantExpandAssetinfoProduceSyncModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandAssetinfoProduceSyncModel : AlipayObject
+    {
+        /// <summary>
+        /// 传入需要反馈的物料信息对象列表。
+        /// </summary>
+        [JsonProperty("asset_infos")]
+        [XmlArray("asset_infos")]
+        [XmlArrayItem("asset_info_item")]
+        public List<AssetInfoItem> AssetInfos { get; set; }
+    }
+}

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

@@ -39,7 +39,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string MachineName { get; set; }
 
         /// <summary>
-        /// 机具类型  AUTOMAT(自助售卖机),WASHING_MACHINE(洗衣机),MASSAGE_CHAIR(按摩椅),AIR_BLOWER(吹风机),CRANE_MACHINE(娃娃机),EV_CHARGER(充电桩),SIMULATION_KTV(模拟KTV),GAME_MACHINE(游戏机),JUICER(果汁机),COFFEE_MACHINE(咖啡机),WATER_PURIFIER(净水设备),SMART_CONTAINER(智能货柜),OPEN_SHELVES(开放式货架),LOTTERY_MACHINE(彩票机),OTHER(其他);
+        /// 机具类型,可取值如下:    AUTOMAT(自助售卖机),  WASHING_MACHINE(洗衣机),  MASSAGE_CHAIR(按摩椅),  AIR_BLOWER(吹风机),  CRANE_MACHINE(娃娃机),  EV_CHARGER(充电桩),  SIMULATION_KTV(模拟KTV),  GAME_MACHINE(游戏机),  JUICER(果汁机),  COFFEE_MACHINE(咖啡机),  WATER_PURIFIER(净水设备),  SMART_CONTAINER(智能货柜),  OPEN_SHELVES(开放式货架),  LOTTERY_MACHINE(彩票机),  SCANFACE_AUTOMAT(扫脸售卖机),  CREDIT_CONTAINER(信用货柜),  SCANFACE_CONTAINER(扫脸货柜),  DRUG_SELLING_MACHINE(售药机),  ROCKING_MACHINE(摇摇车),  TOY_EGG_MACHINE(扭蛋机),  PORTABLE_CHARGER(充电宝),  ICE_CREAM_MACHINE(冰淇淋机),  COCONUT_MILK_MACHINE(椰汁机),  PACKED_LUNCH_MACHINE(盒饭机),  BREAKFAST_MACHINE(早餐机),  TISSUE_MACHINE(纸巾机),  NOODLE_MACHINE(面条机),  PROTOTYPE_MACHINE(派样机),  ADULT_ITEM_MACHINE(成人用品机),  OTHER(其他)
         /// </summary>
         [JsonProperty("machine_type")]
         [XmlElement("machine_type")]

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

@@ -46,7 +46,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string MachineName { get; set; }
 
         /// <summary>
-        /// 机具类型 AUTOMAT(自助售卖机),WASHING_MACHINE(洗衣机),      MASSAGE_CHAIR(按摩椅),      AIR_BLOWER(吹风机),      CRANE_MACHINE(娃娃机),      EV_CHARGER(充电桩),      SIMULATION_KTV(模拟KTV),      GAME_MACHINE(游戏机),      OTHER(其他);
+        /// 机具类型,可取值如下:    AUTOMAT(自助售卖机),  WASHING_MACHINE(洗衣机),  MASSAGE_CHAIR(按摩椅),  AIR_BLOWER(吹风机),  CRANE_MACHINE(娃娃机),  EV_CHARGER(充电桩),  SIMULATION_KTV(模拟KTV),  GAME_MACHINE(游戏机),  JUICER(果汁机),  COFFEE_MACHINE(咖啡机),  WATER_PURIFIER(净水设备),  SMART_CONTAINER(智能货柜),  OPEN_SHELVES(开放式货架),  LOTTERY_MACHINE(彩票机),  SCANFACE_AUTOMAT(扫脸售卖机),  CREDIT_CONTAINER(信用货柜),  SCANFACE_CONTAINER(扫脸货柜),  DRUG_SELLING_MACHINE(售药机),  ROCKING_MACHINE(摇摇车),  TOY_EGG_MACHINE(扭蛋机),  PORTABLE_CHARGER(充电宝),  ICE_CREAM_MACHINE(冰淇淋机),  COCONUT_MILK_MACHINE(椰汁机),  PACKED_LUNCH_MACHINE(盒饭机),  BREAKFAST_MACHINE(早餐机),  TISSUE_MACHINE(纸巾机),  NOODLE_MACHINE(面条机),  PROTOTYPE_MACHINE(派样机),  ADULT_ITEM_MACHINE(成人用品机),  OTHER(其他)
         /// </summary>
         [JsonProperty("machine_type")]
         [XmlElement("machine_type")]

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

@@ -49,7 +49,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string BusinessLicenseType { get; set; }
 
         /// <summary>
-        /// 商户经营类目,参考文档:https://doc.open.alipay.com/doc2/detail?&docType=1&articleId=105444
+        /// 商户经营类目,参考文档:https://doc.open.alipay.com/doc2/detail?&docType=1&articleId=105444,非银联/网联进件时必传
         /// </summary>
         [JsonProperty("category_id")]
         [XmlElement("category_id")]
@@ -78,6 +78,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlArrayItem("string")]
         public List<string> LogonId { get; set; }
 
+        /// <summary>
+        /// 标准商户类别码,例如5976表示“专业销售-药品医疗-康复和身体辅助用品”,银联/网联进件时必传
+        /// </summary>
+        [JsonProperty("mcc")]
+        [XmlElement("mcc")]
+        public string Mcc { get; set; }
+
         /// <summary>
         /// 商户备注,可填写额外信息。分支机构进件,需要按照要求填写“分支机构码”,方便进行入驻管控,分支机构码由支付宝指定编码值,具体编码值可联系对口BD获取。填写分支机构码的时候用“##”标识符括起来,放在整条备注信息的开头处。示例:若进件分支机构为吉林省,由于对应分支机构编码值为220000,那么进件的时候应填写备注信息为:##220000##其他备注信息。
         /// </summary>
@@ -92,6 +99,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("name")]
         public string Name { get; set; }
 
+        /// <summary>
+        /// 收单机构(例如银行)的标识,填写该机构在支付宝的pid。银联/网联进件时必传。
+        /// </summary>
+        [JsonProperty("org_pid")]
+        [XmlElement("org_pid")]
+        public string OrgPid { get; set; }
+
         /// <summary>
         /// 商户的支付二维码中信息,用于营销活动
         /// </summary>
@@ -108,7 +122,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ServicePhone { get; set; }
 
         /// <summary>
-        /// 商户来源机构标识,填写机构在支付宝的pid
+        /// 间连受理商户的推荐组织。如果是银行自有商户入驻,则推荐组织为银行,如果是ISV推广的商户,那么商户推荐组织为ISV,如果是第三方支付机构的自有商户,则推荐组织为第三方支付机构。
         /// </summary>
         [JsonProperty("source")]
         [XmlElement("source")]

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

@@ -49,7 +49,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string BusinessLicenseType { get; set; }
 
         /// <summary>
-        /// 商户经营类目,参考文档:https://doc.open.alipay.com/doc2/detail?&docType=1&articleId=105444
+        /// 商户经营类目,参考文档:https://doc.open.alipay.com/doc2/detail?&docType=1&articleId=105444,非银联网联调用时必传
         /// </summary>
         [JsonProperty("category_id")]
         [XmlElement("category_id")]
@@ -78,6 +78,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlArrayItem("string")]
         public List<string> LogonId { get; set; }
 
+        /// <summary>
+        /// 标准商户类别码,例如5976表示“专业销售-药品医疗-康复和身体辅助用品”,银联网联调用时必传
+        /// </summary>
+        [JsonProperty("mcc")]
+        [XmlElement("mcc")]
+        public string Mcc { get; set; }
+
         /// <summary>
         /// 商户备注信息,可填写额外信息
         /// </summary>
@@ -92,6 +99,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("name")]
         public string Name { get; set; }
 
+        /// <summary>
+        /// 签约机构pid。银联或者网联调用时,如果未传sub_merchant_id,则需要同时传org_pid和externel_id。
+        /// </summary>
+        [JsonProperty("org_pid")]
+        [XmlElement("org_pid")]
+        public string OrgPid { get; set; }
+
         /// <summary>
         /// 受理商户的固定二维码链接地址(即一码多付页面地址,用于后续支付宝营销活动)  商户所属的银行或ISV 给商户的二维码url值  一码多付方案:https://doc.open.alipay.com/docs/doc.htm?&docType=1&articleId=105672
         /// </summary>
@@ -108,7 +122,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ServicePhone { get; set; }
 
         /// <summary>
-        /// 商户来源机构标识,填写机构在支付宝的pid
+        /// 间连受理商户的推荐组织。如果是银行自有商户入驻,则推荐组织为银行,如果是ISV推广的商户,那么商户推荐组织为ISV,如果是第三方支付机构的自有商户,则推荐组织为第三方支付机构。
         /// </summary>
         [JsonProperty("source")]
         [XmlElement("source")]

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

@@ -11,14 +11,21 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     public class AntMerchantExpandIndirectQueryModel : AlipayObject
     {
         /// <summary>
-        /// 商户编号,由机构定义,需要保证在机构下唯一,与sub_merchant_id二选一
+        /// 商户编号,由机构定义,需要保证在机构下唯一,如果未传sub_merchant_id ,则必传 external_id 和 org_pid
         /// </summary>
         [JsonProperty("external_id")]
         [XmlElement("external_id")]
         public string ExternalId { get; set; }
 
         /// <summary>
-        /// 商户在支付宝入驻成功后,生成的支付宝内全局唯一的商户编号,与external_id二选一必传
+        /// 机构pid,根据org_pid + external_id 可以唯一确定商户,如果未传sub_merchant_id ,则必传 external_id 和 org_pid
+        /// </summary>
+        [JsonProperty("org_pid")]
+        [XmlElement("org_pid")]
+        public string OrgPid { get; set; }
+
+        /// <summary>
+        /// 商户在支付宝入驻成功后,生成的支付宝内全局唯一的商户编号,如果未传 external_id 和 org_pid,则必传sub_merchant_id
         /// </summary>
         [JsonProperty("sub_merchant_id")]
         [XmlElement("sub_merchant_id")]

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandIndirectTransferModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandIndirectTransferModel : AlipayObject
+    {
+        /// <summary>
+        /// 商户编号,由机构定义,需要保证在机构下唯一,与sub_merchant_id二选一
+        /// </summary>
+        [JsonProperty("external_id")]
+        [XmlElement("external_id")]
+        public string ExternalId { get; set; }
+
+        /// <summary>
+        /// 商户在支付宝入驻成功后,生成的支付宝内全局唯一的商户编号,与external_id二选一
+        /// </summary>
+        [JsonProperty("sub_merchant_id")]
+        [XmlElement("sub_merchant_id")]
+        public string SubMerchantId { get; set; }
+
+        /// <summary>
+        /// 商户转移目标的id,填银联或者网联的id
+        /// </summary>
+        [JsonProperty("transfer_target_id")]
+        [XmlElement("transfer_target_id")]
+        public string TransferTargetId { get; set; }
+    }
+}

+ 209 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIndirectZftConsultModel.cs

@@ -0,0 +1,209 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandIndirectZftConsultModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandIndirectZftConsultModel : AlipayObject
+    {
+        /// <summary>
+        /// 商户别名
+        /// </summary>
+        [JsonProperty("alias_name")]
+        [XmlElement("alias_name")]
+        public string AliasName { get; set; }
+
+        /// <summary>
+        /// 商户支付宝账号,用作结算账号。与银行卡对象字段二选一必填
+        /// </summary>
+        [JsonProperty("alipay_logon_id")]
+        [XmlElement("alipay_logon_id")]
+        public string AlipayLogonId { get; set; }
+
+        /// <summary>
+        /// 商户结算卡信息。本业务当前只允许传入一张结算卡。与支付宝账号字段二选一必填
+        /// </summary>
+        [JsonProperty("biz_cards")]
+        [XmlArray("biz_cards")]
+        [XmlArrayItem("settle_card_info")]
+        public List<SettleCardInfo> BizCards { get; set; }
+
+        /// <summary>
+        /// 经营地址。地址对象中省、市、区、地址必填,其余选填
+        /// </summary>
+        [JsonProperty("business_address")]
+        [XmlElement("business_address")]
+        public AddressInfo BusinessAddress { get; set; }
+
+        /// <summary>
+        /// 营业执照图片url,本业务接口中,如果是特殊行业必填。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。
+        /// </summary>
+        [JsonProperty("cert_image")]
+        [XmlElement("cert_image")]
+        public string CertImage { get; set; }
+
+        /// <summary>
+        /// 证件反面图片。目前只有当主证件为身份证时才需填写
+        /// </summary>
+        [JsonProperty("cert_image_back")]
+        [XmlElement("cert_image_back")]
+        public string CertImageBack { get; set; }
+
+        /// <summary>
+        /// 目前只有个体工商户商户类型要求填入本字段,填写值为个体工商户营业执照上的名称
+        /// </summary>
+        [JsonProperty("cert_name")]
+        [XmlElement("cert_name")]
+        public string CertName { get; set; }
+
+        /// <summary>
+        /// 商户证件编号(企业或者个体工商户提供营业执照,事业单位提供事证号)
+        /// </summary>
+        [JsonProperty("cert_no")]
+        [XmlElement("cert_no")]
+        public string CertNo { get; set; }
+
+        /// <summary>
+        /// 商户证件类型,取值范围:201:营业执照;2011:营业执照(统一社会信用代码);218:事业单位法人证书
+        /// </summary>
+        [JsonProperty("cert_type")]
+        [XmlElement("cert_type")]
+        public string CertType { get; set; }
+
+        /// <summary>
+        /// 商户联系人信息。在本业务中,ContactInfo对象中名称,类型、手机号必填,其他选填
+        /// </summary>
+        [JsonProperty("contact_infos")]
+        [XmlArray("contact_infos")]
+        [XmlArrayItem("contact_info")]
+        public List<ContactInfo> ContactInfos { get; set; }
+
+        /// <summary>
+        /// 商户编号,由机构定义,需要保证在机构下唯一
+        /// </summary>
+        [JsonProperty("external_id")]
+        [XmlElement("external_id")]
+        public string ExternalId { get; set; }
+
+        /// <summary>
+        /// 开票资料信息
+        /// </summary>
+        [JsonProperty("invoice_info")]
+        [XmlElement("invoice_info")]
+        public MerchantInvoiceInfo InvoiceInfo { get; set; }
+
+        /// <summary>
+        /// 法人身份证反面url,其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。本业务接口中,如果是特殊行业必填
+        /// </summary>
+        [JsonProperty("legal_cert_back_image")]
+        [XmlElement("legal_cert_back_image")]
+        public string LegalCertBackImage { get; set; }
+
+        /// <summary>
+        /// 法人身份证正面url,其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。本业务接口中,如果是特殊行业必填
+        /// </summary>
+        [JsonProperty("legal_cert_front_image")]
+        [XmlElement("legal_cert_front_image")]
+        public string LegalCertFrontImage { get; set; }
+
+        /// <summary>
+        /// 法人身份证号
+        /// </summary>
+        [JsonProperty("legal_cert_no")]
+        [XmlElement("legal_cert_no")]
+        public string LegalCertNo { get; set; }
+
+        /// <summary>
+        /// 法人名称
+        /// </summary>
+        [JsonProperty("legal_name")]
+        [XmlElement("legal_name")]
+        public string LegalName { get; set; }
+
+        /// <summary>
+        /// c6c0c7a1-b9d5-4e5d-b9d4-9eed39f00e65.jpg   营业执照授权函。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当商户名与结算卡户名不一致时必填
+        /// </summary>
+        [JsonProperty("license_auth_letter_image")]
+        [XmlElement("license_auth_letter_image")]
+        public string LicenseAuthLetterImage { get; set; }
+
+        /// <summary>
+        /// 商户类别码mcc,参见附件描述中的“类目code”  https://mif-pub.alipayobjects.com/AlipayMCC.xlsx
+        /// </summary>
+        [JsonProperty("mcc")]
+        [XmlElement("mcc")]
+        public string Mcc { get; set; }
+
+        /// <summary>
+        /// 商家类型:01:企业;02:事业单位;07:个体工商户
+        /// </summary>
+        [JsonProperty("merchant_type")]
+        [XmlElement("merchant_type")]
+        public string MerchantType { get; set; }
+
+        /// <summary>
+        /// 进件的二级商户名称
+        /// </summary>
+        [JsonProperty("name")]
+        [XmlElement("name")]
+        public string Name { get; set; }
+
+        /// <summary>
+        /// 外部业务号。比如某种业务标准外部订单号,比如交易外部订单号,代表服务商端自己订单号。用于做并发控制,防止一笔外部订单发起两次进件。如果没有可不用传入。
+        /// </summary>
+        [JsonProperty("out_biz_no")]
+        [XmlElement("out_biz_no")]
+        public string OutBizNo { get; set; }
+
+        /// <summary>
+        /// 门头照,其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。如果使用当面付服务则必填
+        /// </summary>
+        [JsonProperty("out_door_images")]
+        [XmlArray("out_door_images")]
+        [XmlArrayItem("string")]
+        public List<string> OutDoorImages { get; set; }
+
+        /// <summary>
+        /// 商户行业资质,当商户是特殊行业时必填
+        /// </summary>
+        [JsonProperty("qualifications")]
+        [XmlArray("qualifications")]
+        [XmlArrayItem("industry_qualification_info")]
+        public List<IndustryQualificationInfo> Qualifications { get; set; }
+
+        /// <summary>
+        /// 商户使用服务,可选值有:当面付、app支付、wap支付、电脑支付
+        /// </summary>
+        [JsonProperty("service")]
+        [XmlArray("service")]
+        [XmlArrayItem("string")]
+        public List<string> Service { get; set; }
+
+        /// <summary>
+        /// 客服电话
+        /// </summary>
+        [JsonProperty("service_phone")]
+        [XmlElement("service_phone")]
+        public string ServicePhone { get; set; }
+
+        /// <summary>
+        /// 二级商户与服务商的签约时间
+        /// </summary>
+        [JsonProperty("sign_time_with_isv")]
+        [XmlElement("sign_time_with_isv")]
+        public string SignTimeWithIsv { get; set; }
+
+        /// <summary>
+        /// 商户站点信息,包括网站、app、小程序。商户使用服务包含电脑支付或wap支付时,必须填充一个类型为01(网站)的SiteInfo对象;当包含app支付时,必须至少填充类型为02(APP)或06(支付宝小程序)中一种类型的SiteInfo对象
+        /// </summary>
+        [JsonProperty("sites")]
+        [XmlArray("sites")]
+        [XmlArrayItem("site_info")]
+        public List<SiteInfo> Sites { get; set; }
+    }
+}

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

@@ -25,6 +25,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("alipay_logon_id")]
         public string AlipayLogonId { get; set; }
 
+        /// <summary>
+        /// 身份指定支付宝账号,当平台商需要对二级商户签约时必填
+        /// </summary>
+        [JsonProperty("binding_alipay_logon_id")]
+        [XmlElement("binding_alipay_logon_id")]
+        public string BindingAlipayLogonId { get; set; }
+
         /// <summary>
         /// 商户结算卡信息。本业务当前只允许传入一张结算卡。与支付宝账号字段二选一必填
         /// </summary>

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

@@ -25,6 +25,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("alipay_logon_id")]
         public string AlipayLogonId { get; set; }
 
+        /// <summary>
+        /// 身份指定支付宝账号,当平台商需要对二级商户签约时必填
+        /// </summary>
+        [JsonProperty("binding_alipay_logon_id")]
+        [XmlElement("binding_alipay_logon_id")]
+        public string BindingAlipayLogonId { get; set; }
+
         /// <summary>
         /// 商户结算卡信息。本业务当前只允许传入一张结算卡
         /// </summary>

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

@@ -0,0 +1,62 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandIsvDeviceBindModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandIsvDeviceBindModel : AlipayObject
+    {
+        /// <summary>
+        /// 机具使用场景:  团餐:CATERING_DEVICE;  快消:FMCG_DEVICE
+        /// </summary>
+        [JsonProperty("biz_type")]
+        [XmlElement("biz_type")]
+        public string BizType { get; set; }
+
+        /// <summary>
+        /// 设备编号。由各个供应商自己定义的设备标识,和供应商编号确定设备的唯一性
+        /// </summary>
+        [JsonProperty("device_sn")]
+        [XmlElement("device_sn")]
+        public string DeviceSn { get; set; }
+
+        /// <summary>
+        /// 物料模板id,每个物料模板对应的唯一标识,由蚂蚁金服物料平台管理
+        /// </summary>
+        [JsonProperty("item_id")]
+        [XmlElement("item_id")]
+        public string ItemId { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [JsonProperty("memo")]
+        [XmlElement("memo")]
+        public string Memo { get; set; }
+
+        /// <summary>
+        /// 开放平台机具申请单号
+        /// </summary>
+        [JsonProperty("order_no")]
+        [XmlElement("order_no")]
+        public string OrderNo { get; set; }
+
+        /// <summary>
+        /// 门店id。ISV为商家创建的门店对应的唯一标识
+        /// </summary>
+        [JsonProperty("shop_id")]
+        [XmlElement("shop_id")]
+        public string ShopId { get; set; }
+
+        /// <summary>
+        /// 供应商编号。由蚂蚁金服为每个供应商分配的唯一标识
+        /// </summary>
+        [JsonProperty("supplier_no")]
+        [XmlElement("supplier_no")]
+        public string SupplierNo { get; set; }
+    }
+}

+ 92 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIsvDeviceCreateModel.cs

@@ -0,0 +1,92 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandIsvDeviceCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandIsvDeviceCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 机具使用的业务场景:目前只支持团餐:CATERING_DEVICE
+        /// </summary>
+        [JsonProperty("biz_type")]
+        [XmlElement("biz_type")]
+        public string BizType { get; set; }
+
+        /// <summary>
+        /// 渠道商下的服务商pid,例如云纵名下服务商
+        /// </summary>
+        [JsonProperty("channel_isv_pid")]
+        [XmlElement("channel_isv_pid")]
+        public string ChannelIsvPid { get; set; }
+
+        /// <summary>
+        /// 机具物流配送信息
+        /// </summary>
+        [JsonProperty("delivery_info")]
+        [XmlElement("delivery_info")]
+        public DeliveryInfo DeliveryInfo { get; set; }
+
+        /// <summary>
+        /// 申请的机具模板列表
+        /// </summary>
+        [JsonProperty("device_list")]
+        [XmlArray("device_list")]
+        [XmlArrayItem("device_apply_template")]
+        public List<DeviceApplyTemplate> DeviceList { get; set; }
+
+        /// <summary>
+        /// 申请人联系方式,须是7到12位电话号码
+        /// </summary>
+        [JsonProperty("operator_contact")]
+        [XmlElement("operator_contact")]
+        public string OperatorContact { get; set; }
+
+        /// <summary>
+        /// 申请人名称,至少需要一个汉字
+        /// </summary>
+        [JsonProperty("operator_name")]
+        [XmlElement("operator_name")]
+        public string OperatorName { get; set; }
+
+        /// <summary>
+        /// 商户PID
+        /// </summary>
+        [JsonProperty("pid")]
+        [XmlElement("pid")]
+        public string Pid { get; set; }
+
+        /// <summary>
+        /// 申请原因描述
+        /// </summary>
+        [JsonProperty("reason")]
+        [XmlElement("reason")]
+        public string Reason { get; set; }
+
+        /// <summary>
+        /// 门店ID,从成功创建门店的通知里获取
+        /// </summary>
+        [JsonProperty("shop_id")]
+        [XmlElement("shop_id")]
+        public string ShopId { get; set; }
+
+        /// <summary>
+        /// 申请用途详细说明,比如学校名称
+        /// </summary>
+        [JsonProperty("usage_detail")]
+        [XmlElement("usage_detail")]
+        public string UsageDetail { get; set; }
+
+        /// <summary>
+        /// 机具申请用途,团餐场景取值如下      PRIMARY_SCHOOL:小学;      JUNIOR_HIGH_SCHOOL:初中;      SENIOR_HIGH_SCHOOL:高中;      SECONDARY_VOCATIONAL_SCHOOL:中职;      VOCATIONAL_TECHNICAL_COLLEGE:职业技术学院;      UNIVERSITY:大学;            COMPANY:企业;      INDUSTRIAL_PARK:园区;      GOVERNMENT:政府机关;      HOSPITAL:医院;      FOOD_COURT:美食广场;      OTHER:其它;
+        /// </summary>
+        [JsonProperty("usage_type")]
+        [XmlElement("usage_type")]
+        public string UsageType { get; set; }
+    }
+}

+ 155 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandIsvShopCreateModel.cs

@@ -0,0 +1,155 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandIsvShopCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandIsvShopCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 地址。商户详细经营地址或人员所在地点
+        /// </summary>
+        [JsonProperty("address")]
+        [XmlElement("address")]
+        public string Address { get; set; }
+
+        /// <summary>
+        /// 门店地址备注,如:地铁口左边
+        /// </summary>
+        [JsonProperty("address_memo")]
+        [XmlElement("address_memo")]
+        public string AddressMemo { get; set; }
+
+        /// <summary>
+        /// 门店实景图列表。最多3张,必须是实景图,不可有水印(如果上传装修效果图将驳回)。json格式字符串  支持格式:jpg/png/jpeg/bmp,单张图片不超过5MB,建议尺寸在2000*1500以上。
+        /// </summary>
+        [JsonProperty("attachment_list")]
+        [XmlElement("attachment_list")]
+        public string AttachmentList { get; set; }
+
+        /// <summary>
+        /// 店铺经营时间。
+        /// </summary>
+        [JsonProperty("business_time")]
+        [XmlArray("business_time")]
+        [XmlArrayItem("shop_business_time")]
+        public List<ShopBusinessTime> BusinessTime { get; set; }
+
+        /// <summary>
+        /// 所选学校。指定门店类目下需要上传大学名称信息。  学校信息,请参考
+        /// </summary>
+        [JsonProperty("campus_name")]
+        [XmlElement("campus_name")]
+        public string CampusName { get; set; }
+
+        /// <summary>
+        /// 类目标签。选择部分门店类目时,必须要传此值。  比如:校园团餐类目  与类目的映射关系,请参考
+        /// </summary>
+        [JsonProperty("category_label")]
+        [XmlElement("category_label")]
+        public string CategoryLabel { get; set; }
+
+        /// <summary>
+        /// 城市编码,国标码
+        /// </summary>
+        [JsonProperty("city_code")]
+        [XmlElement("city_code")]
+        public string CityCode { get; set; }
+
+        /// <summary>
+        /// 店铺联系手机,与店铺联系固话二选一必填
+        /// </summary>
+        [JsonProperty("contact_mobile")]
+        [XmlElement("contact_mobile")]
+        public string ContactMobile { get; set; }
+
+        /// <summary>
+        /// 店铺的联系固话,和店铺联系手机二选一必填
+        /// </summary>
+        [JsonProperty("contact_phone")]
+        [XmlElement("contact_phone")]
+        public string ContactPhone { get; set; }
+
+        /// <summary>
+        /// 区县编码,区县编码是与国家统计局一致,请查询: http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/ 国标省市区号下载:http://aopsdkdownload.cn-hangzhou.alipay-pub.aliyun-inc.com/doc/2016.xls?spm=a219a.7629140.0.0.qRW4KQ&file=2016.xls
+        /// </summary>
+        [JsonProperty("district_code")]
+        [XmlElement("district_code")]
+        public string DistrictCode { get; set; }
+
+        /// <summary>
+        /// ISV联系人手机号码
+        /// </summary>
+        [JsonProperty("isv_contact_mobile")]
+        [XmlElement("isv_contact_mobile")]
+        public string IsvContactMobile { get; set; }
+
+        /// <summary>
+        /// 联系人名字
+        /// </summary>
+        [JsonProperty("isv_contact_name")]
+        [XmlElement("isv_contact_name")]
+        public string IsvContactName { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [JsonProperty("memo")]
+        [XmlElement("memo")]
+        public string Memo { get; set; }
+
+        /// <summary>
+        /// 商户id,表示将要开的店属于哪个商户。
+        /// </summary>
+        [JsonProperty("pid")]
+        [XmlElement("pid")]
+        public string Pid { get; set; }
+
+        /// <summary>
+        /// 省份编码,国标码。请查询:  http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/  国标省市区号下载:http://aopsdkdownload.cn-hangzhou.alipay-pub.aliyun-inc.com/doc/2016.xls?spm=a219a.7629140.0.0.qRW4KQ&file=2016.xls
+        /// </summary>
+        [JsonProperty("province_code")]
+        [XmlElement("province_code")]
+        public string ProvinceCode { get; set; }
+
+        /// <summary>
+        /// 资质证明图片。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key列表,json格式字符串,最多可以上传10张
+        /// </summary>
+        [JsonProperty("qualification_proof_list")]
+        [XmlElement("qualification_proof_list")]
+        public string QualificationProofList { get; set; }
+
+        /// <summary>
+        /// 资质证明类型。具体选值参见https://mif-pub.alipayobjects.com/QualificationType.xlsx
+        /// </summary>
+        [JsonProperty("qualification_proof_type")]
+        [XmlElement("qualification_proof_type")]
+        public string QualificationProofType { get; set; }
+
+        /// <summary>
+        /// 店铺类目,取值参见文件xxxxxxx
+        /// </summary>
+        [JsonProperty("shop_category")]
+        [XmlElement("shop_category")]
+        public string ShopCategory { get; set; }
+
+        /// <summary>
+        /// 店铺名称。直连开店要保证全局店铺名称+地址唯一
+        /// </summary>
+        [JsonProperty("shop_name")]
+        [XmlElement("shop_name")]
+        public string ShopName { get; set; }
+
+        /// <summary>
+        /// 店铺经营类型,01表示直营,02表示加盟
+        /// </summary>
+        [JsonProperty("shop_type")]
+        [XmlElement("shop_type")]
+        public string ShopType { get; set; }
+    }
+}

+ 164 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandShopConsultModel.cs

@@ -0,0 +1,164 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandShopConsultModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandShopConsultModel : AlipayObject
+    {
+        /// <summary>
+        /// 经营地址。地址对象中省、市、区、地址必填,其余选填
+        /// </summary>
+        [JsonProperty("business_address")]
+        [XmlElement("business_address")]
+        public AddressInfo BusinessAddress { get; set; }
+
+        /// <summary>
+        /// 店铺经营时间。
+        /// </summary>
+        [JsonProperty("business_time")]
+        [XmlArray("business_time")]
+        [XmlArrayItem("shop_business_time")]
+        public List<ShopBusinessTime> BusinessTime { get; set; }
+
+        /// <summary>
+        /// 营业执照图片url。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当店铺类目为特殊行业时必填
+        /// </summary>
+        [JsonProperty("cert_image")]
+        [XmlElement("cert_image")]
+        public string CertImage { get; set; }
+
+        /// <summary>
+        /// 营业执照名称,填写值为营业执照或统一社会信用代码证上的名称。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("cert_name")]
+        [XmlElement("cert_name")]
+        public string CertName { get; set; }
+
+        /// <summary>
+        /// 证件号码。请填写店铺营业执照号。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("cert_no")]
+        [XmlElement("cert_no")]
+        public string CertNo { get; set; }
+
+        /// <summary>
+        /// 证件类型,取值范围:201:营业执照;2011:多证合一(统一社会信用代码)。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("cert_type")]
+        [XmlElement("cert_type")]
+        public string CertType { get; set; }
+
+        /// <summary>
+        /// 联系人信息。如果填写,其中xxxx必填
+        /// </summary>
+        [JsonProperty("contact_infos")]
+        [XmlArray("contact_infos")]
+        [XmlArrayItem("contact_info")]
+        public List<ContactInfo> ContactInfos { get; set; }
+
+        /// <summary>
+        /// 店铺联系手机,与店铺联系固话二选一必填
+        /// </summary>
+        [JsonProperty("contact_mobile")]
+        [XmlElement("contact_mobile")]
+        public string ContactMobile { get; set; }
+
+        /// <summary>
+        /// 店铺的联系固话,和店铺联系手机二选一必填
+        /// </summary>
+        [JsonProperty("contact_phone")]
+        [XmlElement("contact_phone")]
+        public string ContactPhone { get; set; }
+
+        /// <summary>
+        /// 商户角色id,表示将要开的店属于哪个商户角色。对于直连开店场景,填写商户pid;对于间连开店场景(线上、线下、直付通),填写商户smid
+        /// </summary>
+        [JsonProperty("ip_role_id")]
+        [XmlElement("ip_role_id")]
+        public string IpRoleId { get; set; }
+
+        /// <summary>
+        /// 法人身份证号。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("legal_cert_no")]
+        [XmlElement("legal_cert_no")]
+        public string LegalCertNo { get; set; }
+
+        /// <summary>
+        /// 法人名称。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("legal_name")]
+        [XmlElement("legal_name")]
+        public string LegalName { get; set; }
+
+        /// <summary>
+        /// 营业执照授权函。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当店铺类目是特殊行业时必填
+        /// </summary>
+        [JsonProperty("license_auth_letter_image")]
+        [XmlElement("license_auth_letter_image")]
+        public string LicenseAuthLetterImage { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [JsonProperty("memo")]
+        [XmlElement("memo")]
+        public string Memo { get; set; }
+
+        /// <summary>
+        /// 门头照,其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("out_door_images")]
+        [XmlElement("out_door_images")]
+        public string OutDoorImages { get; set; }
+
+        /// <summary>
+        /// 行业特殊资质。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("qualifications")]
+        [XmlArray("qualifications")]
+        [XmlArrayItem("industry_qualification_info")]
+        public List<IndustryQualificationInfo> Qualifications { get; set; }
+
+        /// <summary>
+        /// 结算支付宝账号的登录号
+        /// </summary>
+        [JsonProperty("settle_alipay_logon_id")]
+        [XmlElement("settle_alipay_logon_id")]
+        public string SettleAlipayLogonId { get; set; }
+
+        /// <summary>
+        /// 店铺类目,取值参见文件xxxxxxx
+        /// </summary>
+        [JsonProperty("shop_category")]
+        [XmlElement("shop_category")]
+        public string ShopCategory { get; set; }
+
+        /// <summary>
+        /// 店铺名称。直连开店要保证全局店铺名称+地址唯一,间连开店要保证服务商pid下店铺名称+地址唯一
+        /// </summary>
+        [JsonProperty("shop_name")]
+        [XmlElement("shop_name")]
+        public string ShopName { get; set; }
+
+        /// <summary>
+        /// 店铺经营类型,01表示直营,02表示加盟
+        /// </summary>
+        [JsonProperty("shop_type")]
+        [XmlElement("shop_type")]
+        public string ShopType { get; set; }
+
+        /// <summary>
+        /// 门店编号,表示该门店在该商户角色id(直连pid,间连smid)下,由商户自己定义的外部门店编号
+        /// </summary>
+        [JsonProperty("store_id")]
+        [XmlElement("store_id")]
+        public string StoreId { get; set; }
+    }
+}

+ 165 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/AntMerchantExpandShopCreateModel.cs

@@ -0,0 +1,165 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// AntMerchantExpandShopCreateModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class AntMerchantExpandShopCreateModel : AlipayObject
+    {
+        /// <summary>
+        /// 经营地址。地址对象中省、市、区、地址必填,其余选填
+        /// </summary>
+        [JsonProperty("business_address")]
+        [XmlElement("business_address")]
+        public AddressInfo BusinessAddress { get; set; }
+
+        /// <summary>
+        /// 店铺经营时间。
+        /// </summary>
+        [JsonProperty("business_time")]
+        [XmlArray("business_time")]
+        [XmlArrayItem("shop_business_time")]
+        public List<ShopBusinessTime> BusinessTime { get; set; }
+
+        /// <summary>
+        /// 营业执照图片url。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当店铺类目为特殊行业时必填
+        /// </summary>
+        [JsonProperty("cert_image")]
+        [XmlElement("cert_image")]
+        public string CertImage { get; set; }
+
+        /// <summary>
+        /// 营业执照名称,填写值为营业执照或统一社会信用代码证上的名称。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("cert_name")]
+        [XmlElement("cert_name")]
+        public string CertName { get; set; }
+
+        /// <summary>
+        /// 证件号码。请填写店铺营业执照号。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("cert_no")]
+        [XmlElement("cert_no")]
+        public string CertNo { get; set; }
+
+        /// <summary>
+        /// 证件类型,取值范围:201:营业执照;2011:多证合一(统一社会信用代码)。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("cert_type")]
+        [XmlElement("cert_type")]
+        public string CertType { get; set; }
+
+        /// <summary>
+        /// 联系人信息。如果填写,其中xxxx必填
+        /// </summary>
+        [JsonProperty("contact_infos")]
+        [XmlArray("contact_infos")]
+        [XmlArrayItem("contact_info")]
+        public List<ContactInfo> ContactInfos { get; set; }
+
+        /// <summary>
+        /// 店铺联系手机,与店铺联系固话二选一必填
+        /// </summary>
+        [JsonProperty("contact_mobile")]
+        [XmlElement("contact_mobile")]
+        public string ContactMobile { get; set; }
+
+        /// <summary>
+        /// 店铺的联系固话,和店铺联系手机二选一必填
+        /// </summary>
+        [JsonProperty("contact_phone")]
+        [XmlElement("contact_phone")]
+        public string ContactPhone { get; set; }
+
+        /// <summary>
+        /// 商户角色id,表示将要开的店属于哪个商户角色。对于直连开店场景,填写商户pid;对于间连开店场景(线上、线下、直付通),填写商户smid
+        /// </summary>
+        [JsonProperty("ip_role_id")]
+        [XmlElement("ip_role_id")]
+        public string IpRoleId { get; set; }
+
+        /// <summary>
+        /// 法人身份证号。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("legal_cert_no")]
+        [XmlElement("legal_cert_no")]
+        public string LegalCertNo { get; set; }
+
+        /// <summary>
+        /// 法人名称。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("legal_name")]
+        [XmlElement("legal_name")]
+        public string LegalName { get; set; }
+
+        /// <summary>
+        /// 营业执照授权函。其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当店铺类目是特殊行业时必填
+        /// </summary>
+        [JsonProperty("license_auth_letter_image")]
+        [XmlElement("license_auth_letter_image")]
+        public string LicenseAuthLetterImage { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [JsonProperty("memo")]
+        [XmlElement("memo")]
+        public string Memo { get; set; }
+
+        /// <summary>
+        /// 门头照,其值为使用ant.merchant.expand.indirect.image.upload上传图片得到的一串oss key。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("out_door_images")]
+        [XmlArray("out_door_images")]
+        [XmlArrayItem("string")]
+        public List<string> OutDoorImages { get; set; }
+
+        /// <summary>
+        /// 行业特殊资质。当店铺类目是特殊类目是要求必填
+        /// </summary>
+        [JsonProperty("qualifications")]
+        [XmlArray("qualifications")]
+        [XmlArrayItem("industry_qualification_info")]
+        public List<IndustryQualificationInfo> Qualifications { get; set; }
+
+        /// <summary>
+        /// 结算支付宝账号的登录号
+        /// </summary>
+        [JsonProperty("settle_alipay_logon_id")]
+        [XmlElement("settle_alipay_logon_id")]
+        public string SettleAlipayLogonId { get; set; }
+
+        /// <summary>
+        /// 店铺类目,取值参见文件https://mif-pub.alipayobjects.com/ShopCategory.xlsx 中的三级门店类目
+        /// </summary>
+        [JsonProperty("shop_category")]
+        [XmlElement("shop_category")]
+        public string ShopCategory { get; set; }
+
+        /// <summary>
+        /// 店铺名称。直连开店要保证全局店铺名称+地址唯一,间连开店要保证服务商pid下店铺名称+地址唯一
+        /// </summary>
+        [JsonProperty("shop_name")]
+        [XmlElement("shop_name")]
+        public string ShopName { get; set; }
+
+        /// <summary>
+        /// 店铺经营类型,01表示直营,02表示加盟
+        /// </summary>
+        [JsonProperty("shop_type")]
+        [XmlElement("shop_type")]
+        public string ShopType { get; set; }
+
+        /// <summary>
+        /// 门店编号,表示该门店在该商户角色id(直连pid,间连smid)下,由商户自己定义的外部门店编号
+        /// </summary>
+        [JsonProperty("store_id")]
+        [XmlElement("store_id")]
+        public string StoreId { get; set; }
+    }
+}

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

@@ -17,6 +17,27 @@ 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
+        /// </summary>
+        [JsonProperty("logistics_code")]
+        [XmlElement("logistics_code")]
+        public string LogisticsCode { get; set; }
+
+        /// <summary>
+        /// 物流单号
+        /// </summary>
+        [JsonProperty("logistics_no")]
+        [XmlElement("logistics_no")]
+        public string LogisticsNo { get; set; }
+
         /// <summary>
         /// 机具序列号
         /// </summary>

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

@@ -17,6 +17,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>

+ 90 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/BatchDetailInfo.cs

@@ -0,0 +1,90 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// BatchDetailInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class BatchDetailInfo : AlipayObject
+    {
+        /// <summary>
+        /// 批次号
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
+        /// <summary>
+        /// 明细批次号
+        /// </summary>
+        [JsonProperty("detail_no")]
+        [XmlElement("detail_no")]
+        public string DetailNo { get; set; }
+
+        /// <summary>
+        /// 调用方扩充参数
+        /// </summary>
+        [JsonProperty("ext_param")]
+        [XmlElement("ext_param")]
+        public string ExtParam { get; set; }
+
+        /// <summary>
+        /// 失败原因:在status为fail时此字段不为空
+        /// </summary>
+        [JsonProperty("fail_message")]
+        [XmlElement("fail_message")]
+        public string FailMessage { get; set; }
+
+        /// <summary>
+        /// 最后修改时间,指失败时间、成功时间、创建时间等,明细最后一次变更状态的时间
+        /// </summary>
+        [JsonProperty("last_modified")]
+        [XmlElement("last_modified")]
+        public string LastModified { get; set; }
+
+        /// <summary>
+        /// 付款人留言
+        /// </summary>
+        [JsonProperty("message")]
+        [XmlElement("message")]
+        public string Message { get; set; }
+
+        /// <summary>
+        /// 付款金额,单位为元,有两位小数
+        /// </summary>
+        [JsonProperty("pay_amount")]
+        [XmlElement("pay_amount")]
+        public string PayAmount { get; set; }
+
+        /// <summary>
+        /// 支付成功时间
+        /// </summary>
+        [JsonProperty("pay_success_date")]
+        [XmlElement("pay_success_date")]
+        public string PaySuccessDate { get; set; }
+
+        /// <summary>
+        /// 批次明细状态  AVAILABLE:可付款  SUCCESS:付款成功
+        /// </summary>
+        [JsonProperty("status")]
+        [XmlElement("status")]
+        public string Status { get; set; }
+
+        /// <summary>
+        /// 付款订单号
+        /// </summary>
+        [JsonProperty("transfer_no")]
+        [XmlElement("transfer_no")]
+        public string TransferNo { get; set; }
+
+        /// <summary>
+        /// 付款人UID
+        /// </summary>
+        [JsonProperty("user_id")]
+        [XmlElement("user_id")]
+        public string UserId { get; set; }
+    }
+}

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// BuyerPayDetail Data Structure.
+    /// </summary>
+    [Serializable]
+    public class BuyerPayDetail : AlipayObject
+    {
+        /// <summary>
+        /// 买家支付金额
+        /// </summary>
+        [JsonProperty("amount")]
+        [XmlElement("amount")]
+        public string Amount { get; set; }
+
+        /// <summary>
+        /// 支付渠道
+        /// </summary>
+        [JsonProperty("pay_channel")]
+        [XmlElement("pay_channel")]
+        public string PayChannel { get; set; }
+    }
+}

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

@@ -0,0 +1,76 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// ContractBasicInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class ContractBasicInfo : AlipayObject
+    {
+        /// <summary>
+        /// 合约简要描述
+        /// </summary>
+        [JsonProperty("brief_desc")]
+        [XmlElement("brief_desc")]
+        public string BriefDesc { get; set; }
+
+        /// <summary>
+        /// 合约中文名
+        /// </summary>
+        [JsonProperty("contract_name")]
+        [XmlElement("contract_name")]
+        public string ContractName { get; set; }
+
+        /// <summary>
+        /// 合约号
+        /// </summary>
+        [JsonProperty("contract_no")]
+        [XmlElement("contract_no")]
+        public string ContractNo { get; set; }
+
+        /// <summary>
+        /// 合约过期时间
+        /// </summary>
+        [JsonProperty("expire_time")]
+        [XmlElement("expire_time")]
+        public string ExpireTime { get; set; }
+
+        /// <summary>
+        /// 最后守约时间
+        /// </summary>
+        [JsonProperty("last_promise_date")]
+        [XmlElement("last_promise_date")]
+        public string LastPromiseDate { get; set; }
+
+        /// <summary>
+        /// 用户在输入场景下签约合同的序号
+        /// </summary>
+        [JsonProperty("order")]
+        [XmlElement("order")]
+        public long Order { get; set; }
+
+        /// <summary>
+        /// 合约签署时间
+        /// </summary>
+        [JsonProperty("sign_time")]
+        [XmlElement("sign_time")]
+        public string SignTime { get; set; }
+
+        /// <summary>
+        /// 合同签约应用app标识
+        /// </summary>
+        [JsonProperty("source")]
+        [XmlElement("source")]
+        public string Source { get; set; }
+
+        /// <summary>
+        /// 合同状态,可选值:success, fail
+        /// </summary>
+        [JsonProperty("status")]
+        [XmlElement("status")]
+        public string Status { get; set; }
+    }
+}

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

@@ -0,0 +1,62 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DeliveryInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DeliveryInfo : AlipayObject
+    {
+        /// <summary>
+        /// 市区编码,国标码
+        /// </summary>
+        [JsonProperty("city_code")]
+        [XmlElement("city_code")]
+        public string CityCode { get; set; }
+
+        /// <summary>
+        /// 收件人
+        /// </summary>
+        [JsonProperty("consignee")]
+        [XmlElement("consignee")]
+        public string Consignee { get; set; }
+
+        /// <summary>
+        /// 收件人联系方式
+        /// </summary>
+        [JsonProperty("contact_phone")]
+        [XmlElement("contact_phone")]
+        public string ContactPhone { get; set; }
+
+        /// <summary>
+        /// 详细地区
+        /// </summary>
+        [JsonProperty("detail_address")]
+        [XmlElement("detail_address")]
+        public string DetailAddress { get; set; }
+
+        /// <summary>
+        /// 县区编码,国标码
+        /// </summary>
+        [JsonProperty("district_code")]
+        [XmlElement("district_code")]
+        public string DistrictCode { get; set; }
+
+        /// <summary>
+        /// 省份编码,国标码
+        /// </summary>
+        [JsonProperty("province_code")]
+        [XmlElement("province_code")]
+        public string ProvinceCode { get; set; }
+
+        /// <summary>
+        /// 邮政编码
+        /// </summary>
+        [JsonProperty("zip_code")]
+        [XmlElement("zip_code")]
+        public string ZipCode { get; set; }
+    }
+}

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DeviceApplyTemplate Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DeviceApplyTemplate : AlipayObject
+    {
+        /// <summary>
+        /// 实际申请数量,取值1到500之间,最多不能超过500。补充说明:一次能申请的机具模板种类最多为10,也就是device_list大小为10
+        /// </summary>
+        [JsonProperty("apply_amount")]
+        [XmlElement("apply_amount")]
+        public long ApplyAmount { get; set; }
+
+        /// <summary>
+        /// 机具模板id
+        /// </summary>
+        [JsonProperty("template_id")]
+        [XmlElement("template_id")]
+        public string TemplateId { get; set; }
+    }
+}

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DeviceResultInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DeviceResultInfo : AlipayObject
+    {
+        /// <summary>
+        /// 设备id
+        /// </summary>
+        [JsonProperty("device_id")]
+        [XmlElement("device_id")]
+        public string DeviceId { get; set; }
+
+        /// <summary>
+        /// 业务数据类型
+        /// </summary>
+        [JsonProperty("device_label")]
+        [XmlElement("device_label")]
+        public string DeviceLabel { get; set; }
+    }
+}

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

@@ -0,0 +1,55 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DiscountInfos Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DiscountInfos : AlipayObject
+    {
+        /// <summary>
+        /// 优惠金额
+        /// </summary>
+        [JsonProperty("amount")]
+        [XmlElement("amount")]
+        public string Amount { get; set; }
+
+        /// <summary>
+        /// 扩展信息
+        /// </summary>
+        [JsonProperty("ext_infos")]
+        [XmlElement("ext_infos")]
+        public string ExtInfos { get; set; }
+
+        /// <summary>
+        /// 本次支付商家优惠的金额
+        /// </summary>
+        [JsonProperty("mdiscount_amount")]
+        [XmlElement("mdiscount_amount")]
+        public string MdiscountAmount { get; set; }
+
+        /// <summary>
+        /// 优惠名称
+        /// </summary>
+        [JsonProperty("name")]
+        [XmlElement("name")]
+        public string Name { get; set; }
+
+        /// <summary>
+        /// 本次支付平台补贴的金额
+        /// </summary>
+        [JsonProperty("platform_discount_amount")]
+        [XmlElement("platform_discount_amount")]
+        public string PlatformDiscountAmount { get; set; }
+
+        /// <summary>
+        /// 优惠类型
+        /// </summary>
+        [JsonProperty("type")]
+        [XmlElement("type")]
+        public string Type { get; set; }
+    }
+}

+ 149 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/DishList.cs

@@ -0,0 +1,149 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+using System.Collections.Generic;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// DishList Data Structure.
+    /// </summary>
+    [Serializable]
+    public class DishList : AlipayObject
+    {
+        /// <summary>
+        /// 总价
+        /// </summary>
+        [JsonProperty("amount")]
+        [XmlElement("amount")]
+        public string Amount { get; set; }
+
+        /// <summary>
+        /// 口碑推单的批次号
+        /// </summary>
+        [JsonProperty("batch_no")]
+        [XmlElement("batch_no")]
+        public string BatchNo { get; set; }
+
+        /// <summary>
+        /// 菜品优惠金额
+        /// </summary>
+        [JsonProperty("discount_amount")]
+        [XmlElement("discount_amount")]
+        public string DiscountAmount { get; set; }
+
+        /// <summary>
+        /// 菜品优惠明细
+        /// </summary>
+        [JsonProperty("discount_infos")]
+        [XmlArray("discount_infos")]
+        [XmlArrayItem("discount_infos")]
+        public List<DiscountInfos> DiscountInfos { get; set; }
+
+        /// <summary>
+        /// 菜品在口碑侧基于商品表达的商品ID
+        /// </summary>
+        [JsonProperty("dish_id")]
+        [XmlElement("dish_id")]
+        public string DishId { get; set; }
+
+        /// <summary>
+        /// 菜品名称
+        /// </summary>
+        [JsonProperty("dish_name")]
+        [XmlElement("dish_name")]
+        public string DishName { get; set; }
+
+        /// <summary>
+        /// 菜品类型:  可枚举:  (1)SINGLE  (2)COMBO
+        /// </summary>
+        [JsonProperty("dish_type")]
+        [XmlElement("dish_type")]
+        public string DishType { get; set; }
+
+        /// <summary>
+        /// 扩展信息
+        /// </summary>
+        [JsonProperty("ext_infos")]
+        [XmlElement("ext_infos")]
+        public string ExtInfos { get; set; }
+
+        /// <summary>
+        /// 数量
+        /// </summary>
+        [JsonProperty("num")]
+        [XmlElement("num")]
+        public string Num { get; set; }
+
+        /// <summary>
+        /// POS侧菜品明细单ID
+        /// </summary>
+        [JsonProperty("out_detail_id")]
+        [XmlElement("out_detail_id")]
+        public string OutDetailId { get; set; }
+
+        /// <summary>
+        /// 外部菜品ID
+        /// </summary>
+        [JsonProperty("out_dish_id")]
+        [XmlElement("out_dish_id")]
+        public string OutDishId { get; set; }
+
+        /// <summary>
+        /// "菜品的其他信息,包括但不限于:sku、规格,做法等信息;  为Map结构的json格式,key的枚举定义:  (1)PRACTICE:""红烧""   做法  (2PRACTICE_PRICE:""10.0"" 做法加价  (2)SALES_PROPERTY: {""甜度"":[""五分甜"",""三分甜""],""冰量"":[""少冰""]} 一般销售属性  (3)SPECIFICATION:""大""  规格"
+        /// </summary>
+        [JsonProperty("out_dish_infos")]
+        [XmlElement("out_dish_infos")]
+        public string OutDishInfos { get; set; }
+
+        /// <summary>
+        /// 外部菜品SKU ID
+        /// </summary>
+        [JsonProperty("out_sku_id")]
+        [XmlElement("out_sku_id")]
+        public string OutSkuId { get; set; }
+
+        /// <summary>
+        /// 单价
+        /// </summary>
+        [JsonProperty("price")]
+        [XmlElement("price")]
+        public string Price { get; set; }
+
+        /// <summary>
+        /// 套餐选择信息
+        /// </summary>
+        [JsonProperty("selected_meal_info")]
+        [XmlArray("selected_meal_info")]
+        [XmlArrayItem("selected_meal_info")]
+        public List<SelectedMealInfo> SelectedMealInfo { get; set; }
+
+        /// <summary>
+        /// 商品下细分的sku ID
+        /// </summary>
+        [JsonProperty("sku_id")]
+        [XmlElement("sku_id")]
+        public string SkuId { get; set; }
+
+        /// <summary>
+        /// "菜品状态:  可枚举:  (1)INIT:加菜  (2)SUCCESS:接单  (2)REFUND:退菜  (2)CLOSE:拒单"
+        /// </summary>
+        [JsonProperty("status")]
+        [XmlElement("status")]
+        public string Status { get; set; }
+
+        /// <summary>
+        /// 是否临时车:  可枚举:  (1)Y  (2)N
+        /// </summary>
+        [JsonProperty("temporary_dish")]
+        [XmlElement("temporary_dish")]
+        public string TemporaryDish { get; set; }
+
+        /// <summary>
+        /// 单位
+        /// </summary>
+        [JsonProperty("unit")]
+        [XmlElement("unit")]
+        public string Unit { get; set; }
+    }
+}

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/EbppUserChargeInstInfo.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// EbppUserChargeInstInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class EbppUserChargeInstInfo : AlipayObject
+    {
+        /// <summary>
+        /// 业务类型缩写:  JF-缴费
+        /// </summary>
+        [JsonProperty("biz_type")]
+        [XmlElement("biz_type")]
+        public string BizType { get; set; }
+
+        /// <summary>
+        /// 出账机构缩写
+        /// </summary>
+        [JsonProperty("charge_inst")]
+        [XmlElement("charge_inst")]
+        public string ChargeInst { get; set; }
+
+        /// <summary>
+        /// 出账机构全称
+        /// </summary>
+        [JsonProperty("charge_inst_name")]
+        [XmlElement("charge_inst_name")]
+        public string ChargeInstName { get; set; }
+
+        /// <summary>
+        /// 子业务类型英文名称:  ELECTRIC-电力  GAS-燃气  WATER-水
+        /// </summary>
+        [JsonProperty("sub_biz_type")]
+        [XmlElement("sub_biz_type")]
+        public string SubBizType { get; set; }
+    }
+}

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

@@ -66,6 +66,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("medical_card_type")]
         public string MedicalCardType { get; set; }
 
+        /// <summary>
+        /// 医保卡持有人姓名( 脱敏)
+        /// </summary>
+        [JsonProperty("out_user_name")]
+        [XmlElement("out_user_name")]
+        public string OutUserName { get; set; }
+
         /// <summary>
         /// 绑定状态  已激活:signed  已解绑:unsigned
         /// </summary>

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

@@ -0,0 +1,20 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// FaceExtInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class FaceExtInfo : AlipayObject
+    {
+        /// <summary>
+        /// query_type不填, 返回uid  query_type=1, 返回手机号  query_type=2, 返回图片
+        /// </summary>
+        [JsonProperty("query_type")]
+        [XmlElement("query_type")]
+        public string QueryType { get; set; }
+    }
+}

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

@@ -0,0 +1,34 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// FaceSearchUserInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class FaceSearchUserInfo : AlipayObject
+    {
+        /// <summary>
+        /// 自定义用户标识
+        /// </summary>
+        [JsonProperty("customuserid")]
+        [XmlElement("customuserid")]
+        public string Customuserid { get; set; }
+
+        /// <summary>
+        /// 商户标识
+        /// </summary>
+        [JsonProperty("merchantid")]
+        [XmlElement("merchantid")]
+        public string Merchantid { get; set; }
+
+        /// <summary>
+        /// 商户uid
+        /// </summary>
+        [JsonProperty("merchantuid")]
+        [XmlElement("merchantuid")]
+        public string Merchantuid { get; set; }
+    }
+}

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

@@ -0,0 +1,48 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// InsCoupon Data Structure.
+    /// </summary>
+    [Serializable]
+    public class InsCoupon : AlipayObject
+    {
+        /// <summary>
+        /// 实际使用的权益值,可选不唯一,可能是金额(分),也可能是业务约定的其他描述
+        /// </summary>
+        [JsonProperty("actual_coupon_value")]
+        [XmlElement("actual_coupon_value")]
+        public string ActualCouponValue { get; set; }
+
+        /// <summary>
+        /// 实际使用的折扣金额(分),可选不唯一
+        /// </summary>
+        [JsonProperty("actual_discount_cash")]
+        [XmlElement("actual_discount_cash")]
+        public long ActualDiscountCash { get; set; }
+
+        /// <summary>
+        /// 权益ID,必选不唯一,营销域分配
+        /// </summary>
+        [JsonProperty("coupon_id")]
+        [XmlElement("coupon_id")]
+        public string CouponId { get; set; }
+
+        /// <summary>
+        /// 权益类型,可选不唯一,营销域分配
+        /// </summary>
+        [JsonProperty("coupon_type")]
+        [XmlElement("coupon_type")]
+        public string CouponType { get; set; }
+
+        /// <summary>
+        /// 权益值,可选不唯一,可能是金额(分),也可能是业务约定的其他描述
+        /// </summary>
+        [JsonProperty("coupon_value")]
+        [XmlElement("coupon_value")]
+        public string CouponValue { get; set; }
+    }
+}

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

@@ -80,6 +80,20 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("invoice_status")]
         public string InvoiceStatus { get; set; }
 
+        /// <summary>
+        /// logo地址
+        /// </summary>
+        [JsonProperty("logo_url")]
+        [XmlElement("logo_url")]
+        public string LogoUrl { get; set; }
+
+        /// <summary>
+        /// 商户全称
+        /// </summary>
+        [JsonProperty("m_name")]
+        [XmlElement("m_name")]
+        public string MName { get; set; }
+
         /// <summary>
         /// 销方名称
         /// </summary>

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

@@ -45,6 +45,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("tax_register_no")]
         public string TaxRegisterNo { get; set; }
 
+        /// <summary>
+        /// 用户私人手机号
+        /// </summary>
+        [JsonProperty("tele_phone_no")]
+        [XmlElement("tele_phone_no")]
+        public string TelePhoneNo { get; set; }
+
         /// <summary>
         /// 抬头名称
         /// </summary>

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

@@ -19,7 +19,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string Area { get; set; }
 
         /// <summary>
-        /// 渠道    eatin堂食,takeout外卖,paipai 扫码
+        /// 渠道    eatin堂食,takeout外卖,paipai 扫码,kbb2c 口碑点餐
         /// </summary>
         [JsonProperty("cook_channel")]
         [XmlElement("cook_channel")]
@@ -90,7 +90,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string MerchantId { get; set; }
 
         /// <summary>
-        /// 时间约束类型 forever:永久;  week:按周,每周周几 month:按月,每月几号
+        /// 时间约束类型 forever:永久;  week:按周,每周周几 month:按月,每月几号.  如果操作的是菜谱,非空必传。如果是操作门店或者挂明细,可为空
         /// </summary>
         [JsonProperty("period_type")]
         [XmlElement("period_type")]

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

@@ -25,7 +25,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string DictionaryId { get; set; }
 
         /// <summary>
-        /// 字典的扩展json,根据不同的biz_type,设置商家的自定义字典表key以及value。如果字典类型为catetory, key:cateSort,cateType,level,parentCatetoryId ;如果字典类型为spec, key:specSort.
+        /// 字典的扩展json,根据不同的biz_type,设置商家的自定义字典表key以及value。如果字典类型为catetory,  key为cateSort,cateType,level,parentCatetoryId(level传数字,cateType为dish或cook) ;如果字典类型为spec, key为specSort.。注意:如果是字符串拼接的方式,转移符\要替换为\\\ 。
         /// </summary>
         [JsonProperty("ext_info")]
         [XmlElement("ext_info")]

+ 3 - 3
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishEstimatedInfo.cs

@@ -18,14 +18,14 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string DsId { get; set; }
 
         /// <summary>
-        /// skuid:sku维度估清  dishid:菜品维度估清
+        /// skuid:sku维度估清  dishid:菜品维度估清  materialid:加料维度沽清
         /// </summary>
         [JsonProperty("ds_type")]
         [XmlElement("ds_type")]
         public string DsType { get; set; }
 
         /// <summary>
-        /// 估清后临时库存.大于等于0的数字。  status=open必须要传一个数
+        /// 估清后临时库存.大于等于0的数字。  status=open必须要传一个数。  在沽清类型为加料的时候,该项强制为0。
         /// </summary>
         [JsonProperty("inventory")]
         [XmlElement("inventory")]
@@ -39,7 +39,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ShopId { get; set; }
 
         /// <summary>
-        /// 状态。open:启用;stop:停用
+        /// 状态。open:估清;stop:取消估清
         /// </summary>
         [JsonProperty("status")]
         [XmlElement("status")]

+ 69 - 4
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishInfo.cs

@@ -12,7 +12,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
     public class KbdishInfo : AlipayObject
     {
         /// <summary>
-        /// 分类字典大类的id
+        /// 分类字典大类的id, 如果操作的是菜品,则比输入,如果操作的是sku信息,可不输入
         /// </summary>
         [JsonProperty("catetory_big_id")]
         [XmlElement("catetory_big_id")]
@@ -39,6 +39,20 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("cur_price_flag")]
         public string CurPriceFlag { get; set; }
 
+        /// <summary>
+        /// 是否开台必点菜 Y是  N否,默认否;暂废弃,后续针对开台菜提供新api
+        /// </summary>
+        [JsonProperty("default_in_carts")]
+        [XmlElement("default_in_carts")]
+        public string DefaultInCarts { get; set; }
+
+        /// <summary>
+        /// 开台菜点餐方式:如果是按数量点,直接输入数量例如2,;如果是按照就餐人数点,则输入countOnDiner这个固定的字符串  暂废弃,后续针对开台菜提供新api
+        /// </summary>
+        [JsonProperty("default_in_carts_detail")]
+        [XmlElement("default_in_carts_detail")]
+        public string DefaultInCartsDetail { get; set; }
+
         /// <summary>
         /// 菜系,商家自定义
         /// </summary>
@@ -47,7 +61,7 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string DishCuisine { get; set; }
 
         /// <summary>
-        /// 口碑的菜品id,新增的时候可以为空
+        /// 口碑的菜品id, 新增操作可以为空,修改的时候必传
         /// </summary>
         [JsonProperty("dish_id")]
         [XmlElement("dish_id")]
@@ -105,12 +119,20 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string ExtContent { get; set; }
 
         /// <summary>
-        /// 口碑的商品id,用于营销透传
+        /// 口碑的商品id,用于营销透传,可不传
         /// </summary>
         [JsonProperty("goods_id")]
         [XmlElement("goods_id")]
         public string GoodsId { get; set; }
 
+        /// <summary>
+        /// 菜品加料信息
+        /// </summary>
+        [JsonProperty("material_binding_info_list")]
+        [XmlArray("material_binding_info_list")]
+        [XmlArrayItem("kbdish_material_binding_info")]
+        public List<KbdishMaterialBindingInfo> MaterialBindingInfoList { get; set; }
+
         /// <summary>
         /// 商家id
         /// </summary>
@@ -119,12 +141,19 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         public string MerchantId { get; set; }
 
         /// <summary>
-        /// 起点
+        /// 起点
         /// </summary>
         [JsonProperty("min_serving")]
         [XmlElement("min_serving")]
         public string MinServing { get; set; }
 
+        /// <summary>
+        /// 最小点菜数量, 用户点餐一次加多少,不填默认为1
+        /// </summary>
+        [JsonProperty("mini_add_num")]
+        [XmlElement("mini_add_num")]
+        public string MiniAddNum { get; set; }
+
         /// <summary>
         /// 数字助记码
         /// </summary>
@@ -132,6 +161,28 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("nb_remember_code")]
         public string NbRememberCode { get; set; }
 
+        /// <summary>
+        /// Y:不参与优惠计算  N: 参与优惠,不设置默认为N
+        /// </summary>
+        [JsonProperty("not_count_threshold")]
+        [XmlElement("not_count_threshold")]
+        public string NotCountThreshold { get; set; }
+
+        /// <summary>
+        /// 外部菜品id
+        /// </summary>
+        [JsonProperty("out_dish_id")]
+        [XmlElement("out_dish_id")]
+        public string OutDishId { get; set; }
+
+        /// <summary>
+        /// 菜品销售属性,如辣度、加冰等,最多四个
+        /// </summary>
+        [JsonProperty("property_info_list")]
+        [XmlArray("property_info_list")]
+        [XmlArrayItem("kbdish_property_info")]
+        public List<KbdishPropertyInfo> PropertyInfoList { get; set; }
+
         /// <summary>
         /// 菜品的描述
         /// </summary>
@@ -139,6 +190,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("remarks")]
         public string Remarks { get; set; }
 
+        /// <summary>
+        /// 门店菜品id. 如果存门店菜品库,设置此值
+        /// </summary>
+        [JsonProperty("shop_id")]
+        [XmlElement("shop_id")]
+        public string ShopId { get; set; }
+
         /// <summary>
         /// open 启动 stop 停用
         /// </summary>
@@ -146,6 +204,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("status")]
         public string Status { get; set; }
 
+        /// <summary>
+        /// 菜品标签json串,key =spicy标示辣度, value=0标示不辣;1微辣;2中辣;3中辣。  key=recommend标示推荐指数,value=0标示不设定;1标示推荐;2十分推荐;3强烈推荐。key=special标识特色标签;value=0标示不设定;1招牌;2新品
+        /// </summary>
+        [JsonProperty("tags")]
+        [XmlElement("tags")]
+        public string Tags { get; set; }
+
         /// <summary>
         /// 口碑枚举定义 single:单品;packages:套餐
         /// </summary>

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KbdishMaterialBindingInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbdishMaterialBindingInfo : AlipayObject
+    {
+        /// <summary>
+        /// 加料id
+        /// </summary>
+        [JsonProperty("material_id")]
+        [XmlElement("material_id")]
+        public string MaterialId { get; set; }
+
+        /// <summary>
+        /// 菜品加料排序字段,从1开始递增
+        /// </summary>
+        [JsonProperty("sort")]
+        [XmlElement("sort")]
+        public string Sort { get; set; }
+    }
+}

+ 90 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishMaterialInfo.cs

@@ -0,0 +1,90 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KbdishMaterialInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbdishMaterialInfo : AlipayObject
+    {
+        /// <summary>
+        /// 加价金额,最小加价金额0
+        /// </summary>
+        [JsonProperty("add_price")]
+        [XmlElement("add_price")]
+        public string AddPrice { get; set; }
+
+        /// <summary>
+        /// 创建人,在新增时必传
+        /// </summary>
+        [JsonProperty("create_user")]
+        [XmlElement("create_user")]
+        public string CreateUser { get; set; }
+
+        /// <summary>
+        /// 扩展字段
+        /// </summary>
+        [JsonProperty("ext_info")]
+        [XmlElement("ext_info")]
+        public string ExtInfo { get; set; }
+
+        /// <summary>
+        /// 加料id,加料的唯一标识。  新增时该项不用传,修改删除时必传。
+        /// </summary>
+        [JsonProperty("material_id")]
+        [XmlElement("material_id")]
+        public string MaterialId { get; set; }
+
+        /// <summary>
+        /// 口碑的加料图片id
+        /// </summary>
+        [JsonProperty("material_img")]
+        [XmlElement("material_img")]
+        public string MaterialImg { get; set; }
+
+        /// <summary>
+        /// 加料的名称
+        /// </summary>
+        [JsonProperty("material_name")]
+        [XmlElement("material_name")]
+        public string MaterialName { get; set; }
+
+        /// <summary>
+        /// SHOP/PID。代表加料类型是商户或者门店。
+        /// </summary>
+        [JsonProperty("material_type")]
+        [XmlElement("material_type")]
+        public string MaterialType { get; set; }
+
+        /// <summary>
+        /// 表示单个菜品加料最多可以加料的份数
+        /// </summary>
+        [JsonProperty("max_num")]
+        [XmlElement("max_num")]
+        public string MaxNum { get; set; }
+
+        /// <summary>
+        /// 商户id
+        /// </summary>
+        [JsonProperty("merchant_id")]
+        [XmlElement("merchant_id")]
+        public string MerchantId { get; set; }
+
+        /// <summary>
+        /// 公共字段,根据materialType的类型,这里填入商户id或者口碑门店id。
+        /// </summary>
+        [JsonProperty("public_id")]
+        [XmlElement("public_id")]
+        public string PublicId { get; set; }
+
+        /// <summary>
+        /// 修改人,在新增和修改,删除时必传
+        /// </summary>
+        [JsonProperty("update_user")]
+        [XmlElement("update_user")]
+        public string UpdateUser { get; set; }
+    }
+}

+ 36 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KbdishPropertyInfo.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>
+    /// KbdishPropertyInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbdishPropertyInfo : AlipayObject
+    {
+        /// <summary>
+        /// 菜品属性名称
+        /// </summary>
+        [JsonProperty("property_name")]
+        [XmlElement("property_name")]
+        public string PropertyName { get; set; }
+
+        /// <summary>
+        /// 菜品销售属性属性值模型
+        /// </summary>
+        [JsonProperty("property_value_info_list")]
+        [XmlArray("property_value_info_list")]
+        [XmlArrayItem("kbdish_property_value_info")]
+        public List<KbdishPropertyValueInfo> PropertyValueInfoList { get; set; }
+
+        /// <summary>
+        /// 菜品属性排序字段,从1一直递增到4
+        /// </summary>
+        [JsonProperty("sort")]
+        [XmlElement("sort")]
+        public string Sort { get; set; }
+    }
+}

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

@@ -0,0 +1,27 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KbdishPropertyValueInfo Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KbdishPropertyValueInfo : AlipayObject
+    {
+        /// <summary>
+        /// 属性值排序字段,从1一直递增到5
+        /// </summary>
+        [JsonProperty("sort")]
+        [XmlElement("sort")]
+        public string Sort { get; set; }
+
+        /// <summary>
+        /// 销售属性值
+        /// </summary>
+        [JsonProperty("value")]
+        [XmlElement("value")]
+        public string Value { get; set; }
+    }
+}

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

@@ -47,6 +47,13 @@ namespace Essensoft.AspNetCore.Payment.Alipay.Domain
         [XmlElement("member_price")]
         public string MemberPrice { get; set; }
 
+        /// <summary>
+        /// 外部的菜品skuId, isv自己的skuId
+        /// </summary>
+        [JsonProperty("out_sku_id")]
+        [XmlElement("out_sku_id")]
+        public string OutSkuId { get; set; }
+
         /// <summary>
         /// 售卖价格
         /// </summary>

+ 41 - 0
src/Essensoft.AspNetCore.Payment.Alipay/Domain/KoubeiCateringCookConditionBatchqueryModel.cs

@@ -0,0 +1,41 @@
+using System;
+using Newtonsoft.Json;
+using System.Xml.Serialization;
+
+namespace Essensoft.AspNetCore.Payment.Alipay.Domain
+{
+    /// <summary>
+    /// KoubeiCateringCookConditionBatchqueryModel Data Structure.
+    /// </summary>
+    [Serializable]
+    public class KoubeiCateringCookConditionBatchqueryModel : AlipayObject
+    {
+        /// <summary>
+        /// 商户的支付宝user_id. 商户授权后,isv能获得
+        /// </summary>
+        [JsonProperty("merchant_id")]
+        [XmlElement("merchant_id")]
+        public string MerchantId { get; set; }
+
+        /// <summary>
+        /// 查询页码,表示第几页
+        /// </summary>
+        [JsonProperty("page_no")]
+        [XmlElement("page_no")]
+        public string PageNo { get; set; }
+
+        /// <summary>
+        /// 分页大小,表示每页查询数量,不超过50
+        /// </summary>
+        [JsonProperty("page_size")]
+        [XmlElement("page_size")]
+        public string PageSize { get; set; }
+
+        /// <summary>
+        /// 口碑店铺id
+        /// </summary>
+        [JsonProperty("shop_id")]
+        [XmlElement("shop_id")]
+        public string ShopId { get; set; }
+    }
+}

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است