Пример #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> CreateEvent(long userId, EventCrDto ev)
        {
            var res = new CrResult <EventDto>();

            CheckEvent(ev, res);
            if (res.ActionResult == ActionResult.Success)
            {
                if (new UserRolesManager().CheckPermition(userId, ev.ChannelId, _addNewsPermitionId))
                {
                    try
                    {
                        var createdEv = _context.Event.Add(Converter.ConvertToEvent(ev));
                        _context.SaveChanges();
                        res.CreatedObject = Converter.ConvertToEventDto(createdEv);
                    }
                    catch (Exception)
                    {
                        res.ActionResult = ActionResult.DatabaseError;
                    }
                }
                else
                {
                    res.ActionResult = ActionResult.PermissionDenied;
                }
            }
            return(res);
        }
Пример #3
0
        public CrResult <ChannelRoleDto> CreateChannel(ChannelCrDto channelDto, long userId)
        {
            var result = new CrResult <ChannelRoleDto>();

            CheckData(result, channelDto);
            if (result.ActionResult == ActionResult.Success)
            {
                try
                {
                    var c        = _context.Channel.Add(Converter.ConvertToChannel(channelDto));
                    var userRole = UserRolesManager.AddUserRole(c.channel_id, userId, _adminId, _context);
                    _context.SaveChanges();
                    userRole.Role = new Role
                    {
                        role_id   = 0,
                        role_name = "Admin"
                    };
                    result.CreatedObject = Converter.ConvertToChannelRoleDto(userRole);
                }
                catch (DbUpdateException)
                {
                    result.ActionResult = ActionResult.DatabaseError;
                }
            }
            return(result);
        }
Пример #4
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);
            }
        }
Пример #5
0
        public CrResult <UserDto> Create(UserCrDto userCrDto)
        {
            var crResult = new CrResult <UserDto>();

            CheckRegisterData(userCrDto, crResult, true, true);
            if (crResult.ActionResult == ActionResult.Success)
            {
                var user       = Converter.ConvertToUser(userCrDto);
                var encryption = new HashEncryption();
                encryption.HashPassword(user);
                try
                {
                    var createdUser = _context.User.Add(user);
                    _context.SaveChanges();
                    crResult.CreatedObject = Converter.ConvertToUserDto(createdUser);
                }
                catch (DbUpdateException)
                {
                    crResult.ActionResult = ActionResult.DatabaseError;
                }
            }
            return(crResult);
        }