示例#1
0
        public void CreateOrganizationUser_Test()
        {
            var transactionMock = new Mock <IDbContextTransaction>();

            database.Setup(d => d.BeginTransaction()).Returns(transactionMock.Object);
            context.Setup(e => e.Database).Returns(database.Object);
            SetupOrganizationUsersDbSet(new List <OrganizationUserEntity>());

            var command = new CreateOrganizationUserCommand
            {
                UserId              = "qwerty",
                OrganizationId      = 1,
                UserType            = 2,
                Username            = "******",
                FirstName           = "user1",
                LastName            = "User1",
                Email               = "*****@*****.**",
                IsActive            = true,
                IsLocked            = false,
                IsPendingActivation = false,
                TransactionId       = "abc"
            };


            organizationUserRepository.CreateOrganizationUser(command);



            Assert.Throws <NullReferenceException>(() =>
                                                   organizationUserRepository.CreateOrganizationUser(null));
        }
示例#2
0
        public Result <int> CreateOrganizationUser(CreateOrganizationUserCommand command)
        {
            this.logger.LogInformation("{}, {}, {}", command.UserType, command.OrganizationId, command.UserId);

            if (organizationUserRepository.OrganizationUserExists(command.UserId, command.UserType, command.OrganizationId))
            {
                return(new Result <int>(OrganizationUserServiceErrors.OrganizationUserAlreadyExists()));
            }

            var organizationUserId = organizationUserRepository.CreateOrganizationUser(command);

            return(new Result <int>(organizationUserId));
        }
示例#3
0
        public int CreateOrganizationUser(CreateOrganizationUserCommand model)
        {
            var organizationUser = mapper.Map <OrganizationUserEntity>(model);

            organizationUser.CreatedAt = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();

            using (var transaction = this.context.Database.BeginTransaction())
            {
                this.context.OrganizationUsers.Add(organizationUser);
                this.context.SaveChanges();
                transaction.Commit();
            }

            return(organizationUser.OrganizationUserEntityId);
        }
        public async Task <IHttpActionResult> CreateOrganizationUser(string username,
                                                                     OrganizationRoleType organizationRoleType,
                                                                     EntityReference organization)
        {
            try
            {
                if (!_userContext.CurrentUserIsSystemUser())
                {
                    return(Unauthorized());
                }

                if (string.IsNullOrWhiteSpace(username))
                {
                    throw new ArgumentException("Value cannot be null or whitespace.", nameof(username));
                }


                if (organization == null)
                {
                    throw new ArgumentNullException(nameof(organization));
                }

                if (!_userContext.CurrentUserIsSystemAdmin() && !_userContext.CurrentUserIsOrganizationAdmin(organization.Id))
                {
                    return(Unauthorized());
                }


                var cmd = new CreateOrganizationUserCommand(username, organizationRoleType.ToString(), organization);
                await _endpointInstance().SendWithSignalRMetaData(cmd, Request);

                return(this.Accepted());
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                return(InternalServerError());
            }
        }