示例#1
0
        public CompPoints GetCompPoints(CompScore compScr)
        {
            CompPoints cPoints     = new CompPoints();
            int        Hcap        = Convert.ToInt32(compScr.PlayerHcap);
            string     teeColour   = compScr.TeeColour;
            int        courseID    = compScr.CourseID;
            int        compScoreID = compScr.CompScoreID;

            cPoints.CompScoreID = compScoreID;
            // Calculate the Points for each Hole
            cPoints.Hole1       = calculatePointsScore(Hcap, cInfo.GetHoleSI(1, courseID, teeColour), Convert.ToInt32(compScr.Hole1), cInfo.GetHolePar(1, courseID, teeColour), compScoreID, 1);
            cPoints.Hole2       = calculatePointsScore(Hcap, cInfo.GetHoleSI(2, courseID, teeColour), Convert.ToInt32(compScr.Hole2), cInfo.GetHolePar(2, courseID, teeColour), compScoreID, 2);
            cPoints.Hole3       = calculatePointsScore(Hcap, cInfo.GetHoleSI(3, courseID, teeColour), Convert.ToInt32(compScr.Hole3), cInfo.GetHolePar(3, courseID, teeColour), compScoreID, 3);
            cPoints.Hole4       = calculatePointsScore(Hcap, cInfo.GetHoleSI(4, courseID, teeColour), Convert.ToInt32(compScr.Hole4), cInfo.GetHolePar(4, courseID, teeColour), compScoreID, 4);
            cPoints.Hole5       = calculatePointsScore(Hcap, cInfo.GetHoleSI(5, courseID, teeColour), Convert.ToInt32(compScr.Hole5), cInfo.GetHolePar(5, courseID, teeColour), compScoreID, 5);
            cPoints.Hole6       = calculatePointsScore(Hcap, cInfo.GetHoleSI(6, courseID, teeColour), Convert.ToInt32(compScr.Hole6), cInfo.GetHolePar(6, courseID, teeColour), compScoreID, 6);
            cPoints.Hole7       = calculatePointsScore(Hcap, cInfo.GetHoleSI(7, courseID, teeColour), Convert.ToInt32(compScr.Hole7), cInfo.GetHolePar(7, courseID, teeColour), compScoreID, 7);
            cPoints.Hole8       = calculatePointsScore(Hcap, cInfo.GetHoleSI(8, courseID, teeColour), Convert.ToInt32(compScr.Hole8), cInfo.GetHolePar(8, courseID, teeColour), compScoreID, 8);
            cPoints.Hole9       = calculatePointsScore(Hcap, cInfo.GetHoleSI(9, courseID, teeColour), Convert.ToInt32(compScr.Hole9), cInfo.GetHolePar(9, courseID, teeColour), compScoreID, 9);
            cPoints.Hole10      = calculatePointsScore(Hcap, cInfo.GetHoleSI(10, courseID, teeColour), Convert.ToInt32(compScr.Hole10), cInfo.GetHolePar(10, courseID, teeColour), compScoreID, 10);
            cPoints.Hole11      = calculatePointsScore(Hcap, cInfo.GetHoleSI(11, courseID, teeColour), Convert.ToInt32(compScr.Hole11), cInfo.GetHolePar(11, courseID, teeColour), compScoreID, 11);
            cPoints.Hole12      = calculatePointsScore(Hcap, cInfo.GetHoleSI(12, courseID, teeColour), Convert.ToInt32(compScr.Hole12), cInfo.GetHolePar(12, courseID, teeColour), compScoreID, 12);
            cPoints.Hole13      = calculatePointsScore(Hcap, cInfo.GetHoleSI(13, courseID, teeColour), Convert.ToInt32(compScr.Hole13), cInfo.GetHolePar(13, courseID, teeColour), compScoreID, 13);
            cPoints.Hole14      = calculatePointsScore(Hcap, cInfo.GetHoleSI(14, courseID, teeColour), Convert.ToInt32(compScr.Hole14), cInfo.GetHolePar(14, courseID, teeColour), compScoreID, 14);
            cPoints.Hole15      = calculatePointsScore(Hcap, cInfo.GetHoleSI(15, courseID, teeColour), Convert.ToInt32(compScr.Hole15), cInfo.GetHolePar(15, courseID, teeColour), compScoreID, 15);
            cPoints.Hole16      = calculatePointsScore(Hcap, cInfo.GetHoleSI(16, courseID, teeColour), Convert.ToInt32(compScr.Hole16), cInfo.GetHolePar(16, courseID, teeColour), compScoreID, 16);
            cPoints.Hole17      = calculatePointsScore(Hcap, cInfo.GetHoleSI(17, courseID, teeColour), Convert.ToInt32(compScr.Hole17), cInfo.GetHolePar(17, courseID, teeColour), compScoreID, 17);
            cPoints.Hole18      = calculatePointsScore(Hcap, cInfo.GetHoleSI(18, courseID, teeColour), Convert.ToInt32(compScr.Hole18), cInfo.GetHolePar(18, courseID, teeColour), compScoreID, 18);
            cPoints.OutPoints   = cPoints.Hole1 + cPoints.Hole2 + cPoints.Hole3 + cPoints.Hole4 + cPoints.Hole5 + cPoints.Hole6 + cPoints.Hole7 + cPoints.Hole8 + cPoints.Hole9;
            cPoints.InPoints    = cPoints.Hole10 + cPoints.Hole11 + cPoints.Hole12 + cPoints.Hole13 + cPoints.Hole14 + cPoints.Hole15 + cPoints.Hole16 + cPoints.Hole17 + cPoints.Hole18;
            cPoints.TotalPoints = cPoints.OutPoints + cPoints.InPoints;

            return(cPoints);
        }
