|
|
1 ora fa | |
|---|---|---|
| sql | 2 giorni fa | |
| src | 1 ora fa | |
| test | 3 giorni fa | |
| view | 1 ora fa | |
| www/static | 3 giorni fa | |
| .eslintrc | 3 giorni fa | |
| .gitignore | 3 giorni fa | |
| README.md | 3 giorni fa | |
| development.js | 3 giorni fa | |
| nginx.conf | 3 giorni fa | |
| package.json | 2 giorni fa | |
| pm2.json | 3 giorni fa | |
| pnpm-lock.yaml | 2 giorni fa | |
| production.js | 3 giorni fa | |
| restart.sh | 3 giorni fa | |
肠愈同行患者关爱项目后端,提供管理后台和小程序 API 接口。基于 ThinkJS 3.x 开发。
pap_cytx├── 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/ # 数据库脚本
# 安装依赖
pnpm install
# 开发环境
npm start
# ESLint 修复
npm run lint-fix
# 生产部署
pm2 startOrReload pm2.json
按顺序执行 sql/ 目录下的脚本:
init.sql - 基础表(用户/角色/患者/内容等)wechat_user.sql - 微信用户表verify.sql - 实名认证相关字段myinfo.sql - 患者资料扩展字段sign.sql - 协议签署字段content.sql - 内容数据message.sql - 消息表subscribe.sql - 订阅消息记录表协议签署功能依赖 Puppeteer 调用 Chrome 生成截图,服务器需要安装 Chrome 和中文字体。
Puppeteer 自带 Chrome 下载,但国内服务器可能下载失败,可手动安装:
# 创建 Puppeteer 缓存目录
mkdir -p /root/.cache/puppeteer/chrome/linux-146.0.7680.76
cd /root/.cache/puppeteer/chrome/linux-146.0.7680.76
# 从镜像下载 Chrome
wget https://cdn.npmmirror.com/binaries/chrome-for-testing/146.0.7680.76/linux64/chrome-linux64.zip
# 解压并清理
unzip chrome-linux64.zip
rm chrome-linux64.zip
验证安装:
ls /root/.cache/puppeteer/chrome/linux-146.0.7680.76/chrome-linux64/chrome
ldd /root/.cache/puppeteer/chrome/linux-146.0.7680.76/chrome-linux64/chrome | grep "not found"
如有缺失,安装对应依赖:
dnf install -y nss atk at-spi2-atk cups-libs libXcomposite libXdamage libXrandr mesa-libgbm pango alsa-lib libdrm libxkbcommon
服务器默认无中文字体,截图中文会显示为方框。
dnf install -y google-noto-sans-cjk-sc-fonts
如果 dnf 源中没有,手动安装:
mkdir -p /usr/share/fonts/chinese
cd /usr/share/fonts/chinese
wget https://github.com/googlefonts/noto-cjk/releases/download/Sans2.004/08_NotoSansCJKsc.zip
unzip 08_NotoSansCJKsc.zip
fc-cache -fv
pm2 restart cytx_api