B/S版档案软件适配环保资质合规的实操技术指南

前置环境准备

1.1 服务器基础配置

使用CentOS 7.9操作系统的服务器(物理机或云主机均可),执行以下命令更新系统并关闭不必要的安全限制:

1. 更新系统包:

``` yum update -y ```

2. 关闭防火墙并禁用SELinux(避免端口和权限冲突):

``` systemctl stop firewalld systemctl disable firewalld sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config ```

1.2 部署基础依赖环境

安装B/S版档案软件必需的Nginx(前端反向代理)、MySQL(数据库)、Python(后端运行环境),并确认版本匹配:

1. 安装依赖包:

``` yum install nginx mysql-server python3-devel mysql-devel -y ```

2. 升级Python至3.8+版本(若默认版本过低):

``` yum install https://repo.ius.io/ius-release-el7.rpm -y yum install python38 -y ```

3. 安装Python第三方库:

``` pip3 install flask pymysql datetime ```

B/S版档案软件核心适配环保资质要求

2.1 数据库添加环保资质必填字段

为档案表新增环保资质存储字段,执行完整SQL语句:

``` ALTER TABLE archives ADD COLUMN env_qualification_type VARCHAR(50) NOT NULL DEFAULT ''; ALTER TABLE archives ADD COLUMN env_qualification_number VARCHAR(100) NOT NULL DEFAULT ''; ALTER TABLE archives ADD COLUMN env_qualification_expire DATE NOT NULL DEFAULT '2000-01-01'; ALTER TABLE archives ADD COLUMN env_qualification_attach TEXT NOT NULL DEFAULT ''; ```

该语句完全覆盖生态环境部门要求的环保资质核心数据项:资质类型(如危险废物经营许可证)、资质编号、有效期、附件路径,无遗漏字段。

2.2 Nginx前端配置环保资质接口转发

修改Nginx配置文件/etc/nginx/conf.d/archives.conf,添加环保资质接口转发规则,完整配置代码:

``` server { listen 80; server_name your_domain_name; 替换为你的实际域名或服务器公网IP root /var/www/archives; index index.html index.htm; location / { try_files $uri $uri/ /index.html; } 环保资质专用接口配置 location /api/env-qualification { proxy_pass http://127.0.0.1:5000/api/env-qualification; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ```

B/S版档案软件适配环保资质合规的实操技术指南

配置完成后重启Nginx生效:

``` systemctl restart nginx ```

2.3 后端添加环保资质强制校验逻辑

修改档案软件后端核心文件(app.py),添加环保资质必填项和有效期校验规则,完整代码如下:

```python from flask import Flask, request, jsonify import pymysql from datetime import datetime app = Flask(__name__) 数据库连接配置(直接使用root,实操零门槛,生产环境需调整权限) db = pymysql.connect(host='127.0.0.1', user='root', password='your_mysql_root_password', db='archives_db', charset='utf8') cursor = db.cursor() @app.route('/api/env-qualification', methods=['POST']) def submit_env_qualification(): data = request.get_json() 强制校验3项核心字段完整性 required_fields = ['env_qualification_type', 'env_qualification_number', 'env_qualification_expire'] for field in required_fields: if not data.get(field): return jsonify({'code': 400, 'msg': f'缺少必填项:{field}'}), 400 校验有效期是否过期 try: expire_date = datetime.strptime(data['env_qualification_expire'], '%Y-%m-%d') if expire_date < datetime.now(): return jsonify({'code': 400, 'msg': '环保资质有效期已过期,请更新后提交'}), 400 except ValueError: return jsonify({'code': 400, 'msg': '有效期格式错误,需为YYYY-MM-DD'}), 400 存储数据到数据库 sql = """INSERT INTO archives (env_qualification_type, env_qualification_number, env_qualification_expire, env_qualification_attach) VALUES (%s, %s, %s, %s)""" cursor.execute(sql, (data['env_qualification_type'], data['env_qualification_number'], data['env_qualification_expire'], data['env_qualification_attach'])) db.commit() return jsonify({'code': 200, 'msg': '环保资质提交成功'}), 200 if __name__ == '__main__': 监听所有内网IP,避免公网访问限制 app.run(host='0.0.0.0', port=5000, debug=False) ```

重点操作:替换代码中your_mysql_root_password为你的MySQL root密码,替换your_domain_name为实际域名,否则数据库连接和前端接口无法访问。

实操验证与上线检查

3.1 后端服务启动测试

启动后端服务:

``` python3 app.py ```

确认终端输出「 Running on http://0.0.0.0:5000」则服务启动成功。

3.2 接口功能测试

使用curl发送测试请求,验证接口逻辑:

``` curl -X POST http://你的域名/api/env-qualification \ -H "Content-Type: application/json" \ -d '{ "env_qualification_type": "危险废物经营许可证", "env_qualification_number": "RW202300123", "env_qualification_expire": "2025-12-31", "env_qualification_attach": "/uploads/qualification/RW202300123.pdf" }' ```

返回「{"code":200,"msg":"环保资质提交成功"}」则接口功能正常。

3.3 前端页面最终验证

登录B/S版档案系统前端,进入档案录入模块,确认环保资质字段已显示,且有效期过期的资质无法提交、缺失必填项会弹出错误提示,完全符合环保监管的数据要求。

常见问题排查

4.1 前端无环保资质字段

执行以下命令清除Nginx缓存后刷新浏览器(强制刷新:Ctrl+F5):

``` nginx -s reload rm -rf /var/cache/nginx/ ```

4.2 数据库连接失败

检查MySQL服务状态:

``` systemctl status mysqld ```

若服务未启动,执行systemctl start mysqld;若密码修改,同步更新app.py中的数据库密码配置。

AI咨询
热线电话

028-85154420

15388110056

全国售前咨询电话

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

微信扫码关注安答联动

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

安答联动档案管理系统