public async Task <ActionResult> Edit(InvestmentDetail investmentDetail) { if (ModelState.IsValid) { var isRecurring = db.SubCategories.Where(x => x.SubCategoryId == investmentDetail.SubCategoryId).FirstOrDefault(); if (isRecurring.StartDate != null && isRecurring.EndDate != null) { var yearsDiff = DateTime.Today.Year - isRecurring.StartDate.Value.Year; if (yearsDiff == 0) { investmentDetail.MonthsPassed = DateTime.Today.Month - isRecurring.StartDate.Value.Month; } else { investmentDetail.MonthsPassed = (yearsDiff * 12) + (DateTime.Today.Month - isRecurring.StartDate.Value.Month); } } else if (isRecurring.Frequency == Utility.Enumerations.Frequency.Once) { investmentDetail.MonthsPassed = 1; } investmentDetail.AmountAccumulated = isRecurring.ExpectedAmount * investmentDetail.MonthsPassed; db.Entry(investmentDetail).State = EntityState.Modified; await db.SaveChangesAsync(); return(Redirect(Request.UrlReferrer.PathAndQuery)); //return RedirectToAction("Edit", "MonthlyPlanner", new { planId = investmentDetail.planId }); } return(RedirectToAction("ListIndex", "MonthlyPlanner")); }
public async Task <ActionResult> Create([Bind(Include = "InvestmentId,ActualAmount,SubCategoryId,DebitDate,ForMonth,FinancialYear")] InvestmentDetail investmentDetail) { if (ModelState.IsValid) { var isRecurring = db.SubCategories.Where(x => x.SubCategoryId == investmentDetail.SubCategoryId).FirstOrDefault(); if (isRecurring.StartDate != null && isRecurring.EndDate != null) { var yearsDiff = DateTime.Today.Year - isRecurring.StartDate.Value.Year; if (yearsDiff == 0) { investmentDetail.MonthsPassed = DateTime.Today.Month - isRecurring.StartDate.Value.Month; } else { investmentDetail.MonthsPassed = (yearsDiff * 12) + (DateTime.Today.Month - isRecurring.StartDate.Value.Month); } } else if (isRecurring.Frequency == Utility.Enumerations.Frequency.Once) { investmentDetail.MonthsPassed = 1; } investmentDetail.AmountAccumulated = isRecurring.ExpectedAmount * investmentDetail.MonthsPassed; db.InvestmentDetails.Add(investmentDetail); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(investmentDetail)); }
public async Task <ActionResult> DeleteConfirmed(int id) { InvestmentDetail investmentDetail = await db.InvestmentDetails.FindAsync(id); db.InvestmentDetails.Remove(investmentDetail); await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
protected void Button1_Click(object sender, EventArgs e) { InvestmentDetail app = new InvestmentDetail(); app.addInvestment(int.Parse(investment_required.Text), int.Parse(cash_required.Text), int.Parse(royalty.Text), training_assist.Text, int.Parse(franchiseid.Text), int.Parse(uid.Text)); msg.Visible = true; msg.Text = "Investment Detail added Submitted successfully"; msg.ForeColor = Color.Green; }
// GET: InvestmentDetails/Details/5 public async Task <ActionResult> Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } InvestmentDetail investmentDetail = await db.InvestmentDetails.FindAsync(id); if (investmentDetail == null) { return(HttpNotFound()); } return(View(investmentDetail)); }
protected void Button1_Click(object sender, EventArgs e) { try { InvestmentDetail editinvestment = new InvestmentDetail(); int id = Convert.ToInt16(Request.QueryString["id"]); editinvestment.editInvestment(int.Parse(investment_required.Text), int.Parse(cash_required.Text), int.Parse(royalty.Text), training_assist.Text, id); msg.Visible = true; msg.Text = "Franchise Updated successfully"; msg.ForeColor = Color.Green; } catch (Exception ex) { ltrmsg.Text = ex.Message; } }
protected void btnDelete_Click(object sender, EventArgs e) { if (Request.QueryString["id"] != null) { string data = "select * from investment_details where fid='" + Request.QueryString["id"] + "'"; SqlDataAdapter da = new SqlDataAdapter(data, db.con); DataSet ds = new DataSet(); da.Fill(ds, "application"); DataTable dt = ds.Tables[0]; DataRow dr = dt.Rows[0]; aid.Text = dr["id"].ToString(); } InvestmentDetail app = new InvestmentDetail(); app.deleteInvestment(Convert.ToInt32(aid.Text)); msg.Visible = true; msg.Text = "Data deleted"; msg.ForeColor = Color.Green; }
// GET: InvestmentDetails/Edit/5 public async Task <ActionResult> Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } InvestmentDetail investmentDetail = await db.InvestmentDetails.FindAsync(id); var items = db.SubCategories.Where(x => x.ParentCategoryId == 3).ToList(); if (items != null) { ViewBag.SubCategories = items; } if (investmentDetail == null) { return(HttpNotFound()); } return(View(investmentDetail)); }
/// <summary> /// Retrieve a security account for editing /// </summary> public void Detail(int id) { InvestmentDetail record = Database.QueryOne <InvestmentDetail>("Account.*, AcctType, SUM(Amount) AS CashBalance", "WHERE idAccount = " + id, "Account", "Journal"); record.CurrentBalance = record.CashBalance - Database.QueryOne("SELECT SUM(Amount) AS Future FROM Journal JOIN Document ON idDocument = DocumentId WHERE AccountId = " + id + " AND DocumentDate > " + Database.Quote(Utils.Today)).AsDecimal("Future"); record.Value = Database.QueryOne("SELECT Value FROM (" + AccountValue(Database, Utils.Today) + ") AS V WHERE ParentAccountid = " + id).AsDecimal("Value"); if (record.Id == null) { record.AccountTypeId = (int)AcctType.Investment; } else { checkAcctType(record.AccountTypeId, AcctType.Investment); Title += " - " + record.AccountName; } Record = record; }
public InvestmentDetail2 GetInvestmentDetail(int investmentId) { InvestmentDetail investmentDetail = db.InvestmentDetails.Where(x => x.InvestmentId == investmentId).FirstOrDefault(); if (investmentDetail == null) { throw new HttpResponseException(HttpStatusCode.NotFound); } InvestmentDetail2 returnDetail = new InvestmentDetail2(); returnDetail.Id = investmentDetail.Id; returnDetail.InvestmentId = investmentDetail.InvestmentId; returnDetail.CostBasisPerShare = investmentDetail.CostBasisPerShare; returnDetail.CurrentPrice = investmentDetail.CurrentPrice; returnDetail.Shares = investmentDetail.Shares; returnDetail.PurchaseDate = investmentDetail.PurchaseDate; returnDetail.CurrentValue = InvestmentHelper.GetCurrentValue(returnDetail.Shares, returnDetail.CurrentPrice); returnDetail.Term = InvestmentHelper.GetTerm(returnDetail.PurchaseDate); returnDetail.NetGainLoss = InvestmentHelper.GetNetGainLoss(returnDetail.CurrentValue, returnDetail.Shares, returnDetail.CostBasisPerShare); return(returnDetail); }
public ProfileController(UserLevel clubConnect, QuickVotes voteConnect, InvestmentDetail investConnect) { _clubConnect = clubConnect; _voteConnect = voteConnect; _investmentDetail = investConnect; }
public static void Initialize(IServiceProvider service) { using (var context = new InvestmentContext( service.GetRequiredService <DbContextOptions <InvestmentContext> >())) { Random rand = new Random(); var inv1 = new Investment() { Id = 1, UserId = 100, Name = "APPL", TimeOfPurchase = DateTime.Now }; var inv2 = new Investment() { Id = 2, UserId = 100, Name = "TSLA", TimeOfPurchase = DateTime.Now }; var inv3 = new Investment() { Id = 3, UserId = 100, Name = "NKE", TimeOfPurchase = DateTime.Now }; var inv1Detail = new InvestmentDetail() { SystemId = 100, InvestmentId = 1, Shares = rand.Next(1, 20), CostBasisPerShare = Math.Round(rand.NextDouble() * 500, 2), CurrentPrice = 0, CurrentValue = 0, Term = 0, NetValuation = 0 }; var inv2Detail = new InvestmentDetail() { SystemId = 101, InvestmentId = 2, Shares = rand.Next(1, 20), CostBasisPerShare = Math.Round(rand.NextDouble() * 500, 2), CurrentPrice = 0, CurrentValue = 0, Term = 0, NetValuation = 0 }; var inv3Detail = new InvestmentDetail() { SystemId = 102, InvestmentId = 3, Shares = rand.Next(1, 20), CostBasisPerShare = Math.Round(rand.NextDouble() * 500, 2), CurrentPrice = 0, CurrentValue = 0, Term = 1, NetValuation = 0 }; inv1Detail.CurrentPrice = InvestmentCalculator.GeneratePrice(inv1Detail.CostBasisPerShare); inv1Detail.CurrentValue = InvestmentCalculator.DetermineValue(inv1Detail.Shares, inv1Detail.CurrentPrice); inv1Detail.NetValuation = InvestmentCalculator.DetermineNetValuation(inv1Detail.CurrentValue, inv1Detail.Shares, inv1Detail.CostBasisPerShare); inv2Detail.CurrentPrice = InvestmentCalculator.GeneratePrice(inv2Detail.CostBasisPerShare); inv2Detail.CurrentValue = InvestmentCalculator.DetermineValue(inv2Detail.Shares, inv2Detail.CurrentPrice); inv2Detail.NetValuation = InvestmentCalculator.DetermineNetValuation(inv2Detail.CurrentValue, inv2Detail.Shares, inv2Detail.CostBasisPerShare); inv3Detail.CurrentPrice = InvestmentCalculator.GeneratePrice(inv3Detail.CostBasisPerShare); inv3Detail.CurrentValue = InvestmentCalculator.DetermineValue(inv3Detail.Shares, inv3Detail.CurrentPrice); inv3Detail.NetValuation = InvestmentCalculator.DetermineNetValuation(inv3Detail.CurrentValue, inv3Detail.Shares, inv3Detail.CostBasisPerShare); context.Investments.Add(inv1); context.Investments.Add(inv2); context.Investments.Add(inv3); context.InvestmentDetails.Add(inv1Detail); context.InvestmentDetails.Add(inv2Detail); context.InvestmentDetails.Add(inv3Detail); context.SaveChanges(); } }
public ActionResult Create(MonthlyPlannerViewModel model) { ViewBag.Years = new SelectList(Enumerable.Range(DateTime.Today.Year, 20).Select(x => new SelectListItem() { Text = x.ToString() + "-" + (x + 1).ToString(), Value = x.ToString() + "-" + (x + 1).ToString() }), "Value", "Text"); var plans = db.MonthlyPlans.ToList(); if (plans.Any(x => x.ForMonth == model.ForMonth && x.FinancialYear == model.FinancialYear)) { ViewBag.Message = "Plan for this month already exists."; return(View()); } var items = db.SubCategories.Where(x => x.ParentCategoryId == 1).ToList(); if (items != null) { ViewBag.SubCategories = items; } //generate default Income list var _defaultIncome = db.SubCategories.Where(x => x.ParentCategoryId == 1 && x.IsDefault == true).ToList(); var _incomeList = new List <IncomeDetail>(); foreach (var item in _defaultIncome) { var _addIncome = new IncomeDetail(); _addIncome.SubCategoryId = item.SubCategoryId; _addIncome.ActualAmount = 0; _addIncome.CreditDate = DateTime.Now; _addIncome.FinancialYear = model.FinancialYear; _addIncome.ForMonth = model.ForMonth; _addIncome.SubCategoryName = item.Name; db.IncomeDetails.Add(_addIncome); _incomeList.Add(_addIncome); } model.IncomeDetails = _incomeList; //generate default expenses var _defaultExpenses = db.SubCategories.Where(x => x.ParentCategoryId == 2 && x.IsDefault == true).ToList(); var _expenseList = new List <ExpenseDetail>(); foreach (var item in _defaultExpenses) { var _addExpense = new ExpenseDetail(); _addExpense.SubCategoryId = item.SubCategoryId; _addExpense.ActualAmount = 0; _addExpense.DebitDate = DateTime.Now; _addExpense.FinancialYear = model.FinancialYear; _addExpense.ForMonth = model.ForMonth; _addExpense.SubCategoryName = item.Name; db.ExpenseDetails.Add(_addExpense); _expenseList.Add(_addExpense); } model.ExpenseDetails = _expenseList; //default savings var _defaultSavings = db.SubCategories.Where(x => x.ParentCategoryId == 3 && x.IsDefault == true).ToList(); var _savingsList = new List <SavingsDetail>(); foreach (var item in _defaultSavings) { var _addSavings = new SavingsDetail(); _addSavings.SubCategoryId = item.SubCategoryId; _addSavings.ActualAmount = 0; _addSavings.Date = DateTime.Now; _addSavings.FinancialYear = model.FinancialYear; _addSavings.ForMonth = model.ForMonth; _addSavings.SubCategoryName = item.Name; db.SavingsDetails.Add(_addSavings); _savingsList.Add(_addSavings); } model.SavingsDetails = _savingsList; //default Investment var _defaultInvestments = db.SubCategories.Where(x => x.ParentCategoryId == 4 && x.IsDefault == true).ToList(); var _investList = new List <InvestmentDetail>(); foreach (var item in _defaultInvestments) { var _addInvestments = new InvestmentDetail(); _addInvestments.SubCategoryId = item.SubCategoryId; _addInvestments.ActualAmount = 0; _addInvestments.DebitDate = DateTime.Now; _addInvestments.FinancialYear = model.FinancialYear; _addInvestments.ForMonth = model.ForMonth; _addInvestments.SubCategoryName = item.Name; db.InvestmentDetails.Add(_addInvestments); _investList.Add(_addInvestments); } model.InvestmentDetails = _investList; db.SaveChanges(); var newPlan = new MonthlyPlan(); newPlan.ForMonth = model.ForMonth; newPlan.FinancialYear = model.FinancialYear; newPlan.CreatedOn = DateTime.Now; db.MonthlyPlans.Add(newPlan); db.SaveChanges(); //generate view var categories = db.Categories.Join(db.SubCategories, x => x.CategoryId, y => y.ParentCategoryId, (x, y) => new { x, y }).Select(y => new MonthlyPlannerViewModel { CategoryId = y.y.ParentCategoryId, CategoryName = y.x.CategoryName, SubCategoryId = y.y.SubCategoryId, ExpectedAmount = y.y.ExpectedAmount, SubCategoryName = y.y.Name }).ToList(); var _incomeData = model.IncomeDetails.Join(categories, x => x.SubCategoryId, y => y.SubCategoryId, (x, y) => new { x, y }).Select (y => new MonthlyPlannerViewModel { IncomeId = y.x.IncomeId, CategoryId = y.y.CategoryId, CategoryName = y.y.CategoryName, SubCategoryId = y.y.SubCategoryId, SubCategoryName = y.y.SubCategoryName, ActualAmount = y.x.ActualAmount, CreditDate = y.x.CreditDate, FinancialYear = y.x.FinancialYear, ForMonth = y.x.ForMonth, ExpectedAmount = y.y.ExpectedAmount }).ToList(); var _expenseData = model.ExpenseDetails.Join(categories, x => x.SubCategoryId, y => y.SubCategoryId, (x, y) => new { x, y }).Select (y => new MonthlyPlannerViewModel { ExpenseId = y.x.ExpenseId, CategoryId = y.y.CategoryId, CategoryName = y.y.CategoryName, SubCategoryId = y.y.SubCategoryId, SubCategoryName = y.y.SubCategoryName, ActualAmount = y.x.ActualAmount, DebitDate = y.x.DebitDate, FinancialYear = y.x.FinancialYear, ForMonth = y.x.ForMonth, ExpectedAmount = y.y.ExpectedAmount }).ToList(); var _savingsData = model.SavingsDetails.Join(categories, x => x.SubCategoryId, y => y.SubCategoryId, (x, y) => new { x, y }).Select (y => new MonthlyPlannerViewModel { SavingsId = y.x.SavingsId, CategoryId = y.y.CategoryId, CategoryName = y.y.CategoryName, SubCategoryId = y.y.SubCategoryId, SubCategoryName = y.y.SubCategoryName, ActualAmount = y.x.ActualAmount, DebitDate = y.x.Date, FinancialYear = y.x.FinancialYear, ForMonth = y.x.ForMonth, ExpectedAmount = y.y.ExpectedAmount }).ToList(); var _investmentData = model.InvestmentDetails.Join(categories, x => x.SubCategoryId, y => y.SubCategoryId, (x, y) => new { x, y }).Select (y => new MonthlyPlannerViewModel { InvestmentId = y.x.InvestmentId, CategoryId = y.y.CategoryId, CategoryName = y.y.CategoryName, SubCategoryId = y.y.SubCategoryId, SubCategoryName = y.y.SubCategoryName, ActualAmount = y.x.ActualAmount, DebitDate = y.x.DebitDate, FinancialYear = y.x.FinancialYear, ForMonth = y.x.ForMonth, ExpectedAmount = y.y.ExpectedAmount }).ToList(); model._MonthlyList = _incomeData; model._MonthlyList.AddRange(_expenseData); model._MonthlyList.AddRange(_savingsData); model._MonthlyList.AddRange(_investmentData); return(View("ViewPlanner", model)); }
public ClubController(BaseClubLevel clubBaseConnect, InvestmentDetail invDetailConnect) { _clubBaseConnect = clubBaseConnect; _invDetailConnect = invDetailConnect; }