// POST: api/Group
 public HttpResponseMessage Post(Group group)
 {
     group = groupRepository.Create(group);
     var response = Request.CreateResponse<DTOGroup>(HttpStatusCode.Created, dtoGroupConverter.Convert(group));
     //string uri = Url.Link("DefaultApi", new { id = group.Id });
     //response.Headers.Location = new Uri(uri);
     return response;
 }
        public void Test_if_group_faills_if_teams_is_null()
        {

            Tournament tournament1 = new Tournament() { Id = 1, Name = "Warhammer" };
            Group group = new Group() { Id = 1, Name = "A", Tournament = tournament1 };
            DTOGroupConverter dtogroupConverter = new DTOGroupConverter();
            DTOGroup dtogoup = dtogroupConverter.Convert(group);

        }
        public void Test_if_tournament_can_have_two_groups()
        {
            int id = 1;
            string name = "Grp 1";
            Group group = new Group() { Id = id, Name = name };
            Group group2 = new Group() { Id = id, Name = name };
            tournament.Groups = new List<Group>() { group, group2 };
            Assert.NotNull(tournament.Groups);
            Assert.Greater(tournament.Groups.Count, 0);
            Assert.AreEqual(tournament.Groups[0], group);
            Assert.AreEqual(tournament.Groups[1], group2);

        }
示例#4
0
 public void Test_if_a_group_can_be_added_to_a_team()
 {
     int id = 1;
     string name = "Grp 1";
     Group group = new Group() { Id = id, Name = name };
     team.Groups = new List<Group>()
         {
             new Group() { Id = 1, Name = "Team One" },
             new Group() { Id = 2, Name = "Team Two" }
         };
     Assert.NotNull(team.Groups);
     Assert.AreEqual(team.Id, group.Id);
        
 }
        public void Test_if_Group_with_team_and_tournaments_can_be_converted_to_DTO()
        {
            Player player = new Player() { Id = 1, Name = "Søren" };
            Player player2 = new Player() { Id = 2, Name = "Lars" };
            Player player3 = new Player() { Id = 3, Name = "Peter" };
            Player player4 = new Player() { Id = 4, Name = "Poul" };

            List<Player> PlayersForTeam1 = new List<Player>() { player, player2 };
            List<Player> PlayersForTeam2 = new List<Player>() { player3, player4 };

            Team Team1 = new Team() { Id = 1, Name = "Awesome", Players = PlayersForTeam1 };
            Team Team2 = new Team() { Id = 1, Name = "More Awesome", Players = PlayersForTeam2 };

            Tournament tournament1 = new Tournament()
            {
                Id = 1,
                Name = "Warhammer",
                Game = new Game()
                {
                    Id = 1,
                    Name = "Wars",
                    Genre = new Genre() { Id = 1, Name = "role" }
                },
                StartDate = DateTime.Today,
                TournamentType = new TournamentType()
                {
                    Id = 1,
                    Type = "2vs2"
                }
            };
            List<Team> teams = new List<Team> { Team1, Team2 };

            Group group = new Group() { Id = 1, Name = "A", Teams = teams, Tournament = tournament1 };

            DTOGroupConverter dtogroupConverter = new DTOGroupConverter();
            DTOGroup dtoGroup = dtogroupConverter.Convert(group);

            Assert.IsNotNull(teams);
            Assert.AreEqual(dtoGroup.Id, 1);
            Assert.AreSame(Team1.Name, dtoGroup.DtoTeams[0].Name);
            Assert.Greater(dtoGroup.DtoTeams.Count, 0);
            Assert.AreEqual(dtoGroup.DtoTeams[0].Id, group.Teams[0].Id);
            Assert.AreEqual(dtoGroup.DtoTeams[1].Id, group.Teams[1].Id);
            Assert.AreEqual(dtoGroup.DtoTeams[0].Name, group.Teams[0].Name);
            Assert.AreEqual(dtoGroup.DtoTeams[1].Name, group.Teams[1].Name);
            Assert.AreEqual(dtoGroup.DtoTournament.Id, tournament1.Id);
            Assert.AreEqual(dtoGroup.DtoTournament.Name, tournament1.Name);
            Assert.AreEqual(dtoGroup.DtoTournament.StartDate, tournament1.StartDate);
        }
