# ipam **Repository Path**: xlglm/ipam ## Basic Information - **Project Name**: ipam - **Description**: IT资产管理系统 php - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-02-04 - **Last Updated**: 2026-03-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IT资产管理系统 一个基于PHP + MySQL的企业级IT资产管理系统,支持多种设备类型管理、权限控制、统计分析等功能。 ## 🌐 在线演示 **演示地址:** https://ai-ipam.i-522.com/ **演示账号:** - 用户名:`admin` - 密码:`123456` > 💡 **提示:** 演示环境,您可以自由体验所有功能! ## 📸 系统预览 ### 登录页面 ![登录页面](https://img.522.plus/i/u/2025/08/31/ivzsb7.png) ### IP段管理 ![IP段管理界面](https://blog.522.plus/wp-content/uploads/2025/08/PixPin_2025-08-25_15-11-38-1024x609.png) ### IP段详情管理 ![IP段详情界面](https://blog.522.plus/wp-content/uploads/2025/08/PixPin_2025-08-25_15-15-24-1024x609.png) ### IP地址管理 ![IP地址管理](https://blog.522.plus/wp-content/uploads/2025/08/PixPin_2025-08-25_15-14-58-1024x609.png) ### 设备管理 ![设备管理](https://blog.522.plus/wp-content/uploads/2025/08/PixPin_2025-08-25_15-13-20-750x446.png) ## 🚀 快速安装 - 安装时会有环境检测 ### 环境要求 - PHP >= 7.4 (推荐 8.0+) - MySQL >= 5.5 (支持 5.5-8.4.5) - Web服务器 (Apache/Nginx) - PDO MySQL扩展 **核心功能依赖**: - **基础功能**: PDO、JSON、cURL、session扩展 - **IP段扫描**: 系统命令 `ping`、`fping`、`nmap`、`arp` - **文件上传**: `file_uploads = On`,合适的 `upload_max_filesize` - **批量处理**: `exec()` 函数启用,`max_execution_time` 适当设置 - **日志记录**: `storage/logs/` 目录写入权限 **网络环境要求**: - **局域网扫描**: 推荐在内网环境使用IP扫描功能 - **防火墙设置**: 确保必要端口开放(HTTP/HTTPS) - **DNS解析**: 建议配置本地DNS或hosts文件 ### 方式一:宝塔面板部署(推荐) 如果您使用宝塔面板,请参考 **[宝塔面板部署指南](BAOTA_DEPLOYMENT.md)** 进行快速部署。 ### 安装工具选择 根据您的MySQL版本选择合适的安装工具: **🔍 版本检测工具** - 如需检测MySQL版本,可查看数据库管理工具 - 或通过 `SELECT VERSION()` SQL语句检查 **🔧 兼容性修复工具** - 访问 `http://你的域名/mysql8_fix.php` - 自动适配 MySQL 5.5, 5.7, 8.0, 8.4+ 等版本 - 智能选择兼容的SQL文件并修复兼容性问题 **📋 增强安装向导(推荐)** - 访问 `http://你的域名/install.php` - 全新响应式界面,完美适配手机、平板、电脑 - 完整的错误检测和提示 - 强化的系统环境检测(ping、fping、nmap、arp等工具) - 自动处理MySQL保留关键字兼容性 - 验证所有数据库表是否正确创建 - 详细的故障排除指南和安装提示 ### 方式二:通用安装步骤 1. **下载系统文件** ```bash # 将系统文件上传到Web服务器目录 ``` 2. **配置Web服务器** - 确保Web服务器指向项目根目录 - 配置URL重写(可选,推荐使用nginx.conf配置) 3. **运行安装向导** ``` 访问: http://your-domain/install.php ``` 4. **按照安装向导完成配置** - 响应式环境检测界面,支持多设备访问 - 强化的系统工具检测(ping、fping、nmap、arp等) - 数据库配置和连接测试(优化的两列布局) - 自动创建表结构(支持MySQL 5.5-8.4.5) - 验证所有13个数据库表创建成功 - 创建默认管理员账号 - 详细的错误信息和故障排除建议 5. **删除安装文件** ```bash rm install.php # 安装完成后请删除此文件 ``` ### 默认账号 - 用户名: `admin` - 密码: `123456` - **重要**: 首次登录后请立即修改密码 ## 📋 功能特性 ### 设备管理 - 🖥️ **笔记本电脑管理** - 型号、配置、状态跟踪 - 📺 **显示器管理** - 品牌、尺寸、接口类型 - 🖨️ **打印机管理** - 类型、耗材、维护记录、批量导入 - 🏢 **主机管理** - 服务器配置、用途分类 - 🖥️ **服务器管理** - 远程连接、端口扫描 **批量处理功能**: - 📥 **Excel导入** - 支持按列名识别的智能导入 - 📤 **模板导出** - 提供标准Excel模板 - 🔄 **数据同步** - 支持增量更新和全量同步 - ✅ **格式验证** - 自动检查数据格式和完整性 ### 资源管理 - 📦 **耗材管理** - 库存出入库、消耗统计、批量导入导出 - 🌐 **IP地址管理** - 网段规划、地址分配、快速扫描 - 🏷️ **品牌管理** - 设备品牌统一管理 - 🏢 **部门管理** - 组织架构、资产归属 **IP管理增强功能**: - ⚡ **高速扫描** - 优化算法,大幅提升扫描速度 - 📋 **扫描日志** - 详细记录扫描历史和结果 - 🔍 **智能检测** - 自动识别设备类型和状态 - 📊 **可视化界面** - 全屏模式、动画效果 ### 系统功能 - 👥 **多级权限** - 系统管理员/管理员/网管 - 📊 **统计分析** - 资产统计、使用率分析 - 📝 **操作日志** - 完整的操作记录 - 🔐 **安全认证** - 登录验证、会话管理 - 🛡️ **错误调试** - 详细的日志记录和错误追踪 - 📱 **响应式设计** - 完美适配各种设备和屏幕尺寸 - 🎨 **现代化界面** - 流畅的动画效果和交互体验 ## 🛠️ 技术架构 - **后端**: PHP 7.4+, PDO MySQL - **前端**: HTML5, CSS3, JavaScript (原生,无jQuery依赖),响应式设计 - **数据库**: MySQL 5.5-8.4.5(完全兼容) - **架构**: MVC模式, RESTful API - **部署**: 支持宝塔面板、Apache、Nginx等多种环境 - **安全**: 密码哈希加密、会话管理、防SQL注入 - **UI/UX**: CSS Grid、Flexbox布局,平滑动画过渡 ## 📁 目录结构 ``` ├── index.php # 主入口文件(支持路径重写) ├── install.php # 增强安装向导 ├── mysql8_fix.php # MySQL兼容性修复工具 ├── public/ # 静态资源和页面 │ ├── css/ # 样式文件 │ ├── js/ # JavaScript文件 │ ├── login.html # 登录页面(已优化UI和错误处理) │ └── *.html # 功能页面(已修复API路径) ├── src/ # 源代码 │ ├── controllers/ # 控制器(含详细错误日志) │ ├── models/ # 数据模型 │ ├── config/ # 配置文件 │ ├── middleware/ # 中间件(认证等) │ └── services/ # 服务层 ├── sql/ # 数据库结构文件(MySQL多版本兼容) └── storage/ # 存储目录 ├── sessions/ # 会话文件 └── logs/ # 日志文件 ``` ## 🔧 配置说明 ### 数据库配置 配置文件: `src/config/database.php` ### Web服务器配置 推荐使用提供的 `nginx.conf` 配置文件 ### 权限说明 - **系统管理员**: 完全权限,管理所有功能 - **管理员**: 管理网管账号和设备资产 - **网管**: 只能查看和修改自己的信息 ## 📞 技术支持 - QQ交流群:941769344 点击链接加入群聊【森森IT资产管理交流群】:https://qm.qq.com/q/pwIn4TLWYo ![alt text](c91c86c70e0cbc7600a5d3db2fb46ddf.png) ### 新功能与修复 (v1.5.1)-(2025-09-08) **🎨 UI界面精细化优化** - 优化搜索框圆角设计,从25px调整为10px,视觉更加精致 - 更新扫描按钮图标,使用自定义SVG扫描框图标替换emoji - 统一顶部搜索区域的设计语言,提升界面一致性 - 增强按钮视觉效果,改进扫描框角落标识的可识别性 **📷 扫码功能重磅上线** - 手机版新增条码/二维码扫描功能,支持快速查找和编辑资产 - 智能识别资产类型:主机(PC-)、显示器(MONITOR-)、打印机(PRINT-)、耗材(其他) - 扫描已存在资产编号可直接编辑,扫描新编号可快速新增 - 支持摄像头切换、闪光灯控制等高级功能 - 兼容条形码和二维码多种格式扫描 **📱 手机版界面全面重构** - 移除冗余的移动端访问提示,简化界面结构 - 修复资产概览数据加载问题,实时显示准确统计 - 新增专业的扫码界面,包含扫描框和动画效果 - 添加顶部搜索功能,支持模糊搜索所有资产类型 - 优化表单设计,提供更好的移动端输入体验 - 增强触摸交互和视觉反馈 **🔧 扫码技术特性** - 专用QuaggaJS条码检测引擎,专注Code 128条码识别 - 优化iOS Safari兼容性,稳定高效的检测性能 - 智能扫描框设计:320x120px横条形状,适配Code 128条码 - 创新的随机点动画系统,替代传统扫描线 - 自动选择最佳摄像头(优先后置环境摄像头) - 提供手动输入备选方案,确保兼容性 - 实时扫描检测,响应迅速,85%置信度阈值 **🛠️ 资产管理增强** - 扫码结果智能分类和路由到对应资产类型 - 统一的资产编辑表单,支持所有字段修改 - 完善的API集成,确保数据一致性 - 新增和编辑操作的无缝切换 - 实时数据验证和错误处理 - 全局资产搜索功能,支持跨类型模糊查找 **📱 移动端搜索系统** - 实现顶部搜索框,支持模糊匹配资产编号、名称、部门等 - 智能加载所有资产类型数据进行统一搜索 - 搜索结果分类显示,清晰展示资产类型和关键信息 - 支持搜索结果直接跳转到资产详情编辑 - 优化搜索性能,提供流畅的交互体验 ### 历史版本更新 (v1.5.0)-(2025-09-08) **📷 扫码功能重磅上线** - 手机版新增条码/二维码扫描功能,支持快速查找和编辑资产 - 智能识别资产类型:主机(PC-)、显示器(MONITOR-)、打印机(PRINT-)、耗材(其他) - 扫描已存在资产编号可直接编辑,扫描新编号可快速新增 - 支持摄像头切换、闪光灯控制等高级功能 - 兼容条形码和二维码多种格式扫描 **📱 手机版界面全面优化** - 移除冗余的移动端访问提示,简化界面 - 修复资产概览数据加载问题,实时显示准确统计 - 新增专业的扫码界面,包含扫描框和动画效果 - 优化表单设计,提供更好的移动端输入体验 - 增强触摸交互和视觉反馈 **🔧 扫码技术特性** - 专用QuaggaJS条码检测引擎,专注Code 128条码识别 - 优化iOS Safari兼容性,稳定高效的检测性能 - 支持Code 128、EAN-13、EAN-8、Code 39等主流条码格式 - 自动选择最佳摄像头(优先后置环境摄像头) - 提供手动输入备选方案,确保兼容性 - 实时扫描检测,响应迅速 **🛠️ 资产管理增强** - 扫码结果智能分类和路由到对应资产类型 - 统一的资产编辑表单,支持所有字段修改 - 完善的API集成,确保数据一致性 - 新增和编辑操作的无缝切换 - 实时数据验证和错误处理 ### 历史版本更新 (v1.4.2)-(2025-09-08) **📱 手机版界面全新发布** - 自动检测移动设备,智能重定向到手机版页面 - 响应式设计,支持各种屏幕尺寸和设备类型 - 手机版提供核心功能的简化操作界面 - 支持手机版和桌面版之间的无缝切换 **🔧 移动设备优化** - 优化触摸交互体验,适配手指操作 - 简化操作流程,专为移动设备设计 - 优化加载速度和网络请求效率 - 新增设备检测测试页面,便于调试 **🎨 用户体验提升** - 在桌面版添加"手机版"切换按钮 - 在手机版添加"完整版"访问按钮 - 统一的登录体验,自动选择合适的界面 - 改进的导航和操作提示 **🛠️ 技术架构增强** - 完善的移动设备检测机制 - 灵活的重定向逻辑,支持强制指定版本 - 优化的API认证处理,确保移动端安全性 - 新增设备检测调试工具 ### 历史版本更新 (v1.4.1)-(2025-09-04) **🔧 主机管理功能增强** - 修复Excel导入时空日期字段导致的数据库错误 - 优化批量导入逻辑,改为顺序处理避免并发问题 - 增强导入数据验证,自动处理空的必填字段 - 改进错误提示,显示详细的失败原因和行号 - 添加导入进度显示和结果统计 **🎨 用户界面优化** - 优化高级搜索区域按钮排版和视觉效果 - 为搜索和重置按钮添加图标和悬停效果 - 改进按钮布局,使用右对齐和统一样式 - 增加阴影效果和渐变过渡,提升用户体验 **🛠️ 技术架构改进** - 强化异常处理机制,防止辅助功能影响主流程 - 优化数据库插入逻辑,自动处理空值和无效数据 - 改进API错误响应,提供更准确的错误描述 - 增强日志记录,便于问题诊断和调试 ### 历史版本更新 (v1.4)-(2025-09-01) **🔐 身份验证系统全面修复** - 修复用户访问某些页面时反复提示登录的问题 - 统一所有管理页面的API请求处理机制 - 添加自动身份验证检测和401错误处理 - 实现会话状态自动维持,确保登录状态持久化 - 覆盖14个核心管理页面的认证修复 **📋 日志管理界面优化** - 修复日志表格行多行显示问题,改为单行显示 - 优化表格单元格样式,长内容自动截断并显示省略号 - 改进表格行高度一致性和视觉效果 - 增强日志查看的用户体验 **🔧 技术架构改进** - 统一API请求函数实现,支持自动Cookie传递 - 现代化异步请求处理,从jQuery转换为原生async/await - 增强错误处理机制,提供更准确的错误提示 - 优化前端代码结构,提高维护性 ### 历史版本更新 (v1.3)-(2025-08-31) **🎨 安装程序界面优化** - 全面响应式布局设计,完美适配各种屏幕尺寸 - 移除固定宽度限制,最大宽度扩展至1400px - 新增响应式断点:1600px+、1200px、1024px、768px、600px、480px - 环境检测结果采用多列网格布局,信息展示更清晰 - 数据库配置表单优化为两列网格布局 - 增强的移动端适配,改善小屏幕设备体验 **🔧 IP段管理功能增强** - 添加平滑的全屏切换动画效果 - 优化全屏按钮样式和交互体验 - 改进网格布局转换的视觉效果 - 增强按钮状态管理和图标变化 **🛠️ 系统环境检测强化** - 新增系统工具检测(ping、fping、nmap、arp) - 增强exec函数可用性检查 - 完善PHP扩展和配置检测 - 添加详细的安装提示和错误指导 - 实现强制环境检查,确保所有依赖满足后才能继续安装 ### 历史版本更新 (v1.2) **🔐 登录系统优化** - 全新的登录界面设计,美观易用 - 增强的错误处理和调试信息 - 详细的登录日志记录 - 改进的密码验证机制(支持明文密码自动转换) - 智能错误提示,便于问题诊断 **🛠️ 系统稳定性提升** - 完善的异常处理机制 - 分段错误检测,精确定位问题 - 增强的调试模式,便于开发和维护 - 优化的会话管理 **🎨 UI/UX 改进** - 响应式登录界面,支持各种设备 - 优化的加载状态和错误提示 - 改进的图标和视觉效果 - 解决favicon 404问题 ### 常见问题解决 **登录问题** - 系统提供详细的错误日志,便于定位问题 - 支持密码自动哈希转换 - 改进的错误消息提示 - 完善的会话验证机制 **API 404错误** - 系统已修复前端API路径问题 - 支持宝塔面板等子目录部署 - 使用相对路径确保兼容性 **MySQL兼容性问题** - 自动处理MySQL保留关键字(function, manual等) - 支持MySQL 5.5到8.4.5所有版本 - 智能SQL模式设置 ### 故障排除 如遇到问题,请按以下顺序检查: 1. **环境检查** - PHP版本 >= 7.4 - PDO MySQL扩展已启用 - 数据库连接正常 - 系统工具可用性(ping、fping、nmap、arp) - exec函数是否启用 - 文件上传功能是否正常 2. **安装检查** - 所有13个数据库表是否创建成功 - 配置文件是否正确生成 - 目录权限是否设置正确(特别是storage/logs/和storage/uploads/) - 安装向导的环境检测是否全部通过 3. **部署检查** - Web服务器配置是否正确 - URL重写规则是否生效 - 静态资源是否可以访问 - 响应式布局在不同设备上是否正常显示 4. **功能验证** - 登录功能是否正常 - 各功能模块页面是否加载正常 - API接口是否响应正常 - 全屏模式和动画效果是否工作正常 - IP扫描功能是否可用 - 批量导入导出是否正常 5. **性能检查** - IP扫描速度是否符合预期(几十秒内完成) - 批量导入处理是否正常 - 日志记录是否正常写入 5. **日志检查** - 查看PHP错误日志 - 检查系统登录日志 - 查看详细的调试信息 ### 开发者支持 **调试模式** - 在开发环境中,系统会返回详细的错误信息 - 完整的堆栈跟踪信息 - 请求详情记录 **日志系统** - 详细的操作日志记录 - 登录/登出日志追踪 - 错误日志和异常记录 --- **版本**: 1.5.1 **更新时间**: 2025-09-08 **重要更新**: - ✅ 新增专业的条码扫描功能,支持QuaggaJS Code 128专用检测 - ✅ 全面重构手机版界面,添加顶部搜索和扫码功能 - ✅ 优化iOS Safari扫码兼容性,创新随机点动画系统 - ✅ 实现全局资产搜索,支持跨类型模糊查找 - ✅ 精细化UI优化,搜索框圆角和扫描按钮图标优化 - ✅ 智能资产编号识别和分类路由系统 - ✅ 完善的扫码错误处理和手动输入备选方案 **环境要求增强**: - **IP扫描功能**: 需要系统支持 `ping`、`fping`、`nmap`、`arp` 命令 - **批量导入**: 需要PHP支持文件上传和CSV处理 - **日志记录**: 需要 `storage/logs/` 目录写入权限 - **网络扫描**: 建议在局域网环境中使用,外网扫描可能受防火墙限制 - **会话管理**: 确保PHP会话功能正常,`session.cookie_httponly = 1` 建议启用 **历史版本**: - **v1.5.0** (2025-09-08): 扫码功能重磅上线、手机版界面全面重构、QuaggaJS专用条码检测 - **v1.4.2** (2025-09-08): 手机版界面全新发布、移动设备检测优化 - **v1.4.1** (2025-09-04): 主机管理功能增强、用户界面优化 - **v1.4** (2025-09-01): 身份验证系统全面修复、日志管理界面优化 - **v1.3** (2025-08-31): 全面优化安装程序响应式布局、增强IP段管理全屏动画效果、强化系统环境检测 - **v1.2** (2025-08-31): 优化登录系统、优化UI/UX、增强错误处理 - **v1.1**: 基础功能完善、权限系统优化 - **v1.0**: 初始版本发布