コード例 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="request"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task <HandleResultDto> Handle(CreateUserCommand request, CancellationToken cancellationToken)
        {
            if (String.IsNullOrEmpty(request.Id))
            {
                var entity = new SystemUser(request.UserName, request.Password, request.RealName, request.Email);
                await _systemUserRepository.AddAsync(entity, cancellationToken);
            }
            else
            {
                var entity = await this._systemUserRepository.GetAsync(request.Id);

                if (entity != null)
                {
                    entity.UpdateUser(request.UserName, request.Password, request.RealName, request.Email);
                    await _systemUserRepository.UpdateAsync(entity, cancellationToken);
                }
            }

            await _systemUserRepository.UnitOfWork.SaveEntitiesAsync(cancellationToken);

            return(new HandleResultDto
            {
                State = 1,
            });
        }