public bool CreateUserAccount(string userName, string email, string password) { try { var user = new User { Email = email, Name = userName, Password = password }; using (var db = new Entities()) { db.User.Add(user); db.SaveChanges(); } return true; } catch (Exception exception) { Console.WriteLine(exception); return false; } }
public bool CreateBudget(string name, string password, int ownerId) { var budget = new Budget { Name = name, Password = password, Created = DateTime.Now, Owner = ownerId }; try { using (var db = new Entities()) { db.Budget.Add(budget); db.SaveChanges(); } return true; } catch (Exception exception) { Console.WriteLine(exception); return false; } }
public bool ChangePassword(string userEmail, string newPassword, string oldPassword) { try { using (var db = new Entities()) { db.User.Load(); var user = db.User.Local .FirstOrDefault(x => x.Email == userEmail); if (user == null || user.Password != oldPassword) { return false; } user.Password = newPassword; db.User.AddOrUpdate(user); db.SaveChanges(); } return true; } catch (Exception exception) { Console.WriteLine(exception); return false; } }
public bool AddTransaction(Transaction transaction) { try { using (var db = new Entities()) { db.TransactionHistory.Load(); db.Transaction.Load(); int lastTransactionHistoryId; int lastTransactionId = 0; decimal lastBalance = 0; if (db.Transaction.Local.Any()) { lastTransactionId = db.Transaction.Local .Max(x => x.Id); } if (db.TransactionHistory.Local.Any(x => x.Budget_ID == transaction.Budget_ID)) { lastTransactionHistoryId = db.TransactionHistory.Local .Where(x => x.Budget_ID == transaction.Budget_ID) .Max(x => x.Id); lastBalance = db.TransactionHistory.Local .Where(x => x.Budget_ID == transaction.Budget_ID) .First(x => x.Id == lastTransactionHistoryId).BalanceAfter; } var newItem = new TransactionHistory { Budget_ID = transaction.Budget_ID, Transaction_ID = lastTransactionId + 1 }; if (transaction.Type == TransactionTypeEnum.Income.ToString()) { newItem.BalanceAfter = lastBalance + transaction.Amount; } if (transaction.Type == TransactionTypeEnum.Expenditure.ToString()) { newItem.BalanceAfter = lastBalance - transaction.Amount; } db.Transaction.Add(transaction); db.TransactionHistory.Add(newItem); db.SaveChanges(); } return true; } catch (Exception exception) { Console.WriteLine(exception); return false; } }
public bool AddUserToBudget(int userId, int budgetId, int ownerId) { try { using (var db = new Entities()) { db.User.Load(); db.Budget.Load(); if (db.User.Local.All(x => x.Id != userId) || db.Budget.Local.All(x => x.Id != budgetId)) { return false; } var budget = db.Budget.Local.FirstOrDefault(x => x.Id == budgetId); if (budget == null || budget.Owner != ownerId) { return false; } db.UserBudgets.Add(new UserBudgets { Budget_ID = budgetId, User_ID = userId }); db.SaveChanges(); } return true; } catch (Exception exception) { Console.WriteLine(exception); return false; } }