Пример #1
0
        public async Task AddRequestAsync(UniversityCreateRequestDTO creationInfo)
        {
            UniversityCreateRequest createRequest = mapper.Map <UniversityCreateRequest>(creationInfo);

            createRequest.DateOfCreation = DateTime.Now;
            await requestsRepository.AddAsync(createRequest);

            await requestsRepository.SaveChangesAsync();
        }
Пример #2
0
        public async Task RejectRequestAsync(int id)
        {
            UniversityCreateRequest request = await requestsRepository.GetByIdAsync(id);

            if (request == null)
            {
                throw new BadRequestException("Creation request doesn't exist!");
            }

            // TODO: Load email HTML template from file and fill it in
            await emailService.SendAsync(
                request.Email,
                "Your request has been denied",
                $"{request.UniversityName} won't be registered");

            requestsRepository.Remove(request);
            await requestsRepository.SaveChangesAsync();
        }
Пример #3
0
        public async Task ApproveRequestAsync(int id)
        {
            UniversityCreateRequest request = await requestsRepository.GetByIdAsync(id);

            if (request == null)
            {
                throw new BadRequestException("Creation request doesn't exist!");
            }

            UniversityCreateRequestViewDTO registerDto = mapper.Map <UniversityCreateRequestViewDTO>(request);
            UniversityCreationResultDTO    result      = await universityRegistrationService
                                                         .CreateUniversityAsync(registerDto);

            // TODO: load html letter template and fill it in
            await emailService.SendAsync(
                receiver : result.AdminEmail,
                subject : $"{result.UniversityName} registration",
                bodyHtml : "Your university is registered! Use these credentials to sign in to the system:" +
                $"<br>Email: {result.AdminEmail}<br>Password: {result.AdminPassword}");

            requestsRepository.Remove(request);
            await requestsRepository.SaveChangesAsync();
        }