TableSynthesis/Windows部署说明.md
2025-06-30 21:07:53 +08:00

7.1 KiB
Raw Blame History

座位分配系统 - Windows部署说明

目录

概述

本文档说明如何在Windows系统上构建和部署座位分配系统。该系统支持1-10人连坐需求能够处理不连续座位分配。

主要功能:

  • 智能座位分配算法
  • 支持连坐组合1-10人
  • 完整的文件校验
  • 详细的分配日志
  • 用户友好的命令行界面

系统要求

开发环境要求

  • 操作系统: Windows 7/10/11 (64位)
  • Python版本: Python 3.8 或更高版本
  • 内存: 至少 2GB RAM
  • 磁盘空间: 至少 500MB 可用空间
  • 网络: 需要网络连接以下载依赖包

运行环境要求(最终用户)

  • 操作系统: Windows 7/10/11 (64位)
  • 内存: 至少 1GB RAM
  • 磁盘空间: 至少 100MB 可用空间
  • Excel: Microsoft Excel 2010 或更高版本(查看结果文件)

开发者构建指南

1. 环境准备

1.1 安装Python

Python官网 下载并安装Python 3.8+

确保安装时勾选:

  • Add Python to PATH
  • Install pip

1.2 验证安装

python --version
pip --version

2. 下载源代码

git clone <repository-url>
cd TableSynthesis

3. 自动构建(推荐)

3.1 运行构建脚本

python windows_build.py

构建脚本将自动完成:

  • 检查系统环境
  • 安装必要依赖
  • 构建独立exe文件
  • 创建分发包

3.2 构建输出

构建成功后,会生成:

座位分配系统_Windows_分发包/
├── 座位分配系统.exe           # 主程序
├── 运行座位分配系统.bat       # 启动脚本  
├── 使用说明.txt               # 使用说明
├── 人员信息_示例.xlsx         # 示例文件
└── 座位信息_示例.xlsx         # 示例文件

4. 手动构建(可选)

如果自动构建失败,可以手动构建:

4.1 安装依赖

pip install pandas>=1.3.0 openpyxl>=3.0.0 numpy>=1.20.0 pyinstaller>=4.0

4.2 使用PyInstaller构建

pyinstaller --clean --noconfirm seat_allocation.spec

4.3 手动创建分发包

mkdir 座位分配系统_Windows_分发包
copy dist\座位分配系统.exe 座位分配系统_Windows_分发包\
copy 人员信息.xlsx 座位分配系统_Windows_分发包\人员信息_示例.xlsx
copy 座位信息.xlsx 座位分配系统_Windows_分发包\座位信息_示例.xlsx
copy 运行座位分配系统.bat 座位分配系统_Windows_分发包\

用户使用指南

1. 获取分发包

从开发者处获取 座位分配系统_Windows_分发包 文件夹,或下载已构建的发布版本。

2. 准备数据文件

2.1 复制示例文件

人员信息_示例.xlsx → 人员信息.xlsx
座位信息_示例.xlsx → 座位信息.xlsx

2.2 填写人员信息.xlsx

必需列:

  • 姓名: 人员姓名
  • 证件类型: 身份证、护照等
  • 证件号: 证件号码
  • 手机号: 联系电话
  • 备注: 连坐人数(留空表示单独坐)

连坐规则:

  • 单人坐位:备注列留空
  • 连坐组合:第一人填写总人数,其他人留空

示例:

姓名 证件类型 证件号 手机号 备注
张三 身份证 123456789012345678 13800138000 3
李四 身份证 123456789012345679 13800138001
王五 身份证 123456789012345680 13800138002
赵六 身份证 123456789012345681 13800138003

上述示例表示张三、李四、王五需要3人连坐赵六单独坐。

2.3 填写座位信息.xlsx

必需列:

  • 区域: 座位区域(如"A区"、"B区"
  • 楼层: 楼层信息(如"1层"、"2层"
  • 排号: 排号(如"第1排"、"第2排"
  • 座位号: 具体座位号(如"1号"、"2号"

示例:

区域 楼层 排号 座位号
A区 1层 第1排 1号
A区 1层 第1排 2号
A区 1层 第1排 3号

3. 运行程序

3.1 推荐方式使用bat脚本

双击 运行座位分配系统.bat

脚本会自动:

  • 检查环境和文件
  • 提供友好的错误提示
  • 运行主程序
  • 显示运行结果

3.2 直接运行

双击 座位分配系统.exe

4. 查看结果

程序运行成功后,会生成以下文件:

  • 座位信息_最终分配.xlsx: 最终座位分配结果
  • 最终座位分配日志.xlsx: 详细分配记录
  • seat_allocation_log.txt: 运行日志

使用Excel打开xlsx文件查看分配结果。

故障排除

常见问题

Q1: 程序无法启动

可能原因:

  • 系统不兼容需要Windows 7+
  • 缺少Visual C++ Redistributable

解决方案:

  1. 确认系统版本Windows 7/10/11 64位
  2. 下载安装 Microsoft Visual C++ Redistributable

Q2: 提示缺少依赖包

可能原因:

  • 网络连接问题
  • 权限不足

解决方案:

  1. 确保网络连接正常
  2. 以管理员身份运行
  3. 手动安装:pip install pandas openpyxl numpy

Q3: 文件权限错误

可能原因:

  • Excel文件被占用
  • 程序目录只读

解决方案:

  1. 关闭所有Excel窗口
  2. 确保程序目录有写入权限
  3. 避免在系统盘根目录运行

Q4: 数据文件格式错误

可能原因:

  • 列名不匹配
  • 数据类型错误
  • 编码问题

解决方案:

  1. 对照示例文件检查列名
  2. 确保数据格式正确
  3. 使用UTF-8编码保存

Q5: 无法找到连续座位

可能原因:

  • 座位信息不连续
  • 连坐组过大

解决方案:

  1. 检查座位信息的连续性
  2. 适当调整连坐组大小
  3. 增加座位数量

日志分析

查看 seat_allocation_log.txt 文件可获取详细错误信息:

  • 文件加载错误: 检查文件路径和格式
  • 数据校验错误: 检查数据完整性
  • 分配算法错误: 检查座位和人员匹配

性能优化

大数据处理

  • 人员数量: 建议不超过1000人
  • 座位数量: 建议不超过2000个
  • 连坐组大小: 建议不超过8人

内存使用

  • 小型场景(<100人: 约50MB内存
  • 中型场景100-500人: 约100MB内存
  • 大型场景500-1000人: 约200MB内存

技术支持

获取帮助

  1. 查看日志文件: seat_allocation_log.txt
  2. 检查使用说明: 使用说明.txt
  3. 参考示例文件: 确保数据格式正确

报告问题

报告问题时,请提供:

  • 系统信息(操作系统版本)
  • 错误截图或错误信息
  • 数据文件(脱敏后)
  • seat_allocation_log.txt 内容

更新与维护

  • 定期检查更新版本
  • 备份重要数据文件
  • 保持系统和依赖包更新

版本: v1.0
最后更新: 2024年12月
兼容性: Windows 7/10/11 (64位)