药品监管档案管理系统本地化部署与全流程实操配置指南

一、前置环境准备

1.1 硬件最低要求

单节点部署满足10万级档案存储需求的配置:2核4G内存、50G云硬盘、1M带宽,多节点集群可根据数据量横向扩容。

1.2 软件依赖安装

推荐使用Ubuntu 22.04 LTS操作系统,依次执行以下命令安装依赖:

```bash 升级系统源 sudo apt update && sudo apt upgrade -y 安装JDK1.8 sudo apt install openjdk-8-jdk -y 验证JDK安装,返回openjdk version "1.8.0_xxx"即为成功 java -version 安装MySQL8.0 wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb sudo apt update sudo apt install mysql-server -y 安装过程中设置root密码,请妥善记录后续会用到 安装Redis6.x sudo apt install redis-server -y 如需设置Redis密码,修改/etc/redis/redis.conf的requirepass项后重启 sudo systemctl restart redis 安装Nginx1.24 sudo apt install nginx -y ```

必须开放服务器端口:3306(MySQL)、6379(Redis)、8080(后端)、80(前端),执行命令:sudo ufw allow 3306,6379,8080,80/tcp

二、系统部署实操

2.1 源码获取与数据库初始化

执行命令拉取开源稳定版源码:

```bash git clone https://gitee.com/opensource-medical/drug-regulatory-archive-system.git cd drug-regulatory-archive-system ```

创建数据库并导入初始数据,登录MySQL后执行:

```sql create database drug_archive default character set utf8mb4 collate utf8mb4_general_ci; exit; ```

执行导入命令,替换为你自己的MySQL root密码:

```bash mysql -uroot -p你设置的MySQL密码 drug_archive < ./sql/drug_archive_init.sql ```

无报错即为导入成功。

2.2 后端服务配置与启动

进入后端jar包目录:cd ./backend,新建application.yml配置文件,完整可复制内容如下,替换对应占位符:

```yaml server: port: 8080 servlet: context-path: /drug spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/drug_archive?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai username: root password: 这里替换为你自己的MySQL root密码 redis: host: localhost port: 6379 password: 这里替换为你自己的Redis密码,没有则留空 database: 0 servlet: multipart: max-file-size: 10MB mybatis-plus: mapper-locations: classpath:mapper/.xml configuration: map-underscore-to-camel-case: true ```

保存配置后执行启动命令:

```bash nohup java -jar drug-archive-admin.jar > log.out 2>&1 & ```

等待1分钟后验证启动状态:curl localhost:8080/drug/health,返回{"code":200,"msg":"success"}即为启动成功。

2.3 前端页面部署

首先安装Node16.18.0版本:

```bash curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - && sudo apt install nodejs -y 验证安装,返回v16.18.0即为成功 node -v ```

药品监管档案管理系统本地化部署与全流程实操配置指南

进入前端目录安装依赖并打包:

```bash cd ../frontend npm install --registry=https://registry.npmmirror.com npm run build:prod ```

打包完成后会生成dist文件夹,新建Nginx配置文件/etc/nginx/sites-available/drug-archive.conf,完整内容如下:

```nginx server { listen 80; server_name 这里替换为你的服务器IP或者域名; root /root/drug-regulatory-archive-system/frontend/dist; 替换为你自己的dist文件夹绝对路径 index index.html; 后端接口代理 location /api/ { proxy_pass http://localhost:8080/drug/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } 前端路由兼容 location / { try_files $uri $uri/ /index.html; } } ```

执行命令启用配置:

```bash sudo ln -s /etc/nginx/sites-available/drug-archive.conf /etc/nginx/sites-enabled/ 验证配置正确性 sudo nginx -t 返回test is successful后重启Nginx sudo nginx -s reload ```

此时访问服务器IP即可打开系统登录页。

三、核心功能落地配置

3.1 基础账号与档案模板配置

默认超级管理员账号:admin,默认密码:Admin@123456,首次登录必须修改密码。登录后进入【系统设置】-【档案模板配置】,勾选以下字段为必填项:药品通用名、批准文号、生产企业名称、生产批次、有效期、抽检结果、监管状态,点击保存后,后续所有档案录入必须符合该规则。如需自定义字段,点击【新增字段】,设置字段名、类型(文本/日期/附件)、是否公开即可。

3.2 数据同步与溯源配置

如需对接属地药监局公开数据库,进入【系统设置】-【接口配置】,填写药监局提供的接口地址、AppKey、AppSecret,勾选【自动同步】,设置同步频率为每1小时,点击保存后系统会自动拉取最新的药品审批、抽检数据,无需手动录入。进入【溯源配置】,设置溯源码生成规则为【批准文号后8位+生产批次+有效期后6位】,勾选【自动生成溯源码】,后续每份档案入库时会自动生成唯一溯源码,公众可通过溯源码查询对应档案的公开信息。

3.3 分级权限配置

系统默认支持3类角色,可直接配置使用:

  • 药监管理员:拥有全部权限,可审核档案、导出数据、修改系统配置
  • 药企用户:仅可录入、修改本企业提交的药品档案,提交后需药监管理员审核生效
  • 公众查询用户:仅可查询公开的药品监管档案信息,无修改权限

进入【系统设置】-【角色管理】,选择对应角色,勾选所需权限后保存,进入【用户管理】新增用户,绑定对应角色即可。

四、常见问题排查

4.1 后端启动失败

查看后端日志:cat log.out,若报错显示数据库连接失败,检查MySQL服务是否启动、配置文件中的数据库密码是否正确、3306端口是否开放;若报错Redis连接失败,检查Redis服务是否启动、配置文件中的Redis密码是否正确。

4.2 前端访问异常

若访问IP显示403,检查dist文件夹的权限,执行sudo chmod -R 755 你的dist文件夹路径;若接口请求404,检查Nginx配置中的proxy_pass地址是否正确,后端服务是否正常启动。

4.3 档案提交失败

检查必填字段是否全部填写,药品批准文号格式是否符合国家药监局18位编码规则,若上传附件失败,检查附件大小是否超过10M限制,可在application.yml中修改spring.servlet.multipart.max-file-size参数调整上限。

AI咨询
热线电话

028-85154420

15388110056

全国售前咨询电话

扫码咨询
安答联动微信公众号二维码

微信扫码关注安答联动

申请试用
热线电话
申请试用

安答联动档案管理系统