38 lines
1.3 KiB
C#
38 lines
1.3 KiB
C#
using System.Diagnostics;
|
|
using System.Reactive.Linq;
|
|
using ReactiveUI;
|
|
using ReactiveUI.SourceGenerators;
|
|
|
|
namespace PcgsApi;
|
|
|
|
public partial class PcgsCoin : ReactiveObject {
|
|
[Reactive] private string _pcgsNumber;
|
|
[Reactive] private string _name;
|
|
[Reactive] private int _year;
|
|
[Reactive] private string _denomination;
|
|
[Reactive] private string _mintMark;
|
|
[Reactive] private string _grade;
|
|
[Reactive] private string _coinFactsLink;
|
|
[Reactive] private string _majorVariety;
|
|
[Reactive] private string _minorVariety;
|
|
[Reactive] private string _dieVariety;
|
|
[Reactive] private string _seriesName;
|
|
[Reactive] private string _category;
|
|
[Reactive] private string _designation;
|
|
[Reactive] private int _certificateNumber;
|
|
[Reactive] private double _paidFor;
|
|
[Reactive] private string _notes;
|
|
[Reactive] private int _quantity;
|
|
[Reactive] private double _priceGuideValue;
|
|
[ObservableAsProperty] private double _totalPrice;
|
|
|
|
public PcgsCoin() {
|
|
_totalPriceHelper = this.WhenAnyValue(
|
|
x => x.Quantity,
|
|
x => x.PriceGuideValue,
|
|
(quantity, price) => quantity * price
|
|
)
|
|
.Do(_ => Debug.WriteLine("PcgsCoin total price calculated"))
|
|
.ToProperty(this, nameof(TotalPrice));
|
|
}
|
|
} |