예제 #1
0
        public async Task UpdateRequest(ClubRequest clubRequest)
        {
            if (clubRequest == null)
            {
                throw new ArgumentNullException(nameof(clubRequest));
            }
            var existingEntry = await _dbContext.ClubRequests
                                .SingleAsync(r => r.Id == clubRequest.Id).ConfigureAwait(false);

            existingEntry.ClubName            = clubRequest.ClubName;
            existingEntry.ClubInitials        = clubRequest.ClubInitials;
            existingEntry.ClubLocation        = clubRequest.ClubLocation;
            existingEntry.ClubWebsite         = clubRequest.ClubWebsite;
            existingEntry.ContactName         = clubRequest.ContactName;
            existingEntry.ContactEmail        = clubRequest.ContactEmail;
            existingEntry.Classes             = clubRequest.Classes;
            existingEntry.TypicalDiscardRules = clubRequest.TypicalDiscardRules;
            existingEntry.Comments            = clubRequest.Comments;
            existingEntry.AdminNotes          = clubRequest.AdminNotes;
            existingEntry.TestClubId          = clubRequest.TestClubId;
            existingEntry.VisibleClubId       = clubRequest.VisibleClubId;
            if (existingEntry.RequestApproved == null)
            {
                existingEntry.RequestApproved = clubRequest.RequestApproved;
            }
        }
        public List <ClubResponse> listerTousClubs(ClubRequest clubs)
        {
            List <ClubResponse> clubsRetour = new List <ClubResponse>();
            List <Club>         clubs1      = _club.Find(club => club.Nom_université == clubs.nomUniversité && club.Nom_Ecole == clubs.nomEcole).ToList();

            clubsRetour = _mapper.Map <List <ClubResponse> >(clubs1);
            return(clubsRetour);
        }
예제 #3
0
        public async Task <Guid> Submit(ClubRequest clubRequest)
        {
            var dbObj = _mapper.Map <Db.ClubRequest>(clubRequest);

            _dbContext.ClubRequests.Add(dbObj);

            await _dbContext.SaveChangesAsync().ConfigureAwait(false);

            return(dbObj.Id);
        }
        public async Task Submit_AddsRequest()
        {
            var newCompletedClubRequest = new ClubRequest()
            {
                Id       = Guid.NewGuid(),
                ClubName = "NewCompletedClubRequestName",
                Complete = true
            };

            await _service.Submit(newCompletedClubRequest);

            Assert.Equal(3, _context.ClubRequests.Count());
        }
예제 #5
0
        public async void AddClubTest(string name, string league, string logo)
        {
            var request = new ClubRequest()
            {
                Name    = name,
                League  = league,
                LogoUri = logo
            };

            var result = await _clubService.AddClub(request);

            Assert.True(result.Success);
        }
예제 #6
0
    private async Task SendAdminNotice(ClubRequest request)
    {
        try
        {
            var emailBody = await _emailSender.GetHtmlFromView("Templates/ClubCreatedAdminNotice", request);

            var notificationEmail = _configuration["NotificationEmail"];
            await _emailSender.SendEmailAsync(notificationEmail, $"SailScores Club Created {request.ContactEmail}", emailBody);
        }
        catch (Exception)
        {
            // if email is not sent, should add some alert for site admins, that there are
            // requests to approve.
        }
    }
예제 #7
0
    private async Task <Guid> CopyClub(Guid copyFromClubId,
                                       ClubRequest request,
                                       bool test)
    {
        var targetClub = new Core.Model.Club
        {
            Name     = request.ClubName,
            Initials = request.ClubInitials + (test ? "TEST" : ""),
            IsHidden = test,
            Url      = request.ClubWebsite,
        };

        return(await _coreClubService.CopyClubAsync(
                   copyFromClubId,
                   targetClub));
    }
        public async Task Update_ChangesRequest()
        {
            var changedClubRequest = new ClubRequest()
            {
                Id       = _fakeCompletedClubRequest.Id,
                ClubName = "NewName",
                Complete = false
            };

            await _service.UpdateRequest(changedClubRequest);

            Assert.Equal(2, _context.ClubRequests.Count());
            Assert.Equal("NewName",
                         _context.ClubRequests.FirstOrDefault(c =>
                                                              c.Id == _fakeCompletedClubRequest.Id).ClubName);
        }
