|
|
@@ -1,7 +1,7 @@
|
|
|
# Claude Project Rules - jk-rag-platform
|
|
|
|
|
|
**项目名称**: 建科小智开放平台
|
|
|
-**版本**: v3.8
|
|
|
+**版本**: v4.0
|
|
|
**更新日期**: 2026-04-02
|
|
|
**技术栈**: React 18 + TypeScript + Vite + Ant Design + SCSS + Zustand
|
|
|
|
|
|
@@ -56,163 +56,191 @@ src/
|
|
|
|
|
|
---
|
|
|
|
|
|
-## 样式修改规范
|
|
|
+## 样式规范
|
|
|
|
|
|
-### 1. 全局变量优先原则
|
|
|
+### 1. SCSS 语法规范
|
|
|
+
|
|
|
+**所有 SCSS 文件必须在第一行导入变量**:
|
|
|
+
|
|
|
+```scss
|
|
|
+@use '@/styles/variables.scss' as *;
|
|
|
+@use 'sass:color'; // 如需使用颜色函数
|
|
|
+```
|
|
|
+
|
|
|
+- `@use` 规则必须在文件最前面,不能有任何注释或代码在其之前
|
|
|
+- 使用 `as *` 避免命名空间前缀
|
|
|
+- 颜色函数(如 `darken`)改用 `color.adjust($var, $lightness: -10%)`
|
|
|
+
|
|
|
+### 2. 全局变量优先原则
|
|
|
|
|
|
- **必须使用** `src/styles/variables.scss` 中定义的变量
|
|
|
- **禁止硬编码** 颜色值、间距值、圆角值等
|
|
|
-- 所有组件样式文件必须以 **SCSS** 格式,导入全局变量
|
|
|
|
|
|
```scss
|
|
|
-// 文件顶部必须导入
|
|
|
-@import '@/styles/variables.scss';
|
|
|
-
|
|
|
+// ✅ 正确
|
|
|
.my-component {
|
|
|
- // ✅ 使用变量
|
|
|
color: $text-primary;
|
|
|
padding: $spacing-4;
|
|
|
border-radius: $radius-lg;
|
|
|
+}
|
|
|
|
|
|
- // ❌ 禁止硬编码
|
|
|
- color: #1F2937;
|
|
|
- padding: 16px;
|
|
|
+// ❌ 错误
|
|
|
+.my-component {
|
|
|
+ color: #1F2937; // 硬编码
|
|
|
+ padding: 16px; // 硬编码
|
|
|
}
|
|
|
```
|
|
|
|
|
|
-### 2. 间距控制规范
|
|
|
-
|
|
|
-- 使用 `$spacing-*` 系列变量(4px 基准)
|
|
|
-- 页面容器:`.page-container { padding: $spacing-4 $spacing-6 }`
|
|
|
-- 内容区块:`.content-section { margin-bottom: $spacing-4; padding: $spacing-3 }`
|
|
|
-
|
|
|
-间距变量定义:
|
|
|
-- `$spacing-1`: 4px - 最小间距
|
|
|
-- `$spacing-2`: 8px - 小间距
|
|
|
-- `$spacing-3`: 12px - 中等间距
|
|
|
-- `$spacing-4`: 16px - 标准间距
|
|
|
-- `$spacing-5`: 20px - 大间距
|
|
|
-- `$spacing-6`: 24px - 加大间距
|
|
|
-
|
|
|
-### 3. 色彩使用规范 (v3.2 企业品牌色)
|
|
|
-
|
|
|
-主色调:
|
|
|
-- `$primary-color`: #005D80 - 企业主色 (WCAG AAA)
|
|
|
-- `$primary-light`: #007A99 - 悬停/强调
|
|
|
-- `$primary-dark`: #004060 - 点击/激活
|
|
|
+### 3. 色彩系统 (v3.2 企业品牌色)
|
|
|
+
|
|
|
+主色调(基于 favicon #005D80):
|
|
|
+| 变量 | 值 | 用途 |
|
|
|
+|------|------|------|
|
|
|
+| `$primary-color` | #005D80 | 企业主色 (WCAG AAA) |
|
|
|
+| `$primary-light` | #007A99 | 悬停/强调 |
|
|
|
+| `$primary-dark` | #004060 | 点击/激活 |
|
|
|
+| `$primary-gradient-start` | #00A0CA | 渐变起点 |
|
|
|
+| `$primary-gradient-end` | #005D80 | 渐变终点 |
|
|
|
+
|
|
|
+功能性颜色:
|
|
|
+| 变量 | 值 | 用途 |
|
|
|
+|------|------|------|
|
|
|
+| `$success-color` | #059669 | 成功 |
|
|
|
+| `$warning-color` | #F59E0B | 警告 |
|
|
|
+| `$error-color` | #DC2626 | 错误 |
|
|
|
+| `$info-color` | #00A0C7 | 信息 |
|
|
|
|
|
|
文字色:
|
|
|
-- `$text-primary`: #1F2937 - 主文字色
|
|
|
-- `$text-secondary`: #6B7280 - 次要文字色
|
|
|
-
|
|
|
-规范:
|
|
|
-- **渐变仅用于背景** - 不得用于文字
|
|
|
-- **文字必须使用纯色** - 确保对比度安全
|
|
|
-
|
|
|
-### 4. 圆角系统
|
|
|
-
|
|
|
-- `$radius-sm`: 4px
|
|
|
-- `$radius-md`: 6px
|
|
|
-- `$radius-lg`: 8px
|
|
|
-- `$radius-xl`: 12px
|
|
|
-- `$radius-2xl`: 16px
|
|
|
-- `$radius-full`: 9999px
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
-## Mock 数据规范
|
|
|
-
|
|
|
-### 1. Mock 数据位置
|
|
|
-
|
|
|
-- 主文件:`src/mock/index.ts`
|
|
|
-- API 特定 Mock: `src/mock/{apiName}.ts`
|
|
|
-- 启用/禁用:在 `src/apis/api.ts` 中修改 `const USE_MOCK = true/false`
|
|
|
-
|
|
|
-### 2. 已完成的 Mock 配置
|
|
|
+| 变量 | 值 | 用途 |
|
|
|
+|------|------|------|
|
|
|
+| `$text-primary` | #1F2937 | 主文字 |
|
|
|
+| `$text-secondary` | #6B7280 | 次要文字 |
|
|
|
+| `$text-hint` | #9CA3AF | 提示文字 |
|
|
|
+| `$text-disabled` | #D1D5DB | 禁用文字 |
|
|
|
+
|
|
|
+背景色:
|
|
|
+| 变量 | 值 | 用途 |
|
|
|
+|------|------|------|
|
|
|
+| `$bg-primary` | #F9FAFB | 主背景 |
|
|
|
+| `$bg-secondary` | #FFFFFF | 次背景 |
|
|
|
+| `$bg-tertiary` | #F3F4F6 | 第三背景 |
|
|
|
+| `$bg-hover` | #F9FAFB | 悬停背景 |
|
|
|
+
|
|
|
+**规范**:
|
|
|
+- 渐变仅用于大图形/按钮背景,不得用于文字
|
|
|
+- 文字必须使用纯色,确保对比度安全
|
|
|
+
|
|
|
+### 4. 间距系统 (4px 基准)
|
|
|
+
|
|
|
+| 变量 | 值 | 用途 |
|
|
|
+|------|------|------|
|
|
|
+| `$spacing-1` | 4px | 最小间距 |
|
|
|
+| `$spacing-2` | 8px | 小间距 |
|
|
|
+| `$spacing-3` | 12px | 中等间距 |
|
|
|
+| `$spacing-4` | 16px | 标准间距 |
|
|
|
+| `$spacing-5` | 20px | 大间距 |
|
|
|
+| `$spacing-6` | 24px | 加大间距 |
|
|
|
+| `$spacing-8` | 32px | 特大间距 |
|
|
|
+| `$spacing-10` | 40px | 页面级间距 |
|
|
|
+
|
|
|
+快捷别名:
|
|
|
+```scss
|
|
|
+$spacing-xs: $spacing-1;
|
|
|
+$spacing-sm: $spacing-2;
|
|
|
+$spacing-md: $spacing-3;
|
|
|
+$spacing-lg: $spacing-4;
|
|
|
+$spacing-xl: $spacing-6;
|
|
|
+$spacing-2xl: $spacing-8;
|
|
|
+```
|
|
|
|
|
|
-#### 知识库管理 API
|
|
|
-- `POST /bigmodel/api/knowledgeList`
|
|
|
-- `GET /bigmodel/api/detailKnowledge/:id`
|
|
|
-- `POST /bigmodel/api/createKnowledge`
|
|
|
-- `PUT /bigmodel/api/updateKnowledge/:id`
|
|
|
-- `DELETE /bigmodel/api/delKnowledge/:id`
|
|
|
-- `GET /bigmodel/api/embedding`
|
|
|
+### 5. 圆角系统
|
|
|
|
|
|
-#### 文档管理 API
|
|
|
-- `POST /bigmodel/api/documentList`
|
|
|
-- `GET /bigmodel/api/documentDetail/:id`
|
|
|
-- `PUT /bigmodel/api/updateDocument/:id`
|
|
|
-- `DELETE /bigmodel/api/delDocument/:id`
|
|
|
-- `POST /bigmodel/api/uploadDocument/:knowledgeId`
|
|
|
-- `GET /bigmodel/api/documentSetting/:id`
|
|
|
-- `PUT /bigmodel/api/updateDocumentSetting/:id`
|
|
|
+| 变量 | 值 | 用途 |
|
|
|
+|------|------|------|
|
|
|
+| `$radius-sm` | 4px | 标签、徽章 |
|
|
|
+| `$radius-md` | 6px | 小按钮 |
|
|
|
+| `$radius-lg` | 8px | 按钮、输入框 |
|
|
|
+| `$radius-xl` | 12px | 卡片 |
|
|
|
+| `$radius-2xl` | 16px | 模态框、大卡片 |
|
|
|
+| `$radius-full` | 9999px | 圆形 |
|
|
|
|
|
|
-#### 切片管理 API
|
|
|
-- `POST /bigmodel/api/getSliceList`
|
|
|
-- `GET /bigmodel/api/getSliceDetail/:sliceId/:knowledgeId`
|
|
|
-- `POST /bigmodel/api/add/slice`
|
|
|
-- `PUT /bigmodel/api/updateSliceInfo`
|
|
|
-- `DELETE /bigmodel/api/deleteSlice/:sliceId/:knowledgeId/:documentId`
|
|
|
+### 6. 布局容器规范
|
|
|
|
|
|
-#### 修订工具 API
|
|
|
-- `GET /deepseek/revise/pageList`
|
|
|
-- `GET /deepseek/revise/list`
|
|
|
-- `GET /deepseek/revise/sliceList`
|
|
|
-- `PUT /deepseek/revise/reviseSlice`
|
|
|
-- `GET /deepseek/revise/reviseHistoryList`
|
|
|
+#### 页面容器
|
|
|
+```scss
|
|
|
+.page-container {
|
|
|
+ padding: $spacing-4 $spacing-6; // 16px / 24px
|
|
|
+ min-height: calc(100vh - $header-height);
|
|
|
+ background: $bg-primary;
|
|
|
+}
|
|
|
+```
|
|
|
|
|
|
-#### 字典数据 API
|
|
|
-- `GET /deepseek/api/standard_classification`
|
|
|
-- `GET /deepseek/api/parsing_type`
|
|
|
-- `GET /deepseek/api/splitting_type`
|
|
|
-- `GET /deepseek/api/revision_status`
|
|
|
+#### 内容区块
|
|
|
+```scss
|
|
|
+.content-section {
|
|
|
+ margin-bottom: $spacing-4; // 16px
|
|
|
+ padding: $spacing-3; // 12px
|
|
|
+ background: $bg-secondary;
|
|
|
+ border-radius: $radius-lg;
|
|
|
+}
|
|
|
+```
|
|
|
|
|
|
-#### 聊天记录 API
|
|
|
-- `POST /bigmodel/api/chatHistory/list`
|
|
|
-- `POST /bigmodel/api/dialog/export/:id`
|
|
|
+#### 列表头部
|
|
|
+```scss
|
|
|
+.list-header {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: flex-end;
|
|
|
+ margin-bottom: $spacing-4;
|
|
|
+ padding-bottom: $spacing-3;
|
|
|
+ border-bottom: 1px solid $border-base;
|
|
|
+
|
|
|
+ &.with-tips {
|
|
|
+ margin-bottom: $spacing-3; // 与 GuideTips 间距
|
|
|
+ }
|
|
|
+
|
|
|
+ &.with-back {
|
|
|
+ align-items: center;
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
|
|
|
-### 3. 需要补充的 Mock 数据
|
|
|
+#### 卡片网格
|
|
|
+```scss
|
|
|
+.app-card-grid {
|
|
|
+ display: grid;
|
|
|
+ grid-template-columns: repeat(4, 1fr);
|
|
|
+ gap: $spacing-4; // 16px
|
|
|
+
|
|
|
+ @media (max-width: $screen-xl) {
|
|
|
+ grid-template-columns: repeat(3, 1fr);
|
|
|
+ }
|
|
|
+
|
|
|
+ @media (max-width: $screen-lg) {
|
|
|
+ grid-template-columns: repeat(2, 1fr);
|
|
|
+ }
|
|
|
+
|
|
|
+ @media (max-width: $screen-md) {
|
|
|
+ grid-template-columns: 1fr;
|
|
|
+ }
|
|
|
+}
|
|
|
+```
|
|
|
|
|
|
-#### 高优先级
|
|
|
-- `/auth/login` (POST) - 用户登录
|
|
|
-- `/auth/code` (GET) - 获取验证码
|
|
|
-- `/system/user/getInfo` (GET) - 获取用户信息
|
|
|
-- `/deepseek/overview/topData` (GET) - 首页统计数据
|
|
|
-- `/bigmodel/api/getApplicationList` (POST) - 获取应用列表
|
|
|
-- `/deepseek/api/app/audit/list` (POST) - 审核列表
|
|
|
+### 7. 响应式断点
|
|
|
|
|
|
-#### 中优先级
|
|
|
-- `/bigmodel/api/selectApplication/:id` (GET) - 应用详情
|
|
|
-- `/deepseek/overview/onlineUserData` (GET) - 在线用户数据
|
|
|
-- `/deepseek/overview/conversationData` (GET) - 会话数据
|
|
|
-- `/deepseek/dataset/pageList` (GET) - 数据集列表
|
|
|
+| 变量 | 值 | 说明 |
|
|
|
+|------|------|------|
|
|
|
+| `$screen-sm` | 640px | 手机横屏 |
|
|
|
+| `$screen-md` | 768px | 平板竖屏 |
|
|
|
+| `$screen-lg` | 1024px | 平板横屏 |
|
|
|
+| `$screen-xl` | 1280px | 桌面小屏 |
|
|
|
+| `$screen-2xl` | 1536px | 桌面大屏 |
|
|
|
|
|
|
---
|
|
|
|
|
|
-## 页面路由规范
|
|
|
-
|
|
|
-### 1. 路由配置
|
|
|
-
|
|
|
-**业务路由** (`src/store/route.tsx`):
|
|
|
-
|
|
|
-- `/overview` - `home/index` - 概览/首页
|
|
|
-- `/appCenter` - `appPlazaList/index` - 应用中心
|
|
|
-- `/appCenter/questionAnswer` - `questionAnswer/list` - 我创建的应用
|
|
|
-- `/appCenter/questionAnswer/create` - `questionAnswer/form/index` - 创建应用
|
|
|
-- `/knowledge/knowledgeLib` - `knowledgeLib/list` - 知识库列表
|
|
|
-- `/knowledge/knowledgeLib/:id/:createBy` - `knowledgeLib/detail/index` - 知识库详情
|
|
|
-- `/knowledge/revisionTool` - `revisionTool/list` - 修订工具
|
|
|
-- `/system/apiKey` - `apiKey/index` - API Key 管理
|
|
|
-- `/system/audit` - `audit/index.placeholder` - 应用审核 (待实现)
|
|
|
+## 组件规范
|
|
|
|
|
|
-**公共路由** (`src/router.tsx`):
|
|
|
-
|
|
|
-- `/login` - 登录页
|
|
|
-- `/universalChat` - 智能问答 (独立)
|
|
|
-- `/mobile-test` - H5 测试
|
|
|
-- `/404` - 404 页面
|
|
|
-
|
|
|
-### 2. 标准列表页结构
|
|
|
+### 1. 标准列表页结构
|
|
|
|
|
|
```tsx
|
|
|
<div className="page-container">
|
|
|
@@ -235,9 +263,9 @@ src/
|
|
|
</div>
|
|
|
```
|
|
|
|
|
|
-### 3. 卡片网格页结构
|
|
|
+### 2. 卡片网格页结构
|
|
|
|
|
|
-```text
|
|
|
+```tsx
|
|
|
<div className="page-container">
|
|
|
<div className="list-header">...</div>
|
|
|
<FilterBar tabs={[]} />
|
|
|
@@ -250,90 +278,141 @@ src/
|
|
|
</div>
|
|
|
```
|
|
|
|
|
|
+### 3. Header 尺寸规范
|
|
|
+
|
|
|
+```scss
|
|
|
+$header-height: 64px;
|
|
|
+$sidebar-width: 240px; // 紧凑布局
|
|
|
+$sidebar-collapsed-width: 80px;
|
|
|
+$logo-size: 40px;
|
|
|
+$search-height: 40px;
|
|
|
+```
|
|
|
+
|
|
|
---
|
|
|
|
|
|
-## Git 操作规范
|
|
|
+## 路由配置
|
|
|
|
|
|
-### 1. 提交前检查
|
|
|
+### 业务路由 (`src/store/route.tsx`)
|
|
|
|
|
|
-- 确认所有必要的文件已存在或已删除
|
|
|
-- 避免误删重要组件文件
|
|
|
-- 备份关键配置文件
|
|
|
+| 路由 | 组件 | 说明 |
|
|
|
+|------|------|------|
|
|
|
+| `/overview` | `home/index` | 概览/首页 |
|
|
|
+| `/appCenter` | `appPlazaList/index` | 应用中心 |
|
|
|
+| `/appCenter/questionAnswer` | `questionAnswer/list` | 我创建的应用 |
|
|
|
+| `/appCenter/questionAnswer/create` | `questionAnswer/form/index` | 创建应用 |
|
|
|
+| `/knowledge/knowledgeLib` | `knowledgeLib/list` | 知识库列表 |
|
|
|
+| `/knowledge/knowledgeLib/:id/:createBy` | `knowledgeLib/detail/index` | 知识库详情 |
|
|
|
+| `/knowledge/revisionTool` | `revisionTool/list` | 修订工具 |
|
|
|
+| `/system/apiKey` | `apiKey/index` | API Key 管理 |
|
|
|
+| `/system/audit` | `audit/index` | 应用审核 |
|
|
|
|
|
|
-### 2. 分支管理
|
|
|
+### 公共路由 (`src/router.tsx`)
|
|
|
|
|
|
-- 主分支:`master`
|
|
|
-- 开发分支:当前分支 (如 `zy`)
|
|
|
-- 不要直接 push 到 master
|
|
|
+| 路由 | 说明 |
|
|
|
+|------|------|
|
|
|
+| `/login` | 登录页 |
|
|
|
+| `/universalChat` | 智能问答 (独立) |
|
|
|
+| `/mobile-test` | H5 测试 |
|
|
|
+| `/404` | 404 页面 |
|
|
|
|
|
|
-### 3. 当前状态
|
|
|
+---
|
|
|
|
|
|
-```bash
|
|
|
-# 查看修改
|
|
|
-git status
|
|
|
-git diff HEAD --stat
|
|
|
-```
|
|
|
+## Mock 数据规范
|
|
|
|
|
|
-### 4. 重要规则
|
|
|
+### Mock 配置位置
|
|
|
|
|
|
-- **每次修改功能模块之前必须先提交 git** - 确保当前修改已保存后再开始新任务
|
|
|
-- 提交时使用清晰的 commit message
|
|
|
-- 修改完成后自动执行 git commit
|
|
|
+- 主文件:`src/mock/index.ts`
|
|
|
+- API 特定 Mock:`src/mock/{apiName}.ts`
|
|
|
+- 启用/禁用:在 `src/apis/api.ts` 中修改 `const USE_MOCK = true/false`
|
|
|
|
|
|
----
|
|
|
+### 已完成的 Mock API
|
|
|
|
|
|
-## TODO List
|
|
|
+#### 知识库管理
|
|
|
+- `POST /bigmodel/api/knowledgeList`
|
|
|
+- `GET /bigmodel/api/detailKnowledge/:id`
|
|
|
+- `POST /bigmodel/api/createKnowledge`
|
|
|
+- `PUT /bigmodel/api/updateKnowledge/:id`
|
|
|
+- `DELETE /bigmodel/api/delKnowledge/:id`
|
|
|
+- `GET /bigmodel/api/embedding`
|
|
|
|
|
|
-### P0 - 紧急且重要
|
|
|
+#### 文档管理
|
|
|
+- `POST /bigmodel/api/documentList`
|
|
|
+- `GET /bigmodel/api/documentDetail/:id`
|
|
|
+- `PUT /bigmodel/api/updateDocument/:id`
|
|
|
+- `DELETE /bigmodel/api/delDocument/:id`
|
|
|
+- `POST /bigmodel/api/uploadDocument/:knowledgeId`
|
|
|
|
|
|
-- [x] **补充核心 API Mock 数据**
|
|
|
- - [x] 登录 API (`/auth/login`, `/auth/code`) - 已完成于 `src/mock/authApi.ts`
|
|
|
- - [x] 首页统计 API (`/deepseek/overview/topData`) - 已完成于 `src/mock/overviewApi.ts`
|
|
|
- - [x] 应用列表 API (`/bigmodel/api/getApplicationList`) - 已完成于 `src/mock/applicationApi.ts`
|
|
|
- - [x] 审核列表 API (`/deepseek/api/app/audit/list`) - 已完成于 `src/mock/auditApi.ts`
|
|
|
+#### 切片管理
|
|
|
+- `POST /bigmodel/api/getSliceList`
|
|
|
+- `GET /bigmodel/api/getSliceDetail/:sliceId/:knowledgeId`
|
|
|
+- `POST /bigmodel/api/add/slice`
|
|
|
+- `PUT /bigmodel/api/updateSliceInfo`
|
|
|
+- `DELETE /bigmodel/api/deleteSlice/:sliceId/:knowledgeId/:documentId`
|
|
|
|
|
|
-- [x] **完成审核页面实现**
|
|
|
- - 已完成审核列表、审核操作(通过/拒绝)、详情查看、统计数据功能
|
|
|
- - 文件:`src/pages/system/audit/index.tsx`, `src/pages/system/audit/store.ts`
|
|
|
+#### 修订工具
|
|
|
+- `GET /deepseek/revise/pageList`
|
|
|
+- `GET /deepseek/revise/list`
|
|
|
+- `GET /deepseek/revise/sliceList`
|
|
|
+- `PUT /deepseek/revise/reviseSlice`
|
|
|
+- `GET /deepseek/revise/reviseHistoryList`
|
|
|
+
|
|
|
+#### 字典数据
|
|
|
+- `GET /deepseek/api/standard_classification`
|
|
|
+- `GET /deepseek/api/parsing_type`
|
|
|
+- `GET /deepseek/api/splitting_type`
|
|
|
+- `GET /deepseek/api/revision_status`
|
|
|
+
|
|
|
+#### 聊天记录
|
|
|
+- `POST /bigmodel/api/chatHistory/list`
|
|
|
+- `POST /bigmodel/api/dialog/export/:id`
|
|
|
+
|
|
|
+#### 审核管理
|
|
|
+- `POST /deepseek/api/app/audit/list`
|
|
|
+- `POST /deepseek/api/app/audit/apply`
|
|
|
+- `GET /deepseek/overview/topData`
|
|
|
+
|
|
|
+---
|
|
|
|
|
|
-### P1 - 重要不紧急
|
|
|
+## Git 操作规范
|
|
|
+
|
|
|
+### 分支管理
|
|
|
+
|
|
|
+- 主分支:`master`
|
|
|
+- 开发分支:当前分支 (如 `zy`)
|
|
|
+- 不要直接 push 到 master
|
|
|
|
|
|
-- [x] **统一样式变量使用**
|
|
|
- - [x] 检查所有 `.scss` 文件是否导入 `variables.scss`
|
|
|
- - [x] 移除硬编码的颜色值和间距值
|
|
|
- - [x] 确保使用 `$spacing-*` 系列变量
|
|
|
- - 已修复文件:`layout/style.scss`, `layout/components/sidebar.scss`, `system/audit/style.scss`, `styles/global.scss`
|
|
|
+### 重要规则
|
|
|
|
|
|
-- [x] **补充应用管理 API Mock**
|
|
|
- - [x] 应用列表 API
|
|
|
- - [x] 应用详情 API
|
|
|
- - [x] 创建应用 API
|
|
|
- - [x] 更新应用 API
|
|
|
- - [x] 删除应用 API
|
|
|
+- **每次修改功能模块之前必须先提交 git** - 确保当前修改已保存后再开始新任务
|
|
|
+- 提交时使用清晰的 commit message
|
|
|
+- 修改完成后自动执行 git commit
|
|
|
|
|
|
-- [x] **完善文档**
|
|
|
- - [x] 更新 README.md
|
|
|
- - [x] 补充 API 接口文档 (`docs/API.md`)
|
|
|
- - API 文档已参考 Dify 风格,保留:应用调用接口、知识库检索接口
|
|
|
+### 常用命令
|
|
|
|
|
|
-### P2 - 可选优化 (待执行)
|
|
|
+```bash
|
|
|
+# 查看状态
|
|
|
+git status
|
|
|
+git diff HEAD --stat
|
|
|
|
|
|
-- [ ] 响应式布局优化 - **待确认页面清单**
|
|
|
-- [ ] 主题切换功能 (dark/light)
|
|
|
-- [ ] 性能优化 (代码分割、图片压缩)
|
|
|
+# 提交
|
|
|
+git add -A
|
|
|
+git commit -m "type: description"
|
|
|
+```
|
|
|
|
|
|
---
|
|
|
|
|
|
## 技术栈版本
|
|
|
|
|
|
-- React: 18.2.0
|
|
|
-- TypeScript: 5.7.0
|
|
|
-- Vite: 7.1.11
|
|
|
-- Ant Design: 5.23.0
|
|
|
-- Zustand: 5.0.12
|
|
|
-- React Router: 7.1.0
|
|
|
-- TailwindCSS: 4.1.17
|
|
|
-- SCSS (Sass): 1.98.0
|
|
|
+| 技术 | 版本 |
|
|
|
+|------|------|
|
|
|
+| React | 18.2.0 |
|
|
|
+| TypeScript | 5.7.0 |
|
|
|
+| Vite | 7.1.11 |
|
|
|
+| Ant Design | 5.23.0 |
|
|
|
+| Zustand | 5.0.12 |
|
|
|
+| React Router | 7.1.0 |
|
|
|
+| TailwindCSS | 4.1.17 |
|
|
|
+| SCSS (Sass) | 1.98.0 |
|
|
|
|
|
|
---
|
|
|
|
|
|
@@ -351,26 +430,9 @@ npm run build:prod # 构建生产版
|
|
|
|
|
|
---
|
|
|
|
|
|
-## 登录认证
|
|
|
-
|
|
|
-### SSO 认证地址
|
|
|
-
|
|
|
-`http://esc.sribs.com.cn:8080/esc-sso/oauth2.0/authorize?client_id=e97f94cf93761f4d69e8&response_type=code`
|
|
|
-
|
|
|
-### Token 验证
|
|
|
-
|
|
|
-在 `src/router.tsx` 中实现:
|
|
|
-- Token 登录验证
|
|
|
-- Code 换 Token 流程
|
|
|
-- 白名单路由 (`/login`)
|
|
|
-
|
|
|
----
|
|
|
-
|
|
|
## 相关文件
|
|
|
|
|
|
- `README.md` - 项目说明
|
|
|
-- `页面布局与间距控制规范.md` - 布局规范
|
|
|
-- `知识库路由和 Mock 数据说明.md` - Mock 数据说明
|
|
|
-
|
|
|
-
|
|
|
-**最后更新**: 2026-04-02
|
|
|
+- `src/styles/variables.scss` - 全局样式变量
|
|
|
+- `src/styles/global.scss` - 全局样式
|
|
|
+- `docs/API.md` - API 接口文档
|