Esempio n. 1
0
        public async Task ChangeStatusAsync(int projectId, ProjectStatusDto status)
        {
            var project = await _unitOfWork.Repository <Project>().Get(p => p.Id == projectId);

            if (project == null)
            {
                throw new ArgumentNullException(
                          $"Error while changing status. Project with id {nameof(projectId)}={projectId} not found");
            }

            var mapper = new MapperConfiguration(cfg => cfg.CreateMap <ProjectStatusDto, ProjectStatus>())
                         .CreateMapper();
            var projectStatus = mapper.Map <ProjectStatusDto, ProjectStatus>(status);

            project.StatusId = projectStatus;

            if (project.StatusId == ProjectStatus.Approved)
            {
                var chatId = await _chatService.CreateChat(project.Name);

                project.ChatId = chatId;
            }

            _unitOfWork.Repository <Project>().Update(project);
            await _unitOfWork.SaveChangesAsync();
        }
Esempio n. 2
0
        public static ProjectStatusDto EntityToDto(ProjectStatus entity)
        {
            var dto = new ProjectStatusDto
            {
                Id   = entity.Id,
                Name = entity.Name,
            };

            return(dto);
        }
Esempio n. 3
0
        public static ProjectStatus DtoToEntity(ProjectStatusDto dto)
        {
            var entity = new ProjectStatus
            {
                Id   = dto.Id,
                Name = dto.Name,
            };

            return(entity);
        }
Esempio n. 4
0
        public static void Create(ProjectStatusDto dto)
        {
            using (var db = new MainDBModelContainer())
            {
                var entity = ProjectStatusMapper.DtoToEntity(dto);

                db.ProjectStatusSet.Add(entity);
                db.SaveChanges();
            }
        }
Esempio n. 5
0
 public HttpResponseMessage Post(ProjectStatusDto dto)
 {
     try
     {
         if (dto != null)
         {
             ProjectStatusRepository.Create(dto);
             return(Request.CreateResponse(HttpStatusCode.OK));
         }
         return(Request.CreateResponse(HttpStatusCode.BadRequest));
     }
     catch (Exception)
     {
         return(Request.CreateResponse(HttpStatusCode.BadRequest, "Generic error happened."));
     }
 }
Esempio n. 6
0
        public static void Update(ProjectStatusDto dto)
        {
            using (var db = new MainDBModelContainer())
            {
                var newData = ProjectStatusMapper.DtoToEntity(dto);
                var oldData = db.ProjectStatusSet.Find(dto.Id);
                if (oldData != null)
                {
                    oldData.Name = newData.Name;

                    db.SaveChanges();
                }
                else
                {
                    throw new ElementNotFoundException();
                }
            }
        }