From 2152c77ba25688298c1a7af5bd693975a18a8cce Mon Sep 17 00:00:00 2001 From: qmstyle Date: Sat, 15 Mar 2025 12:00:03 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=A0=E9=99=A4=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=202025=E5=B9=B43=E6=9C=8815=E6=97=A511:59:52?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../online/exam/ui/api/ApiUtils.java | 2 + .../online/exam/ui/api/DataLoad.java | 1 + .../online/exam/ui/api/form/RoleForm.java | 62 +++++++++++++++++++ .../online/exam/ui/api/form/UserForm.java | 17 ++--- .../online/exam/ui/api/form/base/Form.java | 22 +++++++ .../exam/ui/api/model/PermissionDataLoad.java | 5 ++ .../exam/ui/api/model/QuestionDataLoad.java | 5 ++ .../exam/ui/api/model/RoleDataLoad.java | 11 +++- .../exam/ui/api/model/UserDataLoad.java | 5 ++ .../DynamicTableComponentCallBackImpl.java | 5 +- src/main/resources/fmxl/role_form.fxml | 20 ++++++ 11 files changed, 138 insertions(+), 17 deletions(-) create mode 100644 src/main/java/com/zhangmeng/online/exam/ui/api/form/RoleForm.java create mode 100644 src/main/java/com/zhangmeng/online/exam/ui/api/form/base/Form.java create mode 100644 src/main/resources/fmxl/role_form.fxml diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/ApiUtils.java b/src/main/java/com/zhangmeng/online/exam/ui/api/ApiUtils.java index 67cec54..9392427 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/ApiUtils.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/ApiUtils.java @@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.zhangmeng.online.exam.ui.api.form.RoleForm; import com.zhangmeng.online.exam.ui.api.form.UserForm; import com.zhangmeng.online.exam.ui.api.model.PermissionDataLoad; import com.zhangmeng.online.exam.ui.api.model.QuestionDataLoad; @@ -69,6 +70,7 @@ public class ApiUtils { public static DataView getRoleList() { DataLoad dataLoad = new RoleDataLoad(); + dataLoad.setForm(new RoleForm()); return dataLoad.loadData(PAGE_NUM,PAGE_SIZE); } diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/DataLoad.java b/src/main/java/com/zhangmeng/online/exam/ui/api/DataLoad.java index 6ffe149..d8b419a 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/DataLoad.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/DataLoad.java @@ -21,4 +21,5 @@ public interface DataLoad { Map saveForm(Map map); + public void deleteData(String id); } diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/form/RoleForm.java b/src/main/java/com/zhangmeng/online/exam/ui/api/form/RoleForm.java new file mode 100644 index 0000000..c083d39 --- /dev/null +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/form/RoleForm.java @@ -0,0 +1,62 @@ +package com.zhangmeng.online.exam.ui.api.form; + +import com.zhangmeng.online.exam.ui.api.ApiUtils; +import com.zhangmeng.online.exam.ui.api.DataLoad; +import com.zhangmeng.online.exam.ui.api.form.base.Form; +import com.zhangmeng.online.exam.ui.api.model.UserDataLoad; +import com.zhangmeng.online.exam.ui.components.DynamicTableComponent; +import com.zhangmeng.online.exam.ui.components.callBack.DynamicTableComponentCallBack; +import javafx.beans.property.SimpleStringProperty; +import javafx.collections.ObservableList; +import javafx.scene.control.*; +import javafx.scene.layout.AnchorPane; +import javafx.stage.Stage; + +/** + * @author zm + * @date 2025/3/15 11:38 + * @version: 1.0 + */ +public class RoleForm extends Form { + + public RoleForm() { + Label label1 = new Label("类型:"); + label1.setLayoutX(135.0); + label1.setLayoutY(84.0); + Label label2 = new Label("角色名称:"); + label2.setLayoutX(130.0); + label2.setLayoutY(145.0); + Label label3 = new Label("角色描述:"); + label3.setLayoutX(123.0); + label3.setLayoutY(209.0); + + ChoiceBox choiceBox = new ChoiceBox(); + choiceBox.setLayoutX(200); + choiceBox.setLayoutY(80.0); + choiceBox.setPrefHeight(23.0); + choiceBox.setPrefWidth(229.0); + choiceBox.getItems().addAll("管理员", "教师", "学生"); + choiceBox.setTooltip(new Tooltip("请选择类型")); + + TextField textField1 = new TextField(); + textField1.setLayoutX(200.0); + textField1.setLayoutY(141.0); + textField1.setPrefHeight(23.0); + textField1.setPrefWidth(229.0); + + TextField textField2 = new TextField(); + textField2.setLayoutX(200); + textField2.setLayoutY(205.0); + textField2.setPrefHeight(23.0); + textField2.setPrefWidth(229.0); + + Button button1 = new Button("保存"); + button1.setLayoutX(267.0); + button1.setLayoutY(289.0); + button1.setMnemonicParsing(false); + button1.setText("保存"); + + this.getChildren().addAll(label1, label2, label3, choiceBox, textField1, textField2, button1); + + } +} diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/form/UserForm.java b/src/main/java/com/zhangmeng/online/exam/ui/api/form/UserForm.java index 6317ab9..e8cb2f5 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/form/UserForm.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/form/UserForm.java @@ -2,6 +2,7 @@ package com.zhangmeng.online.exam.ui.api.form; import com.zhangmeng.online.exam.ui.api.ApiUtils; import com.zhangmeng.online.exam.ui.api.DataLoad; +import com.zhangmeng.online.exam.ui.api.form.base.Form; import com.zhangmeng.online.exam.ui.api.model.UserDataLoad; import com.zhangmeng.online.exam.ui.components.DynamicTableComponent; import com.zhangmeng.online.exam.ui.components.callBack.DynamicTableComponentCallBack; @@ -23,17 +24,7 @@ import java.util.Map; * @date 2025/3/14 17:40 * @version: 1.0 */ -public class UserForm extends AnchorPane { - - private DynamicTableComponent tableComponent; - - public DynamicTableComponent getTableComponent() { - return tableComponent; - } - - public void setTableComponent(DynamicTableComponent tableComponent) { - this.tableComponent = tableComponent; - } +public class UserForm extends Form { public UserForm() { @@ -98,8 +89,8 @@ public class UserForm extends AnchorPane { Stage stage = (Stage) this.getScene().getWindow(); stage.close(); - DynamicTableComponentCallBack callBack = tableComponent.getCallBack(); - ObservableList> data = tableComponent.getData(); + DynamicTableComponentCallBack callBack = getTableComponent().getCallBack(); + ObservableList> data = getTableComponent().getData(); data.clear(); data.addAll(callBack.flushData(1, ApiUtils.PAGE_SIZE).getDataList()); diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/form/base/Form.java b/src/main/java/com/zhangmeng/online/exam/ui/api/form/base/Form.java new file mode 100644 index 0000000..2e67b52 --- /dev/null +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/form/base/Form.java @@ -0,0 +1,22 @@ +package com.zhangmeng.online.exam.ui.api.form.base; + +import com.zhangmeng.online.exam.ui.components.DynamicTableComponent; +import javafx.scene.layout.AnchorPane; + +/** + * @author zm + * @date 2025/3/15 11:46 + * @version: 1.0 + */ +public class Form extends AnchorPane { + + private DynamicTableComponent tableComponent; + + public DynamicTableComponent getTableComponent() { + return tableComponent; + } + + public void setTableComponent(DynamicTableComponent tableComponent) { + this.tableComponent = tableComponent; + } +} diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/model/PermissionDataLoad.java b/src/main/java/com/zhangmeng/online/exam/ui/api/model/PermissionDataLoad.java index 96530da..95dd453 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/model/PermissionDataLoad.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/model/PermissionDataLoad.java @@ -56,4 +56,9 @@ public class PermissionDataLoad implements DataLoad { public Map saveForm(Map map) { return null; } + + @Override + public void deleteData(String id) { + + } } diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/model/QuestionDataLoad.java b/src/main/java/com/zhangmeng/online/exam/ui/api/model/QuestionDataLoad.java index 861ec78..c34b2a9 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/model/QuestionDataLoad.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/model/QuestionDataLoad.java @@ -53,6 +53,11 @@ public class QuestionDataLoad implements DataLoad { return null; } + @Override + public void deleteData(String id) { + + } + @Override public Map saveForm(Map map) { return null; diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/model/RoleDataLoad.java b/src/main/java/com/zhangmeng/online/exam/ui/api/model/RoleDataLoad.java index d87eeea..8345e8a 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/model/RoleDataLoad.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/model/RoleDataLoad.java @@ -19,6 +19,8 @@ import static com.zhangmeng.online.exam.ui.api.ApiUtils.API_URL; * @version: 1.0 */ public class RoleDataLoad implements DataLoad { + + private Parent form; @Override public ApiUtils.DataView loadData(Integer pageNum, Integer pageSize) { Map params = new HashMap<>(); @@ -44,16 +46,21 @@ public class RoleDataLoad implements DataLoad { @Override public void setForm(Parent view) { - + this.form = view; } @Override public Parent getForm() { - return null; + return form; } @Override public Map saveForm(Map map) { return null; } + + @Override + public void deleteData(String id) { + + } } diff --git a/src/main/java/com/zhangmeng/online/exam/ui/api/model/UserDataLoad.java b/src/main/java/com/zhangmeng/online/exam/ui/api/model/UserDataLoad.java index abc1d9b..35460cf 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/api/model/UserDataLoad.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/api/model/UserDataLoad.java @@ -68,4 +68,9 @@ public class UserDataLoad implements DataLoad { } return null; } + + @Override + public void deleteData(String id) { + + } } diff --git a/src/main/java/com/zhangmeng/online/exam/ui/components/callBack/DynamicTableComponentCallBackImpl.java b/src/main/java/com/zhangmeng/online/exam/ui/components/callBack/DynamicTableComponentCallBackImpl.java index 8c6701f..23c94cf 100644 --- a/src/main/java/com/zhangmeng/online/exam/ui/components/callBack/DynamicTableComponentCallBackImpl.java +++ b/src/main/java/com/zhangmeng/online/exam/ui/components/callBack/DynamicTableComponentCallBackImpl.java @@ -3,6 +3,7 @@ package com.zhangmeng.online.exam.ui.components.callBack; import com.zhangmeng.online.exam.ui.api.ApiUtils; import com.zhangmeng.online.exam.ui.api.DataLoad; import com.zhangmeng.online.exam.ui.api.form.UserForm; +import com.zhangmeng.online.exam.ui.api.form.base.Form; import com.zhangmeng.online.exam.ui.components.DynamicTableComponent; import com.zhangmeng.online.exam.ui.utils.AlertUtils; import javafx.beans.property.SimpleStringProperty; @@ -41,8 +42,8 @@ public class DynamicTableComponentCallBackImpl implements DynamicTableComponentC @Override public void Add(Parent node, Stage primaryStage, DynamicTableComponent table) { - UserForm userForm = (UserForm)node; - userForm.setTableComponent(table); + Form form = (Form) node; + form.setTableComponent(table); AlertUtils.alert("设置", node, primaryStage); } diff --git a/src/main/resources/fmxl/role_form.fxml b/src/main/resources/fmxl/role_form.fxml new file mode 100644 index 0000000..2a79d8e --- /dev/null +++ b/src/main/resources/fmxl/role_form.fxml @@ -0,0 +1,20 @@ + + + + + + + + + + + +