1、调整凭证
2、调整运单
This commit is contained in:
+124
@@ -0,0 +1,124 @@
|
||||
# 运输计划导入模板修改说明
|
||||
|
||||
## 修改日期
|
||||
2026-09-08
|
||||
|
||||
## 修改内容
|
||||
|
||||
### 一、模板字段调整
|
||||
|
||||
#### 新增字段
|
||||
1. **里程(km)** - 非必填,数值类型
|
||||
2. **同一计划标识号** - 非必填,文本类型,用于标识同一计划的多条记录
|
||||
|
||||
#### 移除字段
|
||||
1. 品牌
|
||||
2. 物料编码
|
||||
3. 设备编码
|
||||
|
||||
#### 字段名称调整
|
||||
| 原字段名 | 新字段名 |
|
||||
|---------|---------|
|
||||
| 运输方式 | 运输类型 |
|
||||
| 数量单位 | 计量单位 |
|
||||
| 发货联系方式 | 发货联系人电话 |
|
||||
| 收货地址 | 到货地址 |
|
||||
| 收货联系方式 | 收货联系人电话 |
|
||||
| 计划开始日期 | 计划开始时间 |
|
||||
| 计划结束日期 | 计划结束时间 |
|
||||
|
||||
#### 必填字段调整
|
||||
调整后的必填字段(带 * 号):
|
||||
- *计划名称
|
||||
- *运输类型
|
||||
- *发货地址
|
||||
- *到货地址
|
||||
- *货物类型
|
||||
|
||||
**注意**:计划开始时间和计划结束时间改为非必填
|
||||
|
||||
### 二、完整字段列表(按顺序)
|
||||
|
||||
```
|
||||
序号 | *计划名称 | *运输类型 | *发货地址 | 发货联系人 | 发货联系人电话 |
|
||||
*到货地址 | 收货联系人 | 收货联系人电话 | 货物名称 | *货物类型 |
|
||||
数量 | 计量单位 | 包装 | 规格 | 型号 | 里程(km) |
|
||||
计划开始时间 | 计划结束时间 | 备注 | 同一计划标识号
|
||||
```
|
||||
|
||||
### 三、前端修改文件
|
||||
|
||||
1. **src/views/business/transport-plan-import.vue**
|
||||
- 更新 `importColumns` 数组(Excel列映射)
|
||||
- 更新 `previewColumns` 数组(预览表格列定义)
|
||||
- 调整必填字段验证逻辑
|
||||
- 将计划开始/结束时间改为非必填
|
||||
- 添加里程字段的非负数验证
|
||||
- 调整表格最小宽度为 2400px
|
||||
|
||||
### 四、后端修改文件
|
||||
|
||||
1. **TransportPlan.java** (实体类)
|
||||
- 新增 `mileage` 字段(BigDecimal 类型)
|
||||
- 新增 `planGroupId` 字段(String 类型)
|
||||
|
||||
2. **TransportPlanImportExcel.java** (导入Excel实体)
|
||||
- 调整所有字段顺序和名称
|
||||
- 移除 brand、materialCode、deviceCode 字段
|
||||
- 新增 mileage、planGroupId 字段
|
||||
- 更新所有 @ExcelProperty 注解
|
||||
|
||||
3. **TransportPlanServiceImpl.java** (服务实现)
|
||||
- 修改 `parseImportDate` 方法,支持空值(非必填)
|
||||
- 修改 `validateImportExcel` 方法
|
||||
- 更新字段名称验证
|
||||
- 移除计划日期必填验证
|
||||
- 添加里程非负数验证
|
||||
- 调整字段长度限制(计划名称从50改为255)
|
||||
- 修改 `importTransportPlan` 方法
|
||||
- 支持计划时间为空
|
||||
- 添加 mileage 和 planGroupId 字段赋值
|
||||
- 修改 `importGoods` 方法,移除不再需要的字段
|
||||
- 修改 `prepare` 方法,添加 planGroupId 字段处理
|
||||
- 修改 `validate` 方法,添加新字段验证
|
||||
|
||||
### 五、数据库修改
|
||||
|
||||
**SQL文件位置**: `/doc/sql/transport/blade_transport_plan_add_fields_20260908.sql`
|
||||
|
||||
```sql
|
||||
-- 添加里程字段
|
||||
ALTER TABLE `blade_transport_plan`
|
||||
ADD COLUMN `mileage` decimal(10,2) DEFAULT NULL COMMENT '里程(km)' AFTER `remark`;
|
||||
|
||||
-- 添加同一计划标识号字段
|
||||
ALTER TABLE `blade_transport_plan`
|
||||
ADD COLUMN `plan_group_id` varchar(100) DEFAULT NULL COMMENT '同一计划标识号' AFTER `mileage`;
|
||||
|
||||
-- 添加索引
|
||||
ALTER TABLE `blade_transport_plan`
|
||||
ADD INDEX `idx_transport_plan_group_id` (`plan_group_id`) USING BTREE;
|
||||
```
|
||||
|
||||
### 六、使用说明
|
||||
|
||||
1. **数据库升级**:执行 SQL 迁移脚本添加新字段
|
||||
2. **后端部署**:重新编译打包后端服务
|
||||
3. **前端部署**:重新构建前端项目
|
||||
4. **模板下载**:用户可通过导入页面下载最新模板
|
||||
|
||||
### 七、兼容性说明
|
||||
|
||||
- 新字段为非必填,不影响现有数据
|
||||
- 旧模板导入时新字段为空值
|
||||
- 计划时间改为非必填,提升导入灵活性
|
||||
- 同一计划标识号可用于批量导入时关联多条计划记录
|
||||
|
||||
### 八、测试要点
|
||||
|
||||
1. 验证新模板下载功能
|
||||
2. 测试必填字段校验
|
||||
3. 测试非必填字段的空值处理
|
||||
4. 测试里程字段的数值验证
|
||||
5. 测试同一计划标识号的查询和分组
|
||||
6. 测试日期字段的非必填场景
|
||||
Reference in New Issue
Block a user