示例#1
0
        public async Task <TeamView> UpdateTeamAsync(TeamView teamView)
        {
            var team   = teamView.Map();
            var result = await _teamRepository.UpdateAsync(team);

            return(result.Map());
        }
示例#2
0
        public async Task HandleAsync(DeleteTeamCommand command)
        {
            var team = teamsRepository.Get(command.TeamId);

            team.Delete();
            await teamsRepository.UpdateAsync(team);
        }
示例#3
0
        public async Task HandleAsync(UpdateTeamCommand command)
        {
            var team = teamsRepository.Get(command.TeamId);

            team.SetTitle(command.Title);
            team.SetDescription(command.Description);
            team.SetUsers(command.Users);
            team.SetUsers(command.UsersAction);
            await teamsRepository.UpdateAsync(team);
        }
示例#4
0
        public override async Task <BaseResponse> UpdateAsync(TeamData request, ServerCallContext context)
        {
            try
            {
                if (request is null)
                {
                    await _teamsRepository.UpdateAsync(null);
                }

                Team team = new()
                {
                    Id          = request.Id,
                    CreatedOn   = request.CreatedOn.ToDateTime().ToLocalTime(),
                    Name        = request.Name,
                    Description = request.Description
                };

                int result = await _teamsRepository.UpdateAsync(team);

                if (result == 0)
                {
                    throw new Exception("Team has not been updated");
                }
                BaseResponse response = new()
                {
                    Code         = Code.Success,
                    ErrorMessage = string.Empty,
                    DataId       = team.Id
                };
                LogData logData = new()
                {
                    CallSide         = nameof(TeamsService),
                    CallerMethodName = nameof(UpdateAsync),
                    CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                    Request          = request,
                    Response         = response
                };
                _logger.AddLog(logData);
                return(response);
            }
            catch (NullReferenceException nrex)
            {
                LogData logData = new()
                {
                    CallSide         = nameof(TeamsService),
                    CallerMethodName = nameof(UpdateAsync),
                    CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                    Request          = request,
                    Response         = nrex
                };
                _logger.AddErrorLog(logData);
                return(new BaseResponse
                {
                    Code = Code.DataError,
                    ErrorMessage = nrex.Message
                });
            }
            catch (ArgumentException aex)
            {
                LogData logData = new()
                {
                    CallSide         = nameof(TeamsService),
                    CallerMethodName = nameof(UpdateAsync),
                    CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                    Request          = request,
                    Response         = aex
                };
                _logger.AddErrorLog(logData);
                return(new BaseResponse
                {
                    Code = Code.DataError,
                    ErrorMessage = aex.Message
                });
            }
            catch (DbUpdateException duex)
            {
                LogData logData = new()
                {
                    CallSide         = nameof(TeamsService),
                    CallerMethodName = nameof(UpdateAsync),
                    CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                    Request          = request,
                    Response         = duex
                };
                _logger.AddErrorLog(logData);
                return(new BaseResponse
                {
                    Code = Code.DbError,
                    ErrorMessage = "An error occured while saving team"
                });
            }
            catch (Exception ex)
            {
                LogData logData = new()
                {
                    CallSide         = nameof(TeamsService),
                    CallerMethodName = nameof(UpdateAsync),
                    CreatedOn        = _dateTimeUtil.GetCurrentDateTime(),
                    Request          = request,
                    Response         = ex
                };
                _logger.AddErrorLog(logData);
                return(new BaseResponse
                {
                    Code = Code.UnknownError,
                    ErrorMessage = ex.Message
                });
            }
        }

        public override Task <TeamsResponse> GetAll(Empty request, ServerCallContext context)