Fix multi-bill display, charge amount parsing, and charge log responses

- chargeoptions is the real field gating 2000/5000/10000 yen display
- chargeid (not chargenum) carries the actual denomination on charge
- getrecentcharge/getlastlog: fixed num mismatch, added missing result
  section, and added placeholder items for empty result sets
This commit is contained in:
Kayori
2026-09-07 02:14:14 +02:00
parent 68b77bb9c3
commit e5bdb3eb95
8 changed files with 137 additions and 24 deletions
@@ -12,7 +12,10 @@ public class EaChargeConfigResponse
[XmlAttribute("expire")]
public required int Expire { get; set; }
[XmlElement("chargeoptions")]
public required XrpcString ChargeOptions { get; set; }
[XmlElement("chargearticle")]
public required EaChargeConfigChargeArticle ChargeArticle { get; set; }
@@ -12,6 +12,9 @@ public class GetLastLogEaChargeResponse
[XmlElement("header")]
public required GetLastLogEaChargeHeader Header { get; set; }
[XmlElement("result")]
public required GetLastLogEaChargeResult Result { get; set; }
}
public record GetLastLogEaChargeHeader
@@ -33,4 +36,28 @@ public record GetLastLogChargeItem
[XmlElement("chargeamount")]
public XrpcInt ChargeAmount { get; set; }
}
}
public record GetLastLogEaChargeResult
{
[XmlElement("item")]
public List<GetLastLogResultItem> Items { get; set; } = [];
}
public record GetLastLogResultItem
{
[XmlElement("orderdate")]
public XrpcString OrderDate { get; set; }
[XmlElement("chargeid")]
public XrpcString ChargeId { get; set; }
[XmlElement("chargenum")]
public XrpcInt ChargeNum { get; set; }
[XmlElement("cardtype")]
public XrpcInt CardType { get; set; }
[XmlElement("cardno")]
public XrpcString CardNo { get; set; }
}