45 lines
1.4 KiB
C#
45 lines
1.4 KiB
C#
using System.Xml.Linq;
|
|
|
|
namespace Billing.Models
|
|
{
|
|
public class Account : BaseModel
|
|
{
|
|
public int Id { get; set; }
|
|
public string Icon { get; set; } = ICON_DEFAULT;
|
|
public AccountCategory Category { get; set; }
|
|
public string Name { get; set; }
|
|
public decimal Initial { get; set; }
|
|
public decimal Balance { get; set; }
|
|
public string Memo { get; set; }
|
|
|
|
public override void OnXmlDeserialize(XElement node)
|
|
{
|
|
Id = Read(node, nameof(Id), 0);
|
|
Icon = Read(node, nameof(Icon), ICON_DEFAULT);
|
|
Category = (AccountCategory)Read(node, nameof(Category), 0);
|
|
Name = Read(node, nameof(Name), string.Empty);
|
|
Initial = Read(node, nameof(Initial), 0m);
|
|
Balance = Read(node, nameof(Balance), 0m);
|
|
Memo = Read(node, nameof(Memo), null);
|
|
}
|
|
|
|
public override void OnXmlSerialize(XElement node)
|
|
{
|
|
Write(node, nameof(Id), Id);
|
|
Write(node, nameof(Icon), Icon);
|
|
Write(node, nameof(Category), (int)Category);
|
|
Write(node, nameof(Name), Name);
|
|
Write(node, nameof(Initial), Initial);
|
|
Write(node, nameof(Balance), Balance);
|
|
Write(node, nameof(Memo), Memo);
|
|
}
|
|
}
|
|
|
|
public enum AccountCategory
|
|
{
|
|
Cash = 0,
|
|
CreditCard,
|
|
DebitCard,
|
|
ElecAccount
|
|
}
|
|
} |