From 18f5a2221cfa7b6a3561213523e2b1ebbe7e5f44 Mon Sep 17 00:00:00 2001 From: leiyun Date: Fri, 20 Mar 2026 22:17:33 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=9B=B4=E6=96=B0README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 101 ++++++++++++++++++++++++++++++----------------------- restart.sh | 8 ++--- 2 files changed, 62 insertions(+), 47 deletions(-) diff --git a/README.md b/README.md index 7aa527d..1bd4ad1 100644 --- a/README.md +++ b/README.md @@ -1,31 +1,51 @@ -# 北京维康慈善基金会官网 +# 肠愈同行患者关爱 - 后端服务 -基于 ThinkJS 3.x 的慈善基金会官网系统,包含前台展示和后台管理。 +肠愈同行患者关爱项目后端,提供管理后台和小程序 API 接口。基于 ThinkJS 3.x 开发。 ## 技术栈 -- **后端**: ThinkJS 3.x + MySQL + Redis -- **前台**: Nunjucks模板 + Swiper.js + 原生CSS -- **后台**: Vue 3 + Element Plus + Tailwind CSS -- **认证**: JWT Token +- ThinkJS 3.x (Node.js) + Nunjucks 模板 +- MySQL (腾讯云 CynosDB),数据库:`pap_cytx` +- Redis 缓存(端口 6319) +- 腾讯云 COS 文件存储 +- 腾讯云 OCR / 人脸核身 / 短信 +- Puppeteer(协议签署截图) +- PM2 进程管理,端口 8361 ## 功能模块 -### 前台 -- 首页全屏滚动(Swiper Fullpage) -- Banner轮播(支持毛玻璃效果) -- 捐赠数据公示(统计卡片 + 滚动明细) -- 公益项目展示(Tab切换 + 背景联动) -- 新闻动态 -- 合作伙伴 -- 响应式适配(移动端汉堡菜单) - -### 后台管理 -- 用户/角色管理 -- 栏目管理(树形结构) -- 内容类型:Banner、图文、文字列表、图片、单页、人员、岗位、捐赠收支 -- 网站配置 -- 药品援助数据管理 +### 管理后台 +- 控制台:统计卡片、趋势图、最近记录 +- 患者管理:列表/详情/审核/导出,按瘤种/地区/状态筛选 +- 内容管理:首页内容配置 +- 系统管理:用户、角色权限、操作日志、短信记录、文件上传 + +### 小程序 API +- 微信登录 / 手机号绑定 / 修改手机号 +- 实名认证(OCR + 人脸核身 + 短信验证) +- 患者资料提交与编辑 +- 协议签署(Puppeteer 截图生成) +- 消息中心 +- 订阅消息通知(审核结果推送) +- 头像上传 + +## 目录结构 + +``` +├── src/ +│ ├── config/ # 配置(adapter/router/middleware/cos/ocr/sms/faceid) +│ ├── controller/ +│ │ ├── admin/ # 后台管理(dashboard/patient/content/auth/upload) +│ │ │ └── system/ # 系统管理(user/role/log/sms) +│ │ ├── base.js # 基础控制器(JWT认证/权限/日志/短信) +│ │ ├── common.js # 公共接口(地区数据) +│ │ └── mp.js # 小程序 API +│ ├── model/ # 数据模型 +│ └── service/ # 服务层(wechat/screenshot) +├── view/admin/ # 后台 Nunjucks 模板 +├── www/static/ # 静态资源 +└── sql/ # 数据库脚本 +``` ## 快速开始 @@ -34,34 +54,29 @@ pnpm install # 开发环境 -pnpm start +npm start -# 生产环境 -node production.js -``` - -## 目录结构 +# ESLint 修复 +npm run lint-fix -``` -├── src/ -│ ├── controller/ # 控制器 -│ ├── model/ # 数据模型 -│ ├── config/ # 配置文件 -│ └── logic/ # 逻辑层 -├── view/ -│ ├── admin/ # 后台视图 -│ ├── common/ # 前台公共组件 -│ ├── layout.html # 前台布局 -│ └── index_index.html # 首页 -├── www/static/ # 静态资源 -└── sql/ # 数据库脚本 +# 生产部署 +pm2 startOrReload pm2.json ``` ## 数据库 -执行 `sql/` 目录下的SQL脚本初始化数据库。 +按顺序执行 `sql/` 目录下的脚本: + +1. `init.sql` - 基础表(用户/角色/患者/内容等) +2. `wechat_user.sql` - 微信用户表 +3. `verify.sql` - 实名认证相关字段 +4. `myinfo.sql` - 患者资料扩展字段 +5. `sign.sql` - 协议签署字段 +6. `content.sql` - 内容数据 +7. `message.sql` - 消息表 +8. `subscribe.sql` - 订阅消息记录表 ## 访问地址 -- 前台: http://localhost:8360/ -- 后台: http://localhost:8360/admin/login.html +- 后台管理:http://localhost:8361/admin/dashboard.html +- 小程序 API:http://localhost:8361/mp/* diff --git a/restart.sh b/restart.sh index 221f9c2..e495492 100644 --- a/restart.sh +++ b/restart.sh @@ -13,12 +13,12 @@ echo "依赖安装完成" echo "" echo "===== 3. 重启服务 =====" -if pm2 describe vk_web > /dev/null 2>&1; then - pm2 restart vk_web - echo "pm2 已重启 vk_web" +if pm2 describe cytx_api > /dev/null 2>&1; then + pm2 restart cytx_api + echo "pm2 已重启 cytx_api" else pm2 start pm2.json - echo "pm2 已启动 vk_web" + echo "pm2 已启动 cytx_api" fi echo ""