de0d0cc6be3e3e3343b7519bac9e6369f08b3c53
人事共享服务中心"码"上办 - 需求收集系统
Linux服务器部署指南
1. 上传并解压包
# 上传 requirement-collection.tar.gz 到服务器
# 解压
tar -xzf requirement-collection.tar.gz
cd mashangban
2. 安装依赖
pip3 install -r requirements.txt
3. 初始化数据库
python3 init_db.py
4. 启动服务
python3 run.py
5. 访问地址
- 基础地址:http://your-server-ip:5001/requirement-collection
- 带钉钉参数:http://your-server-ip:5001/requirement-collection/?userId={{发起人userid}}&name={{发起人姓名}}&dept={{发起人部门}}
6. 钉钉集成
在钉钉中配置机器人或应用,传入以下参数:
| 参数 | 说明 | 示例 |
|---|---|---|
| userId | 钉钉用户ID | manager123 |
| name | 用户姓名 | 张三 |
| dept | 部门名称 | 人事部 |
示例URL:
https://askill.top/requirement-collection/?userId=user001&name=张三&dept=人事部
首次访问: 系统自动创建用户并记录姓名和部门信息
后续访问: 根据userId自动识别用户并登录
7. 管理员配置
默认管理员账户信息:
- 用户名:管理员
- dingtalk_userid:admin
如需修改为其他管理员,需要手动编辑数据库。
8. 修改配置(可选)
修改端口
编辑 run.py 中的端口号:
run_simple('0.0.0.0', 端口号, application, ...)
使用Gunicorn部署(生产环境推荐)
pip3 install gunicorn
gunicorn -w 4 -b 0.0.0.0:5001 'run:application'
Nginx反向代理配置
server {
listen 80;
server_name your-domain.com;
location /requirement-collection {
proxy_pass http://127.0.0.1:5001;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
9. 后台运行
使用systemd管理服务:
sudo nano /etc/systemd/system/requirement-collection.service
写入以下内容:
[Unit]
Description=Requirement Collection Service
After=network.target
[Service]
User=www-data
WorkingDirectory=/path/to/mashangban
ExecStart=/usr/bin/python3 /path/to/mashangban/run.py
Restart=always
[Install]
WantedBy=multi-user.target
启用服务:
sudo systemctl daemon-reload
sudo systemctl enable requirement-collection
sudo systemctl start requirement-collection
功能说明
- 需求汇总:公开页面,显示所有公开需求
- 提交新需求:登录后可提交(需求标题、需求内容、分会、联系方式、是否公开)
- 我的需求:查看和管理自己提交的需求
- 管理后台:管理员可回答需求、修改公开状态
权限说明
| 功能 | 普通用户 | 管理员 |
|---|---|---|
| 查看公开需求 | ✓ | ✓ |
| 提交需求 | ✓ | ✓ |
| 编辑自己的需求 | ✓ | ✓ |
| 回答需求 | - | ✓ |
| 强制修改公开状态 | - | ✓ |
| 查看所有需求 | - | ✓ |
Description
Languages
Python
46.3%
HTML
35.8%
CSS
14.9%
Shell
3%