Commit 40026917 by lizefeng

优化结算表解析

parent a4ed804b
...@@ -281,6 +281,34 @@ namespace AutoTurnOver.Services.Dto ...@@ -281,6 +281,34 @@ namespace AutoTurnOver.Services.Dto
public Amount BaseAmount { get; set; } = new Amount { }; public Amount BaseAmount { get; set; } = new Amount { };
public Amount TransactionAmount { get; set; } = new Amount { }; public Amount TransactionAmount { get; set; } = new Amount { };
} }
[JsonProperty("SellerDealPayment")]
[JsonConverter(typeof(SellerDealPaymentDataConverter))]
public List<SellerDealPaymentDto> SellerDealPayment { get; set; }
public class SellerDealPaymentDto
{
public DateTime? PostedDate { get; set; }
public string TransactionType { get; set; }
public string PaymentReason { get; set; }
public string DealDescription { get; set; }
public string DealID { get; set; }
public string MarketplaceName { get; set; }
public FeeDto DealFee { get; set; }
}
[JsonProperty("SellerCouponPayment")]
[JsonConverter(typeof(SellerCouponPaymentDataConverter))]
public List<SellerCouponPaymentDto> SellerCouponPayment { get; set; }
public class SellerCouponPaymentDto
{
public DateTime? PostedDate { get; set; }
public string TransactionType { get; set; }
public string PaymentReason { get; set; }
public string Count { get; set; }
public string CouponID { get; set; }
public string MarketplaceName { get; set; }
public FeeDto CouponFee { get; set; }
}
} }
} }
public class PromotionDto public class PromotionDto
...@@ -424,6 +452,66 @@ namespace AutoTurnOver.Services.Dto ...@@ -424,6 +452,66 @@ namespace AutoTurnOver.Services.Dto
serializer.Serialize(writer, value); serializer.Serialize(writer, value);
} }
} }
class SellerDealPaymentDataConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return (objectType == typeof(ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerDealPaymentDto));
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
JToken token = JToken.Load(reader);
if (token.Type == JTokenType.Array)
{
return token.ToObject<List<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerDealPaymentDto>>();
}
if (token.Type == JTokenType.Object)
{
return new List<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerDealPaymentDto> { token.ToObject<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerDealPaymentDto>() };
}
else
{
return new List<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerDealPaymentDto> { };
}
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
serializer.Serialize(writer, value);
}
}
class SellerCouponPaymentDataConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return (objectType == typeof(ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerCouponPaymentDto));
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
JToken token = JToken.Load(reader);
if (token.Type == JTokenType.Array)
{
return token.ToObject<List<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerCouponPaymentDto>>();
}
if (token.Type == JTokenType.Object)
{
return new List<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerCouponPaymentDto> { token.ToObject<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerCouponPaymentDto>() };
}
else
{
return new List<ApiAmazonSettlementDto.AmazonEnvelopeDto.MessageDto.SettlementReportDto.SellerCouponPaymentDto> { };
}
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
serializer.Serialize(writer, value);
}
}
class ItemDataConverter : JsonConverter class ItemDataConverter : JsonConverter
{ {
public override bool CanConvert(Type objectType) public override bool CanConvert(Type objectType)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment