示例#1
0
        public CrResult <UserDto> Edit(UserCrDto userCrDto, User user)
        {
            var crResult = new CrResult <UserDto>();

            if (user != null)
            {
                bool nicknameChanged = userCrDto.Nickname != user.nickname;
                bool passwordChanged = String.IsNullOrEmpty(userCrDto.Password) && !new CustomUserNameValidator().IsPasswordMatch(userCrDto.Password, user);
                CheckRegisterData(userCrDto, crResult, nicknameChanged, passwordChanged);
                if (crResult.ActionResult == ActionResult.Success)
                {
                    Copy(userCrDto, user, nicknameChanged, passwordChanged);
                    try
                    {
                        _context.SaveChanges();
                        crResult.CreatedObject = Converter.ConvertToUserDto(user);
                    }
                    catch (DbUpdateException)
                    {
                        crResult.ActionResult = ActionResult.DatabaseError;
                    }
                }
            }
            else
            {
                crResult.AddError(new Error(CheckStatus.IdDoesNotExist, nameof(user.user_id)));
            }
            return(crResult);
        }
示例#2
0
        public CrResult <EventDto> EditEvent(long userId, EventDto ev)
        {
            var res      = new CrResult <EventDto>();
            var targetEv = _context.Event.Find(ev.EventId);

            if (targetEv == null)
            {
                res.AddError(new Error(CheckStatus.IdDoesNotExist, nameof(ev.EventId)));
                return(res);
            }
            if (targetEv.channel_id != ev.ChannelId)
            {
                res.AddError(new Error(CheckStatus.IdDoesNotExist, nameof(ev.ChannelId)));
                return(res);
            }
            if (new UserRolesManager().CheckPermition(userId, targetEv.channel_id, _editNewsPermitionId))
            {
                targetEv.improtance_id = ev.ImportanceId;
                targetEv.description   = ev.Description;
                targetEv.event_time    = ev.EventTime;
                targetEv.title         = ev.Title;
                try
                {
                    _context.SaveChanges();
                    res.CreatedObject = ev;
                    return(res);
                }
                catch (Exception)
                {
                    res.ActionResult = ActionResult.DatabaseError;
                    return(res);
                }
            }
            else
            {
                res.ActionResult = ActionResult.PermissionDenied;
                return(res);
            }
        }