示例#6
0
        protected void btnSaveConfirmed_Click(object sender, EventArgs e)
        {
            try
            {
                Entities.Group group = new Entities.Group();
                group.ID         = Convert.ToInt32(hdGroupId.Value);
                group.Name       = txtName.Text.Trim();
                group.Order      = Convert.ToInt32(txtOrder.Text.Trim());
                group.Status     = Convert.ToInt32(ddlStatus.SelectedValue);
                group.CompanyId  = CPublic.GetCompanyID();
                group.CreatedBy  = CPublic.GetuserID();
                group.ModifiedBy = CPublic.GetuserID();

                OutputMessage result = null;
                if (group.ID == 0)
                {
                    result = group.Save();
                    if (result.Success)
                    {
                        Reset();
                        ClientScript.RegisterStartupScript(this.GetType(), "message", "successAlert('" + result.Message + "');", true);
                    }
                    else
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "message", "$('#add-item-portlet').addClass('in');errorAlert('" + result.Message + "')", true);
                    }
                }
                else
                {
                    result = group.Update();
                    if (result.Success)
                    {
                        Reset();
                        ClientScript.RegisterStartupScript(this.GetType(), "message", "successAlert('" + result.Message + "');", true);
                    }
                    else
                    {
                        ClientScript.RegisterStartupScript(this.GetType(), "message", "$('#add-item-portlet').addClass('in');errorAlert('" + result.Message + "')", true);
                    }
                }
            }
            catch (Exception ex)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "message", "$('#add-item-portlet').addClass('in');errorAlert('" + ex.Message + " ')", true);
            }
        }
 public void Test_if_tournament_can_be_converted_with_groups_and_type_and_a_game()
 {
     DTOTournament dtoTournament = new DTOTournament();
     TournamentType tournamentType = new TournamentType() { Id = 1, Type = "2vs2" };
     Genre genre = new Genre() { Id = 1, Name = "wars"};
     Player player1 = new Player() { Id = 1, Name = "Hans"};
     Player player2 = new Player() {Id = 2, Name = "Ole"};
     Player player3 = new Player() { Id = 3, Name = "Lars" };
     Player player4 = new Player() { Id = 4, Name = "Peter" };
     List<Player> players1 = new List<Player>() {player1, player2};
     List<Player> players2 = new List<Player>() { player3, player4 };
     Team team1 = new Team() {Id = 1, Name = "team1", Players = players1, Win = 2, Draw = 2, Loss = 1};
     Team team2 = new Team() { Id = 1, Name = "team2", Players = players2, Win = 3, Draw = 0, Loss = 1 };
     List<Team> teams1 = new List<Team>() {team1, team2};
     Group group1 = new Group() { Id = 1, Name = "Hans og Ole", Teams = teams1};
     Group group2 = new Group() { Id = 1, Name = "Lars og Peter", Teams = teams1};
     List<Group> groups = new List<Group>() {group1, group2};
     Game game = new Game() { Id = 1, Name = "Warhammer", Genre = genre};
     Match match = new Match() {Id = 1, AwayTeam = team1, HomeTeam = team2, Round = "blabla"};
     DTOTournamentConverter dtoTournamentConverter = new DTOTournamentConverter();
     Tournament tournament = new Tournament()
     {
         Id = 1,
         Name = "Tournament One",
         StartDate = DateTime.Today,
         TournamentType = tournamentType,
         Groups = groups,
         Game = game,
         Matches = new List<Match>() { match}
     };
     
     dtoTournament = dtoTournamentConverter.Convert(tournament);
     Assert.IsNotNull(tournament.TournamentType);
     Assert.AreEqual(tournament.Id, dtoTournament.Id);
     Assert.AreEqual(tournamentType.Id, dtoTournament.DTOTournamentType.Id);
     Assert.IsNotNull(groups);
     Assert.IsNotNull(dtoTournament.DtoGroups);
     Assert.AreEqual(groups.Count, dtoTournament.DtoGroups.Count);
     Assert.IsNotNull(dtoTournament.DtoGame);
     Assert.AreEqual(dtoTournament.DtoGame.Id, game.Id);
 }
        public void SetUp()
        {

            var config = new HttpConfiguration();
            var request = new HttpRequestMessage(HttpMethod.Post, "http://dragonapi.devjakobsen.dk/api/team");
            var route = config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{id}");
            var routeData = new HttpRouteData(route, new HttpRouteValueDictionary { { "controller", "team" } });


            teamController = new TeamController();
            UrlHelper urlHelper = new UrlHelper(request);
            teamController.ControllerContext = new HttpControllerContext(config, routeData, request);
            teamController.Request = request;
            teamController.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = config;
            teamController.Request.Properties[HttpPropertyKeys.HttpRouteDataKey] = routeData;
            teamController.Url = urlHelper;
            
            var response = playerController.Get(1);
            var contentResult = response as OkNegotiatedContentResult<DTOPlayer>;

            var groupResponse = groupController.Get(1);
            var groupContentResult = groupResponse as OkNegotiatedContentResult<DTOGroup>;
            DTOGroup DtoGroup = groupContentResult.Content;
            Group groupFromDb = new Group();
            groupFromDb.Name = DtoGroup.Name;
            groupFromDb.Id = DtoGroup.Id;
            List<Group> groups = new List<Group>() { groupFromDb };

            DTOPlayer Dtoplayer = contentResult.Content;
             playerFromDb = new Player();
            playerFromDb.Name = Dtoplayer.Name;
            playerFromDb.Id = Dtoplayer.Id;
            List<Player> players = new List<Player>() {playerFromDb};

            team = new Team() { Name = "Integration Test Team", Players = players, Groups = groups, Draw = 0, Win = 0, Loss = 0};



        }
        public void Test_if_tournament_can_be_converted_with_groups_and_type_and_fail()
        {
            DTOTournament dtoTournament = new DTOTournament();
            TournamentType tournamentType = new TournamentType() {Id = 1, Type = "2vs2"};
            List<Group> groups = new List<Group>();
            Group group1 = new Group() {Id = 1, Name = "Hans og Ole"};
            Group group2 = new Group() {Id = 1, Name = "Lars og Peter"};
            groups.Add(group1);
            groups.Add(group2);
            DTOTournamentConverter dtoTournamentConverter = new DTOTournamentConverter();
            Tournament tournament = new Tournament()
            {
                Id = 1,
                Name = "Tournament One",
                StartDate = DateTime.Today,
                TournamentType = tournamentType,
                Groups = groups
            };
            dtoTournament = dtoTournamentConverter.Convert(tournament);
           

        }
        public void SetUp()
        {

            var config = new HttpConfiguration();
            var request = new HttpRequestMessage(HttpMethod.Post, "http://dragonapi.devjakobsen.dk/api/group");
            var route = config.Routes.MapHttpRoute("DefaultApi", "api/{controller}/{id}");
            var routeData = new HttpRouteData(route, new HttpRouteValueDictionary { { "controller", "group" } });


            groupController = new GroupController();
            UrlHelper urlHelper = new UrlHelper(request);
            groupController.ControllerContext = new HttpControllerContext(config, routeData, request);
            groupController.Request = request;
            groupController.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = config;
            groupController.Request.Properties[HttpPropertyKeys.HttpRouteDataKey] = routeData;
            groupController.Url = urlHelper;

            var Response = tournamentController.Get(1);
            var ContentResult = Response as OkNegotiatedContentResult<DTOTournament>;
            DTOTournament DtoTournament = ContentResult.Content;
            Tournament tournamentFromDb = new Tournament();
            tournamentFromDb.Name = DtoTournament.Name;
            tournamentFromDb.Id = DtoTournament.Id;

            var response = teamController.Get(1);
            var contentResult = response as OkNegotiatedContentResult<DTOTeam>;
            DTOTeam DtoTeam = contentResult.Content;
            teamFromDb = new Team();
            teamFromDb.Name = DtoTeam.Name;
            teamFromDb.Id = DtoTeam.Id;
            List<Team> teams = new List<Team>() { teamFromDb };

            group = new Group() { Name = "Integration Test Group", Teams = teams, Tournament = tournamentFromDb };


        }
 public void Test_if_group_can_be_created_if_tournaments_is_null()
 {
     Team Team1 = new Team() { Id = 1, Name = "Awesome" };
     Team Team2 = new Team() { Id = 1, Name = "More Awesome" };
     List<Team> teams = new List<Team> { Team1, Team2 };
     Group group = new Group() { Id = 1, Name = "A", Teams = teams };
     DTOGroupConverter dtogroupConverter = new DTOGroupConverter();
     DTOGroup dtoGroup = dtogroupConverter.Convert(group);
     Assert.IsNotNull(dtoGroup);
     Assert.AreEqual(dtoGroup.Id, group.Id);
     Assert.AreEqual(dtoGroup.Name, group.Name);
     Assert.AreEqual(dtoGroup.DtoTeams[0].Id, group.Teams[0].Id);
     Assert.AreEqual(dtoGroup.DtoTeams[1].Id, group.Teams[1].Id);
     Assert.AreEqual(dtoGroup.DtoTeams[0].Name, group.Teams[0].Name);
     Assert.AreEqual(dtoGroup.DtoTeams[1].Name, group.Teams[1].Name);
 }
 public void Test_if_group_can_be_created_with_a_tournaments()
 {
     Team Team1 = new Team() { Id = 1, Name = "Awesome" };
     Team Team2 = new Team() { Id = 1, Name = "More Awesome" };
     List<Team> teams = new List<Team> { Team1, Team2 };
     Tournament tournament = new Tournament() { Id = 1, Name = "tour1", Game = new Game() { Id = 1, Name = "war", Genre = new Genre() { Id = 1, Name = "role" } }, StartDate = DateTime.Today, TournamentType = new TournamentType() { Id = 1, Type = "2vs2" } };
     Group group = new Group() { Id = 1, Name = "A", Teams = teams, Tournament = tournament };
     DTOGroupConverter dtogroupConverter = new DTOGroupConverter();
     DTOGroup dtoGroup = dtogroupConverter.Convert(group);
     Assert.IsNotNull(dtoGroup);
     Assert.AreEqual(dtoGroup.Id, group.Id);
     Assert.AreEqual(dtoGroup.Name, group.Name);
     Assert.AreEqual(dtoGroup.DtoTeams[0].Id, group.Teams[0].Id);
     Assert.AreEqual(dtoGroup.DtoTeams[1].Id, group.Teams[1].Id);
     Assert.AreEqual(dtoGroup.DtoTeams[0].Name, group.Teams[0].Name);
     Assert.AreEqual(dtoGroup.DtoTeams[1].Name, group.Teams[1].Name);
     Assert.AreEqual(dtoGroup.DtoTournament.Id, tournament.Id);
     Assert.AreEqual(dtoGroup.DtoTournament.Name, tournament.Name);
     Assert.AreEqual(dtoGroup.DtoTournament.StartDate, tournament.StartDate);
  }
示例#13
0
 public void TearDown()
 {
     group = null;
 }
示例#14
0
 public void SetUp()
 {
     group = new Group() { Id = id, Name = name };
 }
示例#15
0
        // PUT: api/Group/5
        public void Put(int id, Group group)
        {
            group.Id = id;
            if (!groupRepository.Update(group)) throw new HttpResponseException(HttpStatusCode.NotFound);

        }
示例#16
0
        /// <summary>
        /// Revenue of vehicle normal
        /// </summary>
        /// <param name="sum">Sum of money</param>
        /// <param name="nhom">Group of vehicle</param>
        /// <returns></returns>
        public DataTable GetRevenueNormal(out decimal sum, DateTime fr, DateTime to, Group nhom = Group.N)
        {
            sum = 0;
            try
            {
                var res = from s in _db.Tra_Details
                          where s.UserOutId != null
                           && s.DateOut >= fr && s.DateOut <= to
                          && s.Vehicle.Fixed == false
                          orderby s.Order
                          select new
                          {
                              s.Id,
                              No_ = s.Order,

                              s.More,
                              s.Text,

                              UserIn = s.UserIn.Name,
                              s.UserIn.Phone,

                              UserOut = s.UserOut.Name,
                              s.Vehicle.Code,

                              s.DateIn,
                              s.DateOut,

                              s.FullDay,
                              s.HalfDay,
                              TotalDays = s.FullDay + s.HalfDay,

                              s.Price1,
                              s.Price2,
                              s.Money,

                              s.Seats,
                              s.Beds,

                              Group = s.Vehicle.Tariff.Group.Text,
                              GroupCode = s.Vehicle.Tariff.Group.Code,
                              Tariff = s.Vehicle.Tariff.Text
                          };
                if (nhom == Group.A) res = res.Where(p => p.GroupCode == "GROUP_0");
                else if (nhom == Group.B) res = res.Where(p => p.GroupCode == "GROUP_1");
                else if (nhom == Group.C) res = res.Where(p => p.GroupCode == "GROUP_2");

                sum = res.Sum(k => k.Money);
                return res.ToDataTable();
            }
            catch
            {
                sum = 0;
                return null;
            }
        }
