Exemplo n.º 1
0
        public TargetAmount Delete(int goalId)
        {
            TargetAmount dbEntry = context.TargetAmounts.FirstOrDefault(g => g.ID == goalId);

            if (dbEntry != null)
            {
                context.TargetAmounts.Remove(dbEntry);
                context.SaveChanges();
            }

            return(dbEntry);
        }
Exemplo n.º 2
0
        public ViewResult EditTarget(int id)
        {
            ViewBag.FormTitle = "Edit Target";

            TargetAmount g = _targetAmountRepo.TargetAmounts.Where(x => x.ID == id).FirstOrDefault();

            return(View(new TargetFormViewModel
            {
                Target = g,
                TargetTypes = new SelectList(_targetTypeRepo.TargetTypes.ToList(), "ID", "Name")
            }));
        }
        public ViewResult MonthlyReport(DateTime?date)
        {
            if (date == null)
            {
                date = DateTime.Now;
            }

            List <Donation>     donations = _repo.Donations.Where(e => e.Date.Month == date.Value.Month && e.Date.Year == date.Value.Year).ToList();
            List <PieChartData> data      = new List <PieChartData>();
            List <Charity>      cats      = _catRepo.Charities.ToList();

            foreach (var cat in cats)
            {
                data.Add(new PieChartData
                {
                    Category = cat.Name,
                    Data     = Convert.ToString(donations.Where(e => e.CharityID == cat.ID).Select(e => e.Amount).Sum())
                });
            }

            int daysInMonth = DateTime.DaysInMonth(date.Value.Year, date.Value.Month);
            List <LineChartData> lineData = new List <LineChartData>();
            double sum = 0;

            for (int i = 1; i <= daysInMonth; i++)
            {
                sum += donations.Where(e => e.Date.Day == i).Select(e => e.Amount).Sum();
                lineData.Add(new LineChartData
                {
                    XData = i.ToString(),
                    YData = Convert.ToString(sum)
                });
            }

            List <IncomeEntry> incomes = _incomeRepo.IncomeEntries.Where(i => i.Date.Month == date.Value.Month && i.Date.Year == date.Value.Year).ToList();

            TargetAmount donationsGoal         = _goalRepo.TargetAmounts.Where(g => g.TargetType.Name.Equals("Charity")).FirstOrDefault();
            decimal      targetDonationsAmount = Convert.ToDecimal(incomes.Select(i => i.Amount).Sum()) * donationsGoal.Percentage / 100;

            return(View(new DonationsListViewModel
            {
                Donations = donations,
                Date = date.Value,
                PieChartData = data,
                LineChartData = lineData,
                Total = Convert.ToDecimal(donations.Select(e => e.Amount).Sum()),
                DonationsGoal = targetDonationsAmount,
                DonationsPercentage = donationsGoal.Percentage
            }));
        }
 private void LoadTargetDist()
 {
     try
     {
         if (TargetID != -1)
         {
             if (targetAlreadyExists())
             {
                 btnSave.Text = "Edit";
             }
             else
             {
                 btnSave.Text = "Save";
             }
             BranchID = getBranchIDfromUser();
             SalesBranchTarget salesBranchTarget = getBranchTarget();//must load TargetID and BranchID first
             if (salesBranchTarget == null)
             {
                 TargetAmount     = 0;
                 TargetCurrencyID = -1;
             }
             else
             {
                 TargetAmount     = (double)salesBranchTarget.Amount;
                 TargetCurrencyID = salesBranchTarget.CurrencyID;
             }
             lblBranchTarget.Text = TargetAmount.ToString();
             //string targetIDs = getLast5YearsTargetIDs();
             string    salesMenIDs         = getAllSalesMenIDs();
             string    salesMenInBranchIDs = getMyBranchSalesMenIDs(salesMenIDs);
             DataTable userLastTargets     = getLastUserTargets(salesMenInBranchIDs, BranchID);
             if (salesMenIDs != "")
             {
                 LoadSalesMenTable(salesMenIDs, userLastTargets);
             }
         }
         else
         {
             ScriptManager.RegisterStartupScript(Page, typeof(Page),
                                                 "NoTarget", "alert('Target is invalid!');", true);
         }
     }
     catch (Exception ex)
     {
         //Logger.LogException(ex);
     }
 }
