Ejemplo n.º 1
0
 private static async Task AddUserToProject(ProjectServiceDefinition.ProjectServiceDefinitionClient projectClient)
 {
     var input = new AddUserToProjectRequest {
         IdentityId = 2, IdentityType = 1, ProjectId = 1, RoleId = 1
     };
     var reply = await projectClient.AddUserToProjectAsync(input);
 }
        public AddUserToProjectResponse AddUserToProject(AddUserToProjectRequest request)
        {
            var projectRoles = new ProjectRoles();

            projectRoles.CreatedAt    = DateTime.Now;
            projectRoles.CreatedBy    = 1;
            projectRoles.IdentityId   = request.IdentityId;
            projectRoles.IdentityType = request.IdentityType;
            projectRoles.ProjectId    = request.ProjectId;
            projectRoles.RoleId       = request.RoleId;

            _unitOfWork.ProjectRoleRepository.Insert(projectRoles);
            _unitOfWork.ProjectRepository.Save();

            return(new AddUserToProjectResponse());
        }
Ejemplo n.º 3
0
        public override async Task <AddUserToProjectResponse> AddUserToProject(AddUserToProjectRequest request, ServerCallContext context)
        {
            var user = await dbContext.Users.FindIfNullThrowAsync(request.UserId);

            var project = await dbContext.Projects.FindIfNullThrowAsync(request.ProjectId);

            var assignment = new UserProjectAssignment(Guid.NewGuid(), user, project, (Domain.ValueObjects.UserRole)request.Role);

            dbContext.UserProjectAssignments.Add(assignment);

            await dbContext.SaveChangesAsync();

            return(new AddUserToProjectResponse
            {
                UserProjectAssignmentId = assignment.Id.ToString(),
            });
        }
Ejemplo n.º 4
0
        public override async Task <AddUserToProjectResponse> AddUserToProject(AddUserToProjectRequest request, ServerCallContext context)
        {
            var project = await dbContext.Projects.FindIfNullThrowAsync(request.ProjectId);

            var user = await dbContext.Users.FindIfNullThrowAsync(request.UserId);

            var userProjectAssignment = new UserProjectAssignment(Guid.Parse(request.UserProjectAssignmentId), user, project, Resources.Zero);

            dbContext.UserProjectAssignments.Add(userProjectAssignment);

            dbContext.BillingCycleEntries.Add(new BillingCycleEntry(userProjectAssignment.BillingCycleSubject));
            dbContext.UseCycleEntries.Add(new UseCycleEntry(userProjectAssignment.UseCycleSubject));

            await dbContext.SaveChangesAsync();

            return(new AddUserToProjectResponse {
            });
        }
Ejemplo n.º 5
0
 public override Task <AddUserToProjectResponse> AddUserToProject(AddUserToProjectRequest request, ServerCallContext context)
 {
     return(Task.FromResult(_projectManager.AddUserToProject(request)));
 }
Ejemplo n.º 6
0
        public async Task <ActionResult> AddUserToProject([FromRoute] string projectId, [FromBody] AddUserToProjectRequest request)
        {
            var resp = await(await factory.GetProjectsClientAsync())
                       .AddUserToProjectAsync(new AcademyCloud.Identity.Protos.Projects.AddUserToProjectRequest
            {
                ProjectId = projectId,
                UserId    = request.UserId,
                Role      = (AcademyCloud.Identity.Protos.Common.UserRole)request.Role,
            });

            // add to expenses
            await(await factory.GetExpensesIdentityClient())
            .AddUserToProjectAsync(new AcademyCloud.Expenses.Protos.Identity.AddUserToProjectRequest
            {
                ProjectId = projectId,
                UserId    = request.UserId,
                UserProjectAssignmentId = resp.UserProjectAssignmentId,
            });

            // add to resources
            await(await factory.GetResourcesIdentityServiceClient())
            .AddUserAsync(new AcademyCloud.ResourceManagement.Protos.Identity.AddUserRequest
            {
                UserId    = request.UserId,
                ProjectId = projectId,
                UserProjectAssignmentId = resp.UserProjectAssignmentId,
            });

            return(NoContent());
        }