示例#17
0
        /// <summary>
        /// Find vehicle out depot
        /// </summary>
        /// <param name="group">Group of vihicel</param>
        /// <param name="fr">From date time</param>
        /// <param name="to">To date time</param>
        /// <param name="number">Number of vehicle</param>
        /// <returns></returns>
        private IQueryable<dynamic> FindOutDepot(Group group, DateTime fr, DateTime to, string number = null)
        {
            try
            {
                var res = from s in _db.Tra_Details
                          where s.UserOutId != null
                          && s.DateOut >= fr && s.DateOut <= to
                          orderby s.DateIn descending, s.Vehicle.Code
                          select new
                          {
                              s.Id,

                              s.UserIn.Phone,
                              UserIn = s.UserIn.Name,
                              UserOut = s.UserOut.Name,
                              s.UserOutId,

                              s.DateIn,
                              s.DateOut,

                              s.Vehicle.Code,
                              s.Vehicle.Seats,
                              s.Vehicle.Beds,

                              s.Guest,
                              s.Vehicle.Node,

                              Tariff = s.Vehicle.Tariff.Text,
                              Transport = s.Vehicle.Transport == null ? "" : s.Vehicle.Transport.Text,
                              Group = s.Vehicle.Tariff.Group.Text,

                              s.Price1,
                              s.Price2,
                              s.Rose1,
                              s.Rose2,

                              s.Cost,
                              s.Rose,
                              s.Parked,
                              s.Money,

                              s.Vehicle.Fixed,
                              GroupCode = s.Vehicle.Tariff.Group.Code
                          };
                switch (group)
                {
                    case Group.A:
                        res = res.Where(p => p.GroupCode == "GROUP_0");
                        break;
                    case Group.B:
                        res = res.Where(p => p.GroupCode == "GROUP_1");
                        break;
                    case Group.N:
                        res = res.Where(p => p.Fixed == false);
                        break;
                    case Group.F:
                        res = res.Where(p => p.Fixed == true);
                        break;
                    default:
                        break;
                }
                var ql = Global.Session.User.CheckOperator() || Global.Session.User.CheckAdmin();
                if (!ql) res = res.Where(p => p.UserOutId == Global.Session.User.Id);

                if (number != null) res = res.Where(p => p.Code == number);
                return res;
            }
            catch { return null; }
        }
