Files
cattleTransportation/LICENSE_PLATE_FIX.md
2025-10-29 17:33:32 +08:00

125 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 车牌号关联修复说明
## 问题描述
用户反馈:车牌号还是关联查询的是司机表中的数据
## 问题原因
`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