示例#2
0
        public string GetScoreCardImage(int compScoreID)
        {
            string    scardImage  = "";
            CompScore compScore   = db.CompScores.Find(compScoreID);
            int       ImageID     = Convert.ToInt32(compScore.ImageID);
            var       scardImages = from ci in db.ScoreCardImages
                                    where ci.ImageID == ImageID
                                    select ci;

            foreach (var item in scardImages)
            {
                if (item.CardImage != null)
                {
                    scardImage = item.CardImage;
                }
            }
            return(scardImage);
        }
示例#3
0
        public int calculatePointsScore(int Hcap, int SI, int strokes, int par, int compScoreID, int holeNumber)
        {
            // Calculate the points for this hole depending on Player handicap, Hole SI, Strokes and Hole Par
            int pointsScore = 0;

            if (strokes == 0)
            {
                // Calculate and save stokes to produce zero points for this hole
                strokes = par + 2;
                if (SI <= Hcap)
                {
                    strokes = strokes + 1;
                }
                if (Hcap > 18 && SI <= (Hcap - 18))
                {
                    strokes = strokes + 1;
                }
                // Save calculated strokes
                if (compScoreID != 0)
                {
                    CompScore cmpScore = db.CompScores.Find(compScoreID);
                    switch (holeNumber)
                    {
                    case 1:
                        cmpScore.Hole1 = strokes;
                        break;

                    case 2:
                        cmpScore.Hole2 = strokes;
                        break;

                    case 3:
                        cmpScore.Hole3 = strokes;
                        break;

                    case 4:
                        cmpScore.Hole4 = strokes;
                        break;

                    case 5:
                        cmpScore.Hole5 = strokes;
                        break;

                    case 6:
                        cmpScore.Hole6 = strokes;
                        break;

                    case 7:
                        cmpScore.Hole7 = strokes;
                        break;

                    case 8:
                        cmpScore.Hole8 = strokes;
                        break;

                    case 9:
                        cmpScore.Hole9 = strokes;
                        break;

                    case 10:
                        cmpScore.Hole10 = strokes;
                        break;

                    case 11:
                        cmpScore.Hole11 = strokes;
                        break;

                    case 12:
                        cmpScore.Hole12 = strokes;
                        break;

                    case 13:
                        cmpScore.Hole13 = strokes;
                        break;

                    case 14:
                        cmpScore.Hole14 = strokes;
                        break;

                    case 15:
                        cmpScore.Hole15 = strokes;
                        break;

                    case 16:
                        cmpScore.Hole16 = strokes;
                        break;

                    case 17:
                        cmpScore.Hole17 = strokes;
                        break;

                    case 18:
                        cmpScore.Hole18 = strokes;
                        break;
                    }
                    db.Entry(cmpScore).State = EntityState.Modified;
                    db.SaveChanges();
                }
            }

            if (strokes > 0)
            {
                // Calculate the net strokes for this hole
                if (SI <= Hcap)
                {
                    strokes = strokes - 1;
                }
                if (Hcap > 18 && SI <= (Hcap - 18))
                {
                    strokes = strokes - 1;
                }

                // Calculate the points for this hole
                int netScore = strokes - par;
                switch (netScore)
                {
                case 0:
                    pointsScore = 2;
                    break;

                case -1:
                    pointsScore = 3;
                    break;

                case -2:
                    pointsScore = 4;
                    break;

                case -3:
                    pointsScore = 5;
                    break;

                case -4:
                    pointsScore = 6;
                    break;

                case 1:
                    pointsScore = 1;
                    break;

                default:
                    pointsScore = 0;
                    break;
                }
            }
            return(pointsScore);
        }
