diff --git a/HOME_PAGE_CHANGE_README.md b/HOME_PAGE_CHANGE_README.md new file mode 100644 index 0000000..362d6fd --- /dev/null +++ b/HOME_PAGE_CHANGE_README.md @@ -0,0 +1,118 @@ +# 首页修改说明 + +## 🎯 修改目标 + +将系统首页从原来的"首页"改为"文章病例库管理",用户登录后直接进入文章病例库管理页面。 + +## 🔧 修改内容 + +### 1. 修改常量配置 + +#### `src/constants/system/home-const.js` +- **HOME_PAGE_NAME**: 从 `'Home'` 改为 `'CaseClinicalArticleList'` +- **HOME_PAGE_PATH**: 从 `'/home'` 改为 `'/case-clinical-article/list'` + +#### `src/constants/common-const.js` +- **HOME_PAGE_PATH**: 从 `'/home'` 改为 `'/case-clinical-article/list'` + +### 2. 修改路由配置 + +#### `src/router/system/home.js` +- **路径**: 从 `/home` 改为 `/case-clinical-article/list` +- **标题**: 从"首页"改为"文章病例库管理" +- **图标**: 从 `HomeOutlined` 改为 `FileTextOutlined` +- **组件**: 从首页组件改为文章病例库列表组件 + +#### 新增 `src/router/system/case-clinical-article.js` +- 创建完整的文章病例库管理路由配置 +- 包含列表页和表单页两个子路由 + +#### `src/router/routers.js` +- 引入文章病例库管理路由配置 +- 将新路由添加到主路由数组中 + +## 📁 文件结构 + +``` +src/ +├── constants/ +│ ├── system/ +│ │ └── home-const.js # 首页常量配置 +│ └── common-const.js # 通用常量配置 +├── router/ +│ ├── system/ +│ │ ├── home.js # 首页路由配置 +│ │ └── case-clinical-article.js # 文章病例库路由配置 +│ └── routers.js # 主路由配置 +└── views/ + └── business/ + └── case-clinical-article/ + ├── case-clinical-article-list.vue # 列表页面 + └── case-clinical-article-form.vue # 表单页面 +``` + +## 🚀 使用方法 + +### 1. 用户登录后 +- 系统自动跳转到 `/case-clinical-article/list` +- 显示文章病例库管理列表页面 + +### 2. 访问路径 +- **首页**: `/case-clinical-article/list` +- **新增**: `/case-clinical-article/form?type=add` +- **编辑**: `/case-clinical-article/form?type=edit&id=xxx` + +### 3. 菜单显示 +- 主菜单显示"文章病例库管理" +- 子菜单显示"文章病例库列表" +- 表单页面在菜单中隐藏(hideInMenu: true) + +## 🎨 界面变化 + +### 修改前 +- 首页显示系统概览信息 +- 图标:🏠 HomeOutlined +- 标题:首页 + +### 修改后 +- 首页显示文章病例库管理列表 +- 图标:📄 FileTextOutlined +- 标题:文章病例库管理 + +## ⚠️ 注意事项 + +1. **路由重定向**: 根路径 `/` 会自动重定向到文章病例库管理页面 +2. **权限控制**: 确保用户有访问文章病例库管理的权限 +3. **面包屑导航**: 面包屑会显示"文章病例库管理 > 文章病例库列表" +4. **页面缓存**: 如果启用了keepAlive,文章病例库列表页面会被缓存 + +## 🔍 验证方法 + +### 1. 登录测试 +- 用户登录后应该直接进入文章病例库管理页面 +- URL应该是 `/case-clinical-article/list` + +### 2. 菜单测试 +- 主菜单应该显示"文章病例库管理" +- 点击应该能正常跳转 + +### 3. 路由测试 +- 访问根路径 `/` 应该重定向到文章病例库管理 +- 直接访问 `/case-clinical-article/list` 应该正常显示 + +## 📝 后续优化 + +1. **添加首页统计**: 在文章病例库列表页面添加统计信息 +2. **优化加载性能**: 考虑使用懒加载优化页面加载 +3. **添加快捷操作**: 在首页添加常用的快捷操作按钮 +4. **个性化配置**: 允许用户自定义首页显示内容 + +## ✅ 完成状态 + +- [x] 修改首页常量配置 +- [x] 修改首页路由配置 +- [x] 创建文章病例库路由配置 +- [x] 更新主路由配置 +- [x] 创建说明文档 + +**首页修改已完成!** 用户登录后将直接进入文章病例库管理页面。 \ No newline at end of file diff --git a/src/constants/common-const.js b/src/constants/common-const.js index 129a01f..aeeb70a 100644 --- a/src/constants/common-const.js +++ b/src/constants/common-const.js @@ -15,7 +15,7 @@ export const PAGE_SIZE_OPTIONS = ['5', '10', '15', '20', '30', '40', '50', '75', //登录页面名字 export const PAGE_PATH_LOGIN = '/login'; //首页页面名字 -export const HOME_PAGE_PATH = '/home'; +export const HOME_PAGE_PATH = '/case-clinical-article/list'; //404页面名字 export const PAGE_PATH_404 = '/404'; diff --git a/src/constants/system/home-const.js b/src/constants/system/home-const.js index c0c37db..8696f17 100644 --- a/src/constants/system/home-const.js +++ b/src/constants/system/home-const.js @@ -9,7 +9,7 @@ */ //首页页面名字 -export const HOME_PAGE_NAME = 'Home'; +export const HOME_PAGE_NAME = 'CaseClinicalArticleList'; //首页页面路径 -export const HOME_PAGE_PATH = '/home'; +export const HOME_PAGE_PATH = '/case-clinical-article/list'; diff --git a/src/router/routers.js b/src/router/routers.js index 638d4d8..a5e3a6b 100644 --- a/src/router/routers.js +++ b/src/router/routers.js @@ -8,6 +8,7 @@ * @Copyright 1024创新实验室 ( https://1024lab.net ),Since 2012 */ import { homeRouters } from './system/home'; +import { caseClinicalArticleRouters } from './system/case-clinical-article'; import { loginRouters } from './system/login'; import { helpDocRouters } from './support/help-doc'; import NotFound from '/@/views/system/40X/404.vue'; @@ -15,7 +16,8 @@ import NoPrivilege from '/@/views/system/40X/403.vue'; export const routerArray = [ ...loginRouters, - ...homeRouters, + ...homeRouters, + ...caseClinicalArticleRouters, ...helpDocRouters, { path: '/:pathMatch(.*)*', name: '404', component: NotFound }, { path: '/403', name: '403', component: NoPrivilege } diff --git a/src/router/system/case-clinical-article.js b/src/router/system/case-clinical-article.js new file mode 100644 index 0000000..810487c --- /dev/null +++ b/src/router/system/case-clinical-article.js @@ -0,0 +1,47 @@ +/* + * 文章病例库管理路由 + * + * @Author: xing + * @Date: 2025-01-27 + * @Copyright gdxz + */ +import { MENU_TYPE_ENUM } from '/@/constants/system/menu-const'; +import SmartLayout from '/@/layout/index.vue'; + +export const caseClinicalArticleRouters = [ + { + path: '/case-clinical-article', + name: 'CaseClinicalArticle', + component: SmartLayout, + meta: { + title: '文章病例库管理', + menuType: MENU_TYPE_ENUM.CATALOG.value, + icon: 'FileTextOutlined', + }, + children: [ + { + path: '/case-clinical-article/list', + name: 'CaseClinicalArticleList', + meta: { + title: '文章病例库列表', + menuType: MENU_TYPE_ENUM.MENU.value, + icon: 'FileTextOutlined', + parentMenuList: [{ name: 'CaseClinicalArticle', title: '文章病例库管理' }], + }, + component: () => import('/@/views/business/case-clinical-article/case-clinical-article-list.vue'), + }, + { + path: '/case-clinical-article/form', + name: 'CaseClinicalArticleForm', + meta: { + title: '文章病例库表单', + menuType: MENU_TYPE_ENUM.MENU.value, + icon: 'FileTextOutlined', + hideInMenu: true, + parentMenuList: [{ name: 'CaseClinicalArticle', title: '文章病例库管理' }], + }, + component: () => import('/@/views/business/case-clinical-article/case-clinical-article-form.vue'), + }, + ], + }, +]; \ No newline at end of file diff --git a/src/router/system/home.js b/src/router/system/home.js index df658b7..f41ced5 100644 --- a/src/router/system/home.js +++ b/src/router/system/home.js @@ -18,21 +18,21 @@ export const homeRouters = [ redirect: { name: HOME_PAGE_NAME }, component: SmartLayout, meta: { - title: '首页', + title: '文章病例库管理', menuType: MENU_TYPE_ENUM.CATALOG.value, - icon: 'HomeOutlined', + icon: 'FileTextOutlined', }, children: [ { - path: '/home', + path: '/case-clinical-article/list', name: HOME_PAGE_NAME, meta: { - title: '首页', + title: '文章病例库管理', menuType: MENU_TYPE_ENUM.MENU.value, - icon: 'HomeOutlined', - parentMenuList: [{ name: '_home', title: '首页' }], + icon: 'FileTextOutlined', + parentMenuList: [{ name: '_home', title: '文章病例库管理' }], }, - component: () => import('/@/views/system/home/index.vue'), + component: () => import('/@/views/business/case-clinical-article/case-clinical-article-list.vue'), }, { path: '/account', diff --git a/src/views/business/case-clinical-doctor/case-clinical-doctor-form.vue b/src/views/business/case-clinical-doctor/case-clinical-doctor-form.vue index 785cebd..92438aa 100644 --- a/src/views/business/case-clinical-doctor/case-clinical-doctor-form.vue +++ b/src/views/business/case-clinical-doctor/case-clinical-doctor-form.vue @@ -7,84 +7,116 @@ --> + + + diff --git a/src/views/system/login3/login.vue b/src/views/system/login3/login.vue index 77f4baa..8a97a91 100644 --- a/src/views/system/login3/login.vue +++ b/src/views/system/login3/login.vue @@ -96,6 +96,7 @@ import LocalStorageKeyConst from '/@/constants/local-storage-key-const.js'; import { useDictStore } from '/@/store/modules/system/dict.js'; import { dictApi } from '/@/api/support/dict-api.js'; + import { HOME_PAGE_PATH } from '/@/constants/common-const'; //--------------------- 登录表单 --------------------------------- @@ -149,7 +150,7 @@ useDictStore().initData(dictRes.data); //构建系统的路由 buildRoutes(); - router.push('/home'); + router.replace(HOME_PAGE_PATH); } catch (e) { if (e.data && e.data.code !== 0) { loginForm.captchaCode = '';