Files
Kayori e5bdb3eb95 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
2026-09-07 02:14:14 +02:00

65 lines
1.7 KiB
C#

using System.Xml.Serialization;
using Abstractions.SerializationTypes;
namespace MedusaPluginChargeMachine.Models.Response;
[XmlRoot("eacharge")]
[Serializable]
public class EaChargeConfigResponse
{
[XmlAttribute("status")]
public required int Status { get; set; }
[XmlAttribute("expire")]
public required int Expire { get; set; }
[XmlElement("chargeoptions")]
public required XrpcString ChargeOptions { get; set; }
[XmlElement("chargearticle")]
public required EaChargeConfigChargeArticle ChargeArticle { get; set; }
[XmlElement("chargedetail")]
public required EaChargeConfigChargeDetail ChargeDetail { get; set; }
[XmlElement("chargestatus")]
public required EaChargeConfigChargeStatus ChargeStatus { get; set; }
}
public record EaChargeConfigChargeArticle
{
[XmlElement("articlerevision")]
public required XrpcString ArticleRevision { get; set; }
[XmlArray("articlelist")]
[XmlArrayItem("item")]
public required List<EaChargeConfigChargeArticleItem> ArticleList { get; set; }
}
public record EaChargeConfigChargeArticleItem
{
[XmlElement("articletype")]
public required XrpcString ArticleType { get; set; }
[XmlElement("articledoc")]
public required XrpcString ArticleDoc { get; set; }
}
public record EaChargeConfigChargeDetail
{
[XmlElement("chargedaily")]
public required XrpcInt ChargeDaily { get; set; }
[XmlElement("chargedailylimit")]
public required XrpcInt ChargeDailyLimit { get; set; }
}
public record EaChargeConfigChargeStatus
{
[XmlElement("currentcode")]
public required XrpcInt CurrentCode { get; set; }
[XmlElement("lastchargestatus")]
public required XrpcInt LastChargeStatus { get; set; }
}