示例#4
0
        public int BackScore(int compScoreID)
        {
            CompScore cScore    = db.CompScores.Find(compScoreID);
            int       courseID  = cScore.CourseID;
            string    teeColour = cScore.TeeColour;

            // check for zero score entered on each hole
            int?hole10 = cScore.Hole10;

            if (cScore.Hole10 == 0)
            {
                hole10 = courseInfo.GetHolePar(10, courseID, teeColour) + 3;
            }
            int?hole11 = cScore.Hole11;

            if (cScore.Hole11 == 0)
            {
                hole11 = courseInfo.GetHolePar(11, courseID, teeColour) + 3;
            }
            int?hole12 = cScore.Hole12;

            if (cScore.Hole12 == 0)
            {
                hole12 = courseInfo.GetHolePar(12, courseID, teeColour) + 3;
            }
            int?hole13 = cScore.Hole13;

            if (cScore.Hole13 == 0)
            {
                hole13 = courseInfo.GetHolePar(13, courseID, teeColour) + 3;
            }
            int?hole14 = cScore.Hole14;

            if (cScore.Hole14 == 0)
            {
                hole14 = courseInfo.GetHolePar(14, courseID, teeColour) + 3;
            }
            int?hole15 = cScore.Hole15;

            if (cScore.Hole15 == 0)
            {
                hole15 = courseInfo.GetHolePar(15, courseID, teeColour) + 3;
            }
            int?hole16 = cScore.Hole16;

            if (cScore.Hole16 == 0)
            {
                hole16 = courseInfo.GetHolePar(16, courseID, teeColour) + 3;
            }
            int?hole17 = cScore.Hole17;

            if (cScore.Hole17 == 0)
            {
                hole17 = courseInfo.GetHolePar(17, courseID, teeColour) + 3;
            }
            int?hole18 = cScore.Hole18;

            if (cScore.Hole18 == 0)
            {
                hole18 = courseInfo.GetHolePar(18, courseID, teeColour) + 3;
            }

            int backScoreTotal = Convert.ToInt32(hole10 + hole11 + hole12 + hole13 + hole14 + hole15 + hole16 + hole17 + hole18);

            return(backScoreTotal);
        }
示例#5
0
        public int FrontScore(int compScoreID)
        {
            CompScore cScore    = db.CompScores.Find(compScoreID);
            int       courseID  = cScore.CourseID;
            string    teeColour = cScore.TeeColour;

            // check for zero score entered on each hole
            int?hole1 = cScore.Hole1;

            if (cScore.Hole1 == 0)
            {
                hole1 = courseInfo.GetHolePar(1, courseID, teeColour) + 3;
            }
            int?hole2 = cScore.Hole2;

            if (cScore.Hole2 == 0)
            {
                hole2 = courseInfo.GetHolePar(2, courseID, teeColour) + 3;
            }
            int?hole3 = cScore.Hole3;

            if (cScore.Hole3 == 0)
            {
                hole3 = courseInfo.GetHolePar(3, courseID, teeColour) + 3;
            }
            int?hole4 = cScore.Hole4;

            if (cScore.Hole4 == 0)
            {
                hole4 = courseInfo.GetHolePar(4, courseID, teeColour) + 3;
            }
            int?hole5 = cScore.Hole5;

            if (cScore.Hole5 == 0)
            {
                hole5 = courseInfo.GetHolePar(5, courseID, teeColour) + 3;
            }
            int?hole6 = cScore.Hole6;

            if (cScore.Hole6 == 0)
            {
                hole6 = courseInfo.GetHolePar(6, courseID, teeColour) + 3;
            }
            int?hole7 = cScore.Hole7;

            if (cScore.Hole7 == 0)
            {
                hole7 = courseInfo.GetHolePar(7, courseID, teeColour) + 3;
            }
            int?hole8 = cScore.Hole8;

            if (cScore.Hole8 == 0)
            {
                hole8 = courseInfo.GetHolePar(8, courseID, teeColour) + 3;
            }
            int?hole9 = cScore.Hole9;

            if (cScore.Hole9 == 0)
            {
                hole9 = courseInfo.GetHolePar(9, courseID, teeColour) + 3;
            }

            int frontScoreTotal = Convert.ToInt32(hole1 + hole2 + hole3 + hole4 + hole5 + hole6 + hole7 + hole8 + hole9);

            return(frontScoreTotal);
        }