示例#18
0
        /// <summary>
        /// Find vehicle in depot
        /// </summary>
        /// <param name="group">Group of vehicle</param>
        /// <param name="number">Number of vehicle</param>
        /// <returns></returns>
        private IQueryable<dynamic> FindInDepot(Group group, string number = null)
        {
            try
            {
                var res = from s in _db.Tra_Details
                          where s.UserOutId == null
                          orderby s.DateIn descending, s.Vehicle.Code
                          select new
                          {
                              s.Id,

                              s.UserIn.Phone,
                              UserIn = s.UserIn.Name,
                              s.UserInId,
                              //UserOut = s.UserOut.Name,

                              s.DateIn,
                              //s.DateOut,

                              s.Vehicle.Code,
                              s.Vehicle.Seats,
                              s.Vehicle.Beds,

                              s.Guest,
                              s.Vehicle.Node,

                              Tariff = s.Vehicle.Tariff.Text,
                              Transport = s.Vehicle.Transport == null ? "" : s.Vehicle.Transport.Text,
                              Group = s.Vehicle.Tariff.Group.Text,

                              s.Price1,
                              s.Price2,
                              s.Rose1,
                              s.Rose2,
                              //s.Money,

                              s.Vehicle.Fixed,
                              GroupCode = s.Vehicle.Tariff.Group.Code,
                              s.More
                          };
                switch (group)
                {
                    case Group.A:
                        res = res.Where(p => p.GroupCode == "GROUP_0");
                        break;
                    case Group.B:
                        res = res.Where(p => p.GroupCode == "GROUP_1");
                        break;
                    case Group.N:
                        res = res.Where(p => p.Fixed == false);
                        break;
                    case Group.F:
                        res = res.Where(p => p.Fixed == true);
                        break;
                    default:
                        break;
                }

                if (number != null) res = res.Where(p => p.Code == number);
                return res;
            }
            catch { return null; }
        }