Exemplo n.º 5
0
        public IViewComponentResult Invoke()
        {
            DateTime date = DateTime.Now;

            List <Donation> donations = _repo.Donations.Where(e => e.Date.Month == date.Month && e.Date.Year == date.Year).ToList();

            List <IncomeEntry> incomes = _incomeRepo.IncomeEntries.Where(i => i.Date.Month == date.Month && i.Date.Year == date.Year).ToList();

            TargetAmount donationsGoal         = _goalRepo.TargetAmounts.Where(g => g.TargetType.Name.Equals("Charity")).FirstOrDefault();
            decimal      targetDonationsAmount = Convert.ToDecimal(incomes.Select(i => i.Amount).Sum()) * donationsGoal.Percentage / 100;

            return(View(new DonationsVsGoalViewModel
            {
                DonationsTotal = Math.Round(Convert.ToDecimal(donations.Select(e => e.Amount).Sum()), 2),
                DonationsGoal = targetDonationsAmount
            }));
        }
Exemplo n.º 6
0
 public void CopyFrom(Skill skill)
 {
     id                = skill.id;
     displayName       = skill.displayName;
     cooldown          = skill.cooldown;
     manaCost          = skill.manaCost;
     isPassive         = skill.isPassive;
     icon              = skill.icon;
     description       = skill.description;
     targetType        = skill.targetType;
     targetCount       = skill.targetCount;
     targetSite        = skill.targetSite;
     possiblePositions = skill.possiblePositions;
     possibleTargets   = skill.possibleTargets;
     SkillEffects      = skill.SkillEffects;
     RemainingCooldown = skill.RemainingCooldown;
 }
Exemplo n.º 7
0
 public void Save(TargetAmount g)
 {
     if (g.ID == 0)
     {
         context.TargetAmounts.Add(g);
     }
     else
     {
         TargetAmount dbEntry = context.TargetAmounts.FirstOrDefault(x => x.ID == g.ID);
         if (dbEntry != null)
         {
             dbEntry.Amount     = g.Amount;
             dbEntry.Percentage = g.Percentage;
             dbEntry.TypeID     = g.TypeID;
         }
     }
     context.SaveChanges();
 }
Exemplo n.º 8
0
    public void AddProgress()
    {
        if (CurrentAmount < TargetAmount)
        {
            CurrentAmount++;
        }

        if (TargetAmount != 0)
        {
            progressText.text = CurrentAmount.ToString() + "/" + TargetAmount.ToString();
        }

        if (CurrentAmount == TargetAmount) //task is complete
        {
            QuestManager.Current.DisplayCompleteTask(this);
            Completed         = true;
            canvasGroup.alpha = 0.5f;
        }

        else if (TargetAmount != 0) //if not complete, just show update
        {
            QuestManager.Current.DisplayUpdateTask(this);
        }
    }
