Пример #1
0
        public async Task EducationProgramTest()
        {
            var educationProgram1 = new EducationProgramDTO()
            {
                IsWIP  = true,
                Degree = Degree.Master,
                Field  = new FieldDTO()
                {
                    Name            = "fieldName",
                    EngName         = "fieldEngName",
                    ShortName       = "fieldShortName",
                    Specializations = null
                },
                Term           = Term.Summer,
                Year           = 2021,
                Courses        = null,
                Specialization = null
            };

            var educationPrograms = await _dbService.GetEducationPrograms();

            Assert.AreEqual(0, educationPrograms.Count);
            var createStatus = await _dbService.CreateEducationProgram(educationProgram1);

            Assert.IsTrue(createStatus);
            educationPrograms = await _dbService.GetEducationPrograms();

            Assert.AreEqual(1, educationPrograms.Count);
        }
Пример #2
0
 public EducationProgram MapEducationDTOToDatabaseObject(EducationProgramDTO educationProgramDTO, string modifiedBy)
 {
     return(new EducationProgram()
     {
         Year = educationProgramDTO.Year,
         IsWIP = educationProgramDTO.IsWIP,
         Degree = educationProgramDTO.Degree,
         Term = educationProgramDTO.Term,
         Field = educationProgramDTO.Field != null?_dtoMappingService.MapToField(educationProgramDTO.Field) : null,
                     Specialization = educationProgramDTO.Specialization != null?_dtoMappingService.MapToSpecialization(educationProgramDTO.Specialization) : null,
                                          Courses = educationProgramDTO.Courses?.Select(x => _dtoMappingService.MapToCourse(x)).ToList(),
                                          IsHistorical = false,
                                          ModificationDate = DateTime.Now,
                                          ModificationType = Models.ModificationType.EducationProgram,
                                          ModifiedBy = modifiedBy
     });
 }
Пример #3
0
        public async Task <bool> CreateEducationProgram(EducationProgramDTO educationProgramDTO)
        {
            var educationProgram = MapEducationDTOToDatabaseObject(educationProgramDTO, "");

            if (educationProgramDTO.Id != null)
            {
                educationProgram.Id = educationProgramDTO.Id;
            }

            var status = await _storageService.UploadEducationProgram(educationProgram);

            if (status)
            {
                _dbContext.EducationPrograms.Add(educationProgram);
                _dbContext.SaveChanges();
                return(true);
            }
            return(false);
        }
        public async Task <IActionResult> Update(Guid programId, [FromBody] EducationProgramDTO dto)
        {
            var user = await _authService.GetAuthorizedUser(HttpContext.User, _userManager);

            if (!user.IsAdmin)
            {
                return(Unauthorized());
            }
            if (user is null)
            {
                return(Unauthorized());
            }

            var educationProgram = await _databaseService.UpdateEducationProgram(programId, dto, user.Name);

            if (educationProgram != null)
            {
                return(Ok(educationProgram));
            }
            return(StatusCode(StatusCodes.Status500InternalServerError));
        }
Пример #5
0
        public async Task <EducationProgram> UpdateEducationProgram(Guid id, EducationProgramDTO educationProgramDTO, string modifiedBy)
        {
            var educationProgram = await GetEducationProgram(id);

            if (educationProgram != null)
            {
                var newEducationProgram = MapEducationDTOToDatabaseObject(educationProgramDTO, modifiedBy);
                var status = await _storageService.UploadEducationProgram(newEducationProgram);

                if (status)
                {
                    educationProgram.IsHistorical = true;
                    _dbContext.Update(educationProgram);
                    _dbContext.SaveChanges();

                    _dbContext.EducationPrograms.Add(newEducationProgram);
                    _dbContext.SaveChanges();

                    return(newEducationProgram);
                }
            }
            return(null);
        }