Exemplo n.º 1
0
        public ActionResult ViewOuting(int outingid)
        {
            Outing outing = Outing.GetOuting(outingid);

            if (outing == null)
            {
                return(RedirectToAction("OutingSummary"));
            }

            // Get transaction summaries for this outing
            Dictionary <int, Transaction.PlayerTransactSummary> summary = Transaction.GetTransactionSummary(outingid);

            if (summary.Count == 0)
            {
                ViewBag.MoneyWinners = "";
                ViewBag.MoneyLosers  = "";
            }
            else
            {
                decimal maxamount = summary.Values.Max(x => x.TotalAmount);
                List <Transaction.PlayerTransactSummary> maxmoneyList =
                    summary.Values.Where(x => x.TotalAmount == maxamount).ToList();
                decimal minamount = summary.Values.Min(x => x.TotalAmount);
                List <Transaction.PlayerTransactSummary> minmoneyList =
                    summary.Values.Where(x => x.TotalAmount == minamount).ToList();
                ViewBag.MoneyWinners = string.Join(", ",
                                                   maxmoneyList.Select(x => $"{x.Player.ShortName} ({x.TotalAmount.Currency()})").ToArray());
                ViewBag.MoneyLosers = string.Join(", ",
                                                  minmoneyList.Select(x => $"{x.Player.ShortName} ({x.TotalAmount.Currency()})").ToArray());
            }
            ViewBag.PlayerTransactionSummary = summary;

            return(View("ViewOuting", outing));
        }
Exemplo n.º 2
0
        public ActionResult CommitOuting(int outingid)
        {
            Outing outing = Outing.GetOuting(outingid);

            if (outing == null || outing.Committed)
            {
                return(RedirectToAction("OutingList"));
            }

            // Check outing for errors before allowing commit.
            List <string> errors = Outing.CheckOuting(outing);

            if (errors.Count == 0)
            {
                Outing.Commit(outingid);
                outing.Committed = true;
            }
            else
            {
                foreach (string err in errors)
                {
                    ModelState.AddModelError(String.Empty, err);
                }
            }

            return(View("OutingView", outing));
        }
Exemplo n.º 3
0
        public ActionResult ScoreOuting(int outingid)
        {
            Outing outing = Outing.GetOuting(outingid);

            if (outing != null)
            {
                return(View("ScoreOuting", outing));
            }

            return(RedirectToAction("OutingList"));
        }
Exemplo n.º 4
0
        public ActionResult UnsettleOuting(int outingid)
        {
            Outing outing = Outing.GetOuting(outingid);

            if (outing == null || !outing.Settled)
            {
                return(RedirectToAction("OutingList"));
            }

            Outing.Unsettle(outingid);
            outing.Settled = false;

            return(View("OutingView", outing));
        }
Exemplo n.º 5
0
        public ActionResult EditOuting(int outingid)
        {
            Outing outing;

            if (outingid == 0)
            {
                // This is an add
                outing = new Outing
                {
                    OutingDate  = DateTime.Now,
                    HicValue    = (Decimal).25,
                    SkinValue   = (Decimal).25,
                    LowNetValue = (Decimal).25,
                    KPValue     = 1,
                    Season      = Season.CurrentSeason
                };
            }
            else
            {
                // This is an edit
                outing = Outing.GetOuting(outingid);
            }

            // Make sure there are at least 5 player entries per group for editing
            foreach (var grp in outing.GroupList)
            {
                for (var i = grp.PlayerList.Count; i < 5; i++)
                {
                    grp.PlayerList.Add(new PlayerOuting {
                        Player = new Player()
                    });
                }
            }


            // Get list of courses for the Course Selector
            ViewBag.CourseList = Course.GetCourses();

            // Put list of players in viewbag for use in dropdowns.
            InitPlayerSelections();

            return(View("EditOuting", outing));
        }