# bsphp.java.login

## 简体中文

`bsphp.java.login` 是基于 Java Swing 的 BSPHP 账号演示项目，对应 macOS 演示 `bsphp.mac.demo` 的主要功能流程与界面结构。

### 功能说明

- 账号密码登录（支持图形验证码开关）
- 短信登录 / 邮箱登录
- 账号注册 / 短信注册 / 邮箱注册
- 短信找回 / 邮箱找回 / 密保找回
- 修改密码、解绑、充值、意见反馈
- 登录成功后打开控制台调试窗口（常用接口与用户信息查询）

### 运行要求

- JDK 17 或更高
- Maven 3.8+

### 快速运行

```bash
cd /path/to/BSPHP-JAVA-DEMO
./run-login.sh
```

或在项目内运行：

```bash
cd bsphp.java.login
mvn -DskipTests package dependency:copy-dependencies
java -cp "target/classes:target/dependency/*" com.bsphp.car.BsphpCarApp
```

### 说明

- 默认登录账号/密码已预填为 `admin`（密码登录页）。
- 验证码显示/隐藏由 `getsetimag.in` 动态控制（已接入登录/找回/留言相关页面）。

---

## 繁體中文

`bsphp.java.login` 是以 Java Swing 實作的 BSPHP 帳號示範專案，對應 macOS 範例 `bsphp.mac.demo` 的主要流程與介面結構。

### 功能說明

- 帳號密碼登入（支援圖形驗證碼開關）
- 簡訊登入 / 郵箱登入
- 帳號註冊 / 簡訊註冊 / 郵箱註冊
- 簡訊找回 / 郵箱找回 / 密保找回
- 修改密碼、解綁、儲值、意見回饋
- 登入成功後開啟控制台視窗（常用 API 與使用者資訊查詢）

### 執行需求

- JDK 17 或以上
- Maven 3.8+

### 快速啟動

```bash
cd /path/to/BSPHP-JAVA-DEMO
./run-login.sh
```

或在專案目錄執行：

```bash
cd bsphp.java.login
mvn -DskipTests package dependency:copy-dependencies
java -cp "target/classes:target/dependency/*" com.bsphp.car.BsphpCarApp
```

### 備註

- 密碼登入頁預設帳號/密碼為 `admin`。
- 驗證碼顯示/隱藏由 `getsetimag.in` 動態控制（已接入登入/找回/留言頁）。

---

## English

`bsphp.java.login` is a Java Swing BSPHP account demo project, aligned with the core flow and UI structure of the macOS demo `bsphp.mac.demo`.

### Features

- Username/password login (with captcha visibility switch)
- SMS login / Email login
- Account register / SMS register / Email register
- SMS recovery / Email recovery / Security-question recovery
- Change password, unbind, recharge, feedback
- Console debug window after successful login (common APIs and user info)

### Requirements

- JDK 17+
- Maven 3.8+

### Quick Start

```bash
cd /path/to/BSPHP-JAVA-DEMO
./run-login.sh
```

Or run inside the project:

```bash
cd bsphp.java.login
mvn -DskipTests package dependency:copy-dependencies
java -cp "target/classes:target/dependency/*" com.bsphp.car.BsphpCarApp
```

### Notes

- Default username/password are prefilled as `admin` on the password-login tab.
- Captcha visibility is controlled dynamically by `getsetimag.in` (wired for login/recovery/feedback related pages).
