ETest-Vue-FastAPI/入库单界面修改说明.md

5.0 KiB
Raw Blame History

入库单界面修改说明

修改内容概述

根据您的需求,已完成以下三个方面的修改:

1. 添加"入库登记人"字段

  • 前端修改:在入库单表单中添加了"入库登记人"字段(只读,灰色显示)

    • 位置:收样人字段旁边
    • 提示文本:自动填充当前用户
  • 后端支持:后端已自动设置此字段

    • warehouse_receipt_controller.py 中,创建入库单时自动将当前登录用户名设置为 recorder 字段
    • 代码:add_receipt.recorder = current_user.user.user_name

2. 删除"收样方式详情"和"来样目的详情"栏

已删除"收样方式详情"和"来样目的详情"字段:

  • 前端修改

    • 文件:ruoyi-fastapi-frontend/src/views/warehouse/receipt/index.vue
    • 删除了表单中的"收样方式详情"和"来样目的详情"输入框
    • 删除了 form.receiptMethodDetailform.purposeDetail 字段
  • 后端修改

    • 文件:ruoyi-fastapi-backend/module_admin/entity/vo/warehouse_receipt_vo.py
    • WarehouseReceiptModel 中移除了 receipt_method_detailpurpose_detail 字段
  • 数据库迁移(可选):

    • 提供了 remove_receipt_method_detail.sql 脚本
    • 如果需要从数据库中彻底删除这些字段,可执行此脚本(执行前请备份数据库)

3. 合并样品信息到入库单管理界面

现在可以在创建入库单时直接添加样品信息:

  • 前端修改

    • 文件:ruoyi-fastapi-frontend/src/views/warehouse/receipt/index.vue
    • 对话框宽度从 800px 增加到 1200px 以容纳更多内容
    • 在表单底部添加了"样品信息"部分
    • 提供动态表格,支持添加/删除多个样品
    • 样品字段包括:
      • 样品型号
      • 样品SN
      • 硬件版本号
      • 样品外观状态下拉选择PCBA、点板板、建板板
      • 计划测试截止日期(日期选择器)
      • 计划测试项(文本输入)
  • 后端修改

    1. VO模型 (warehouse_receipt_vo.py)

      • 添加导入:from module_admin.entity.vo.warehouse_sample_vo import WarehouseSampleModel
      • AddWarehouseReceiptModel 中添加 samples 字段,类型为 List[WarehouseSampleModel]
    2. Service层 (warehouse_receipt_service.py)

      • 添加导入:from module_admin.entity.do.warehouse_sample_do import WarehouseSample
      • 修改 add_receipt 方法,支持在创建入库单时同时创建关联的样品
      • 使用事务确保数据一致性(先创建入库单,再创建样品)
      • 自动设置样品的 receipt_idreceipt_nocreate_by 字段

使用说明

创建入库单并添加样品

  1. 点击"新增"按钮打开入库单添加对话框
  2. 填写入库单基本信息
  3. 注意"入库登记人"字段会自动显示(无需填写)
  4. 滚动到底部的"样品信息"部分
  5. 点击"添加样品"按钮添加样品记录
  6. 在表格中填写样品详细信息
  7. 可以添加多个样品,也可以删除不需要的样品
  8. 点击"确定"按钮,系统会同时创建入库单和所有关联的样品

注意事项

  • "收样方式详情"和"来样目的详情"字段已从表单中移除,建议将相关信息写在"备注"中
  • 样品信息现在可以在创建入库单时直接添加,无需先创建入库单再单独添加样品
  • 也可以通过入库单列表中的"查看样品"按钮进入样品管理界面,进行样品的查看和管理

文件修改清单

后端文件

  1. ruoyi-fastapi-backend/module_admin/entity/vo/warehouse_receipt_vo.py

    • 删除 receipt_method_detail 字段
    • 添加样品列表支持
  2. ruoyi-fastapi-backend/module_admin/service/warehouse_receipt_service.py

    • 修改 add_receipt 方法支持同时创建样品

前端文件

  1. ruoyi-fastapi-frontend/src/views/warehouse/receipt/index.vue
    • 删除"收样方式详情"字段
    • 添加"入库登记人"字段(只读)
    • 添加样品信息动态表格
    • 添加 handleAddSamplehandleDeleteSample 方法

数据库脚本(可选)

  1. remove_receipt_method_detail.sql
    • 从数据库表中删除 receipt_method_detail

测试建议

  1. 测试入库登记人自动填充

    • 使用不同账号登录
    • 创建入库单
    • 验证"入库登记人"字段是否正确显示当前用户
  2. 测试样品添加功能

    • 创建入库单时添加1个样品
    • 创建入库单时添加多个样品
    • 创建入库单时不添加样品
    • 验证样品数据是否正确保存
  3. 测试样品删除功能

    • 添加多个样品后,删除其中某些样品
    • 验证提交后数据是否正确
  4. 测试数据完整性

    • 验证入库单和样品的关联关系
    • 在"查看样品"界面验证样品数据

兼容性说明

  • 后端 recorder 字段已在 controller 中自动设置,前端无需传递
  • 数据库表结构保持不变(除非执行可选的迁移脚本)
  • 现有的样品管理功能保持不变,仍可通过"查看样品"进入样品管理界面