public async Task <IActionResult> AddProjectAsync([FromBody] ProjectAc project)
        {
            if (ModelState.IsValid)
            {
                var       createdBy = _userManager.GetUserId(User);
                ProjectAc projectAc = await _projectRepository.CheckDuplicateProjectAsync(project);

                if (!string.IsNullOrEmpty(projectAc.Name) && !string.IsNullOrEmpty(projectAc.SlackChannelName))
                {
                    int projectId = await _projectRepository.AddProjectAsync(project, createdBy);

                    foreach (var applicationUser in project.ApplicationUsers)
                    {
                        ProjectUser projectUser = new ProjectUser();
                        projectUser.ProjectId       = projectId;
                        projectUser.UserId          = applicationUser.Id;
                        projectUser.CreatedBy       = createdBy;
                        projectUser.CreatedDateTime = DateTime.UtcNow;
                        await _projectRepository.AddUserProjectAsync(projectUser);
                    }
                    return(Ok(project));
                }
                else
                {
                    return(Ok(project));
                }
            }
            else
            {
                return(BadRequest());
            }
        }
Ejemplo n.º 2
0
        public async Task <Project> Handle(CreateProjectCommand request, CancellationToken cancellationToken)
        {
            var project = await _projectRepository.AddProjectAsync(request.Project);

            await _projectRepository.UnitOfWork.SaveEntitiesAsync(cancellationToken);

            return(project);
        }
Ejemplo n.º 3
0
        public async Task CheckDuplicateNegative()
        {
            ProjectAc projectAc = MockOfProjectAc();
            await _projectRepository.AddProjectAsync(projectAc, _stringConstant.CreatedBy);

            var project = await _projectRepository.CheckDuplicateProjectAsync(projectAc);

            Assert.Null(project.Name);
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> CreateNewProject(Project project)
        {
            if (!ModelState.IsValid)
            {
                return(View());
            }

            await projectRepository.AddProjectAsync(project);

            await projectRepository.CommitAsync();

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 5
0
        public async Task <int> AddProject(Database.Models.Project project)
        {
            if (project.Title == null || project.Description == null)
            {
                throw new Exception("Title or description can not be empty");
            }
            var id = await _projectRepository.AddProjectAsync(project);

            await _projectRepository.AddUserToProjectAsync(CurrentUserService.currentUserId, id);

            await _projectRepository.AddRoleToUserInProject(id, CurrentUserService.currentUserId);

            return(id);
        }
Ejemplo n.º 6
0
        public async Task <OperationResult> AddProjectAsync(ProjectDTO projectDTO)
        {
            OperationResult result  = new OperationResult();
            var             project = _mapper.Map <ProjectDTO, Project>(projectDTO);

            if (!_projectValidation.IsValid(project))
            {
                result.Success = false;
                return(result);
            }

            await _projectRepository.AddProjectAsync(project);

            result.Success = true;
            return(result);
        }
Ejemplo n.º 7
0
        public async Task GetProjectByProjectId()
        {
            string userId = await MockOfUserAc();

            ProjectAc projectac = new ProjectAc();

            projectac.Name       = _stringConstant.Name;
            projectac.IsActive   = _stringConstant.IsActive;
            projectac.CreatedBy  = _stringConstant.CreatedBy;
            projectac.TeamLeader = new UserAc {
                FirstName = _stringConstant.FirstName
            };
            projectac.TeamLeaderId = userId;
            var id = await _projectRepository.AddProjectAsync(projectac, _stringConstant.CreatedBy);

            await GetProjectUserMockData();

            ProjectAc project = await _projectRepository.GetProjectByIdAsync(id);

            Assert.NotNull(project);
        }
Ejemplo n.º 8
0
        public async Task DeleteUserNegative()
        {
            string userId = await CreateMockAndUserAsync();

            ProjectAc projectac = new ProjectAc()
            {
                Name       = _stringConstant.Name,
                IsActive   = _stringConstant.IsActive,
                TeamLeader = new UserAc {
                    FirstName = _stringConstant.FirstName
                },
                TeamLeaderId = userId,
                CreatedBy    = _stringConstant.CreatedBy
            };
            await _projectRepository.AddProjectAsync(projectac, _stringConstant.CreatedBy);

            await _userRepository.DeleteUserAsync(userId);

            var user = await _userManager.FindByIdAsync(userId);

            Assert.NotNull(user);
        }
Ejemplo n.º 9
0
 public async Task AddProjectAsync(Project project)
 {
     await _projectRepository.AddProjectAsync(project);
 }
Ejemplo n.º 10
0
        /// <inheritdoc/>
        public async Task AddAsync(CreateProjectRequest project, CancellationToken cancellationToken)
        {
            var created = _mapper.Map <CreateProjectRequest, Context.Models.Project>(project);

            await _projectRepository.AddProjectAsync(created, cancellationToken);
        }
Ejemplo n.º 11
0
 public async Task <IActionResult> PostAsync([FromBody] ProjectDto project)
 {
     return(Ok(await _projectRepository.AddProjectAsync(project)));
 }