From af8c9ac2e62b53a53640f5e1194cd5190315254c Mon Sep 17 00:00:00 2001 From: b2894lxlx <517289602@qq.com> Date: Thu, 23 Jul 2026 17:17:56 +0800 Subject: [PATCH] fix bug --- .../system/pojo/entity/PortTerminal.java | 10 +++ .../system/pojo/vo/CurrencyVO.java | 4 ++ .../transport/pojo/entity/MileageRecord.java | 8 ++- .../system/excel/AirportMasterExcel.java | 3 + .../system/excel/PortTerminalExcel.java | 6 ++ .../system/excel/RailwayStationExcel.java | 3 + .../system/mapper/AirportMasterMapper.xml | 3 + .../system/mapper/CurrencyMapper.xml | 53 ++++++++++----- .../system/mapper/PortTerminalMapper.xml | 11 ++++ .../system/mapper/RailwayStationMapper.xml | 3 + .../impl/AirportMasterServiceImpl.java | 16 +++++ .../service/impl/PortTerminalServiceImpl.java | 19 +++++- .../impl/RailwayStationServiceImpl.java | 16 +++++ .../system/wrapper/CurrencyWrapper.java | 5 +- .../controller/MileageRecordController.java | 3 + .../transport/excel/MileageRecordExcel.java | 8 ++- .../transport/mapper/CommonAddressMapper.xml | 8 +-- .../transport/mapper/MileageRecordMapper.xml | 7 ++ .../impl/MileageRecordServiceImpl.java | 64 +++++++++++++++---- doc/sql/bladex/bladex.kingbase.all.create.sql | 2 + doc/sql/bladex/bladex.mysql.all.create.sql | 2 + doc/sql/bladex/bladex.postgres.all.create.sql | 2 + .../bladex/bladex.sqlserver.all.create.sql | 2 + doc/sql/transport/blade_mileage_record.sql | 7 +- ...age_record_vehicle_type_patch_20260723.sql | 10 +++ doc/sql/transport/blade_port_terminal.sql | 2 + ...e_port_terminal_address_patch_20260723.sql | 6 ++ doc/sql/transport/transport.sql | 9 ++- .../transport_menu_title_patch_20260720.sql | 2 +- 29 files changed, 251 insertions(+), 43 deletions(-) create mode 100644 doc/sql/transport/blade_mileage_record_vehicle_type_patch_20260723.sql create mode 100644 doc/sql/transport/blade_port_terminal_address_patch_20260723.sql diff --git a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/entity/PortTerminal.java b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/entity/PortTerminal.java index 3a49319..340499d 100644 --- a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/entity/PortTerminal.java +++ b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/entity/PortTerminal.java @@ -88,6 +88,16 @@ public class PortTerminal extends BaseEntity { */ @Schema(description = "城市") private String city; + /** + * 行政区划编码 + */ + @Schema(description = "行政区划编码") + private String regionCode; + /** + * 详细地址 + */ + @Schema(description = "详细地址") + private String detailAddress; /** * 经度 */ diff --git a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/vo/CurrencyVO.java b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/vo/CurrencyVO.java index 37ed667..755612f 100644 --- a/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/vo/CurrencyVO.java +++ b/blade-service-api/blade-system-api/src/main/java/org/springblade/system/pojo/vo/CurrencyVO.java @@ -60,6 +60,10 @@ public class CurrencyVO extends Currency { @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate businessDate; + @TableField(exist = false) + @Schema(description = "更新人姓名") + private String updateUserName; + @TableField(exist = false) @Schema(description = "生效日期开始") @DateTimeFormat(pattern = "yyyy-MM-dd") diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/MileageRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/MileageRecord.java index f73b307..2fbbdfe 100644 --- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/MileageRecord.java +++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/MileageRecord.java @@ -48,7 +48,10 @@ public class MileageRecord extends TenantEntity { @Serial private static final long serialVersionUID = 1L; - @Schema(description = "车牌号") + @Schema(description = "车船类型") + private String vehicleType; + + @Schema(description = "车牌号/船号") private String vehicleNo; @Schema(description = "上月统计里程") @@ -63,6 +66,9 @@ public class MileageRecord extends TenantEntity { @Schema(description = "累计行驶里程") private BigDecimal totalMileage; + @Schema(description = "里程单位") + private String mileageUnit; + @Schema(description = "附件") private String attachments; diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/excel/AirportMasterExcel.java b/blade-service/blade-system/src/main/java/org/springblade/system/excel/AirportMasterExcel.java index 2d7d436..171463d 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/excel/AirportMasterExcel.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/excel/AirportMasterExcel.java @@ -27,6 +27,7 @@ package org.springblade.system.excel; import cn.idev.excel.annotation.ExcelIgnore; import cn.idev.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.format.NumberFormat; import cn.idev.excel.annotation.write.style.ColumnWidth; import cn.idev.excel.annotation.write.style.ContentRowHeight; import cn.idev.excel.annotation.write.style.HeadRowHeight; @@ -80,9 +81,11 @@ public class AirportMasterExcel implements Serializable { private String detailAddress; @ExcelProperty("经度") + @NumberFormat("0.000000") private BigDecimal longitude; @ExcelProperty("纬度") + @NumberFormat("0.000000") private BigDecimal latitude; @ExcelProperty("数据来源") diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/excel/PortTerminalExcel.java b/blade-service/blade-system/src/main/java/org/springblade/system/excel/PortTerminalExcel.java index 2c7a189..bbdf3b0 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/excel/PortTerminalExcel.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/excel/PortTerminalExcel.java @@ -73,6 +73,12 @@ public class PortTerminalExcel implements Serializable { @ExcelProperty("城市") private String city; + @ExcelProperty("行政区划编码") + private String regionCode; + + @ExcelProperty("详细地址") + private String detailAddress; + @ExcelProperty("经度") private BigDecimal longitude; diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/excel/RailwayStationExcel.java b/blade-service/blade-system/src/main/java/org/springblade/system/excel/RailwayStationExcel.java index cee1280..c1409ca 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/excel/RailwayStationExcel.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/excel/RailwayStationExcel.java @@ -27,6 +27,7 @@ package org.springblade.system.excel; import cn.idev.excel.annotation.ExcelIgnore; import cn.idev.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.format.NumberFormat; import cn.idev.excel.annotation.write.style.ColumnWidth; import cn.idev.excel.annotation.write.style.ContentRowHeight; import cn.idev.excel.annotation.write.style.HeadRowHeight; @@ -80,9 +81,11 @@ public class RailwayStationExcel implements Serializable { private String detailAddress; @ExcelProperty("经度") + @NumberFormat("0.000000") private BigDecimal longitude; @ExcelProperty("纬度") + @NumberFormat("0.000000") private BigDecimal latitude; @ExcelProperty("数据来源") diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/AirportMasterMapper.xml b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/AirportMasterMapper.xml index c0d7bee..19aa11b 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/AirportMasterMapper.xml +++ b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/AirportMasterMapper.xml @@ -76,6 +76,9 @@ AND am.icao_code = #{airportMaster.icaoCode} + + AND am.region_code = #{airportMaster.regionCode} + AND am.region_name LIKE #{regionNameLike} diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/CurrencyMapper.xml b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/CurrencyMapper.xml index 2a0a0f9..7033b69 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/CurrencyMapper.xml +++ b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/CurrencyMapper.xml @@ -8,6 +8,7 @@ + @@ -26,51 +27,71 @@ diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/PortTerminalMapper.xml b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/PortTerminalMapper.xml index 61987bd..4d9fa32 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/PortTerminalMapper.xml +++ b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/PortTerminalMapper.xml @@ -20,6 +20,8 @@ + + @@ -45,6 +47,8 @@ pt.parent_name, pt.country, pt.city, + pt.region_code, + pt.detail_address, CASE WHEN pt.longitude BETWEEN -180 AND 180 THEN pt.longitude ELSE NULL END AS longitude, CASE WHEN pt.latitude BETWEEN -90 AND 90 THEN pt.latitude ELSE NULL END AS latitude, CASE WHEN pt.data_source = '初始导入' THEN '初始化导入' ELSE pt.data_source END AS data_source, @@ -78,6 +82,13 @@ AND pt.city = #{portTerminal.city} + + AND pt.region_code = #{portTerminal.regionCode} + + + + AND pt.detail_address LIKE #{detailAddressLike} + AND pt.country = #{portTerminal.country} diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/RailwayStationMapper.xml b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/RailwayStationMapper.xml index 8fc4b83..458cfbb 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/mapper/RailwayStationMapper.xml +++ b/blade-service/blade-system/src/main/java/org/springblade/system/mapper/RailwayStationMapper.xml @@ -81,6 +81,9 @@ AND rs.telegraph_code = #{railwayStation.telegraphCode} + + AND rs.region_code = #{railwayStation.regionCode} + AND rs.region_name LIKE #{regionNameLike} diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/AirportMasterServiceImpl.java b/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/AirportMasterServiceImpl.java index 7709660..4e393f7 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/AirportMasterServiceImpl.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/AirportMasterServiceImpl.java @@ -45,6 +45,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.ArrayList; import java.util.List; import java.util.Locale; @@ -147,12 +148,21 @@ public class AirportMasterServiceImpl extends BaseServiceImpl airportMasterList = list(queryWrapper); return airportMasterList.stream().map(airportMaster -> { AirportMasterExcel excel = Objects.requireNonNull(BeanUtil.copyProperties(airportMaster, AirportMasterExcel.class)); + excel.setLongitude(scaleCoordinate(airportMaster.getLongitude(), MIN_LONGITUDE, MAX_LONGITUDE)); + excel.setLatitude(scaleCoordinate(airportMaster.getLatitude(), MIN_LATITUDE, MAX_LATITUDE)); excel.setDataSource(normalizeDataSource(airportMaster.getDataSource())); excel.setStatusName(Objects.equals(airportMaster.getStatus(), STATUS_ENABLED) ? "启用" : "停用"); return excel; }).toList(); } + private BigDecimal scaleCoordinate(BigDecimal value, BigDecimal min, BigDecimal max) { + if (Func.isEmpty(value)) { + return null; + } + return validRange(value, min, max) ? value.setScale(6, RoundingMode.HALF_UP) : null; + } + private void prepare(AirportMaster airportMaster, String defaultDataSource) { airportMaster.setIataCode(trimToEmpty(airportMaster.getIataCode()).toUpperCase(Locale.ROOT)); airportMaster.setCode(CODE_PREFIX + airportMaster.getIataCode()); @@ -244,6 +254,8 @@ public class AirportMasterServiceImpl extends BaseServiceImpl= 0 && value.compareTo(max) <= 0); + } + private void validateDataSource(String dataSource) { if (!SOURCE_INITIAL.equals(dataSource) && !SOURCE_BATCH.equals(dataSource) && !SOURCE_MANUAL.equals(dataSource)) { throw new ServiceException("数据来源不正确"); diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/PortTerminalServiceImpl.java b/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/PortTerminalServiceImpl.java index 9e6a7d2..0943ed2 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/PortTerminalServiceImpl.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/service/impl/PortTerminalServiceImpl.java @@ -42,6 +42,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.ArrayList; import java.util.List; import java.util.Locale; @@ -67,6 +68,8 @@ public class PortTerminalServiceImpl extends BaseServiceImpl portTerminalList = list(queryWrapper); return portTerminalList.stream().map(portTerminal -> { PortTerminalExcel excel = Objects.requireNonNull(BeanUtil.copyProperties(portTerminal, PortTerminalExcel.class)); - excel.setLongitude(validRange(portTerminal.getLongitude(), MIN_LONGITUDE, MAX_LONGITUDE) ? portTerminal.getLongitude() : null); - excel.setLatitude(validRange(portTerminal.getLatitude(), MIN_LATITUDE, MAX_LATITUDE) ? portTerminal.getLatitude() : null); + excel.setLongitude(scaleCoordinate(portTerminal.getLongitude(), MIN_LONGITUDE, MAX_LONGITUDE)); + excel.setLatitude(scaleCoordinate(portTerminal.getLatitude(), MIN_LATITUDE, MAX_LATITUDE)); excel.setDataSource(normalizeDataSource(portTerminal.getDataSource())); excel.setStatusName(Objects.equals(portTerminal.getStatus(), STATUS_ENABLED) ? "启用" : "停用"); return excel; }).toList(); } + private BigDecimal scaleCoordinate(BigDecimal value, BigDecimal min, BigDecimal max) { + if (Func.isEmpty(value)) { + return null; + } + return validRange(value, min, max) ? value.setScale(6, RoundingMode.HALF_UP) : null; + } + private void prepare(PortTerminal portTerminal, String defaultDataSource) { portTerminal.setCode(trimToEmpty(portTerminal.getCode()).toUpperCase(Locale.ROOT)); portTerminal.setCategory(trimToEmpty(portTerminal.getCategory())); portTerminal.setName(trimToEmpty(portTerminal.getName())); portTerminal.setCountry(trimToEmpty(portTerminal.getCountry())); portTerminal.setCity(trimToEmpty(portTerminal.getCity())); + portTerminal.setRegionCode(trimToNull(portTerminal.getRegionCode())); + portTerminal.setDetailAddress(trimToNull(portTerminal.getDetailAddress())); portTerminal.setRemark(trimToNull(portTerminal.getRemark())); portTerminal.setDataSource(normalizeDataSource(Func.toStrWithEmpty(portTerminal.getDataSource(), defaultDataSource))); if (Func.isEmpty(portTerminal.getStatus())) { @@ -199,6 +211,7 @@ public class PortTerminalServiceImpl extends BaseServiceImpl railwayStationList = list(queryWrapper); return railwayStationList.stream().map(railwayStation -> { RailwayStationExcel excel = Objects.requireNonNull(BeanUtil.copyProperties(railwayStation, RailwayStationExcel.class)); + excel.setLongitude(scaleCoordinate(railwayStation.getLongitude(), MIN_LONGITUDE, MAX_LONGITUDE)); + excel.setLatitude(scaleCoordinate(railwayStation.getLatitude(), MIN_LATITUDE, MAX_LATITUDE)); excel.setDataSource(normalizeDataSource(railwayStation.getDataSource())); excel.setStatusName(Objects.equals(railwayStation.getStatus(), STATUS_ENABLED) ? "启用" : "停用"); return excel; }).toList(); } + private BigDecimal scaleCoordinate(BigDecimal value, BigDecimal min, BigDecimal max) { + if (Func.isEmpty(value)) { + return null; + } + return validRange(value, min, max) ? value.setScale(6, RoundingMode.HALF_UP) : null; + } + private void prepare(RailwayStation railwayStation, String defaultDataSource) { railwayStation.setTmisCode(trimToEmpty(railwayStation.getTmisCode())); railwayStation.setCode(CODE_PREFIX + railwayStation.getTmisCode()); @@ -247,6 +257,8 @@ public class RailwayStationServiceImpl extends BaseServiceImpl= 0 && value.compareTo(max) <= 0); + } + private void validateDataSource(String dataSource) { if (!SOURCE_INITIAL.equals(dataSource) && !SOURCE_BATCH.equals(dataSource) && !SOURCE_MANUAL.equals(dataSource)) { throw new ServiceException("数据来源不正确"); diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/wrapper/CurrencyWrapper.java b/blade-service/blade-system/src/main/java/org/springblade/system/wrapper/CurrencyWrapper.java index 57d3aaa..a1f6a99 100644 --- a/blade-service/blade-system/src/main/java/org/springblade/system/wrapper/CurrencyWrapper.java +++ b/blade-service/blade-system/src/main/java/org/springblade/system/wrapper/CurrencyWrapper.java @@ -27,6 +27,7 @@ package org.springblade.system.wrapper; import org.springblade.core.mp.support.BaseEntityWrapper; import org.springblade.core.tool.utils.BeanUtil; +import org.springblade.system.cache.UserCache; import org.springblade.system.pojo.entity.Currency; import org.springblade.system.pojo.vo.CurrencyVO; @@ -45,7 +46,9 @@ public class CurrencyWrapper extends BaseEntityWrapper { @Override public CurrencyVO entityVO(Currency currency) { - return Objects.requireNonNull(BeanUtil.copyProperties(currency, CurrencyVO.class)); + CurrencyVO currencyVO = Objects.requireNonNull(BeanUtil.copyProperties(currency, CurrencyVO.class)); + currencyVO.setUpdateUserName(UserCache.getUserRealName(currency.getUpdateUser())); + return currencyVO; } } diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/MileageRecordController.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/MileageRecordController.java index 5aed70b..81b8953 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/MileageRecordController.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/MileageRecordController.java @@ -161,6 +161,9 @@ public class MileageRecordController extends BladeController { if (Func.isNotEmpty(mileageRecord.getCreateDept())) { queryWrapper.eq(MileageRecord::getCreateDept, mileageRecord.getCreateDept()); } + if (Func.isNotEmpty(mileageRecord.getVehicleType())) { + queryWrapper.eq(MileageRecord::getVehicleType, mileageRecord.getVehicleType()); + } if (Func.isNotEmpty(mileageRecord.getVehicleNo())) { queryWrapper.like(MileageRecord::getVehicleNo, mileageRecord.getVehicleNo()); } diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordExcel.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordExcel.java index 54ae58e..4c4cba6 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordExcel.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordExcel.java @@ -52,7 +52,10 @@ public class MileageRecordExcel implements Serializable { @ExcelIgnore private Long id; - @ExcelProperty("车牌号") + @ExcelProperty("车船类型") + private String vehicleType; + + @ExcelProperty("车牌号/船号") private String vehicleNo; @ExcelProperty("上月统计里程") @@ -67,6 +70,9 @@ public class MileageRecordExcel implements Serializable { @ExcelProperty("累计行驶里程") private BigDecimal totalMileage; + @ExcelProperty("里程单位") + private String mileageUnit; + @ExcelProperty("备注") private String remark; diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CommonAddressMapper.xml b/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CommonAddressMapper.xml index b9a4bb1..4fc3ae9 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CommonAddressMapper.xml +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CommonAddressMapper.xml @@ -111,8 +111,8 @@ code AS site_code, name AS address_name, CONCAT_WS('', country, city) AS region_name, - NULL AS region_code, - city AS detail_address, + region_code, + detail_address, longitude, latitude FROM blade_port_terminal @@ -155,8 +155,8 @@ code AS site_code, name AS address_name, CONCAT_WS('', country, city) AS region_name, - NULL AS region_code, - city AS detail_address, + region_code, + detail_address, longitude, latitude FROM blade_port_terminal diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/MileageRecordMapper.xml b/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/MileageRecordMapper.xml index 9781cd5..88022ca 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/MileageRecordMapper.xml +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/MileageRecordMapper.xml @@ -12,11 +12,13 @@ + + @@ -32,11 +34,13 @@ update_time, status, is_deleted, + vehicle_type, vehicle_no, CASE WHEN previous_month_mileage < 0 THEN 0 ELSE previous_month_mileage END AS previous_month_mileage, CASE WHEN current_month_mileage < 0 THEN 0 ELSE current_month_mileage END AS current_month_mileage, CASE WHEN monthly_mileage < 0 THEN 0 ELSE monthly_mileage END AS monthly_mileage, CASE WHEN total_mileage < 0 THEN 0 ELSE total_mileage END AS total_mileage, + mileage_unit, attachments, remark FROM @@ -46,6 +50,9 @@ AND create_dept = #{mileageRecord.createDept} + + AND vehicle_type = #{mileageRecord.vehicleType} + AND vehicle_no LIKE #{vehicleNoLike} diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/MileageRecordServiceImpl.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/MileageRecordServiceImpl.java index 4083ea6..d758169 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/MileageRecordServiceImpl.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/MileageRecordServiceImpl.java @@ -57,6 +57,8 @@ public class MileageRecordServiceImpl extends BaseServiceImpl selectMileageRecordPage(IPage page, MileageRecordVO mileageRecord) { @@ -97,17 +99,29 @@ public class MileageRecordServiceImpl extends BaseServiceImpl exportMileageRecord(Wrapper queryWrapper) { return list(queryWrapper).stream().map(mileageRecord -> { - MileageRecordExcel excel = Objects.requireNonNull(BeanUtil.copyProperties(mileageRecord, MileageRecordExcel.class)); + MileageRecordExcel excel = Objects.requireNonNull( + BeanUtil.copyProperties(mileageRecord, MileageRecordExcel.class) + ); excel.setPreviousMonthMileage(nonNegative(mileageRecord.getPreviousMonthMileage())); excel.setCurrentMonthMileage(nonNegative(mileageRecord.getCurrentMonthMileage())); excel.setMonthlyMileage(nonNegative(mileageRecord.getMonthlyMileage())); excel.setTotalMileage(nonNegative(mileageRecord.getTotalMileage())); + if (Func.isEmpty(excel.getMileageUnit())) { + excel.setMileageUnit(defaultMileageUnit(mileageRecord.getVehicleType())); + } return excel; }).toList(); } private void prepare(MileageRecord mileageRecord) { - mileageRecord.setVehicleNo(trimToEmpty(mileageRecord.getVehicleNo()).toUpperCase()); + mileageRecord.setVehicleType(trimToEmpty(mileageRecord.getVehicleType())); + if (Func.isEmpty(mileageRecord.getVehicleType())) { + mileageRecord.setVehicleType(VEHICLE_TYPE_VEHICLE); + } + mileageRecord.setVehicleNo( + normalizeVehicleNo(mileageRecord.getVehicleNo(), mileageRecord.getVehicleType()) + ); + mileageRecord.setMileageUnit(defaultMileageUnit(mileageRecord.getVehicleType())); mileageRecord.setRemark(trimToNull(mileageRecord.getRemark())); mileageRecord.setAttachments(trimToNull(mileageRecord.getAttachments())); if (mileageRecord.getMonthlyMileage() == null @@ -118,21 +132,31 @@ public class MileageRecordServiceImpl extends BaseServiceImpl