Ejemplo n.º 1
0
 public void SaveContest(IContest currentContest)
 {
     WithTransaction(() =>
     {
         UnitOfWorks.Save(currentContest);
         foreach (var field in currentContest.FieldList)
         {
             UnitOfWorks.Save(field);
         }
         foreach (var phase in currentContest.PhaseList)
         {
             UnitOfWorks.Save(phase);
             foreach (var gameStep in phase.GameStepList)
             {
                 UnitOfWorks.Save(gameStep.CurrentMatchSetting);
                 UnitOfWorks.Save(gameStep);
                 foreach (var team in gameStep.TeamGameStepList)
                 {
                     UnitOfWorks.Save(team);
                 }
                 foreach (var match in gameStep.MatchList)
                 {
                     UnitOfWorks.Save(match);
                 }
             }
             foreach (var teamPhase in phase.TeamPhaseList)
             {
                 UnitOfWorks.Save(teamPhase);
             }
         }
     });
 }
Ejemplo n.º 2
0
 public void UpdatePerson(IPerson person, string lastName, string firstName, string alias, string mail, bool canMailing, bool isMemberOfAssociation)
 {
     WithTransaction(() =>
     {
         person.SetIndentity(lastName, firstName, alias);
         person.Mail       = mail;
         person.CanMailing = canMailing;
         person.IsMember   = isMemberOfAssociation;
         UnitOfWorks.Save(person);
     });
 }
Ejemplo n.º 3
0
 public void CreatePerson(string lastName, string firstName, string alias, string mail, bool canMailing, bool isMemberOfAssociation)
 {
     WithTransaction(() =>
     {
         var person        = Person.Create(lastName, firstName, alias);
         person.Mail       = mail;
         person.CanMailing = canMailing;
         person.IsMember   = isMemberOfAssociation;
         UnitOfWorks.Save(person);
     });
 }
Ejemplo n.º 4
0
 public void AddPlayer(ITeam team, IList <IPerson> persons)
 {
     WithTransaction(() =>
     {
         foreach (var person in persons)
         {
             var assocation = team.AddPlayer(person);
             UnitOfWorks.Save(assocation);
         }
     });
 }
Ejemplo n.º 5
0
        public void CreateTeam(IContest contest, string name, IList <IPerson> persons)
        {
            WithTransaction(() =>
            {
                var team = TeamFactory.Create(contest, name);
                UnitOfWorks.Save(team);

                foreach (var person in persons)
                {
                    var association = team.AddPlayer(person);
                    UnitOfWorks.Save(association);
                }
            });
        }
Ejemplo n.º 6
0
        public void UpdateContest(IContest contest)
        {
            WithTransaction(() =>
            {
                UnitOfWorks.Save(contest.EliminationSetting.MatchSetting);
                UnitOfWorks.Save(contest.EliminationSetting);

                if (contest.QualificationSetting != null)
                {
                    UnitOfWorks.Save(contest.QualificationSetting.MatchSetting);
                    UnitOfWorks.Save(contest.QualificationSetting);
                }

                if (contest.ConsolingEliminationSetting != null)
                {
                    UnitOfWorks.Save(contest.ConsolingEliminationSetting.MatchSetting);
                    UnitOfWorks.Save(contest.ConsolingEliminationSetting);
                }
            });
        }
Ejemplo n.º 7
0
        public IContest Create(CreateContestCmd cmd)
        {
            return(WithTransaction(() =>
            {
                var address = AddressFactory.Create(cmd.StreetNumber, cmd.Street, cmd.ZipCode, cmd.City);
                UnitOfWorks.Save(address);

                var areaType = cmd.Indoor ? AreaType.Indoor : AreaType.Outdoor;
                var physicalSettings = PhysicalSetting.Create(address, areaType, cmd.CountField);
                UnitOfWorks.Save(physicalSettings);

                var gameSetting = GameSettingFactory.Create(cmd.CountMinPlayerByTeam, cmd.CountMaxPlayerByTeam);
                UnitOfWorks.Save(gameSetting);

                var newContest = Domain.Games.Contest.Create(cmd.Date, physicalSettings, gameSetting);
                UnitOfWorks.Save(newContest.EliminationSetting.MatchSetting);
                UnitOfWorks.Save(newContest.EliminationSetting);
                UnitOfWorks.Save(newContest);

                return newContest;
            }));
        }