ETest-Vue-FastAPI/入库管理系统使用说明.md

8.5 KiB
Raw Permalink Blame History

入库管理系统使用说明

一、功能概述

基于若依FastAPI+Vue框架实现了完整的样品入库管理功能包括

1. 入库单管理

  • 入库单创建、修改、删除、查询
  • 自动生成入库单号格式2025内检001
  • 记录委托单位、委托人、收样信息等
  • 支持多种来样目的(标准化测试、开发验证、故障验证、实验)
  • 状态管理(正常、已完成、已取消)

2. 样品管理

  • 样品的增删改查
  • 关联入库单(一对多关系)
  • 记录样品型号、SN号、硬件版本等信息
  • 测试项目管理(计划测试项、实际测试项)
  • 出库信息管理(交样日期、交样人、接样人等)
  • 状态跟踪(待测试、测试中、已完成、已退回)

二、已创建的文件清单

后端文件FastAPI

1. 数据库

ruoyi-fastapi-backend/sql/warehouse_management.sql
  • 包含3张表入库单表、样品表、入库单序号表
  • 包含示例数据
  • 包含完整的菜单权限SQL

2. 实体层Entity/DO

ruoyi-fastapi-backend/module_admin/entity/do/warehouse_receipt_do.py
ruoyi-fastapi-backend/module_admin/entity/do/warehouse_sample_do.py

3. 视图对象层VO

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

4. 数据访问层DAO

ruoyi-fastapi-backend/module_admin/dao/warehouse_receipt_dao.py
ruoyi-fastapi-backend/module_admin/dao/warehouse_sample_dao.py

5. 业务逻辑层Service

ruoyi-fastapi-backend/module_admin/service/warehouse_receipt_service.py
ruoyi-fastapi-backend/module_admin/service/warehouse_sample_service.py

6. 控制器层Controller

ruoyi-fastapi-backend/module_admin/controller/warehouse_receipt_controller.py
ruoyi-fastapi-backend/module_admin/controller/warehouse_sample_controller.py

7. 路由注册

ruoyi-fastapi-backend/server.py (已修改)

前端文件Vue

1. API接口

ruoyi-fastapi-frontend/src/api/warehouse/receipt.js
ruoyi-fastapi-frontend/src/api/warehouse/sample.js

2. 页面组件

ruoyi-fastapi-frontend/src/views/warehouse/receipt/index.vue
ruoyi-fastapi-frontend/src/views/warehouse/sample/index.vue

三、部署步骤

步骤1导入数据库

-- 在MySQL中执行
mysql -u root -p your_database < ruoyi-fastapi-backend/sql/warehouse_management.sql

或者在数据库管理工具中手动执行SQL文件内容。

步骤2更新依赖如需要

# 后端
cd ruoyi-fastapi-backend
pip install bcrypt==4.0.1  # 确保bcrypt版本正确

# 前端(如果之前没有安装)
cd ruoyi-fastapi-frontend
npm install

步骤3启动后端

cd ruoyi-fastapi-backend
python app.py

步骤4启动前端

cd ruoyi-fastapi-frontend
npm run serve

步骤5访问系统

  • 打开浏览器访问:http://localhost:8080
  • 使用admin/admin123登录
  • 在菜单中找到"入库管理"模块

四、功能使用说明

4.1 创建入库单

  1. 点击"入库管理" > "入库单管理"
  2. 点击"新增"按钮
  3. 系统自动生成入库单号(可点击刷新按钮重新生成)
  4. 填写以下信息:
    • 必填:入库单号、收样日期
    • 选填:委托单位、委托人、来源地、送样人等
  5. 选择收样方式(专人/小运/快递/货拉拉/交本框)
  6. 选择来样目的(标准化测试/开发验证/故障验证/实验)
  7. 点击"确定"保存

4.2 管理样品

方式一:从入库单进入

  1. 在入库单列表中,点击某个入库单的"查看样品"按钮
  2. 进入该入库单的样品列表页面
  3. 点击"新增"添加样品

方式二:直接进入样品管理

  1. 点击"入库管理" > "样品管理"
  2. 查看所有样品
  3. 可按入库单号、样品型号、SN号等条件搜索

添加样品信息

  • 样品型号:如 DSM
  • 样品SN号如 240212SG
  • 硬件版本号:如 DSM_V4.1.2
  • 外测状态PCBA/点板板/建板板
  • 计划测试项:描述测试内容
  • 测试截止日期YYYY-MM-DD
  • 状态:待测试/测试中/已完成/已退回

