/// <summary> /// Default constructor /// </summary> public VATDraftViewModel() { // Initialise if (VATDraftModel == null) { VATDraftModel = new VATDraftModel(); } CalculateVATDraftCommand = new RelayCommand(() => CaculateVATDRaft()); }
public void ListSums(VATRegModel model, VATDraftModel draftModel) { PropertyInfo[] propertyInfos = null; propertyInfos = draftModel.GetType().GetProperties(); foreach (var item in propertyInfos) { var prop = item.GetValue(draftModel); if (item.Name.Substring(0, 1).Equals("R")) { if (prop is IEnumerable) { double i = 0; foreach (var listitem in prop as IEnumerable) { double k = (double)listitem; i = i + k; } foreach (PropertyInfo p in typeof(VATRegModel).GetProperties()) { if (item.Name.Length == 2 && p.Name.Length == 2) { if (p.Name.Substring(0, 2).Equals(item.Name.Substring(0, 2))) { p.SetValue(model, i); } } if (item.Name.Length == 3 && p.Name.Length == 3) { if (p.Name.Substring(0, 3).Equals(item.Name.Substring(0, 3))) { p.SetValue(model, i); } } } } } } }
public static void WriteToVATModel(VATDraftModel model, List <Invoice> Invoices) { foreach (Invoice invoice in Invoices) { if (invoice.Type.ShortHand.Equals("S0")) { model.R0.Add(invoice.AmGoods); model.R54.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("S6")) { model.R1.Add(invoice.AmGoods); model.R54.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("S12")) { model.R2.Add(invoice.AmGoods); model.R54.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("S21")) { model.R3.Add(invoice.AmGoods); model.R54.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("SEUG")) { model.R46.Add(invoice.AmGoods); } if (invoice.Type.ShortHand.Equals("SEUS")) { model.R44.Add(invoice.AmGoods); } if (invoice.Type.ShortHand.Equals("PG")) { model.R81.Add(invoice.AmGoods); model.R59.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("PS")) { model.R82.Add(invoice.AmGoods); model.R59.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("PINV")) { model.R83.Add(invoice.AmGoods); model.R59.Add(invoice.AmVat); } if (invoice.Type.ShortHand.Equals("PEUG")) { model.R81.Add(invoice.AmGoods); model.R86.Add(invoice.AmGoods); model.R59.Add(invoice.AmGoods * 0.21); model.R55.Add(invoice.AmGoods * 0.21); } if (invoice.Type.ShortHand.Equals("PEUS")) { model.R82.Add(invoice.AmGoods); model.R88.Add(invoice.AmGoods); model.R59.Add(invoice.AmGoods * 0.21); model.R55.Add(invoice.AmGoods * 0.21); } if (invoice.Type.ShortHand.Equals("PO")) { model.R87.Add(invoice.AmGoods); model.R59.Add(invoice.AmVat); model.R56.Add(invoice.AmVat); } } }
/// <summary> /// Calculates the VAT Draft /// TODO: /// Make this function for a specific period /// </summary> public void CaculateVATDRaft() { VATDraftModel = new VATDraftModel(); Invoices = IoC.ClientDataStore.GetInvoices(PeriodQuarter, PeriodYear); VATCalc.WriteToVATModel(VATDraftModel, Invoices); }