这是北京维康慈善基金会官方网站项目,基于 ThinkJS 3.x 框架开发。项目包含前台官网展示和后台管理系统两部分。
pap_web/
├── src/
│ ├── bootstrap/ # 启动配置 (master/worker)
│ ├── config/ # 配置文件
│ │ ├── adapter.js # 适配器配置
│ │ ├── config.js # 基础配置
│ │ ├── middleware.js # 中间件配置
│ │ └── router.js # 路由配置
│ ├── controller/ # 控制器
│ ├── logic/ # 逻辑层 (参数校验)
│ └── model/ # 数据模型
├── view/ # 视图模板 (Nunjucks)
├── www/static/ # 静态资源
└── runtime/ # 运行时文件
项目原型位于 pap_web_pm 目录:
pap_web_pm/web/ - 前台官网原型pap_web_pm/admin/ - 后台管理原型| 栏目 | 子栏目 |
|---|---|
| 首页 | Banner轮播、数据看板、药品援助公示、公益项目、新闻动态、合作伙伴 |
| 关于我们 | 基金会简介、组织架构、理事会&监事、资质证书、联系我们 |
| 公益项目 | 妇幼健康促进、“安心医"患者关爱、卫生健康促进、医疗科普公益、品牌建设与传播 |
| 党建专栏 | 党建规章、党建活动、党建学习 |
| 信息公示 | 管理制度、机构年报、审计报告、财务报告、关联方信息、项目执行报告 |
| 新闻中心 | 基金会动态、行业资讯、通知公告 |
| 联系我们 | 基本信息、关注我们、人才招聘、志愿者中心、合作申请 |
| 类型 | 说明 | 管理页面 |
|---|---|---|
| article | 文章内容 | article-list.html |
| image | 图片内容 | image-list.html |
| text | 文本/文档 | text-list.html |
| page | 单页内容 | page-manage.html |
| person | 人员信息 | person-list.html |
| form | 表单数据 | form-data.html |
| donation | 捐赠数据 | donation.html |
| job | 招聘信息 | job-manage.html |
el-table-column 必须使用完整闭合标签,不能使用自闭合:
<el-table-column prop="id" label="ID" width="60"></el-table-column><el-table-column prop="id" label="ID" width="60" />['${', '}'] 避免与 Nunjucks 冲突ElementPlus.ElMessage 和 ElementPlus.ElMessageBoxwindow.location.href、<a href>) 加 .html 后缀,如 /admin/login.html、/admin/dashboard.htmlthis.redirect() 也加 .html 后缀router.js 路由配置不加 .html/admin/auth/loginindex.jsarticle.js{controller}_{action}.html,如 index_index.htmlnpm run lint 检查代码npm run lint-fix 自动修复# 开发环境启动
npm start
# 代码检查
npm run lint
# 生产环境部署
pm2 startOrReload pm2.json
column - 栏目表article - 文章表image - 图片表page - 单页表person - 人员表donation - 捐赠记录表medicine_aid - 药品援助记录表job - 招聘信息表form_data - 表单提交数据表user - 管理员用户表role - 角色表log - 操作日志表config - 网站配置表is_deleted: 软删除 (0=正常, 1=已删除)status: 状态 (1=启用, 0=停用)create_by/update_by: 创建人/修改人IDcreate_time/update_time: 创建/更新时间disease_ids, delivery_methods)