public void Update(ProjectDocumentDTO projectDocumentDTO) { ProjectDocument projectDocument = new ProjectDocument(); projectDocument.Id = projectDocumentDTO.Id; projectDocument.ProjectId = projectDocumentDTO.ProjectId; projectDocument.Description = projectDocumentDTO.Description; _context.Entry(projectDocument).State = EntityState.Modified; }
public ProjectDocumentDTO GetById(int id) { var projectDocument = _context.projectDocuments.Include(d => d.Project).FirstOrDefault(d => d.Id == id); var projectDocumentDTO = new ProjectDocumentDTO() { Id = projectDocument.Id, Description = projectDocument.Description, DocumentName = projectDocument.DocumentName, DocumentFile = projectDocument.DocumentFile, ProjectId = projectDocument.ProjectId, ProjectName = projectDocument.Project.ProjectName }; return(projectDocumentDTO); }
public IActionResult PutProjectDocumentDTO(int id, ProjectDocumentDTO projectDocumentDTO) { if (id != projectDocumentDTO.Id) { return(BadRequest()); } _projectDocumentRepository.Update(projectDocumentDTO); try { _projectDocumentRepository.Save(); } catch (DbUpdateConcurrencyException ex) { string message = ex.Message; } return(NoContent()); }
public async Task <GetProjectResponse> Handle(GetProjectRequest query, CancellationToken cancellationToken) { var result = new GetProjectResponse(); if (query.IsExistProjectByMemberUsername != null) { result.IsExistProjectByMemberUsernameResult = false; var isExistProject = await _context.Projects .Where(x => x.MemberUsername == query.IsExistProjectByMemberUsername) .FirstOrDefaultAsync(cancellationToken); if (isExistProject != null) { result.IsSuccessful = true; result.IsExistProjectByMemberUsernameResult = true; result.ProjectID = isExistProject.ProjectID; } return(result); } var project = await _context.Projects .Where(x => x.ProjectID == query.ProjectID) .Include(a => a.Blockchain) .Include(a => a.Contributors) .Include(a => a.ProjectDocuments) .SingleOrDefaultAsync(cancellationToken); if (project == null) { result.IsSuccessful = false; throw new NotFoundException(nameof(Project), query.ProjectID); } result.IsSuccessful = true; result.ProjectID = query.ProjectID; result.MemberUsername = project.MemberUsername; result.Name = project.Name; result.BlockchainID = project.Blockchain.BlockchainID; result.BlockchainName = project.Blockchain.Name; result.Description = project.Description; result.WalletAddress = project.WalletAddress; result.ProjectStatus = project.ProjectStatus; result.Contributors = new List <ContributorDTO>(); result.ProjectDocuments = new List <ProjectDocumentDTO>(); foreach (var contributor in project.Contributors) { var contributorDTO = new ContributorDTO() { ContributorID = contributor.ContributorID, MemberUsername = contributor.MemberUsername, InvitationStatus = contributor.InvitationStatus, ProjectID = contributor.ProjectID }; result.Contributors.Add(contributorDTO); } foreach (var projectDocument in project.ProjectDocuments) { var projectDocumentDTO = new ProjectDocumentDTO() { ProjectDocumentID = projectDocument.ProjectDocumentID, DocumentID = projectDocument.DocumentID, Title = projectDocument.Title, OriginalFileName = projectDocument.OriginalFileName }; result.ProjectDocuments.Add(projectDocumentDTO); } return(result); }