Exemplo n.º 9
0
        public ViewResult MonthlyReport(DateTime?date)
        {
            if (date == null)
            {
                date = DateTime.Now;
            }

            List <Share> shares = _repo.Shares.Where(e => e.Date.Year == Convert.ToDateTime(date).Year ? (e.Date.Month == Convert.ToDateTime(date).Month ?
                                                                                                          e.Date.Day <= Convert.ToDateTime(date).Day : e.Date.Month <= Convert.ToDateTime(date).Month) : e.Date.Year <= Convert.ToDateTime(date).Year).ToList();
            List <PieChartData>   data   = new List <PieChartData>();
            List <StockViewModel> svm    = new List <StockViewModel>();
            List <Stock>          stocks = _stockRepo.Stocks.ToList();

            foreach (var stock in stocks)
            {
                try
                {
                    Dictionary <DateTime, double> stockData =
                        JsonConvert.DeserializeObject <Dictionary <DateTime, double> >(HttpContext.Session.GetString(stock.Ticker));

                    var sData = stockData.First();

                    List <Share> listOfShares = shares.Where(e => e.StockID == stock.ID).ToList();
                    int          totalShares  = listOfShares.Select(e => e.NumOfShares).Sum();

                    svm.Add(new StockViewModel()
                    {
                        Stock            = stock,
                        TotalNumOfShares = totalShares,
                        CurrentValue     = Convert.ToDouble(sData.Value),
                        TotalValue       = Convert.ToDouble(sData.Value) * (double)totalShares
                    });
                }
                catch (Exception e)
                {
                }
            }

            List <LineChartData> lineData = new List <LineChartData>();

            DateTime now          = DateTime.Now;
            int      day          = now.Day;
            int      month        = now.Month;
            int      year         = now.Year;
            double   currentValue = 0;

            DateTime currentDate = new DateTime(now.Year, now.Month, 1);

            while (currentDate <= now)
            {
                double   total = 0;
                DateTime valueDate;

                if (currentDate.DayOfWeek == DayOfWeek.Saturday)
                {
                    valueDate = currentDate.AddDays(-1);
                }
                else if (currentDate.DayOfWeek == DayOfWeek.Sunday)
                {
                    valueDate = currentDate.AddDays(-2);
                }
                else
                {
                    valueDate = currentDate;
                }

                foreach (var stock in stocks)
                {
                    Dictionary <DateTime, double> stockData =
                        JsonConvert.DeserializeObject <Dictionary <DateTime, double> >(HttpContext.Session.GetString(stock.Ticker));

                    var sData = stockData.Keys.Where(x => Convert.ToDateTime(x).Day == valueDate.Day &&
                                                     Convert.ToDateTime(x).Month == valueDate.Month && Convert.ToDateTime(x).Year == valueDate.Year).FirstOrDefault();

                    if (sData == DateTime.MinValue)
                    {
                        sData = stockData.Keys.First();
                    }

                    if (sData != null && sData != DateTime.MinValue)
                    {
                        List <Share> lineDataShares           = shares.Where(e => e.StockID == stock.ID).ToList();
                        List <Share> previousMonthsDataShares = lineDataShares.Where(e => e.Date.Year < currentDate.Year ||
                                                                                     e.Date.Year == currentDate.Year && e.Date.Month < currentDate.Month).ToList();
                        List <Share> currentMonthsDataShares = lineDataShares.Where(e => e.Date.Year == currentDate.Year && e.Date.Month == currentDate.Month &&
                                                                                    e.Date.Day <= currentDate.Day).ToList();
                        decimal totalShares = previousMonthsDataShares.Select(e => e.NumOfShares).Sum() + currentMonthsDataShares.Select(e => e.NumOfShares).Sum();
                        double  s           = Convert.ToDouble(stockData.GetValueOrDefault(sData));
                        double  stockValue  = s * (double)totalShares;
                        total += stockValue;
                    }
                }

                currentValue = total;

                lineData.Add(new LineChartData
                {
                    XData = currentDate.Day.ToString(),
                    YData = currentValue.ToString()
                });

                currentDate = currentDate.AddDays(1);
            }

            List <int> sectors = _stockRepo.Stocks.Select(x => x.SectorID).Distinct().ToList();

            foreach (var sector in sectors)
            {
                List <Share> sectorShares = shares.Where(e => e.Date.Year == currentDate.Year ? (e.Date.Month == currentDate.Month
                    ? e.Date.Day <= currentDate.Day : e.Date.Month <= currentDate.Month) : e.Date.Year <= currentDate.Year).ToList();
                int totalShares = sectorShares.Where(e => e.Stock.SectorID == sector).Select(e => e.NumOfShares).Sum();
                data.Add(new PieChartData
                {
                    Category = _sectorRepo.Sectors.Where(x => x.ID == sector).FirstOrDefault().Name,
                    Data     = Convert.ToString(totalShares)
                });
            }

            double       amountInvested = 0;
            List <Share> monthlyShares  = shares.Where(e => e.Date.Month == currentDate.Month && e.Date.Year == currentDate.Year).ToList();

            foreach (var s in monthlyShares)
            {
                amountInvested += (double)s.PurchasePrice * (double)s.NumOfShares;
            }

            List <IncomeEntry> incomes = _incomeRepo.IncomeEntries.Where(i => i.Date.Month == date.Value.Month && i.Date.Year == date.Value.Year).ToList();

            TargetAmount investmentGoal = _goalRepo.TargetAmounts.Where(g => g.TargetType.Name.Equals("Investments")).FirstOrDefault();
            TargetAmount stockGoal      = _goalRepo.TargetAmounts.Where(g => g.TargetType.Name.Equals("Stock")).FirstOrDefault();
            TargetAmount goldGoal       = _goalRepo.TargetAmounts.Where(g => g.TargetType.Name.Equals("Gold")).FirstOrDefault();
            TargetAmount bondGoal       = _goalRepo.TargetAmounts.Where(g => g.TargetType.Name.Equals("Bond")).FirstOrDefault();

            decimal targetInvestmentAmount = Convert.ToDecimal(incomes.Select(i => i.Amount).Sum()) * investmentGoal.Percentage / 100;

            return(View(new StockListViewModel
            {
                Stocks = svm,
                Date = date.Value,
                PieChartData = data,
                LineChartData = lineData,
                AmountInvested = (decimal)amountInvested,
                StockGoal = targetInvestmentAmount * stockGoal.Percentage / 100,
                GoldGoal = targetInvestmentAmount * goldGoal.Percentage / 100,
                BondGoal = targetInvestmentAmount * bondGoal.Percentage / 100,
                StockGoalPercentage = stockGoal.Percentage,
                GoldGoalPercentage = goldGoal.Percentage,
                BondGoalPercentage = bondGoal.Percentage
            }));
        }
Exemplo n.º 10
0
 public override bool chooseTargetAmount(Outcome value1, TargetAmount value2, Ability value3, Game value4)
 {
     Debug.Log("Player - chooseTargetAmount");
     return(false);
 }