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); }
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); }
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); }
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); } }
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); }