示例#19
0
        /// <summary>
        /// Sumary report vehicle normal for print
        /// </summary>
        /// <param name="sum">Total money</param>
        /// <param name="fr">From date time</param>
        /// <param name="to">To date time</param>
        /// <param name="gr">Group of vehicle normal</param>
        /// <returns></returns>
        public DataTable SumaryReportNormal(out decimal sum, DateTime fr, DateTime to, Group gr = Group.N)
        {
            sum = 0;
            try
            {
                var res1 = from s in _db.Tra_Details
                           where s.Vehicle.Tariff.More.Contains("NORMAL")
                           && s.DateOut >= fr && s.DateOut <= to
                           && s.Vehicle.Fixed == false && s.UserOutId != null
                           group s by new
                           {
                               GroupCode = s.Vehicle.Tariff.Group.Code,
                               Group = s.Vehicle.Tariff.Group.Text,
                               Tariff = s.Vehicle.Tariff.Text,
                               s.Price1,
                               s.Price2
                           } into g
                           select new
                           {
                               g.Key.GroupCode,
                               g.Key.Group,
                               g.Key.Tariff,
                               g.Key.Price1,
                               g.Key.Price2,

                               CountFullDay = g.Count(p => p.FullDay > 0),
                               CountHalfDay = g.Count(p => p.HalfDay > 0 && p.FullDay <= 0),

                               FullDay = g.Sum(p => p.FullDay),
                               HalfDay = g.Sum(p => p.HalfDay),
                               Seats = g.Sum(p => p.Seats ?? 0),
                               Beds = g.Sum(p => p.Beds ?? 0),
                               Money = g.Sum(p => p.Money)
                           };

                var res2 = from s in _db.Tra_Tariffs
                           where s.More.Contains("NORMAL")
                           group s by new
                           {
                               GroupCode = s.Group.Code,
                               Group = s.Group.Text,
                               Tariff = s.Text,
                               s.Price1,
                               s.Price2
                           } into g
                           select new
                           {
                               g.Key.GroupCode,
                               g.Key.Group,
                               g.Key.Tariff,
                               g.Key.Price1,
                               g.Key.Price2,

                               CountFullDay = 0,
                               CountHalfDay = 0,

                               FullDay = 0,
                               HalfDay = 0,
                               Seats = 0,
                               Beds = 0,
                               Money = 0m
                           };

                var res = res1.Union(res2);

                res = from s in res
                      orderby s.Price1
                      group s by new
                      {
                          s.GroupCode,
                          s.Group,
                          s.Tariff,
                          s.Price1,
                          s.Price2
                      } into g
                      select new
                      {
                          g.Key.GroupCode,
                          g.Key.Group,
                          g.Key.Tariff,
                          g.Key.Price1,
                          g.Key.Price2,

                          CountFullDay = g.Sum(p => p.CountFullDay),
                          CountHalfDay = g.Sum(p => p.CountHalfDay),

                          FullDay = g.Sum(p => p.FullDay),
                          HalfDay = g.Sum(p => p.HalfDay),
                          Seats = g.Sum(p => p.Seats),
                          Beds = g.Sum(p => p.Beds),
                          Money = g.Sum(p => p.Money)
                      };

                if (gr == Group.A) res = res.Where(p => p.GroupCode == "GROUP_0");
                else if (gr == Group.B) res = res.Where(p => p.GroupCode == "GROUP_1");
                else if (gr == Group.C) res = res.Where(p => p.GroupCode == "GROUP_2");

                sum = res.Sum(k => k.Money);
                return res.ToDataTable();
            }
            catch { return null; }
        }