diff --git a/src/main/java/com/zhangmeng/online/exam/ui/admin/LoginPage.java b/src/main/java/com/zhangmeng/online/exam/ui/admin/LoginPage.java index d0d0f9e..ae4d618 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/admin/LoginPage.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/admin/LoginPage.java @@ -93,7 +93,7 @@ public class LoginPage extends AnchorPane { Label label2 = new Label("密码"); username = new TextField(); password = new PasswordField(); - button1 = new Button("登录"); + button1 = new Button("登录"); button1.setMnemonicParsing(false); button1.setPrefHeight(23.0); button1.setPrefWidth(178.0); @@ -145,10 +145,10 @@ public class LoginPage extends AnchorPane { String response = HttpUtils.POST(ApiUtils.API_URL + "/login", params); JSONObject jsonObject = JSONObject.parseObject(response); if (jsonObject.getIntValue("code") == 2001) { - - Map data = (Map) jsonObject.get("data"); + Map data = (Map) jsonObject.get("data"); Object token = data.get("token"); - HttpUtils.USER_INFO.put("token",token); + HttpUtils.USER_INFO.put("token", token); + new Thread(this::user_type).start(); Alert alert = AlertUtils.alert_msg(jsonObject.getString("message")); MyScheduledService myService = new MyScheduledService(); @@ -167,7 +167,7 @@ public class LoginPage extends AnchorPane { myService.valueProperty().addListener(new ChangeListener() { @Override public void changed(ObservableValue observable, Number oldValue, Number newValue) { - if (newValue != null){ + if (newValue != null) { System.out.println("progressProperty:" + newValue.intValue()); } } @@ -177,9 +177,9 @@ public class LoginPage extends AnchorPane { @Override public void changed(ObservableValue observable, Number oldValue, Number newValue) { - if (newValue != null){ + if (newValue != null) { System.out.println("lastValueProperty:" + newValue.intValue()); - if (newValue.intValue() == 3){ + if (newValue.intValue() == 3) { myService.cancel(); alert.close(); success(); @@ -196,25 +196,59 @@ public class LoginPage extends AnchorPane { } } - private void success(){ + private void user_type() { + Map params = new HashMap<>(); + params.put("token", HttpUtils.USER_INFO.get("token")); + String response = HttpUtils.GET(ApiUtils.API_URL + "/user/getUserInfo", params); + JSONObject jsonObject = JSONObject.parseObject(response); + if (jsonObject.getIntValue("code") == 200) { + Map data = (Map) jsonObject.get("data"); + String type = data.get("type").toString(); + HttpUtils.USER_INFO.put("type", type); + } + } + + private void success() { + String type = HttpUtils.USER_INFO.get("type").toString(); + + switch (type) { + case "STUDENT" -> user_page(); + case "ADMIN" -> admin_page(); + } + } + + private void user_page() { Scene scene = button1.getScene(); Stage window = (Stage) scene.getWindow(); window.close(); Stage stage = new Stage(); -// IndexPage shortAnswerComponent = new IndexPage(); + //判断 PaperPage paperPage = new PaperPage(); scene = new Scene(paperPage, 1280, 720); stage.setScene(scene); stage.setTitle("在线考试系统"); stage.show(); + } + private void admin_page() { + Scene scene = button1.getScene(); + Stage window = (Stage) scene.getWindow(); + window.close(); + + Stage stage = new Stage(); + IndexPage indexPage = new IndexPage(); + + scene = new Scene(indexPage, 1280, 720); + stage.setScene(scene); + stage.setTitle("在线考试系统"); + stage.show(); } class MyScheduledService extends ScheduledService { - int sum = 0 ; + int sum = 0; @Override protected Task createTask() { @@ -232,7 +266,7 @@ public class LoginPage extends AnchorPane { super.updateValue(value); // System.out.println("updateValue"); - if (value.intValue() == 10){ + if (value.intValue() == 10) { MyScheduledService.this.cancel(); }