基本完成,修复细节
This commit is contained in:
124
LICENSE_PLATE_FIX.md
Normal file
124
LICENSE_PLATE_FIX.md
Normal file
@@ -0,0 +1,124 @@
|
||||
# 车牌号关联修复说明
|
||||
|
||||
## 问题描述
|
||||
|
||||
用户反馈:车牌号还是关联查询的是司机表中的数据
|
||||
|
||||
## 问题原因
|
||||
|
||||
在 `DeliveryServiceImpl.java` 的两个方法中,存在从司机表获取车牌号并覆盖运送清单车牌号的逻辑:
|
||||
|
||||
1. **pageQuery** (列表查询) - 第1033行
|
||||
2. **viewDelivery** (详情查询) - 第1560行
|
||||
|
||||
具体代码:
|
||||
```java
|
||||
String licensePlate = (String) driverInfo.get("car_number");
|
||||
delivery.setLicensePlate(licensePlate); // 错误:覆盖了用户选择的车牌号
|
||||
```
|
||||
|
||||
## 解决方案
|
||||
|
||||
### 移除从司机表获取车牌号的逻辑
|
||||
|
||||
**文件**: `DeliveryServiceImpl.java`
|
||||
|
||||
#### 1. 列表查询方法 (pageQuery)
|
||||
|
||||
**修改前**:
|
||||
```java
|
||||
String licensePlate = (String) driverInfo.get("car_number");
|
||||
deliveryLogVo.setLicensePlate(licensePlate);
|
||||
```
|
||||
|
||||
**修改后**:
|
||||
```java
|
||||
// 注释:车牌号不从司机表获取,车牌号是独立的模块
|
||||
// 车牌号保持运送清单表中原有的值
|
||||
```
|
||||
|
||||
#### 2. 详情查询方法 (viewDelivery)
|
||||
|
||||
**修改前**:
|
||||
```java
|
||||
String licensePlate = (String) driverInfo.get("car_number");
|
||||
delivery.setLicensePlate(licensePlate);
|
||||
```
|
||||
|
||||
**修改后**:
|
||||
```java
|
||||
// 注释:车牌号不从司机表获取,车牌号是独立的模块
|
||||
// 车牌号保持运送清单表中原有的值
|
||||
```
|
||||
|
||||
#### 3. 移除相关日志输出
|
||||
|
||||
**修改前**:
|
||||
```java
|
||||
System.out.println("查询到的车牌号: " + licensePlate);
|
||||
```
|
||||
|
||||
**修改后**:
|
||||
```java
|
||||
// 移除该日志
|
||||
```
|
||||
|
||||
#### 4. 修复车牌号匹配查询逻辑
|
||||
|
||||
**修改前**:
|
||||
```java
|
||||
if (licensePlate != null && !licensePlate.equals(deliveryLogVo.getLicensePlate())) {
|
||||
// 根据车牌号查询司机
|
||||
}
|
||||
```
|
||||
|
||||
**修改后**:
|
||||
```java
|
||||
// 不再根据车牌号查询司机,车牌号是独立的模块
|
||||
```
|
||||
|
||||
## 模块说明
|
||||
|
||||
### 司机模块
|
||||
- **字段**: `driver_name`, `driver_mobile`
|
||||
- **数据来源**: 司机表 (member_driver)
|
||||
- **功能**: 记录司机姓名和手机号
|
||||
|
||||
### 车牌号模块
|
||||
- **字段**: `license_plate`
|
||||
- **数据来源**: 用户表单选择
|
||||
- **功能**: 记录运送车辆的车牌号
|
||||
|
||||
**两个模块是独立的,不应互相覆盖。**
|
||||
|
||||
## 测试验证
|
||||
|
||||
创建运送清单后,检查:
|
||||
|
||||
```sql
|
||||
SELECT
|
||||
id,
|
||||
license_plate,
|
||||
driver_id,
|
||||
driver_name,
|
||||
driver_mobile
|
||||
FROM delivery
|
||||
WHERE id = [最新创建的运送清单ID];
|
||||
```
|
||||
|
||||
预期结果:
|
||||
- `license_plate` = 用户选择的车牌号(如 "1111111")
|
||||
- `driver_id` = 选择的司机ID
|
||||
- `driver_name` = 司机姓名
|
||||
- `driver_mobile` = 司机手机号
|
||||
|
||||
**车牌号不应与司机表中的car_number字段关联。**
|
||||
|
||||
## 相关文件
|
||||
|
||||
- `tradeCattle/aiotagro-cattle-trade/src/main/java/com/aiotagro/cattletrade/business/service/impl/DeliveryServiceImpl.java`
|
||||
|
||||
## 实现日期
|
||||
|
||||
2025-10-29
|
||||
|
||||
Reference in New Issue
Block a user