Exemplo n.º 1
0
        /// <summary>
        /// 账户更新
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <IResultModel> UpdateAccount(EmployeeAccountUpdateModel model)
        {
            var employee = await _repository.GetAsync(model.Id);

            if (employee == null)
            {
                return(ResultModel.NotExists);
            }

            if (await _accountRepository.ExistsUserName(model.UserName, employee.AccountId, AccountType.User))
            {
                return(ResultModel.Failed("用户名已存在"));
            }

            var account = await _accountRepository.GetAsync(employee.AccountId);

            if (account != null)
            {
                var syncModel = new AccountSyncModel
                {
                    Id          = account.Id,
                    Name        = account.Name,
                    Email       = account.Email,
                    Phone       = account.Phone,
                    Roles       = model.Roles,
                    UserName    = model.UserName,
                    NewPassword = model.Password
                };

                var result = await _accountService.Sync(syncModel);

                return(ResultModel.Result(result.Successful));
            }

            return(ResultModel.Failed());
        }
Exemplo n.º 2
0
        /// <summary>
        /// 账户编辑
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <IResultModel> EditAccount(int id)
        {
            var employee = await _repository.GetAsync(id);

            if (employee == null)
            {
                return(ResultModel.NotExists);
            }

            var accountTask = _accountRepository.GetAsync(employee.AccountId);
            var rolesTask   = _accountRoleRepository.QueryRole(employee.AccountId);

            var account = await accountTask;
            var roles   = await rolesTask;

            var model = new EmployeeAccountUpdateModel
            {
                Id       = id,
                UserName = account.UserName,
                Roles    = roles.Select(m => m.Id).ToList()
            };

            return(ResultModel.Success(model));
        }
Exemplo n.º 3
0
 public Task <IResultModel> UpdateAccount(EmployeeAccountUpdateModel model)
 {
     return(_service.UpdateAccount(model));
 }