//Berechnet for ganze Jahr public async Task BalanceForYearAsync() { var uNFI = new UserNumberFormat(); decimal?summeCostsTemp, summeIncomesTemp; using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeIncomesTemp = await dataBase.Incomes.AsNoTracking() .Select(c => new { price = (decimal?)Decimal.Parse(c.PreisOfIncome, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfIncome }) .Where(a => a.datum.Year == _year) .Select(a => a.price).SumAsync(); } using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeCostsTemp = await dataBase.Costs.AsNoTracking() .Select(c => new { price = (decimal?)Decimal.Parse(c.PreisOfCost, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfCost }) .Where(a => a.datum.Year == _year) .Select(a => a.price).SumAsync(); } _ausgabeForYear = (decimal)summeCostsTemp; _einnahmeForYear = (decimal)summeIncomesTemp; BalanceForYearProperty = _einnahmeForYear + _ausgabeForYear; }
public object Convert(object value, Type targetType, object parameter, string language) { decimal summeCosts, summeIncomes; var homeWithDaten = new MonatYearDaten(); summeCosts = homeWithDaten.GetWertAusgabe(); summeIncomes = homeWithDaten.GetWertEinnahme(); var uNFI = new UserNumberFormat(); Balance balance = value as Balance; ObservableCollection <Balance> data = new ObservableCollection <Balance>(); { Balance einnahmen = new Balance() { Name = EinnahmenAusgaben.Einnahmen.ToString(), Price = summeIncomes, Percentage = homeWithDaten.GetPercentageEinnahme().ToString("P", uNFI.GetNFI()) }; data.Add(einnahmen); Balance ausgaben = new Balance() { Name = EinnahmenAusgaben.Ausgaben.ToString(), Price = summeCosts, Percentage = homeWithDaten.GetPercentageAusgabe().ToString("P", uNFI.GetNFI()) }; data.Add(ausgaben); } return(data); }
/// <summary> /// Get summe one item undercategory /// </summary> /// <param name="category"></param> /// <param name="nameUnderCategory"></param> /// <param name="monat"></param> /// <param name="year"></param> /// <returns></returns> internal async Task <decimal> GetSummeAsync(string category, string nameUnderCategory, int monat, int year) { var uNFI = new UserNumberFormat(); decimal?summeTemp; //decimal summe; using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeTemp = await dataBase.Costs.AsNoTracking() .Select(c => new { nameCategory = c.CategoryOfCost, nameUnderCategory = c.CategoryUnderOfCost, price = (decimal?)Decimal.Parse(c.PreisOfCost, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfCost }) .Where(a => a.datum.Month == monat & a.datum.Year == year && a.nameCategory == category && a.nameUnderCategory == nameUnderCategory) .Select(a => a.price).SumAsync(); } _summeItem = (decimal)summeTemp; //summe = (decimal)summeTemp; return(_summeItem); }
public HomePage_Mobile() { InitializeComponent(); datenViewModel = new MonatYearDaten(); this.Loaded += HomePage_Loaded; uNFI = new UserNumberFormat(); }
public object Convert(object value, Type targetType, object parameter, string language) { if (value == null) return null; string wert = value.ToString(); var uNFI = new UserNumberFormat(); decimal item; Decimal.TryParse(wert, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI(), out item); return item.ToString("C", uNFI.GetNFI()); }
internal string GetPercentage() { UserNumberFormat uNFI = new UserNumberFormat(); if (_summeItem == 0) { return((_summeItem * -1).ToString("P", uNFI.GetNFI())); } else { return((_summeItem / _summeItems).ToString("P", uNFI.GetNFI())); } }
private async Task <decimal> SummeRechnenAsync(string category, int monat, int year) { var uNFI = new UserNumberFormat(); decimal?summeTemp; if (category == CategoryNamenIncomen.Salary.ToString() || category == CategoryNamenIncomen.OtherIncomes.ToString()) { using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeTemp = await dataBase.Incomes.AsNoTracking() .Select(c => new { nameCategory = c.CategoryOfIncome, price = (decimal?)Decimal.Parse(c.PreisOfIncome, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfIncome }) .Where(a => a.datum.Month == monat & a.datum.Year == year && a.nameCategory == category) .Select(a => a.price).SumAsync(); } } else { using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeTemp = await dataBase.Costs.AsNoTracking() .Select(c => new { nameCategory = c.CategoryOfCost, price = (decimal?)Decimal.Parse(c.PreisOfCost, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfCost }) .Where(a => a.datum.Month == monat & a.datum.Year == year && a.nameCategory == category) .Select(a => a.price).SumAsync(); } } _summeItem = (decimal)summeTemp; return(_summeItem); }
private async Task DeleteItemsBtns(ListView listView) { if (listView.SelectedIndex != -1) { List <ListBalance> selectedItems = new List <ListBalance>(); //Um die Deleten vom ListView moglich machen var loader = new Windows.ApplicationModel.Resources.ResourceLoader(); foreach (ListBalance balance in listView.SelectedItems) { selectedItems.Add(balance); } var dialogContent = new ContentDialog() { FontFamily = new FontFamily("Segoe Print"), Background = new SolidColorBrush(Color.FromArgb(255, 69, 184, 234)), Foreground = new SolidColorBrush(Colors.White), Title = loader.GetString("TtlDelete"), Content = loader.GetString("DialogContent"), PrimaryButtonText = loader.GetString("Yes"), SecondaryButtonText = loader.GetString("No") }; ContentDialogResult result = await dialogContent.ShowAsync();; foreach (ListBalance balance in selectedItems) { switch (balance.CostsOrIncomes) { #region Costs Case case "Cost": if (result == ContentDialogResult.Primary) { using (var db = new Store.DataBase.DataBaseEF.DataBaseFile()) { var name = (from nameCosts in db.Costs where nameCosts.CostId == balance.ID select nameCosts).FirstOrDefault(); db.Costs.Remove(name); db.SaveChanges(); } } break; #endregion #region Incomes Case case "Income": if (result == ContentDialogResult.Primary) { using (var db = new Store.DataBase.DataBaseEF.DataBaseFile()) { var name = (from nameIncomes in db.Incomes where nameIncomes.IncomeId == balance.ID select nameIncomes).FirstOrDefault(); db.Incomes.Remove(name); db.SaveChanges(); } } break; #endregion default: break; } } if (result == ContentDialogResult.Primary) { var uNFI = new UserNumberFormat(); await datenViewModel.BalanceForYearAsync(); await datenViewModel.CostIncomeSummeAsync(); } } }
public async Task CostIncomeSummeAsync() { var uNFI = new UserNumberFormat(); decimal?summeCostsTemp, summeIncomesTemp; using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeIncomesTemp = await dataBase.Incomes.AsNoTracking() .Select(c => new { price = (decimal?)Decimal.Parse(c.PreisOfIncome, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfIncome }) .Where(a => a.datum.Month == _monat & a.datum.Year == _year) .Select(a => a.price).SumAsync(); } using (var dataBase = new Store.DataBase.DataBaseEF.DataBaseFile()) { summeCostsTemp = await dataBase.Costs.AsNoTracking() .Select(c => new { price = (decimal?)Decimal.Parse(c.PreisOfCost, NumberStyles.Number | NumberStyles.AllowCurrencySymbol, uNFI.GetNFI()), datum = c.DateOfCost }) .Where(a => a.datum.Month == _monat & a.datum.Year == _year) .Select(a => a.price).SumAsync(); } _ausgabe = (decimal)summeCostsTemp; _einnahme = (decimal)summeIncomesTemp; _balanceEinnahmeAusgabe = _einnahme + _ausgabe; if (_ausgabe == 0 | _einnahme == 0) { if (_ausgabe == 0) { _percentAusgabe = 0; } else { _percentAusgabe = (_ausgabe * -1) / (_einnahme - _ausgabe); } if (_einnahme == 0) { _percentEinnahme = 0; } else { _percentEinnahme = _einnahme / (_einnahme - _ausgabe); } } else { _percentEinnahme = _einnahme / (_einnahme - _ausgabe); _percentAusgabe = (_ausgabe * -1) / (_einnahme - _ausgabe); } }