4.3 出库管理

在样品详情中填写出库信息:

  • 出库交样日期
  • 出库交样方式
  • 出库交样人
  • 出库接样人
  • 出库记录人
  • 实际测试项

4.4 数据查询

入库单查询

  • 按入库单号
  • 按委托单位
  • 按委托人
  • 按来样目的
  • 按状态

样品查询

  • 按入库单号
  • 按样品型号
  • 按样品SN号
  • 按外测状态
  • 按状态

五、API接口说明

入库单接口

接口 方法 说明
/warehouse/receipt/list GET 获取入库单列表(分页)
/warehouse/receipt/{id} GET 获取入库单详情
/warehouse/receipt POST 新增入库单
/warehouse/receipt PUT 修改入库单
/warehouse/receipt/{ids} DELETE 删除入库单
/warehouse/receipt/generate/receiptNo GET 生成入库单号

样品接口

接口 方法 说明
/warehouse/sample/list GET 获取样品列表(分页)
/warehouse/sample/{id} GET 获取样品详情
/warehouse/sample POST 新增样品
/warehouse/sample PUT 修改样品
/warehouse/sample/{ids} DELETE 删除样品

六、权限配置

系统已自动创建以下权限:

入库单权限

  • warehouse:receipt:list - 查询入库单
  • warehouse:receipt:query - 查看入库单详情
  • warehouse:receipt:add - 新增入库单
  • warehouse:receipt:edit - 修改入库单
  • warehouse:receipt:remove - 删除入库单
  • warehouse:receipt:export - 导出入库单

样品权限

  • warehouse:sample:list - 查询样品
  • warehouse:sample:query - 查看样品详情
  • warehouse:sample:add - 新增样品
  • warehouse:sample:edit - 修改样品
  • warehouse:sample:remove - 删除样品
  • warehouse:sample:export - 导出样品

七、数据库设计

入库单表warehouse_receipt

字段 类型 说明
receipt_id bigint 主键
receipt_no varchar(50) 入库单号(唯一)
commission_no varchar(100) 样品委托单号
client_unit varchar(200) 委托单位
client_contact varchar(100) 委托人
receipt_date date 收样日期
source_location varchar(200) 来源地
delivery_person varchar(100) 送样人
receipt_method varchar(50) 收样方式
receipt_method_detail varchar(200) 收样方式详情
receiver varchar(100) 收样人
recorder varchar(100) 入库记录人
purpose varchar(50) 来样目的
purpose_detail varchar(500) 来样目的详情
status char(1) 状态(0正常 1已完成 2已取消)
remark varchar(500) 备注

样品表warehouse_sample

字段 类型 说明
sample_id bigint 主键
receipt_id bigint 入库单ID外键
receipt_no varchar(50) 入库单号
sample_model varchar(100) 样品型号
sample_sn varchar(100) 样品SN号
hardware_version varchar(100) 硬件版本号
external_status varchar(50) 外测状态
test_items varchar(500) 计划测试项
test_deadline date 测试截止日期
actual_test_items varchar(500) 实际测试项
delivery_date date 出库交样日期
delivery_method varchar(50) 出库交样方式
delivery_person varchar(100) 出库交样人
receive_person varchar(100) 出库接样人
delivery_recorder varchar(100) 出库记录人
status char(1) 状态(0待测试 1测试中 2已完成 3已退回)
remark varchar(500) 备注

八、注意事项

  1. 数据关联:删除入库单会级联删除其下所有样品,请谨慎操作
  2. 权限配置:需要给相应用户角色分配入库管理权限
  3. 入库单号:格式为"年份+类型+序号"2025内检001
  4. bcrypt版本后端需要bcrypt==4.0.1版本才能正常工作
  5. 数据库使用MySQL字符集为utf8mb4

九、扩展功能建议

如需进一步扩展,可以考虑:

  • 导出Excel功能
  • 批量导入样品
  • 样品流转记录
  • 测试报告上传
  • 统计报表功能
  • 消息提醒(测试截止提醒)
  • 二维码标签打印

开发完成日期2025-11-03 技术栈FastAPI + Vue.js + Element UI + MySQL + SQLAlchemy 基于框架若依FastAPI版