예제 #9
0
파일: ClubService.cs 프로젝트: reszczyk/api
        public async Task <Response> AddClub(ClubRequest request)
        {
            var club = new Club()
            {
                Name    = request.Name,
                League  = request.League,
                LogoUri = request.LogoUri
            };

            await Context.Clubs.AddAsync(club);

            await Context.SaveChangesAsync();

            AddLog($"Dodano klub {request.Name}");
            return(new SuccessResponse <bool>(true));
        }
예제 #10
0
        public async void GetClubTest(string name, string league, string logo)
        {
            var request = new ClubRequest()
            {
                Name    = name,
                League  = league,
                LogoUri = logo
            };

            var fakeClub = await _clubService.AddClub(request);

            var fODClub = await _contextBuilder.Context.Clubs.FirstOrDefaultAsync(i => i.Name == name);

            var result = await _clubService.GetClub(fODClub.Id);

            Assert.True(result.Success);
        }
        public ClubRequestServiceTests()
        {
            var options = new DbContextOptionsBuilder <SailScoresContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;

            _context = new SailScoresContext(options);

            var config = new MapperConfiguration(opts =>
            {
                opts.AddProfile(new DbToModelMappingProfile());
            });

            _mapper = config.CreateMapper();

            _fakeInProcessClubRequest = new ClubRequest()
            {
                Id       = Guid.NewGuid(),
                ClubName = "InProcessClubRequestName"
            };

            _fakeCompletedClubRequest = new ClubRequest()
            {
                Id       = Guid.NewGuid(),
                ClubName = "CompletedClubRequestName",
                Complete = true
            };

            _context.ClubRequests.Add(_mapper.Map <Database.Entities.ClubRequest>(
                                          _fakeInProcessClubRequest));
            _context.ClubRequests.Add(_mapper.Map <Database.Entities.ClubRequest>(
                                          _fakeCompletedClubRequest));
            _context.SaveChanges();

            _context = new SailScoresContext(options);

            _service = new SailScores.Core.Services.ClubRequestService(
                _context,
                _mapper
                );
        }
예제 #12
0
        public async void GetClubsTest(string name, string league, string logo, string name2, string league2, string logo2, int skip, int take)
        {
            var request1 = new ClubRequest()
            {
                Name    = name,
                League  = league,
                LogoUri = logo
            };

            var request2 = new ClubRequest()
            {
                Name    = name2,
                League  = league2,
                LogoUri = logo2
            };

            var fakeClub = await _clubService.AddClub(request1);

            var fakeClub2 = await _clubService.AddClub(request2);

            var result = await _clubService.GetClubs(skip, take);

            Assert.True(result.Success);
        }
예제 #13
0
파일: ClubService.cs 프로젝트: reszczyk/api
        public async Task <Response> EditClub(int id, ClubRequest request)
        {
            var club = await Context.Clubs.FirstOrDefaultAsync(i => i.Id == id);

            if (club == null)
            {
                return(new ErrorResponse("Klubu nie znaleziono!"));
            }
            if (request.Name != null)
            {
                club.Name = request.Name;
            }
            if (request.League != null)
            {
                club.League = request.League;
            }
            if (request.LogoUri != null)
            {
                club.LogoUri = request.LogoUri;
            }
            if (request.Longitude != null)
            {
                club.Longitude = request.Longitude;
            }
            if (request.Latitude != null)
            {
                club.Latitude = request.Latitude;
            }

            Context.Clubs.Update(club);

            await Context.SaveChangesAsync();

            AddLog($"Edytowano klub {club.Id}");
            return(new SuccessResponse <bool>(true));
        }
예제 #14
0
 public async Task <IActionResult> EditClub(int id, ClubRequest request) => ResolveResponse(await _clubsService.EditClub(id, request));
예제 #15
0
 public async Task <IActionResult> AddClub(ClubRequest request) => ResolveResponse(await _clubsService.AddClub(request));