public UsuarioFamiliaDto Remove(string AdminDni, string UserDni) { UsuarioFamiliaDto usuarioFamiliaDto = null; var RolUsuarioUser = _context.RolUsuarios.Single(x => x.Dni == UserDni); var RolUsuarioAdmin = _context.RolUsuarios.Single(x => x.Dni == AdminDni); if (RolUsuarioAdmin.RolPerfilId != 1) { throw new UserNotAdminException(); } else { if (RolUsuarioUser.RolPerfilId == 1) { throw new UserToDeleteIsAdminException(); } else { var usuarioFamilia = _context.UsuarioFamilias.Include(x => x.Usuario).Single(x => x.Dni == UserDni); usuarioFamiliaDto = _mapper.Map <UsuarioFamiliaDto>(usuarioFamilia); var entityUsuarioFamilia = _context.UsuarioFamilias.Attach(usuarioFamilia); entityUsuarioFamilia.State = EntityState.Deleted; var entityRolUsuario = _context.RolUsuarios.Attach(RolUsuarioUser); entityRolUsuario.State = EntityState.Deleted; _context.SaveChanges(); } } return(usuarioFamiliaDto); }
public UsuarioFamiliaDto Remove(string UserDni) { UsuarioFamiliaDto usuarioFamiliaDto = null; // Valida que solo que borren los roles del grupo familiar y no de distribuidora RolUsuario RolUsuarioUser = _context.RolUsuarios.SingleOrDefault(x => x.Dni == UserDni && x.RolPerfil.PerfilId == 1); UsuarioFamilia usuarioFamilia = _context.UsuarioFamilias.SingleOrDefault(x => x.Dni == UserDni); usuarioFamiliaDto = _mapper.Map <UsuarioFamiliaDto>(usuarioFamilia); var entityUsuarioFamilia = _context.UsuarioFamilias.Attach(usuarioFamilia); entityUsuarioFamilia.State = EntityState.Deleted; var entityRolUsuario = _context.RolUsuarios.Attach(RolUsuarioUser); entityRolUsuario.State = EntityState.Deleted; _context.SaveChanges(); return(usuarioFamiliaDto); }