Files
ocean/backend/scripts/README.md
T

2.2 KiB
Raw Blame History

脚本说明

seed_test_users.py:插入测试用户(供测试工程师使用)

users 表插入 6 个测试账号(管理员、市场部、工程部、技经部、财务部、物贸部各一),统一密码:123456

用法

cd backend
source .venv/bin/activate
PYTHONPATH=src python scripts/seed_test_users.py

测试账号

账号 (username) 角色 密码
admin 管理员 123456
market 市场部 123456
engineer 工程部 123456
tech 技经部 123456
finance 财务部 123456
material 物贸部 123456

(新建项目仅市场部可调,其他角色可查看/修改。)


clean_db.py:清空项目与操作日志表

清空 projectsoperation_logs 表(保留 users)。用于重新导入前清理数据。

用法

cd backend
source .venv/bin/activate
PYTHONPATH=src python scripts/clean_db.py

清理并重新导入(一条命令)

cd backend && source .venv/bin/activate && PYTHONPATH=src python scripts/clean_db.py && PYTHONPATH=src python scripts/import_xls.py ../docs/example.xls

import_xls.py:导入 example.xls 到 projects 表

docs/example.xls 中的项目数据导入 ocean 数据库的 projects 表。

前置条件

  1. 已执行 schema.sql 创建数据库和表。
  2. 已配置 .envMySQL 连接信息)。
  3. 已安装依赖:pip install -r requirements.txt(含 mysql-connector-python、xlrd)。

用法

cd backend
source .venv/bin/activate
PYTHONPATH=src python scripts/import_xls.py

默认读取 ../docs/example.xls(相对 backend)。也可指定路径:

PYTHONPATH=src python scripts/import_xls.py /path/to/example.xls

说明

  • 使用第一个 Sheet;表头为第 3 行(row 2),数据从第 6 行(row 5)开始。
  • 仅导入「合同编号」非空的行;若「项目名称」为空则用合同编号或「未命名」。
  • 表头与 schema.sql初始需求 对齐(含「其中:」等前缀的列已映射)。
  • 导入成功后输出:成功条数、跳过条数。