Files
jczxw-pc/.workbuddy/memory/MEMORY.md
2026-05-10 01:33:46 +08:00

109 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 项目长期记忆
## 项目信息
- **项目名称**广西决策咨询网jczxw-pc
- **PC端路径**/Users/gxwebsoft/VUE/jczxw2-pcNuxt 3 + Ant Design Vue + Tailwind CSS
- **Java后端路径**/Users/gxwebsoft/JAVA/jczxw-java
- **后台管理**集成在PC端 /admin 目录下(不单独部署)
## 技术栈
- Nuxt 3 + Vue 3 + TypeScript
- Ant Design Vue
- Tailwind CSS
- i18n中英文
- @nuxt/content
## 网站结构(已确认菜单)
### 一级菜单
首页、政策要闻、决策咨询、决策参考、专家资讯、智库观察、建言献策、会员服务、翰墨文谈、关于
### 二级菜单
1. **政策要闻**:党中央国务院信息、自治区党委政府信息、其他(厅委办)信息、最新发布
2. **决策咨询**:市县决策、前沿观察、行业资讯、企业动态、研究热点、学术活动、其他汇编
3. **决策参考**:政策原文、深度解读、研究成果、专题研究、东盟研究、数据服务(会员限制)
4. **专家资讯**:专家视点、专家动态、专家申请(含资料上传审核系统)
5. **智库观察**:智库介绍、智库视角
6. **建言献策**:后台处理显示,需注册身份
7. **会员服务**:企业咨询、专项服务
8. **翰墨文谈**:(独立栏目)
9. **关于我们**:学会简介、组织机构、学会章程、咨询服务、加入我们(含会员申请+资料上传审核)
## 已有页面
- app/pages/index.vue首页已完成
- app/pages/news/index.vue政策要闻列表已完成
- app/pages/consultation/index.vue决策咨询列表已完成
- app/pages/reference/index.vue决策参考列表已完成
- app/pages/expert/index.vue专家资讯列表
- app/pages/expert/apply.vue专家申请
- app/pages/expert/[id].vue专家详情页已完成
- app/pages/think-tank/index.vue智库观察列表已完成
- app/pages/suggestions/index.vue建言献策含表单已完成
- app/pages/membership/index.vue会员服务已完成
- app/pages/hanmo/index.vue翰墨文谈列表已完成
- app/pages/about/index.vue关于我们已完成
- app/pages/about/organization.vue组织机构已完成
- app/pages/about/charter.vue学会章程已完成
- app/pages/about/consultation.vue咨询服务已完成
- app/pages/about/join/enterprise.vue企业会员申请
- app/pages/about/join/personal.vue个人会员申请
- app/pages/article/[id].vue文章详情页已完成
- app/pages/profile/index.vue个人中心已完成
- app/pages/contact.vue联系我们已完成
- app/pages/error.vue404/错误页面,已完成)
- app/pages/login.vue登录页已适配
- app/pages/agreement.vue注册协议已适配
- app/pages/privacy.vue隐私政策已适配
## 后台管理页面(/admin
- admin/index.vue管理首页
- admin/articles.vue文章管理含新增/编辑/删除)
- admin/categories.vue栏目管理
- admin/article-categories.vue文章分类管理
- admin/announcements.vue公告管理
- admin/experts/index.vue专家列表
- admin/experts/review.vue专家审核
- admin/members/index.vue会员列表
- admin/members/review.vue会员审核
- admin/suggestions/index.vue建言管理
- admin/users.vue用户管理
- admin/downloads.vue资料下载管理
- admin/applications/expert.vue专家申请管理
- admin/applications/member.vue会员申请管理
- admin/settings.vue系统设置已适配为决策咨询网配置
- admin/tickets.vue工单管理未接入导航
## 关键组件
- app/components/ArticleListPage.vue通用文章列表组件支持分类筛选
- app/components/SiteHeader.vue网站头部导航已从静态菜单改为从 getSiteInfo 接口动态读取)
- app/components/SiteFooter.vue网站底部
- app/config/admin-nav.ts后台导航配置
- app/config/nav.ts前台导航配置作为 API 失败时的兜底数据)
## 新增文件(动态菜单功能)
- app/composables/useMenu.ts菜单状态管理 composable含 mapNavItem 数据映射函数)
- app/plugins/fetch-menu.ts应用初始化时获取菜单数据的插件
## 待接入后端APITODO
- 文章列表/详情API
- 专家申请提交
- 会员申请提交
- 建言献策提交
- 数据服务VIP内容访问控制
- 首页轮播图管理API
- 栏目管理API
- 设置保存/加载API
## 设计风格
- 主色:深蓝色 #1e3a5f / #0d1b2a
- 强调色:橙色 #f97316
- 背景:白色卡片 + 浅灰底
- 风格:政务门户,专业大气
## 技术细节
### 动态菜单实现2026-05-10
- 参考模板项目(/Users/gxwebsoft/Nuxt/template-10490的 AppHeader 实现
- `getSiteInfo` 接口返回的数据中包含 `topNavs`(顶部导航)和 `bottomNavs`(底部导航)
- 数据流向plugin(fetch-menu.ts) → 调用 getSiteInfo() → 提取 topNavs → mapNavItem() 映射为 NavItem[] → 写入 useState('menu')
- SiteHeader.vue 通过 useMenu() composable 读取菜单,有数据时用 API 数据,无数据时兜底用静态 mainNav
- CmsNavigation 到 NavItem 的映射title→label, path→to, code/navigationId→key, children 递归映射