From e0c217c5ea7a4cb50900c04e739ac7900fbde314 Mon Sep 17 00:00:00 2001
From: wangchunxiang <526328077@qq.com>
Date: Tue, 14 Oct 2025 13:53:43 +0800
Subject: [PATCH] =?UTF-8?q?feat(auth):=20=E5=AE=9E=E7=8E=B0=E5=9F=BA?=
=?UTF-8?q?=E7=A1=80=E7=99=BB=E5=BD=95=E5=8A=9F=E8=83=BD=E5=B9=B6=E9=85=8D?=
=?UTF-8?q?=E7=BD=AE=E5=85=A8=E5=B1=80=E7=BD=91=E7=BB=9C=E5=9C=B0=E5=9D=80?=
=?UTF-8?q?=E6=96=B0=E5=A2=9E=20GlobalConfig=20=E7=B1=BB=E7=94=A8=E4=BA=8E?=
=?UTF-8?q?=E7=AE=A1=E7=90=86=E5=85=A8=E5=B1=80=E9=85=8D=E7=BD=AE=EF=BC=8C?=
=?UTF-8?q?=E5=8C=85=E6=8B=AC=E7=BD=91=E7=BB=9C=E6=8E=A5=E5=8F=A3=E5=9C=B0?=
=?UTF-8?q?=E5=9D=80=E5=92=8C=E7=A7=9F=E6=88=B7=E6=A0=87=E8=AF=86=E3=80=82?=
=?UTF-8?q?=E6=96=B0=E5=A2=9E=20LoginUserDTO=20=E6=95=B0=E6=8D=AE=E4=BC=A0?=
=?UTF-8?q?=E8=BE=93=E5=AF=B9=E8=B1=A1=E7=94=A8=E4=BA=8E=E5=B0=81=E8=A3=85?=
=?UTF-8?q?=E7=99=BB=E5=BD=95=E8=B4=A6=E5=8F=B7=E5=92=8C=E5=AF=86=E7=A0=81?=
=?UTF-8?q?=E3=80=82=E4=BF=AE=E6=94=B9=20LoginView=20=E9=A1=B5=E9=9D=A2?=
=?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8C=E5=AE=9E=E7=8E=B0=E8=B0=83=E7=94=A8?=
=?UTF-8?q?=E5=90=8E=E7=AB=AF=E7=99=BB=E5=BD=95=E6=8E=A5=E5=8F=A3=E8=BF=9B?=
=?UTF-8?q?=E8=A1=8C=E8=AE=A4=E8=AF=81=E3=80=82=20=E6=9B=B4=E6=96=B0=20mod?=
=?UTF-8?q?ule-info.java=20=E5=92=8C=20pom.xml=20=E4=BB=A5=E6=94=AF?=
=?UTF-8?q?=E6=8C=81=E6=96=B0=E5=BC=95=E5=85=A5=E7=9A=84=E4=BE=9D=E8=B5=96?=
=?UTF-8?q?=E5=BA=93=EF=BC=88hutool=E3=80=81fastjson=E7=AD=89=EF=BC=89?=
=?UTF-8?q?=E3=80=82=E5=8D=87=E7=BA=A7=20fastjson=20=E7=89=88=E6=9C=AC?=
=?UTF-8?q?=E8=87=B32.0.9=20=E4=BB=A5=E5=A2=9E=E5=BC=BA=E5=AE=89=E5=85=A8?=
=?UTF-8?q?=E6=80=A7=E4=B8=8E=E7=A8=B3=E5=AE=9A=E6=80=A7=E3=80=82```?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitignore | 1 +
pom.xml | 2 +-
.../com/fantaibao/DesktopApplication.java | 2 +
.../com/fantaibao/config/GlobalConfig.java | 39 +++++++++++++++++++
.../com/fantaibao/model/LoginUserDTO.java | 17 ++++++++
.../java/com/fantaibao/page/LoginView.java | 30 +++++++-------
src/main/java/module-info.java | 9 ++++-
7 files changed, 84 insertions(+), 16 deletions(-)
create mode 100644 src/main/java/com/fantaibao/config/GlobalConfig.java
create mode 100644 src/main/java/com/fantaibao/model/LoginUserDTO.java
diff --git a/.gitignore b/.gitignore
index 4eaf5f8..7dce4e2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,6 +4,7 @@
.idea
# Log file
*.log
+*.log.*.gz
# BlueJ files
*.ctxt
diff --git a/pom.xml b/pom.xml
index aae3e76..1486244 100644
--- a/pom.xml
+++ b/pom.xml
@@ -56,7 +56,7 @@
com.alibaba
fastjson
- 1.2.83
+ 2.0.9
diff --git a/src/main/java/com/fantaibao/DesktopApplication.java b/src/main/java/com/fantaibao/DesktopApplication.java
index 5c22e97..db0434c 100644
--- a/src/main/java/com/fantaibao/DesktopApplication.java
+++ b/src/main/java/com/fantaibao/DesktopApplication.java
@@ -29,6 +29,8 @@ public class DesktopApplication extends Application {
@Override
public void start(Stage primaryStage) {
+ // 设置窗口标题
+ primaryStage.setTitle("中差评采集工具");
// 添加窗口关闭事件监听器
primaryStage.setOnCloseRequest(this::handleCloseEvent);
// 直接启动登录界面
diff --git a/src/main/java/com/fantaibao/config/GlobalConfig.java b/src/main/java/com/fantaibao/config/GlobalConfig.java
new file mode 100644
index 0000000..c9f06cb
--- /dev/null
+++ b/src/main/java/com/fantaibao/config/GlobalConfig.java
@@ -0,0 +1,39 @@
+package com.fantaibao.config;
+
+public class GlobalConfig {
+ /**
+ * 基础网络地址
+ */
+ public static final String BASE_NET_URL = "http://127.0.0.1:9606";
+
+ /**
+ * 登录接口地址
+ */
+ public static final String loginInterfaceAddress = BASE_NET_URL+"/user/login";
+
+ /**
+ * 更新cookie地址
+ */
+ public static final String updateCookieInterfaceAddress = BASE_NET_URL+"/crawler/appraisal/update-user-cookie";
+
+ /**
+ * 租户Id标识
+ */
+ public static String tenantId;
+
+ /**
+ * 美团点评评价接口地址
+ */
+ public static String mtDianPingInterfaceAddress;
+
+ /**
+ * 美团大众点评评价接口地址
+ */
+ public static String mtDaZhInterfaceAddress;
+
+ /**
+ * 抖音评价接口地址
+ */
+ public static String dyPingJiaInterfaceAddress;
+
+}
diff --git a/src/main/java/com/fantaibao/model/LoginUserDTO.java b/src/main/java/com/fantaibao/model/LoginUserDTO.java
new file mode 100644
index 0000000..c730db5
--- /dev/null
+++ b/src/main/java/com/fantaibao/model/LoginUserDTO.java
@@ -0,0 +1,17 @@
+package com.fantaibao.model;
+
+import lombok.Data;
+
+@Data
+public class LoginUserDTO {
+
+ /**
+ * 账号
+ */
+ private String account;
+ /**
+ * 密码
+ */
+ private String password;
+
+}
diff --git a/src/main/java/com/fantaibao/page/LoginView.java b/src/main/java/com/fantaibao/page/LoginView.java
index da9259a..6a616df 100644
--- a/src/main/java/com/fantaibao/page/LoginView.java
+++ b/src/main/java/com/fantaibao/page/LoginView.java
@@ -1,7 +1,9 @@
package com.fantaibao.page;
-import com.fantaibao.DesktopApplication;
-import javafx.application.Platform;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSON;
+import com.fantaibao.config.GlobalConfig;
+import com.fantaibao.model.LoginUserDTO;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
@@ -11,21 +13,14 @@ import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
-import javafx.stage.WindowEvent;
public class LoginView {
- private Stage primaryStage;
-
public LoginView(Stage primaryStage) {
- this.primaryStage = primaryStage;
- initialize();
+ initialize(primaryStage);
}
- private void initialize() {
- // 设置窗口标题
- primaryStage.setTitle("中差评采集工具");
-
+ private void initialize(Stage primaryStage) {
// 创建主容器
VBox root = new VBox();
root.setAlignment(Pos.CENTER);
@@ -58,9 +53,18 @@ public class LoginView {
// 添加登录按钮事件处理
loginButton.setOnAction(e -> {
+ // 获取用户输入的账号和密码
+ String account = accountField.getText();
+ String password = passwordField.getText();
+ LoginUserDTO loginUserDTO = new LoginUserDTO();
+ loginUserDTO.setAccount(account);
+ loginUserDTO.setPassword(password);
+ String result = HttpUtil.post(GlobalConfig.loginInterfaceAddress, JSON.toJSONString(loginUserDTO));
+ System.out.println(result);
+
// 这里可以添加实际的登录验证逻辑
// 当前简化处理,直接跳转到平台选择页面
- navigateToPlatformSelection();
+ navigateToPlatformSelection(primaryStage);
});
// 添加组件到主容器
@@ -73,7 +77,7 @@ public class LoginView {
primaryStage.show();
}
- private void navigateToPlatformSelection() {
+ private void navigateToPlatformSelection(Stage primaryStage) {
new PlatformSelectionView(primaryStage);
}
}
\ No newline at end of file
diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java
index d7ecb31..b3a8802 100644
--- a/src/main/java/module-info.java
+++ b/src/main/java/module-info.java
@@ -11,17 +11,22 @@ module fantaibao.crawler.desktop {
requires lombok;
requires java.desktop;
requires jakarta.annotation;
+ requires cn.hutool;
+ requires fastjson;
+ requires java.sql;
opens com.fantaibao to spring.core, spring.beans, spring.context,
javafx.fxml, javafx.base, javafx.graphics, spring.boot, spring.boot.autoconfigure;
opens com.fantaibao.config to spring.core,spring.beans, spring.context;
opens com.fantaibao.service to spring.core,spring.beans, spring.context;
-
-
+ opens com.fantaibao.page to com.alibaba.fastjson2;
+
exports com.fantaibao;
exports com.fantaibao.service;
exports com.fantaibao.page;
exports com.fantaibao.config;
exports com.fantaibao.base;
+ exports com.fantaibao.model;
+
}
\ No newline at end of file