/// <summary>
        /// Создать нового пользователя
        /// </summary>
        /// <param name="creationInfo">Информация для создания пользователя</param>
        /// <returns>Результат выполнения операции - информация о созданном пользователе</returns>
        public User Create(UserCreateInfo createInfo)
        {
            if (createInfo == null)
            {
                throw new ArgumentNullException(nameof(createInfo));
            }

            if (loginIndex.ContainsKey(createInfo.Login))
            {
                throw new UserDuplicationException(createInfo.Login);
            }

            var id = Guid.NewGuid();

            var user = new User
            {
                Id           = id,
                Login        = createInfo.Login,
                PasswordHash = Helper.Hash(createInfo.Password),
                Role         = createInfo.Role
            };

            primaryKeyIndex.Add(id, user);
            loginIndex.Add(user.Login, user);

            return(user);
        }
Пример #2
0
        /// <summary>
        /// 创建用户
        /// </summary>
        /// <param name="token">令牌</param>
        /// <param name="user">用户</param>
        /// <returns></returns>
        public UserInfo Create(string operationUserId, UserCreateInfo createInfo)
        {
            User opUser = this.OrganizationManager.UserManager.GetUserById(operationUserId);
            User user   = this.OrganizationManager.UserManager.Create(opUser, createInfo);

            return(user.MapUserInfo());
        }
Пример #3
0
        public UserDetailsModel Create(UserCreateModel createModel)
        {
            UserCreateInfo createInfo = this.MapperFactory.Map <UserCreateInfo, UserCreateModel>(createModel);
            User           user       = this.UserManager.Create(createInfo);

            return(this.MapperFactory.Map <UserDetailsModel, User>(user));
        }
Пример #4
0
 public virtual void OnCreated(User user, UserCreateInfo createInfo)
 {
     if (this.Created != null)
     {
         this.Created(user, createInfo);
     }
 }
Пример #5
0
 public virtual void OnCreating(UserCreateInfo createInfo)
 {
     if (this.Creating != null)
     {
         this.Creating(createInfo);
     }
 }
Пример #6
0
 private void UserEvents_Created(User sender, UserCreateInfo args)
 {
     using (UserEventQueue eventQueue = new UserEventQueue())
     {
         eventQueue.SendCreatedMessage(sender.Id);
     }
 }
Пример #7
0
        public UserDetailsModel Any(UserCreateModel createModel)
        {
            UserCreateInfo createInfo  = this.MapperFactory.Map <UserCreateInfo, UserCreateModel>(createModel);
            UserManager    userManager = new UserManager(this.BusinessManager);
            User           user        = userManager.Create(createInfo);

            return(this.MapperFactory.Map <UserDetailsModel, User>(user));
        }
Пример #8
0
 internal static CreateUserResponse CreateUser(UserCreateInfo info)
 {
     return(new CreateUserResponse()
     {
         code = -1,
         message = "not allow create user. Just press login btn"
     });
 }
Пример #9
0
        public User CreateUser()
        {
            UserManager userManager = new UserManager(this.BusinessManager);

            UserCreateInfo createInfo = this.RandomDataFiller.GetValue <UserCreateInfo>();
            User           user       = userManager.Create(createInfo);

            return(user);
        }
Пример #10
0
        public virtual User Create(User operationUser, UserCreateInfo createInfo)
        {
            lock (this._updateLockObject)
            {
                if (operationUser == null)
                {
                    throw new ArgumentNullException("operationUser");
                }

                if (string.IsNullOrEmpty(createInfo.Account))
                {
                    throw new AccountEmptyException();
                }
                if (string.IsNullOrEmpty(createInfo.Name))
                {
                    throw new UserNameEmptyException();
                }
                if (this._Users.Exists(x => x.Account == createInfo.Account))
                {
                    throw new AccountReapeatException();
                }
                Position position = this._orgMdl.PositionManager.GetPositionById(createInfo.MainPositionId);
                if (position == null && createInfo.Role == UserRole.User)
                {
                    throw new UserNeedMainPositionException();
                }
                if (createInfo.Password == null)
                {
                    throw new ArgumentNullException("userInfo.Password");
                }
                if (this.Creating != null)
                {
                    this.Creating(this, createInfo);
                }

                string encodedNewPassword = Cryptography.MD5Encode(createInfo.Password);
                User   user = new User(Guid.NewGuid().ToString(), createInfo.Name, createInfo.Account, encodedNewPassword, createInfo.Email, createInfo.Gender,
                                       createInfo.Role, createInfo.Status, null, null, createInfo.Remark, position, this._orgMdl);

                List <User> users = this._Users.ToList();
                users.Add(user);
                this._users = users;
                this.IndexUser();

                if (position != null)
                {
                    position.AddUser(operationUser, user);
                }

                if (this.Created != null)
                {
                    this.Created(this, user);
                }
                return(user);
            }
        }
Пример #11
0
        public void Create()
        {
            UserCreateInfo createInfo = this.RandomDataFiller.GetValue <UserCreateInfo>();
            User           user       = this.UserManager.Create(createInfo);

            try
            {
                this.ObjectEqualAsserter.AssertEqual(createInfo, user);
            }
            catch
            {
                this.Delete(user);
            }
        }
Пример #12
0
        public User Create(UserCreateInfo createInfo)
        {
            this.UserEvents.OnCreating(createInfo);
            UserDataModel model = this.MapperFactory.Map <UserDataModel, UserCreateInfo>(createInfo);

            using (DataModelProvider <UserDataModel> dataModelProvider = this.DataModelProviderFactory.CreateDataProvider <UserDataModel>())
            {
                dataModelProvider.Insert(model);
            }

            User user = this.MapperFactory.Map <User, UserDataModel>(model);

            this.UserEvents.OnCreated(user, createInfo);

            return(user);
        }
Пример #13
0
        public User Create(UserCreateInfo createInfo)
        {
            if (createInfo == null)
            {
                throw new ArgumentNullException(nameof(createInfo));
            }
            if (users.Find(x => x.Login == createInfo.Login).Any())
            {
                throw new UserDuplicationException(createInfo.Login);
            }
            var id   = Guid.NewGuid();
            var user = new User
            {
                Id           = id,
                Login        = createInfo.Login,
                PasswordHash = Helper.Hash(createInfo.Password),
                Role         = createInfo.Role
            };

            users.InsertOne(user);
            return(user);
        }
Пример #14
0
 private void UserEventManager_Created(User user, UserCreateInfo args)
 {
     this.Add(user);
 }
Пример #15
0
 public static CreateUserResponse CreateUser(UserCreateInfo info)
 {
     return(UserManager.CreateUser(info));
 }