cb057b431eb4cd8f72b792dfb31606038cb4f9f2
希姆计算资产管理管理系统
基于 Django + MySQL 的企业级硬件资产管理系统,支持 Excel 批量导入导出。
✨ 功能特性
- 仪表盘 — 资产统计总览、分类统计、状态分布、最近变更记录
- 资产管理 — 设备增删改查、资产编号/品牌/型号/序列号/资产面值等完整字段
- 分类管理 — 自定义设备分类(服务器、网络设备、存储设备等)
- 变更追踪 — 资产信息修改自动记录变更历史
- Excel 导入导出 — 批量导入(分类不存在自动创建)、筛选导出、模板下载
- 多维度搜索 — 按编号/名称/部门/使用人/位置搜索,按分类/状态/位置筛选
- 质保提醒 — 已过保/即将过保状态标识
- 用户认证 — 登录/退出,管理员权限控制
- 深色主题 — 护眼深色 UI,适合长时间使用
🛠️ 技术栈
| 组件 | 技术 |
|---|---|
| 后端 | Django 4.2 |
| 数据库 | MySQL / MariaDB |
| 前端 | Bootstrap 5 + 自定义深色主题 |
| 部署 | Docker Compose / 直接运行 |
📋 资产字段
| 字段 | 说明 |
|---|---|
| 资产编号 | 自定义编号,可重复 |
| 设备名称 | 设备名称 |
| 分类 | 服务器/网络设备/存储设备等(支持自定义) |
| 品牌 | 设备品牌 |
| 型号 | 设备型号 |
| 资产面值 | 资产价值(元) |
| 序列号 | 设备序列号 |
| 状态 | 在用/闲置/维修中/已报废 |
| IP地址 | 管理IP |
| BMC地址 | BMC管理地址 |
| 设备位置 | 机房/机柜/U位 |
| 负责人 | 设备负责人 |
| 使用部门 | 使用部门 |
| 使用人 | 实际使用人 |
| 采购日期 | 采购时间 |
| 质保到期 | 质保截止日期 |
| 备注 | 补充说明 |
🚀 快速部署
方式一:Docker Compose(推荐)
# 克隆仓库
git clone ssh://git@git.cnbugs.com:10022/cnbugs/asset-management.git
cd asset-management
# 启动服务
docker-compose up -d
# 访问系统
# http://<服务器IP>:8010
# 默认账号: admin / admin123
方式二:直接运行
# 克隆仓库
git clone ssh://git@git.cnbugs.com:10022/cnbugs/asset-management.git
cd asset-management
# 创建虚拟环境
python3 -m venv venv
source venv/bin/activate
# 安装依赖
pip install -r requirements.txt
# 配置数据库(修改 config/settings.py 中的 DATABASES)
# 创建 MySQL 数据库: CREATE DATABASE asset_management CHARACTER SET utf8mb4;
# 初始化
python manage.py migrate
python manage.py createsuperuser
# 启动
python manage.py runserver 0.0.0.0:8010
⚙️ 配置说明
数据库配置
编辑 config/settings.py 中的 DATABASES:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'asset_management',
'USER': 'root',
'PASSWORD': 'password123',
'HOST': 'localhost',
'PORT': '3306',
}
}
Docker 环境变量
在 docker-compose.yml 中配置:
| 变量 | 默认值 | 说明 |
|---|---|---|
| MYSQL_HOST | db | MySQL 主机 |
| MYSQL_PORT | 3306 | MySQL 端口 |
| MYSQL_USER | root | MySQL 用户 |
| MYSQL_PASSWORD | password123 | MySQL 密码 |
| MYSQL_DATABASE | asset_management | 数据库名 |
| DJANGO_DEBUG | False | 调试模式 |
| DJANGO_SECRET_KEY | your-secret-key... | Django 密钥 |
📊 Excel 导入格式
| 资产编号 | 设备名称 | 分类 | 品牌 | 型号 | 资产面值 | 序列号 | 状态 | IP地址 | BMC地址 | 设备位置 | 负责人 | 使用部门 | 使用人 | 采购日期 | 质保到期 | 备注 |
|---|
- 分类不存在时自动创建
- 资产编号允许重复
- 日期格式:YYYY-MM-DD
- 状态可选:在用、闲置、维修中、已报废
📁 项目结构
asset-management/
├── assetapp/ # 主应用
│ ├── models.py # 数据模型
│ ├── views.py # 视图逻辑
│ ├── forms.py # 表单定义
│ ├── excel_utils.py # Excel 导入导出工具
│ ├── urls.py # URL 路由
│ ├── management/commands/ # 管理命令
│ ├── migrations/ # 数据库迁移
│ └── templatetags/ # 自定义模板标签
├── config/ # Django 配置
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── templates/assetapp/ # HTML 模板
├── static/css/ # 静态资源
├── docker-compose.yml # Docker 编排
├── Dockerfile # 容器构建
├── entrypoint.sh # 启动脚本
├── requirements.txt # Python 依赖
└── manage.py # Django 入口
📝 版本历史
v1.0.0
- 资产增删改查
- 仪表盘统计
- 分类管理
- 变更追踪
- Excel 导入导出
- 多维度搜索筛选
- 质保到期提醒
- 深色主题
- Docker 部署支持
Omschrijving
Languages
HTML
46.9%
Python
44.1%
CSS
7.9%
Shell
0.6%
Dockerfile
0.5%