From a3166fd29e01a31c2f72ca28123e5afbaac6f86a Mon Sep 17 00:00:00 2001 From: Ognjen Cirkovic Date: Thu, 22 Dec 2022 03:20:44 +0100 Subject: Omoguceno adminu brisanje korisnika. --- src/main/java/database/Database.java | 38 +++++++++++++++++++ src/main/java/pokemon/IService.java | 2 + src/main/java/pokemon/Service.java | 13 +++++++ src/main/webapp/pages/adminIndex.jsp | 60 ++++++++++++++++++++++++++++++ src/main/webapp/pages/deleteUser.jsp | 11 ++++++ src/main/webapp/pages/pokemonViewModel.jsp | 2 +- 6 files changed, 125 insertions(+), 1 deletion(-) create mode 100644 src/main/webapp/pages/deleteUser.jsp (limited to 'src') diff --git a/src/main/java/database/Database.java b/src/main/java/database/Database.java index 7e0997f..ee07fac 100644 --- a/src/main/java/database/Database.java +++ b/src/main/java/database/Database.java @@ -240,5 +240,43 @@ public class Database { return monster; } + public ArrayList getAllUsers(){ + ArrayList users=new ArrayList(); + try { + String sql="SELECT * FROM user"; + Statement statement = conn.createStatement(); + ResultSet res=statement.executeQuery(sql); + while(res.next()) { + User tempUser=new User(); + tempUser=new User(); + tempUser.setId(res.getLong("id")); + tempUser.setAdmin(res.getBoolean("admin")); + tempUser.setUsername(res.getString("username")); + if(res.getObject("pokemonId")!=null) + tempUser.setmonsterId(res.getLong("pokemonId")); + else + tempUser.setmonsterId(-1); + users.add(tempUser); + } + + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + return users; + + } + public void deleteUser(long id) { + String sql="DELETE FROM user WHERE id=?"; + try { + PreparedStatement preStatement=conn.prepareStatement(sql); + preStatement.setLong(1, id); + preStatement.executeUpdate(); + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } } diff --git a/src/main/java/pokemon/IService.java b/src/main/java/pokemon/IService.java index 538dacd..30ca93c 100644 --- a/src/main/java/pokemon/IService.java +++ b/src/main/java/pokemon/IService.java @@ -18,5 +18,7 @@ public interface IService extends Remote { public Monster getUserMonster(String username) throws RemoteException; public void addMonsterToUser(long id,long monsterId)throws RemoteException; public MonsterViewModel getMonsterViewModel(long id)throws RemoteException; + public ArrayList getAllUsers()throws RemoteException; + public void deleteUser(long id)throws RemoteException; } diff --git a/src/main/java/pokemon/Service.java b/src/main/java/pokemon/Service.java index cfdc076..91e8dae 100644 --- a/src/main/java/pokemon/Service.java +++ b/src/main/java/pokemon/Service.java @@ -64,6 +64,19 @@ public class Service extends UnicastRemoteObject implements IService { Database db=Database.getInstance(); return db.getMonsterViewModel(id); } + + @Override + public ArrayList getAllUsers() throws RemoteException { + Database db=Database.getInstance(); + return db.getAllUsers(); + } + + @Override + public void deleteUser(long id) throws RemoteException { + Database db=Database.getInstance(); + db.deleteUser(id); + + } } diff --git a/src/main/webapp/pages/adminIndex.jsp b/src/main/webapp/pages/adminIndex.jsp index e4225e2..3c16a28 100644 --- a/src/main/webapp/pages/adminIndex.jsp +++ b/src/main/webapp/pages/adminIndex.jsp @@ -1,13 +1,73 @@ +<%@page import="models.User"%> +<%@page import="models.Monster"%> +<%@page import="java.util.ArrayList"%> +<%@page import="models.CONSTS"%> +<%@page import="java.rmi.Naming"%> +<%@page import="pokemon.IService"%> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> + <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> Admin + +

Lista korisnika

+<% +IService service=(IService)Naming.lookup(CONSTS.rmiUrl); +ArrayListusers=service.getAllUsers(); +request.setAttribute("users", users); +%> + + + + + + + + + + + + + + + + + + + +
IdUsernameadminpokemonId
+ + + + + + + + + + + + + + + +
+ + + +

Registracija novog admina

Korisnicko ime diff --git a/src/main/webapp/pages/deleteUser.jsp b/src/main/webapp/pages/deleteUser.jsp new file mode 100644 index 0000000..e8de025 --- /dev/null +++ b/src/main/webapp/pages/deleteUser.jsp @@ -0,0 +1,11 @@ +<%@page import="models.CONSTS"%> +<%@page import="java.rmi.Naming"%> +<%@page import="pokemon.IService"%> +<% +long userId=Long.parseLong(request.getParameter("userId")); +IService service=(IService)Naming.lookup(CONSTS.rmiUrl); +service.deleteUser(userId); + +response.sendRedirect("adminIndex.jsp"); + +%> \ No newline at end of file diff --git a/src/main/webapp/pages/pokemonViewModel.jsp b/src/main/webapp/pages/pokemonViewModel.jsp index ba0068b..fb10281 100644 --- a/src/main/webapp/pages/pokemonViewModel.jsp +++ b/src/main/webapp/pages/pokemonViewModel.jsp @@ -31,7 +31,7 @@ - + -- cgit v1.2.3