diff --git a/.vitepress/config.mts b/.vitepress/config.mts index 45b10a2..4bf82bd 100644 --- a/.vitepress/config.mts +++ b/.vitepress/config.mts @@ -2,15 +2,15 @@ import { defineConfig } from 'vitepress' export default defineConfig({ lang: 'zh-CN', - title: '收支管理系统', - description: '个人收支管理系统使用与开发文档', + title: '汇账', + description: '个人汇账使用与开发文档', head: [['link', { rel: 'icon', href: '/favicon.svg', type: 'image/svg+xml' }]], lastUpdated: true, cleanUrls: true, ignoreDeadLinks: true, // 维护类文档不参与站点构建 srcExclude: ['AGENTS.md'], - // 文档站默认端口从 5173 调整为 5175,把 5173 让给 finance-app 前端 + // 文档站默认端口从 5173 调整为 5175,把 5173 让给 ledgerly 前端 vite: { server: { host: '0.0.0.0', @@ -105,7 +105,7 @@ export default defineConfig({ }, socialLinks: [], footer: { - message: '基于 Spring Boot 3 + Vue 3 的个人收支管理系统', + message: '基于 Spring Boot 3 + Vue 3 的个人汇账', }, docFooter: { prev: '上一页', diff --git a/README.md b/README.md index d1d9e2a..f24abf2 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# 收支管理系统 · 文档站 +# 汇账 · 文档站 -本目录是「收支管理系统」(同级目录 `../finance-app`)的**使用文档**与**开发文档**站点,基于 [VitePress](https://vitepress.dev/) 构建,并附带一套 Node/TypeScript 维护脚本(截图、演示数据、资料抓取)。 +本目录是「汇账」(同级目录 `../ledgerly`)的**使用文档**与**开发文档**站点,基于 [VitePress](https://vitepress.dev/) 构建,并附带一套 Node/TypeScript 维护脚本(截图、演示数据、资料抓取)。 > **在线体验**:[https://finance.rosercode.cn/](https://finance.rosercode.cn/)(演示账号 `demo` / `demo123456`,使用独立的 SQLite 演示库与虚构数据) @@ -83,7 +83,7 @@ npm run typecheck:scripts # 类型检查 1. 应用实例已启动(默认访问 `jar-home/` 下的 jar 实例 `localhost:18082`); 2. 测试库中已配置 AI(用于截取启用 AI 后的界面)。 -可通过环境变量覆盖:`FINANCE_WEB`、`FINANCE_API`、`FINANCE_USER`、`FINANCE_PASSWORD`。 +可通过环境变量覆盖:`LEDGERLY_WEB`、`LEDGERLY_API`、`LEDGERLY_USER`、`LEDGERLY_PASSWORD`。 > **环境安全**:截图与演示数据只操作测试环境,禁止访问真实环境(5173 / 8080 / MySQL 真实库)。 diff --git a/dev/build-deploy.md b/dev/build-deploy.md index 65f0ffb..6e73464 100644 --- a/dev/build-deploy.md +++ b/dev/build-deploy.md @@ -11,12 +11,12 @@ ```bash # 后端(默认 8080) -cd finance-app +cd ledgerly set JAVA_HOME=D:\venv\jdk-21 gradlew.bat bootRun # 前端(默认 5173,接口代理到 8080) -cd finance-app/frontend +cd ledgerly/frontend npm run dev ``` @@ -34,12 +34,12 @@ gradle bootJar ./package.sh ``` -输出:`build/libs/finance-app-0.0.1-SNAPSHOT.jar` +输出:`build/libs/ledgerly-0.0.1-SNAPSHOT.jar` 启动(默认 8080,可另指定端口): ```bash -java -jar build/libs/finance-app-0.0.1-SNAPSHOT.jar --server.port=18081 +java -jar build/libs/ledgerly-0.0.1-SNAPSHOT.jar --server.port=18081 ``` 访问对应端口即可;刷新 `/dashboard` 等子路由由后端 `SpaErrorController` 回退到 `index.html`。 diff --git a/dev/database.md b/dev/database.md index 909e939..1ad0c10 100644 --- a/dev/database.md +++ b/dev/database.md @@ -20,7 +20,7 @@ | `SchemaMigrator` | 建表后的幂等结构迁移(如列重命名),启动与切换数据源时执行 | | `DatabaseBootstrap` | 应用启动后加载配置并初始化 | -`FinanceApplication` 刻意排除了 `DataSourceAutoConfiguration`,以便「零配置也能启动」。 +`LedgerlyApplication` 刻意排除了 `DataSourceAutoConfiguration`,以便「零配置也能启动」。 ## 配置来源与顺序 diff --git a/dev/development.md b/dev/development.md index 22a9707..c1965ed 100644 --- a/dev/development.md +++ b/dev/development.md @@ -8,7 +8,7 @@ | 环境 | 前端 | 后端 | 数据库 | |---|---|---|---| -| 测试环境 | 5174 | 8081 | 独立 SQLite 空库(`ai-home/data/ai-finance.db`) | +| 测试环境 | 5174 | 8081 | 独立 SQLite 空库(`ai-home/data/ai-ledgerly.db`) | | 真实环境 | 5173 | 8080 | MySQL(真实数据) | - 两个环境共用同一份源码:前端改动经 Vite HMR 两边同步;后端改动执行 `./reload.sh` 后两边 devtools 同时热重启。 @@ -28,7 +28,7 @@ - 修改 `src/main/resources` 下的资源文件后,需额外同步资源: ```bash - docker exec finance-backend-dev gradle -I /project/nexus-init.gradle processResources + docker exec ledgerly-backend-dev gradle -I /project/nexus-init.gradle processResources ``` - 仅在新增依赖、修改配置等需要彻底重启时才重启容器。 @@ -38,7 +38,7 @@ - **Javadoc**:新增 Java 文件的类级 javadoc 末尾必须加一行 `@date`,格式 `yyyy-MM-dd HH:mm:ss`,时间取文件创建时间。 - **导入顺序**:由 Spotless 管理,三组、组间空行分隔:`java`/`javax` → 第三方 → `cn.rosercode`。 - - 格式化:`docker exec finance-backend-dev gradle -I /project/nexus-init.gradle spotlessApply` + - 格式化:`docker exec ledgerly-backend-dev gradle -I /project/nexus-init.gradle spotlessApply` - `spotlessCheck` 已挂到 `check`,`build` 时会校验。 - **日志**:统一使用 Lombok `@Slf4j`,按级别使用(`error` 未预期异常、`warn` 可预期业务失败、`info` 关键写操作与外部调用、`debug` 流程细节)。 - **控制器**:方法签名禁止声明 `HttpServletRequest` / `HttpServletResponse`,统一使用 `cn.rosercode.finance.util.UserContext`。 diff --git a/dev/preferences.md b/dev/preferences.md index 4f7f510..a5a9838 100644 --- a/dev/preferences.md +++ b/dev/preferences.md @@ -4,9 +4,9 @@ ## 为什么保存 -收支管理系统的不少界面是「多 Tab」或「带筛选条件」的,如果每次进入都重置为默认值,用户每次都要重新选一遍语言、筛选项、分页、排序、上次使用的记账方式等,体验割裂。 +汇账的不少界面是「多 Tab」或「带筛选条件」的,如果每次进入都重置为默认值,用户每次都要重新选一遍语言、筛选项、分页、排序、上次使用的记账方式等,体验割裂。 -为此项目在 `finance-app/AGENTS.md` 中约定: +为此项目在 `ledgerly/AGENTS.md` 中约定: > 多 Tab 或可切换的界面偏好需**持久化记忆**(`localStorage`),下次打开时恢复到上次选择;存储键统一以 `finance.` 前缀命名,读取时对非法值回退默认项,写入时忽略存储异常。 diff --git a/dev/project-structure.md b/dev/project-structure.md index ae7ac75..f9a853d 100644 --- a/dev/project-structure.md +++ b/dev/project-structure.md @@ -3,7 +3,7 @@ ## 仓库根目录 ```text -finance-app/ +ledgerly/ ├── build.gradle # Gradle 构建脚本(依赖、打包、前端集成、Spotless) ├── settings.gradle # Gradle 项目设置 ├── gradlew / gradlew.bat # Gradle Wrapper diff --git a/guide/introduction.md b/guide/introduction.md index fe5d164..1fd6b1e 100644 --- a/guide/introduction.md +++ b/guide/introduction.md @@ -1,6 +1,6 @@ # 项目简介 -收支管理系统是一个**自托管的个人收支管理应用**,用于把分散在支付宝、微信、美团、银行等平台的账单汇总到一处,统一分类、打标签、统计收支,并通过自定义规则与 AI 能力减少手工整理的工作量。 +汇账是一个**自托管的个人收支管理应用**,用于把分散在支付宝、微信、美团、银行等平台的账单汇总到一处,统一分类、打标签、统计收支,并通过自定义规则与 AI 能力减少手工整理的工作量。 ## 解决什么问题 diff --git a/index.md b/index.md index f0edaec..2d387d1 100644 --- a/index.md +++ b/index.md @@ -2,7 +2,7 @@ layout: home hero: - name: 收支管理系统 + name: 汇账 text: 个人收支管理 · 多来源账单导入 · AI 智能记账 tagline: 支持支付宝、微信、美团、淘宝、京东、招商银行、交通银行账单导入,提供分类标签与交易渠道管理、自定义规则、AI 建议(含多图图片记账)与定时提醒 image: @@ -42,7 +42,7 @@ features: ## 这是什么 -收支管理系统是一个自托管的个人记账应用,帮助你把分散在支付宝、微信、银行等平台的账单汇总到一处,统一分类、打标签、统计收支,并通过 AI 与自动化减少手工整理的工作量。 +汇账是一个自托管的个人记账应用,帮助你把分散在支付宝、微信、银行等平台的账单汇总到一处,统一分类、打标签、统计收支,并通过 AI 与自动化减少手工整理的工作量。 > **在线体验**:[https://finance.rosercode.cn/](https://finance.rosercode.cn/)(演示账号 `demo` / `demo123456`,使用独立的 SQLite 演示库与虚构数据) diff --git a/package.json b/package.json index 0c32f09..84c8ebf 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "finance-app-docs", + "name": "ledgerly-docs", "private": true, "version": "0.0.1", "type": "module", diff --git a/scripts/ts/config.ts b/scripts/ts/config.ts index 5007807..914b32a 100644 --- a/scripts/ts/config.ts +++ b/scripts/ts/config.ts @@ -5,12 +5,12 @@ import { fileURLToPath } from 'node:url' const currentDir = dirname(fileURLToPath(import.meta.url)) /** 应用访问入口(默认 jar 一体化实例) */ -export const BASE_URL = process.env.FINANCE_WEB ?? 'http://localhost:18082' +export const BASE_URL = process.env.LEDGERLY_WEB ?? 'http://localhost:18082' /** 后端 API 地址 */ -export const API_URL = process.env.FINANCE_API ?? 'http://localhost:18082/api' +export const API_URL = process.env.LEDGERLY_API ?? 'http://localhost:18082/api' /** 测试账号 */ -export const USERNAME = process.env.FINANCE_USER ?? 'docuser' -export const PASSWORD = process.env.FINANCE_PASSWORD ?? 'doc123456' +export const USERNAME = process.env.LEDGERLY_USER ?? 'docuser' +export const PASSWORD = process.env.LEDGERLY_PASSWORD ?? 'doc123456' /** Chromium 可执行文件(复用 Playwright 缓存,无需系统安装) */ export const CHROMIUM_BIN =