From 31c68a857a7f5a0757cefd88c216d20709cbb4f1 Mon Sep 17 00:00:00 2001 From: b2894lxlx <517289602@qq.com> Date: Fri, 17 Jul 2026 15:32:00 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E8=B0=83=E6=95=B4=E5=B8=81=E7=A7=8D?= =?UTF-8?q?=E6=B1=87=E7=8E=87=E6=A8=A1=E5=9D=97=202=E3=80=81=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E4=BF=9D=E9=99=A9=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=203=E3=80=81=E6=96=B0=E5=A2=9E=E8=BF=9D=E7=AB=A0=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E6=A8=A1=E5=9D=97=204=E3=80=81=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=8D=A2=E8=83=8E=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97=205?= =?UTF-8?q?=E3=80=81=E6=96=B0=E5=A2=9E=E4=BA=8B=E6=95=85=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=206=E3=80=81=E6=96=B0=E5=A2=9E=E5=B9=B4?= =?UTF-8?q?=E6=A3=80=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97=207=E3=80=81?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=87=8C=E7=A8=8B=E8=AE=B0=E5=BD=95=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=208=E3=80=81=E6=96=B0=E5=A2=9E=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97=209=E3=80=81=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E6=B2=B9=E7=94=B5=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=2010=E3=80=81=E6=96=B0=E5=A2=9EETC=E8=AE=B0=E5=BD=95=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=2011=E3=80=81=E6=96=B0=E5=A2=9E=E5=85=B6=E4=BB=96?= =?UTF-8?q?=E8=B4=B9=E7=94=A8=E8=AE=B0=E5=BD=95=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- AGENTS.md | 9 +- .../auth/endpoint/IamSsoEndpoint.java | 79 +++ .../auth/granter/IamSsoTokenGranter.java | 9 + .../system/pojo/entity/Currency.java | 18 +- .../system/pojo/vo/AirportMasterVO.java | 7 + .../system/pojo/vo/CurrencyVO.java | 42 +- .../system/pojo/vo/PortTerminalVO.java | 7 + .../system/pojo/vo/RailwayStationVO.java | 7 + .../transport/pojo/entity/AccidentRecord.java | 108 +++ .../pojo/entity/AnnualInspectionRecord.java | 88 +++ .../pojo/entity/CustomerArchive.java | 137 ++++ .../pojo/entity/CustomerChangeRecord.java | 63 ++ .../pojo/entity/CustomerContact.java | 71 ++ .../pojo/entity/CustomerCreditScore.java | 92 +++ .../entity/CustomerCreditScoreDetail.java | 92 +++ .../pojo/entity/CustomerInvoiceInfo.java | 86 +++ .../pojo/entity/CustomerReceiptAccount.java | 74 ++ .../transport/pojo/entity/Driver.java | 212 ++++++ .../transport/pojo/entity/EtcRecord.java | 63 ++ .../pojo/entity/InsuranceRecord.java | 118 ++++ .../transport/pojo/entity/MileageRecord.java | 72 ++ .../pojo/entity/OilElectricRecord.java | 97 +++ .../pojo/entity/OtherExpenseRecord.java | 57 ++ .../pojo/entity/TireReplacementRecord.java | 98 +++ .../pojo/entity/TransportChangeRecord.java | 68 ++ .../transport/pojo/entity/TransportShip.java | 105 +++ .../pojo/entity/TransportVehicle.java | 197 ++++++ .../pojo/entity/ViolationRecord.java | 123 ++++ .../transport/pojo/vo/AccidentRecordVO.java | 90 +++ .../pojo/vo/AnnualInspectionRecordVO.java | 75 +++ .../transport/pojo/vo/CustomerArchiveVO.java | 80 +++ .../pojo/vo/CustomerChangeRecordVO.java | 45 ++ .../transport/pojo/vo/CustomerContactVO.java | 45 ++ .../pojo/vo/CustomerCreditScoreDetailVO.java | 45 ++ .../pojo/vo/CustomerCreditScoreVO.java | 52 ++ .../pojo/vo/CustomerInvoiceInfoVO.java | 45 ++ .../pojo/vo/CustomerReceiptAccountVO.java | 45 ++ .../transport/pojo/vo/DriverExpiryStatVO.java | 55 ++ .../transport/pojo/vo/DriverVO.java | 72 ++ .../transport/pojo/vo/EtcRecordVO.java | 33 + .../transport/pojo/vo/InsuranceRecordVO.java | 73 ++ .../transport/pojo/vo/MaintenancePlanVO.java | 7 + .../pojo/vo/MaintenanceRecordVO.java | 7 + .../transport/pojo/vo/MileageRecordVO.java | 73 ++ .../pojo/vo/OilElectricRecordVO.java | 83 +++ .../pojo/vo/OtherExpenseRecordVO.java | 56 ++ .../pojo/vo/TireReplacementRecordVO.java | 73 ++ .../pojo/vo/TransportChangeRecordVO.java | 64 ++ .../pojo/vo/TransportShipExpiryStatVO.java | 55 ++ .../transport/pojo/vo/TransportShipVO.java | 65 ++ .../pojo/vo/TransportVehicleExpiryStatVO.java | 55 ++ .../transport/pojo/vo/TransportVehicleVO.java | 72 ++ .../transport/pojo/vo/ViolationRecordVO.java | 73 ++ .../springblade/system/cache/UserCache.java | 26 + .../system/controller/CurrencyController.java | 100 ++- .../system/excel/CurrencyExcel.java | 25 +- .../system/excel/CurrencyImporter.java | 2 +- .../system/mapper/CurrencyMapper.xml | 30 +- .../system/service/ICurrencyService.java | 20 +- .../service/impl/CurrencyServiceImpl.java | 133 ++-- .../system/wrapper/AirportMasterWrapper.java | 5 +- .../system/wrapper/PortTerminalWrapper.java | 5 +- .../system/wrapper/RailwayStationWrapper.java | 5 +- blade-service/blade-transport/pom.xml | 4 + .../controller/AccidentRecordController.java | 215 ++++++ .../AnnualInspectionRecordController.java | 185 +++++ .../controller/CustomerArchiveController.java | 221 ++++++ .../controller/DriverController.java | 241 +++++++ .../controller/EtcRecordController.java | 155 +++++ .../controller/InsuranceRecordController.java | 220 ++++++ .../controller/MileageRecordController.java | 182 +++++ .../OilElectricRecordController.java | 176 +++++ .../OtherExpenseRecordController.java | 170 +++++ .../TireReplacementRecordController.java | 197 ++++++ .../TransportChangeRecordController.java | 182 +++++ .../controller/TransportShipController.java | 222 ++++++ .../TransportVehicleController.java | 246 +++++++ .../controller/ViolationRecordController.java | 206 ++++++ .../transport/excel/AccidentRecordExcel.java | 89 +++ .../excel/AccidentRecordImporter.java | 49 ++ .../excel/AnnualInspectionRecordExcel.java | 89 +++ .../excel/AnnualInspectionRecordImporter.java | 49 ++ .../transport/excel/CustomerArchiveExcel.java | 108 +++ .../transport/excel/DriverExcel.java | 119 ++++ .../transport/excel/EtcRecordExcel.java | 64 ++ .../transport/excel/EtcRecordImporter.java | 30 + .../transport/excel/InsuranceRecordExcel.java | 92 +++ .../excel/InsuranceRecordImporter.java | 49 ++ .../transport/excel/MileageRecordExcel.java | 76 +++ .../excel/MileageRecordImporter.java | 49 ++ .../excel/OilElectricRecordExcel.java | 85 +++ .../excel/OilElectricRecordImporter.java | 30 + .../excel/OtherExpenseRecordExcel.java | 58 ++ .../excel/OtherExpenseRecordImporter.java | 30 + .../excel/TireReplacementRecordExcel.java | 83 +++ .../excel/TireReplacementRecordImporter.java | 49 ++ .../excel/TransportChangeRecordExcel.java | 72 ++ .../excel/TransportChangeRecordImporter.java | 49 ++ .../transport/excel/TransportShipExcel.java | 101 +++ .../excel/TransportVehicleExcel.java | 137 ++++ .../transport/excel/ViolationRecordExcel.java | 95 +++ .../excel/ViolationRecordImporter.java | 49 ++ .../mapper/AccidentRecordMapper.java | 51 ++ .../transport/mapper/AccidentRecordMapper.xml | 89 +++ .../mapper/AnnualInspectionRecordMapper.java | 51 ++ .../mapper/AnnualInspectionRecordMapper.xml | 81 +++ .../mapper/CustomerArchiveMapper.java | 49 ++ .../mapper/CustomerArchiveMapper.xml | 133 ++++ .../mapper/CustomerChangeRecordMapper.java | 21 + .../mapper/CustomerContactMapper.java | 21 + .../CustomerCreditScoreDetailMapper.java | 21 + .../mapper/CustomerCreditScoreMapper.java | 21 + .../mapper/CustomerInvoiceInfoMapper.java | 21 + .../mapper/CustomerReceiptAccountMapper.java | 21 + .../transport/mapper/DriverMapper.java | 61 ++ .../transport/mapper/DriverMapper.xml | 161 +++++ .../transport/mapper/EtcRecordMapper.java | 25 + .../transport/mapper/EtcRecordMapper.xml | 66 ++ .../mapper/InsuranceRecordMapper.java | 52 ++ .../mapper/InsuranceRecordMapper.xml | 80 +++ .../transport/mapper/MileageRecordMapper.java | 51 ++ .../transport/mapper/MileageRecordMapper.xml | 68 ++ .../mapper/OilElectricRecordMapper.java | 25 + .../mapper/OilElectricRecordMapper.xml | 96 +++ .../mapper/OtherExpenseRecordMapper.java | 25 + .../mapper/OtherExpenseRecordMapper.xml | 76 +++ .../mapper/TireReplacementRecordMapper.java | 51 ++ .../mapper/TireReplacementRecordMapper.xml | 66 ++ .../mapper/TransportChangeRecordMapper.java | 51 ++ .../mapper/TransportChangeRecordMapper.xml | 67 ++ .../transport/mapper/TransportShipMapper.java | 48 ++ .../transport/mapper/TransportShipMapper.xml | 136 ++++ .../mapper/TransportVehicleMapper.java | 61 ++ .../mapper/TransportVehicleMapper.xml | 156 +++++ .../mapper/ViolationRecordMapper.java | 52 ++ .../mapper/ViolationRecordMapper.xml | 86 +++ .../service/IAccidentRecordService.java | 76 +++ .../IAnnualInspectionRecordService.java | 52 ++ .../service/ICustomerArchiveService.java | 124 ++++ .../transport/service/IDriverService.java | 87 +++ .../transport/service/IEtcRecordService.java | 33 + .../service/IInsuranceRecordService.java | 87 +++ .../service/IMileageRecordService.java | 52 ++ .../service/IOilElectricRecordService.java | 33 + .../service/IOtherExpenseRecordService.java | 33 + .../ITireReplacementRecordService.java | 76 +++ .../ITransportChangeRecordService.java | 52 ++ .../service/ITransportShipService.java | 55 ++ .../service/ITransportVehicleService.java | 87 +++ .../service/IViolationRecordService.java | 76 +++ .../impl/AccidentRecordServiceImpl.java | 195 ++++++ .../AnnualInspectionRecordServiceImpl.java | 228 +++++++ .../CreditScoreQuantificationServiceImpl.java | 11 +- .../impl/CustomerArchiveServiceImpl.java | 633 ++++++++++++++++++ .../service/impl/DriverServiceImpl.java | 247 +++++++ .../service/impl/EtcRecordServiceImpl.java | 163 +++++ .../impl/InsuranceRecordServiceImpl.java | 229 +++++++ .../impl/MileageRecordServiceImpl.java | 195 ++++++ .../impl/OilElectricRecordServiceImpl.java | 203 ++++++ .../impl/OtherExpenseRecordServiceImpl.java | 179 +++++ .../TireReplacementRecordServiceImpl.java | 183 +++++ .../TransportChangeRecordServiceImpl.java | 160 +++++ .../impl/TransportShipServiceImpl.java | 219 ++++++ .../impl/TransportVehicleServiceImpl.java | 264 ++++++++ .../impl/ViolationRecordServiceImpl.java | 264 ++++++++ .../wrapper/AccidentRecordWrapper.java | 54 ++ .../AnnualInspectionRecordWrapper.java | 54 ++ .../wrapper/CustomerArchiveWrapper.java | 48 ++ .../transport/wrapper/DriverWrapper.java | 51 ++ .../transport/wrapper/EtcRecordWrapper.java | 35 + .../wrapper/InsuranceRecordWrapper.java | 54 ++ .../wrapper/MaintenancePlanWrapper.java | 5 +- .../wrapper/MaintenanceRecordWrapper.java | 5 +- .../wrapper/MileageRecordWrapper.java | 54 ++ .../wrapper/OilElectricRecordWrapper.java | 35 + .../wrapper/OtherExpenseRecordWrapper.java | 35 + .../wrapper/TireReplacementRecordWrapper.java | 54 ++ .../wrapper/TransportChangeRecordWrapper.java | 54 ++ .../wrapper/TransportShipWrapper.java | 51 ++ .../wrapper/TransportVehicleWrapper.java | 51 ++ .../wrapper/ViolationRecordWrapper.java | 54 ++ doc/sql/transport/blade_accident_record.sql | 46 ++ .../blade_annual_inspection_record.sql | 46 ++ doc/sql/transport/blade_currency.sql | 11 +- doc/sql/transport/blade_customer_archive.sql | 231 +++++++ doc/sql/transport/blade_etc_record.sql | 45 ++ doc/sql/transport/blade_insurance_record.sql | 49 ++ doc/sql/transport/blade_mileage_record.sql | 40 ++ .../transport/blade_oil_electric_record.sql | 50 ++ .../transport/blade_other_expense_record.sql | 43 ++ .../blade_tire_replacement_record.sql | 42 ++ .../blade_transport_change_record.sql | 40 ++ doc/sql/transport/blade_transport_driver.sql | 68 ++ doc/sql/transport/blade_transport_ship.sql | 70 ++ doc/sql/transport/blade_transport_vehicle.sql | 80 +++ doc/sql/transport/blade_violation_record.sql | 49 ++ doc/sql/transport/transport.sql | 471 ++++++++++++- 197 files changed, 16907 insertions(+), 115 deletions(-) create mode 100644 blade-auth/src/main/java/org/springblade/auth/endpoint/IamSsoEndpoint.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/AccidentRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/AnnualInspectionRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerArchive.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerChangeRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerContact.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScore.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScoreDetail.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerInvoiceInfo.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerReceiptAccount.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/Driver.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/EtcRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InsuranceRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/MileageRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OilElectricRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OtherExpenseRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TireReplacementRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportChangeRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportShip.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportVehicle.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/ViolationRecord.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AccidentRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AnnualInspectionRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerArchiveVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerChangeRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerContactVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreDetailVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerInvoiceInfoVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerReceiptAccountVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverExpiryStatVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/EtcRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/InsuranceRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MileageRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OilElectricRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OtherExpenseRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TireReplacementRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportChangeRecordVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipExpiryStatVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleExpiryStatVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleVO.java create mode 100644 blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/ViolationRecordVO.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/AccidentRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/AnnualInspectionRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/CustomerArchiveController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/DriverController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/EtcRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/InsuranceRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/MileageRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/OilElectricRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/OtherExpenseRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/TireReplacementRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/TransportChangeRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/TransportShipController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/TransportVehicleController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/controller/ViolationRecordController.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AccidentRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AccidentRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AnnualInspectionRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AnnualInspectionRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/CustomerArchiveExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/DriverExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/InsuranceRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/InsuranceRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OilElectricRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OilElectricRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OtherExpenseRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OtherExpenseRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TireReplacementRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TireReplacementRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportChangeRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportChangeRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportShipExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportVehicleExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordExcel.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordImporter.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/AccidentRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/AccidentRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/AnnualInspectionRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/AnnualInspectionRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerArchiveMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerArchiveMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerChangeRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerContactMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerCreditScoreDetailMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerCreditScoreMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerInvoiceInfoMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/CustomerReceiptAccountMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/DriverMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/DriverMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/EtcRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/EtcRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/InsuranceRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/InsuranceRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/MileageRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/MileageRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/OilElectricRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/OilElectricRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/OtherExpenseRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/OtherExpenseRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TireReplacementRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TireReplacementRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TransportChangeRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TransportChangeRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TransportShipMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TransportShipMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TransportVehicleMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/TransportVehicleMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/ViolationRecordMapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/mapper/ViolationRecordMapper.xml create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IAccidentRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IAnnualInspectionRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/ICustomerArchiveService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IDriverService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IEtcRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IInsuranceRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IMileageRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IOilElectricRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IOtherExpenseRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/ITireReplacementRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/ITransportChangeRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/ITransportShipService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/ITransportVehicleService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/IViolationRecordService.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/AccidentRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/AnnualInspectionRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/CustomerArchiveServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/DriverServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/EtcRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/InsuranceRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/MileageRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/OilElectricRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/OtherExpenseRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/TireReplacementRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/TransportChangeRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/TransportShipServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/TransportVehicleServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/service/impl/ViolationRecordServiceImpl.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/AccidentRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/AnnualInspectionRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/CustomerArchiveWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/DriverWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/EtcRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/InsuranceRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/MileageRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/OilElectricRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/OtherExpenseRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/TireReplacementRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/TransportChangeRecordWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/TransportShipWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/TransportVehicleWrapper.java create mode 100644 blade-service/blade-transport/src/main/java/org/springblade/transport/wrapper/ViolationRecordWrapper.java create mode 100644 doc/sql/transport/blade_accident_record.sql create mode 100644 doc/sql/transport/blade_annual_inspection_record.sql create mode 100644 doc/sql/transport/blade_customer_archive.sql create mode 100644 doc/sql/transport/blade_etc_record.sql create mode 100644 doc/sql/transport/blade_insurance_record.sql create mode 100644 doc/sql/transport/blade_mileage_record.sql create mode 100644 doc/sql/transport/blade_oil_electric_record.sql create mode 100644 doc/sql/transport/blade_other_expense_record.sql create mode 100644 doc/sql/transport/blade_tire_replacement_record.sql create mode 100644 doc/sql/transport/blade_transport_change_record.sql create mode 100644 doc/sql/transport/blade_transport_driver.sql create mode 100644 doc/sql/transport/blade_transport_ship.sql create mode 100644 doc/sql/transport/blade_transport_vehicle.sql create mode 100644 doc/sql/transport/blade_violation_record.sql diff --git a/AGENTS.md b/AGENTS.md index bbb8bdb..c906667 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -197,7 +197,14 @@ Entity 基类的选择**直接决定** Service 和 ServiceImpl 的继承方式 - 分页统一使用 `Condition.getPage(query)` + `Condition.getQueryWrapper()` - 禁止 JDBC 直连查询 -### 6.9 日志 +### 6.9 审计字段展示 + +- `create_user`、`update_user` 等审计字段只保存用户 ID,禁止为了展示姓名改变表结构或覆盖审计 ID。 +- 面向前端的 VO 应额外提供 `createUserName`、`updateUserName` 等展示字段,并使用 `@TableField(exist = false)` 标记。 +- Entity → VO 转换统一在 `XxxWrapper` 中完成;审计人姓名通过 `UserCache.getUserRealName(userId)` 获取,优先返回用户真实姓名,缓存未命中时兜底返回用户 ID。 +- Controller 不应在列表、详情方法中重复编写审计人翻译逻辑,避免各模块显示规则不一致。 + +### 6.10 日志 - 使用 `@Slf4j`,占位符传参(禁止字符串拼接) - 包含关键业务标识,异常必须携带堆栈,禁止打印敏感信息 diff --git a/blade-auth/src/main/java/org/springblade/auth/endpoint/IamSsoEndpoint.java b/blade-auth/src/main/java/org/springblade/auth/endpoint/IamSsoEndpoint.java new file mode 100644 index 0000000..1b54103 --- /dev/null +++ b/blade-auth/src/main/java/org/springblade/auth/endpoint/IamSsoEndpoint.java @@ -0,0 +1,79 @@ +/** + * BladeX Commercial License Agreement + * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved. + *
+ * Use of this software is governed by the Commercial License Agreement + * obtained after purchasing a license from BladeX. + *
+ * 1. This software is for development use only under a valid license + * from BladeX. + *
+ * 2. Redistribution of this software's source code to any third party + * without a commercial license is strictly prohibited. + *
+ * 3. Licensees may copyright their own code but cannot use segments + * from this software for such purposes. Copyright of this software + * remains with BladeX. + *
+ * Using this software signifies agreement to this License, and the software + * must not be used for illegal purposes. + *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is + * not liable for any claims arising from secondary or illegal development. + *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.auth.endpoint;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletRequest;
+import lombok.AllArgsConstructor;
+import org.springblade.core.oauth2.endpoint.OAuth2TokenEndPoint;
+import org.springblade.core.oauth2.provider.OAuth2Response;
+import org.springblade.core.tool.support.Kv;
+import org.springblade.core.tool.utils.StringUtil;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * IAM统一身份认证端点
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/iam/sso")
+@Tag(name = "IAM统一身份认证", description = "IAM统一身份认证端点")
+public class IamSsoEndpoint {
+
+ private static final String GRANT_TYPE = "iam_sso";
+
+ private final OAuth2TokenEndPoint tokenEndPoint;
+
+ /**
+ * IAM统一身份认证登录
+ *
+ * @param request 请求信息
+ * @return token
+ */
+ @PostMapping("/token")
+ @Operation(summary = "IAM统一身份认证登录", description = "使用IAM授权码换取本系统Token")
+ public ResponseEntity
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 事故记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_accident_record")
+@Schema(description = "事故记录")
+public class AccidentRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 车船类型
+ */
+ @Schema(description = "车船类型")
+ private String vehicleType;
+ /**
+ * 车牌号/船号
+ */
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+ /**
+ * 事故发生日期
+ */
+ @Schema(description = "事故发生日期")
+ private LocalDate accidentDate;
+ /**
+ * 事故发生地点
+ */
+ @Schema(description = "事故发生地点")
+ private String accidentLocation;
+ /**
+ * 事故性质
+ */
+ @Schema(description = "事故性质")
+ private String accidentNature;
+ /**
+ * 事故责任
+ */
+ @Schema(description = "事故责任")
+ private String accidentResponsibility;
+ /**
+ * 直接经济损失
+ */
+ @Schema(description = "直接经济损失")
+ private BigDecimal directEconomicLoss;
+ /**
+ * 保险理赔金额
+ */
+ @Schema(description = "保险理赔金额")
+ private BigDecimal insuranceClaimAmount;
+ /**
+ * 事故原因及损坏情况
+ */
+ @Schema(description = "事故原因及损坏情况")
+ private String accidentReasonDamage;
+ /**
+ * 附件
+ */
+ @Schema(description = "附件")
+ private String attachments;
+ /**
+ * 备注
+ */
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/AnnualInspectionRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/AnnualInspectionRecord.java
new file mode 100644
index 0000000..7abca83
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/AnnualInspectionRecord.java
@@ -0,0 +1,88 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 年检记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_annual_inspection_record")
+@Schema(description = "年检记录")
+public class AnnualInspectionRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "车船类型")
+ private String vehicleType;
+
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+
+ @Schema(description = "检测评定日期")
+ private LocalDate inspectionAssessmentDate;
+
+ @Schema(description = "车辆技术等级")
+ private String vehicleTechnicalLevel;
+
+ @Schema(description = "船舶检验类型")
+ private String shipInspectionType;
+
+ @Schema(description = "有效期截止日")
+ private LocalDate validUntilDate;
+
+ @Schema(description = "客车类型及等级")
+ private String passengerTypeLevel;
+
+ @Schema(description = "检测评定单位")
+ private String inspectionUnit;
+
+ @Schema(description = "费用")
+ private BigDecimal fee;
+
+ @Schema(description = "评定(复核)单位")
+ private String assessmentUnit;
+
+ @Schema(description = "附件")
+ private String attachments;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerArchive.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerArchive.java
new file mode 100644
index 0000000..9170e97
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerArchive.java
@@ -0,0 +1,137 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * 客商档案实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_archive")
+@Schema(description = "客商档案")
+public class CustomerArchive extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "客商编号")
+ private String customerCode;
+
+ @Schema(description = "客商简称")
+ private String shortName;
+
+ @Schema(description = "客商全称")
+ private String fullName;
+
+ @Schema(description = "客商性质")
+ private String customerNature;
+
+ @Schema(description = "统一社会信用代码")
+ private String unifiedCreditCode;
+
+ @Schema(description = "客商类型")
+ private String customerType;
+
+ @Schema(description = "所属项目")
+ private String projectName;
+
+ @Schema(description = "注册/实际经营地址")
+ private String registeredAddress;
+
+ @Schema(description = "法人/负责人")
+ private String legalPerson;
+
+ @Schema(description = "联系电话")
+ private String contactPhone;
+
+ @Schema(description = "所属组织ID")
+ private Long deptId;
+
+ @Schema(description = "所属组织")
+ private String deptName;
+
+ @Schema(description = "开票税点")
+ private BigDecimal invoiceTaxRate;
+
+ @Schema(description = "经营范围")
+ private String businessScope;
+
+ @Schema(description = "营业期限类型")
+ private String businessTermType;
+
+ @Schema(description = "营业期限截止日")
+ private LocalDate businessEndDate;
+
+ @Schema(description = "注册资金(万元)")
+ private BigDecimal registeredCapital;
+
+ @Schema(description = "客商负责人")
+ private String principal;
+
+ @Schema(description = "助记码")
+ private String mnemonicCode;
+
+ @Schema(description = "客户等级")
+ private String customerLevel;
+
+ @Schema(description = "最大资金使用额度(万元)")
+ private BigDecimal maxCreditLimit;
+
+ @Schema(description = "申请总资金使用额度(万元)")
+ private BigDecimal applyCreditLimit;
+
+ @Schema(description = "备注")
+ private String remark;
+
+ @Schema(description = "资质附件JSON")
+ private String qualificationAttachments;
+
+ @Schema(description = "准入类型:temporary/formal")
+ private String accessType;
+
+ @Schema(description = "审批状态:draft/reviewing/approved/rejected")
+ private String approvalStatus;
+
+ @Schema(description = "当前节点")
+ private String currentNode;
+
+ @Schema(description = "当前处理人")
+ private String currentProcessor;
+
+ @Schema(description = "审核通过时间")
+ private LocalDateTime approvedTime;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerChangeRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerChangeRecord.java
new file mode 100644
index 0000000..dbda316
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerChangeRecord.java
@@ -0,0 +1,63 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.time.LocalDateTime;
+
+/**
+ * 客商变更记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_change_record")
+@Schema(description = "客商变更记录")
+public class CustomerChangeRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "客商ID")
+ private Long customerId;
+
+ @Schema(description = "变更日期")
+ private LocalDateTime changeTime;
+
+ @Schema(description = "变更内容")
+ private String changeContent;
+
+ @Schema(description = "变更账号")
+ private String changeUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerContact.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerContact.java
new file mode 100644
index 0000000..e0c5631
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerContact.java
@@ -0,0 +1,71 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+
+/**
+ * 客商联系人实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_contact")
+@Schema(description = "客商联系人")
+public class CustomerContact extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "客商ID")
+ private Long customerId;
+
+ @Schema(description = "联系人姓名")
+ private String contactName;
+
+ @Schema(description = "联系电话")
+ private String contactPhone;
+
+ @Schema(description = "邮箱")
+ private String email;
+
+ @Schema(description = "职务")
+ private String positionName;
+
+ @Schema(description = "是否默认")
+ private Integer isDefault;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScore.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScore.java
new file mode 100644
index 0000000..3307ce3
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScore.java
@@ -0,0 +1,92 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 客商评分记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_credit_score")
+@Schema(description = "客商评分记录")
+public class CustomerCreditScore extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "客商ID")
+ private Long customerId;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "评分量化表ID")
+ private Long quantificationId;
+
+ @Schema(description = "评分日期")
+ private LocalDate scoreDate;
+
+ @Schema(description = "自评得分")
+ private BigDecimal selfScore;
+
+ @Schema(description = "复评得分")
+ private BigDecimal reviewScore;
+
+ @Schema(description = "最终得分")
+ private BigDecimal finalScore;
+
+ @Schema(description = "信用等级")
+ private String creditLevel;
+
+ @Schema(description = "最大资金使用额度(万元)")
+ private BigDecimal maxCreditLimit;
+
+ @Schema(description = "拟申请总资金使用额度(万元)")
+ private BigDecimal applyCreditLimit;
+
+ @Schema(description = "自评状态")
+ private String selfStatus;
+
+ @Schema(description = "复评状态")
+ private String reviewStatus;
+
+ @Schema(description = "备注")
+ private String remark;
+
+ @Schema(description = "证明材料JSON")
+ private String proofAttachments;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScoreDetail.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScoreDetail.java
new file mode 100644
index 0000000..2e388c0
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerCreditScoreDetail.java
@@ -0,0 +1,92 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+
+/**
+ * 客商评分明细实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_credit_score_detail")
+@Schema(description = "客商评分明细")
+public class CustomerCreditScoreDetail extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "评分记录ID")
+ private Long scoreId;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "评分量化表ID")
+ private Long quantificationId;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "评分项目ID")
+ private Long itemId;
+
+ @Schema(description = "评分分类编码")
+ private String categoryCode;
+
+ @Schema(description = "评分分类名称")
+ private String categoryName;
+
+ @Schema(description = "评分项目")
+ private String itemName;
+
+ @Schema(description = "评分标准")
+ private String optionDescription;
+
+ @Schema(description = "选项JSON")
+ private String optionsJson;
+
+ @Schema(description = "已选选项")
+ private String selectedOption;
+
+ @Schema(description = "得分说明")
+ private String scoreDescription;
+
+ @Schema(description = "自评得分")
+ private BigDecimal selfScore;
+
+ @Schema(description = "复评得分")
+ private BigDecimal reviewScore;
+
+ @Schema(description = "排序")
+ private Integer sort;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerInvoiceInfo.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerInvoiceInfo.java
new file mode 100644
index 0000000..88cda22
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerInvoiceInfo.java
@@ -0,0 +1,86 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+
+/**
+ * 客商发票信息实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_invoice_info")
+@Schema(description = "客商发票信息")
+public class CustomerInvoiceInfo extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "客商ID")
+ private Long customerId;
+
+ @Schema(description = "受票方名称")
+ private String invoiceTitle;
+
+ @Schema(description = "纳税人识别号")
+ private String taxNo;
+
+ @Schema(description = "开户行名称")
+ private String bankName;
+
+ @Schema(description = "注册电话")
+ private String registeredPhone;
+
+ @Schema(description = "银行账号")
+ private String bankAccount;
+
+ @Schema(description = "注册地址")
+ private String registeredAddress;
+
+ @Schema(description = "邮箱")
+ private String email;
+
+ @Schema(description = "收件人姓名")
+ private String receiverName;
+
+ @Schema(description = "收件人电话")
+ private String receiverPhone;
+
+ @Schema(description = "收件人地址")
+ private String receiverAddress;
+
+ @Schema(description = "是否默认")
+ private Integer isDefault;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerReceiptAccount.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerReceiptAccount.java
new file mode 100644
index 0000000..ccf07ab
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/CustomerReceiptAccount.java
@@ -0,0 +1,74 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+
+/**
+ * 客商收款信息实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_customer_receipt_account")
+@Schema(description = "客商收款信息")
+public class CustomerReceiptAccount extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @JsonSerialize(using = ToStringSerializer.class)
+ @Schema(description = "客商ID")
+ private Long customerId;
+
+ @Schema(description = "收款方名称")
+ private String accountName;
+
+ @Schema(description = "开户行名称")
+ private String bankName;
+
+ @Schema(description = "银行账号")
+ private String bankAccount;
+
+ @Schema(description = "注册电话")
+ private String registeredPhone;
+
+ @Schema(description = "注册地址")
+ private String registeredAddress;
+
+ @Schema(description = "纳税人识别号")
+ private String taxNo;
+
+ @Schema(description = "是否默认")
+ private Integer isDefault;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/Driver.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/Driver.java
new file mode 100644
index 0000000..a214768
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/Driver.java
@@ -0,0 +1,212 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.time.LocalDate;
+
+/**
+ * 司机管理实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_transport_driver")
+@Schema(description = "司机管理")
+public class Driver extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 司机姓名
+ */
+ @Schema(description = "司机姓名")
+ private String driverName;
+ /**
+ * 身份证号
+ */
+ @Schema(description = "身份证号")
+ private String idCardNo;
+ /**
+ * 出生年月
+ */
+ @Schema(description = "出生年月")
+ private LocalDate birthday;
+ /**
+ * 性别
+ */
+ @Schema(description = "性别")
+ private String gender;
+ /**
+ * 民族
+ */
+ @Schema(description = "民族")
+ private String nation;
+ /**
+ * 学历
+ */
+ @Schema(description = "学历")
+ private String education;
+ /**
+ * 地址区划
+ */
+ @Schema(description = "地址区划")
+ private String addressRegion;
+ /**
+ * 详细地址
+ */
+ @Schema(description = "详细地址")
+ private String address;
+ /**
+ * 岗位,多个使用逗号分隔
+ */
+ @Schema(description = "岗位,多个使用逗号分隔")
+ private String posts;
+ /**
+ * 身份证正面照
+ */
+ @Schema(description = "身份证正面照")
+ private String idCardFront;
+ /**
+ * 身份证反面照
+ */
+ @Schema(description = "身份证反面照")
+ private String idCardBack;
+ /**
+ * 大头照
+ */
+ @Schema(description = "大头照")
+ private String headPhoto;
+ /**
+ * 准驾车型
+ */
+ @Schema(description = "准驾车型")
+ private String drivingType;
+ /**
+ * 驾驶证档案编号
+ */
+ @Schema(description = "驾驶证档案编号")
+ private String drivingLicenseNo;
+ /**
+ * 驾驶证有效期起
+ */
+ @Schema(description = "驾驶证有效期起")
+ private LocalDate drivingLicenseStartDate;
+ /**
+ * 驾驶证有效期止
+ */
+ @Schema(description = "驾驶证有效期止")
+ private LocalDate drivingLicenseEndDate;
+ /**
+ * 驾驶证长期有效
+ */
+ @Schema(description = "驾驶证长期有效")
+ private Integer drivingLicenseLongTerm;
+ /**
+ * 驾驶证主页
+ */
+ @Schema(description = "驾驶证主页")
+ private String drivingLicenseFront;
+ /**
+ * 驾驶证副页
+ */
+ @Schema(description = "驾驶证副页")
+ private String drivingLicenseBack;
+ /**
+ * 从业资格证类型
+ */
+ @Schema(description = "从业资格证类型")
+ private String qualificationType;
+ /**
+ * 资格证号
+ */
+ @Schema(description = "资格证号")
+ private String qualificationNo;
+ /**
+ * 从业资格证有效期止
+ */
+ @Schema(description = "从业资格证有效期止")
+ private LocalDate qualificationEndDate;
+ /**
+ * 从业资格证长期有效
+ */
+ @Schema(description = "从业资格证长期有效")
+ private Integer qualificationLongTerm;
+ /**
+ * 从业资格证封面页
+ */
+ @Schema(description = "从业资格证封面页")
+ private String qualificationFront;
+ /**
+ * 从业资格证内容页
+ */
+ @Schema(description = "从业资格证内容页")
+ private String qualificationBack;
+ /**
+ * 司机类型
+ */
+ @Schema(description = "司机类型")
+ private String driverType;
+ /**
+ * 手机号
+ */
+ @Schema(description = "手机号")
+ private String mobile;
+ /**
+ * 与联系人关系
+ */
+ @Schema(description = "与联系人关系")
+ private String contactRelation;
+ /**
+ * 所属组织
+ */
+ @Schema(description = "所属组织")
+ private String organizationName;
+ /**
+ * 紧急联系人姓名
+ */
+ @Schema(description = "紧急联系人姓名")
+ private String emergencyContactName;
+ /**
+ * 紧急联系人手机号
+ */
+ @Schema(description = "紧急联系人手机号")
+ private String emergencyContactMobile;
+ /**
+ * 备注
+ */
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/EtcRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/EtcRecord.java
new file mode 100644
index 0000000..5a9e28a
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/EtcRecord.java
@@ -0,0 +1,63 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * ETC记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_etc_record")
+@Schema(description = "ETC记录")
+public class EtcRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "车牌号")
+ private String vehicleNo;
+
+ @Schema(description = "ETC卡号")
+ private String etcCardNo;
+
+ @Schema(description = "入口时间")
+ private LocalDateTime entryTime;
+
+ @Schema(description = "出口时间")
+ private LocalDateTime exitTime;
+
+ @Schema(description = "入口站")
+ private String entryStation;
+
+ @Schema(description = "出口站")
+ private String exitStation;
+
+ @Schema(description = "数据来源")
+ private String dataSource;
+
+ @Schema(description = "交易金额")
+ private BigDecimal transactionAmount;
+
+ @Schema(description = "附件")
+ private String attachments;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InsuranceRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InsuranceRecord.java
new file mode 100644
index 0000000..780e773
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/InsuranceRecord.java
@@ -0,0 +1,118 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 保险记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_insurance_record")
+@Schema(description = "保险记录")
+public class InsuranceRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 车船类型
+ */
+ @Schema(description = "车船类型")
+ private String vehicleType;
+ /**
+ * 车牌号/船号
+ */
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+ /**
+ * 保险类型
+ */
+ @Schema(description = "保险类型")
+ private String insuranceType;
+ /**
+ * 保单号
+ */
+ @Schema(description = "保单号")
+ private String policyNo;
+ /**
+ * 开始日期
+ */
+ @Schema(description = "开始日期")
+ private LocalDate startDate;
+ /**
+ * 结束日期
+ */
+ @Schema(description = "结束日期")
+ private LocalDate endDate;
+ /**
+ * 保额
+ */
+ @Schema(description = "保额")
+ private BigDecimal insuredAmount;
+ /**
+ * 保费
+ */
+ @Schema(description = "保费")
+ private BigDecimal premium;
+ /**
+ * 发票号
+ */
+ @Schema(description = "发票号")
+ private String invoiceNo;
+ /**
+ * 开票日期
+ */
+ @Schema(description = "开票日期")
+ private LocalDate invoiceDate;
+ /**
+ * OCR识别模板
+ */
+ @Schema(description = "OCR识别模板")
+ private String ocrTemplate;
+ /**
+ * 保单附件
+ */
+ @Schema(description = "保单附件")
+ private String policyFile;
+ /**
+ * 备注
+ */
+ @Schema(description = "备注")
+ private String remark;
+
+}
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
new file mode 100644
index 0000000..f73b307
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/MileageRecord.java
@@ -0,0 +1,72 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+
+/**
+ * 里程记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_mileage_record")
+@Schema(description = "里程记录")
+public class MileageRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "车牌号")
+ private String vehicleNo;
+
+ @Schema(description = "上月统计里程")
+ private BigDecimal previousMonthMileage;
+
+ @Schema(description = "本月统计里程")
+ private BigDecimal currentMonthMileage;
+
+ @Schema(description = "本月行驶里程")
+ private BigDecimal monthlyMileage;
+
+ @Schema(description = "累计行驶里程")
+ private BigDecimal totalMileage;
+
+ @Schema(description = "附件")
+ private String attachments;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OilElectricRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OilElectricRecord.java
new file mode 100644
index 0000000..cf2ad51
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OilElectricRecord.java
@@ -0,0 +1,97 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 油电记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_oil_electric_record")
+@Schema(description = "油电记录")
+public class OilElectricRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "卡号")
+ private String cardNo;
+
+ @Schema(description = "交易时间")
+ private LocalDateTime transactionTime;
+
+ @Schema(description = "车船类型")
+ private String vehicleType;
+
+ @Schema(description = "费用类型")
+ private String feeType;
+
+ @Schema(description = "油品")
+ private String oilProduct;
+
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+
+ @Schema(description = "持卡人")
+ private String cardHolder;
+
+ @Schema(description = "数据来源")
+ private String dataSource;
+
+ @Schema(description = "数量")
+ private BigDecimal quantity;
+
+ @Schema(description = "单价")
+ private BigDecimal unitPrice;
+
+ @Schema(description = "交易金额")
+ private BigDecimal transactionAmount;
+
+ @Schema(description = "余额")
+ private BigDecimal balance;
+
+ @Schema(description = "站点")
+ private String station;
+
+ @Schema(description = "附件")
+ private String attachments;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OtherExpenseRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OtherExpenseRecord.java
new file mode 100644
index 0000000..f5434d0
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/OtherExpenseRecord.java
@@ -0,0 +1,57 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 其他费用记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_other_expense_record")
+@Schema(description = "其他费用记录")
+public class OtherExpenseRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "费用日期")
+ private LocalDate expenseDate;
+
+ @Schema(description = "其他费用类型")
+ private String expenseType;
+
+ @Schema(description = "车船类型")
+ private String vehicleType;
+
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+
+ @Schema(description = "数据来源")
+ private String dataSource;
+
+ @Schema(description = "金额")
+ private BigDecimal amount;
+
+ @Schema(description = "附件")
+ private String attachments;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TireReplacementRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TireReplacementRecord.java
new file mode 100644
index 0000000..5530bb9
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TireReplacementRecord.java
@@ -0,0 +1,98 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 换胎记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_tire_replacement_record")
+@Schema(description = "换胎记录")
+public class TireReplacementRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 车牌号
+ */
+ @Schema(description = "车牌号")
+ private String vehicleNo;
+ /**
+ * 处理人
+ */
+ @Schema(description = "处理人")
+ private String handler;
+ /**
+ * 换胎时间
+ */
+ @Schema(description = "换胎时间")
+ private LocalDate replacementTime;
+ /**
+ * 轮胎品牌
+ */
+ @Schema(description = "轮胎品牌")
+ private String tireBrand;
+ /**
+ * 换胎数量
+ */
+ @Schema(description = "换胎数量")
+ private Integer tireQuantity;
+ /**
+ * 换胎费用
+ */
+ @Schema(description = "换胎费用")
+ private BigDecimal replacementCost;
+ /**
+ * 换胎说明
+ */
+ @Schema(description = "换胎说明")
+ private String replacementDescription;
+ /**
+ * 附件
+ */
+ @Schema(description = "附件")
+ private String attachments;
+ /**
+ * 备注
+ */
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportChangeRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportChangeRecord.java
new file mode 100644
index 0000000..c39c96c
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportChangeRecord.java
@@ -0,0 +1,68 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+
+/**
+ * 变更记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_transport_change_record")
+@Schema(description = "变更记录")
+public class TransportChangeRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "车船类型")
+ private String vehicleType;
+
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+
+ @Schema(description = "变更事项")
+ private String changeItem;
+
+ @Schema(description = "变更内容")
+ private String changeContent;
+
+ @Schema(description = "附件")
+ private String attachments;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportShip.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportShip.java
new file mode 100644
index 0000000..3fdcc55
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportShip.java
@@ -0,0 +1,105 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.time.LocalDate;
+
+/**
+ * 船舶管理实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_transport_ship")
+@Schema(description = "船舶管理")
+public class TransportShip extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "船舶名")
+ private String shipName;
+
+ @Schema(description = "船舶识别号")
+ private String shipIdentifierNo;
+
+ @Schema(description = "所属组织")
+ private String organizationName;
+
+ @Schema(description = "船检登记号")
+ private String shipInspectionNo;
+
+ @Schema(description = "船舶类型")
+ private String shipType;
+
+ @Schema(description = "国籍证有效期至")
+ private LocalDate nationalityCertEndDate;
+
+ @Schema(description = "国籍证长期有效")
+ private Integer nationalityCertLongTerm;
+
+ @Schema(description = "国籍证图片")
+ private String nationalityCertImage;
+
+ @Schema(description = "最低安全配员证书有效期至")
+ private LocalDate safeManningCertEndDate;
+
+ @Schema(description = "最低安全配员证书长期有效")
+ private Integer safeManningCertLongTerm;
+
+ @Schema(description = "最低安全配员证书图片")
+ private String safeManningCertImage;
+
+ @Schema(description = "营业运输证有效期至")
+ private LocalDate businessTransportCertEndDate;
+
+ @Schema(description = "营业运输证长期有效")
+ private Integer businessTransportCertLongTerm;
+
+ @Schema(description = "营业运输证图片")
+ private String businessTransportCertImage;
+
+ @Schema(description = "承租有效期至")
+ private LocalDate leaseEndDate;
+
+ @Schema(description = "承租长期有效")
+ private Integer leaseLongTerm;
+
+ @Schema(description = "承租合同图片")
+ private String leaseContractImage;
+
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportVehicle.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportVehicle.java
new file mode 100644
index 0000000..d24c906
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/TransportVehicle.java
@@ -0,0 +1,197 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.time.LocalDate;
+
+/**
+ * 车辆管理实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_transport_vehicle")
+@Schema(description = "车辆管理")
+public class TransportVehicle extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 所属组织
+ */
+ @Schema(description = "所属组织")
+ private String organizationName;
+ /**
+ * 车牌号
+ */
+ @Schema(description = "车牌号")
+ private String plateNo;
+ /**
+ * 车辆类型
+ */
+ @Schema(description = "车辆类型")
+ private String vehicleType;
+ /**
+ * 外廓长度,毫米
+ */
+ @Schema(description = "外廓长度,毫米")
+ private Integer outerLength;
+ /**
+ * 外廓宽度,毫米
+ */
+ @Schema(description = "外廓宽度,毫米")
+ private Integer outerWidth;
+ /**
+ * 外廓高度,毫米
+ */
+ @Schema(description = "外廓高度,毫米")
+ private Integer outerHeight;
+ /**
+ * 核定载质量,KG
+ */
+ @Schema(description = "核定载质量,KG")
+ private Integer approvedLoadKg;
+ /**
+ * 准牵引总质量,KG
+ */
+ @Schema(description = "准牵引总质量,KG")
+ private Integer tractionMassKg;
+ /**
+ * 业务关系
+ */
+ @Schema(description = "业务关系")
+ private String businessRelation;
+ /**
+ * 能源类型
+ */
+ @Schema(description = "能源类型")
+ private String energyType;
+ /**
+ * 强制报废日期
+ */
+ @Schema(description = "强制报废日期")
+ private LocalDate compulsoryScrapDate;
+ /**
+ * 强制报废长期有效
+ */
+ @Schema(description = "强制报废长期有效")
+ private Integer compulsoryScrapLongTerm;
+ /**
+ * 海关备案号
+ */
+ @Schema(description = "海关备案号")
+ private String customsRecordNo;
+ /**
+ * 行驶证档案编号
+ */
+ @Schema(description = "行驶证档案编号")
+ private String drivingLicenseNo;
+ /**
+ * 行驶证有效期起
+ */
+ @Schema(description = "行驶证有效期起")
+ private LocalDate drivingLicenseStartDate;
+ /**
+ * 行驶证有效期止
+ */
+ @Schema(description = "行驶证有效期止")
+ private LocalDate drivingLicenseEndDate;
+ /**
+ * 行驶证长期有效
+ */
+ @Schema(description = "行驶证长期有效")
+ private Integer drivingLicenseLongTerm;
+ /**
+ * 行驶证图片
+ */
+ @Schema(description = "行驶证图片")
+ private String drivingLicenseImage;
+ /**
+ * 道路运输证号
+ */
+ @Schema(description = "道路运输证号")
+ private String roadTransportCertNo;
+ /**
+ * 道路运输证有效期起
+ */
+ @Schema(description = "道路运输证有效期起")
+ private LocalDate roadTransportCertStartDate;
+ /**
+ * 道路运输证有效期止
+ */
+ @Schema(description = "道路运输证有效期止")
+ private LocalDate roadTransportCertEndDate;
+ /**
+ * 道路运输证长期有效
+ */
+ @Schema(description = "道路运输证长期有效")
+ private Integer roadTransportCertLongTerm;
+ /**
+ * 道路运输证图片
+ */
+ @Schema(description = "道路运输证图片")
+ private String roadTransportCertImage;
+ /**
+ * 道路运输年审有效期
+ */
+ @Schema(description = "道路运输年审有效期")
+ private LocalDate annualReviewEndDate;
+ /**
+ * 道路运输年审长期有效
+ */
+ @Schema(description = "道路运输年审长期有效")
+ private Integer annualReviewLongTerm;
+ /**
+ * 机动车登记编号
+ */
+ @Schema(description = "机动车登记编号")
+ private String registrationNo;
+ /**
+ * 机动车登记日期
+ */
+ @Schema(description = "机动车登记日期")
+ private LocalDate registrationDate;
+ /**
+ * 机动车登记本图片
+ */
+ @Schema(description = "机动车登记本图片")
+ private String registrationImage;
+ /**
+ * 备注
+ */
+ @Schema(description = "备注")
+ private String remark;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/ViolationRecord.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/ViolationRecord.java
new file mode 100644
index 0000000..28c628c
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/entity/ViolationRecord.java
@@ -0,0 +1,123 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 违章记录实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("blade_violation_record")
+@Schema(description = "违章记录")
+public class ViolationRecord extends TenantEntity {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 车船类型
+ */
+ @Schema(description = "车船类型")
+ private String vehicleType;
+ /**
+ * 车牌号/船号
+ */
+ @Schema(description = "车牌号/船号")
+ private String vehicleNo;
+ /**
+ * 驾驶人/船长
+ */
+ @Schema(description = "驾驶人/船长")
+ private String driverName;
+ /**
+ * 类型
+ */
+ @Schema(description = "类型")
+ private String violationType;
+ /**
+ * 事项
+ */
+ @Schema(description = "事项")
+ private String violationItem;
+ /**
+ * 违章时间
+ */
+ @Schema(description = "违章时间")
+ private LocalDateTime violationTime;
+ /**
+ * 地点
+ */
+ @Schema(description = "地点")
+ private String location;
+ /**
+ * 被罚金额
+ */
+ @Schema(description = "被罚金额")
+ private BigDecimal fineAmount;
+ /**
+ * 被扣分数
+ */
+ @Schema(description = "被扣分数")
+ private Integer deductPoints;
+ /**
+ * 被罚单位
+ */
+ @Schema(description = "被罚单位")
+ private String penaltyUnit;
+ /**
+ * 处理状态
+ */
+ @Schema(description = "处理状态")
+ private String processStatus;
+ /**
+ * 过程描述
+ */
+ @Schema(description = "过程描述")
+ private String processDescription;
+ /**
+ * 处理结果
+ */
+ @Schema(description = "处理结果")
+ private String processResult;
+ /**
+ * 附件
+ */
+ @Schema(description = "附件")
+ private String attachments;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AccidentRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AccidentRecordVO.java
new file mode 100644
index 0000000..e06dc08
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AccidentRecordVO.java
@@ -0,0 +1,90 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.AccidentRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * 事故记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "事故记录")
+public class AccidentRecordVO extends AccidentRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 事故评定开始日期
+ */
+ @TableField(exist = false)
+ @Schema(description = "事故评定开始日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate accidentAssessmentDateStart;
+
+ /**
+ * 事故评定结束日期
+ */
+ @TableField(exist = false)
+ @Schema(description = "事故评定结束日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate accidentAssessmentDateEnd;
+
+ /**
+ * 创建开始时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ /**
+ * 创建结束时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ /**
+ * 更新人姓名
+ */
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AnnualInspectionRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AnnualInspectionRecordVO.java
new file mode 100644
index 0000000..d1d3c96
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/AnnualInspectionRecordVO.java
@@ -0,0 +1,75 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.AnnualInspectionRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * 年检记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "年检记录")
+public class AnnualInspectionRecordVO extends AnnualInspectionRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "检测评定开始日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate inspectionAssessmentDateStart;
+
+ @TableField(exist = false)
+ @Schema(description = "检测评定结束日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate inspectionAssessmentDateEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerArchiveVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerArchiveVO.java
new file mode 100644
index 0000000..a413eeb
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerArchiveVO.java
@@ -0,0 +1,80 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerArchive;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 客商档案视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商档案")
+public class CustomerArchiveVO extends CustomerArchive {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "联系人")
+ private List
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerChangeRecord;
+
+import java.io.Serial;
+
+/**
+ * 客商变更记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商变更记录")
+public class CustomerChangeRecordVO extends CustomerChangeRecord {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerContactVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerContactVO.java
new file mode 100644
index 0000000..d4ccb73
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerContactVO.java
@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerContact;
+
+import java.io.Serial;
+
+/**
+ * 客商联系人视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商联系人")
+public class CustomerContactVO extends CustomerContact {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreDetailVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreDetailVO.java
new file mode 100644
index 0000000..aea5f61
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreDetailVO.java
@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerCreditScoreDetail;
+
+import java.io.Serial;
+
+/**
+ * 客商评分明细视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商评分明细")
+public class CustomerCreditScoreDetailVO extends CustomerCreditScoreDetail {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreVO.java
new file mode 100644
index 0000000..45f55ee
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerCreditScoreVO.java
@@ -0,0 +1,52 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerCreditScore;
+
+import java.io.Serial;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 客商评分记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商评分记录")
+public class CustomerCreditScoreVO extends CustomerCreditScore {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "评分明细")
+ private List
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerInvoiceInfo;
+
+import java.io.Serial;
+
+/**
+ * 客商发票信息视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商发票信息")
+public class CustomerInvoiceInfoVO extends CustomerInvoiceInfo {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerReceiptAccountVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerReceiptAccountVO.java
new file mode 100644
index 0000000..2778572
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/CustomerReceiptAccountVO.java
@@ -0,0 +1,45 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.CustomerReceiptAccount;
+
+import java.io.Serial;
+
+/**
+ * 客商收款信息视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "客商收款信息")
+public class CustomerReceiptAccountVO extends CustomerReceiptAccount {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverExpiryStatVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverExpiryStatVO.java
new file mode 100644
index 0000000..a374594
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverExpiryStatVO.java
@@ -0,0 +1,55 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 司机证件有效期统计
+ *
+ * @author Chill
+ */
+@Data
+@Schema(description = "司机证件有效期统计")
+public class DriverExpiryStatVO implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "全部")
+ private Long total;
+
+ @Schema(description = "30天内到期")
+ private Long within30;
+
+ @Schema(description = "已到期")
+ private Long expired;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverVO.java
new file mode 100644
index 0000000..856575c
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/DriverVO.java
@@ -0,0 +1,72 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.Driver;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDate;
+
+/**
+ * 司机管理视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "司机管理")
+public class DriverVO extends Driver {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 证件有效期状态:within30-30天内到期,expired-已到期
+ */
+ @TableField(exist = false)
+ @Schema(description = "证件有效期状态")
+ private String expireStatus;
+ /**
+ * 当前日期
+ */
+ @TableField(exist = false)
+ @Schema(description = "当前日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate today;
+ /**
+ * 预警日期
+ */
+ @TableField(exist = false)
+ @Schema(description = "预警日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate warningDate;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/EtcRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/EtcRecordVO.java
new file mode 100644
index 0000000..cef2656
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/EtcRecordVO.java
@@ -0,0 +1,33 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.EtcRecord;
+
+import java.io.Serial;
+
+/**
+ * ETC记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "ETC记录")
+public class EtcRecordVO extends EtcRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/InsuranceRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/InsuranceRecordVO.java
new file mode 100644
index 0000000..3af9b3b
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/InsuranceRecordVO.java
@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.InsuranceRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDateTime;
+
+/**
+ * 保险记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "保险记录")
+public class InsuranceRecordVO extends InsuranceRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 创建开始时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ /**
+ * 创建结束时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ /**
+ * 更新人姓名
+ */
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenancePlanVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenancePlanVO.java
index 4ad272b..bb4d225 100644
--- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenancePlanVO.java
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenancePlanVO.java
@@ -62,4 +62,11 @@ public class MaintenancePlanVO extends MaintenancePlan {
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTimeEnd;
+ /**
+ * 更新人姓名
+ */
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenanceRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenanceRecordVO.java
index 19d6cbd..260f094 100644
--- a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenanceRecordVO.java
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MaintenanceRecordVO.java
@@ -62,4 +62,11 @@ public class MaintenanceRecordVO extends MaintenanceRecord {
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTimeEnd;
+ /**
+ * 更新人姓名
+ */
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MileageRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MileageRecordVO.java
new file mode 100644
index 0000000..4c39754
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/MileageRecordVO.java
@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.MileageRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 里程记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "里程记录")
+public class MileageRecordVO extends MileageRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "累计行驶里程开始值")
+ private BigDecimal totalMileageStart;
+
+ @TableField(exist = false)
+ @Schema(description = "累计行驶里程结束值")
+ private BigDecimal totalMileageEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OilElectricRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OilElectricRecordVO.java
new file mode 100644
index 0000000..94b3502
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OilElectricRecordVO.java
@@ -0,0 +1,83 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.OilElectricRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 油电记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "油电记录")
+public class OilElectricRecordVO extends OilElectricRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "交易开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime transactionTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "交易结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime transactionTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "消费金额开始值")
+ private BigDecimal transactionAmountStart;
+
+ @TableField(exist = false)
+ @Schema(description = "消费金额结束值")
+ private BigDecimal transactionAmountEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OtherExpenseRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OtherExpenseRecordVO.java
new file mode 100644
index 0000000..0c6db1e
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/OtherExpenseRecordVO.java
@@ -0,0 +1,56 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.OtherExpenseRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * 其他费用记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "其他费用记录")
+public class OtherExpenseRecordVO extends OtherExpenseRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "费用开始日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate expenseDateStart;
+
+ @TableField(exist = false)
+ @Schema(description = "费用结束日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate expenseDateEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TireReplacementRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TireReplacementRecordVO.java
new file mode 100644
index 0000000..f914095
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TireReplacementRecordVO.java
@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.TireReplacementRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDateTime;
+
+/**
+ * 换胎记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "换胎记录")
+public class TireReplacementRecordVO extends TireReplacementRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 创建开始时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ /**
+ * 创建结束时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ /**
+ * 更新人姓名
+ */
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportChangeRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportChangeRecordVO.java
new file mode 100644
index 0000000..2ae66b5
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportChangeRecordVO.java
@@ -0,0 +1,64 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.TransportChangeRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDateTime;
+
+/**
+ * 变更记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "变更记录")
+public class TransportChangeRecordVO extends TransportChangeRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipExpiryStatVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipExpiryStatVO.java
new file mode 100644
index 0000000..7a720bf
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipExpiryStatVO.java
@@ -0,0 +1,55 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 船舶证件有效期统计
+ *
+ * @author Chill
+ */
+@Data
+@Schema(description = "船舶证件有效期统计")
+public class TransportShipExpiryStatVO implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "全部")
+ private Long total;
+
+ @Schema(description = "30天内到期")
+ private Long within30;
+
+ @Schema(description = "已到期")
+ private Long expired;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipVO.java
new file mode 100644
index 0000000..76fb12a
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportShipVO.java
@@ -0,0 +1,65 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.TransportShip;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDate;
+
+/**
+ * 船舶管理视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "船舶管理")
+public class TransportShipVO extends TransportShip {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @TableField(exist = false)
+ @Schema(description = "证件有效期状态")
+ private String expireStatus;
+
+ @TableField(exist = false)
+ @Schema(description = "当前日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate today;
+
+ @TableField(exist = false)
+ @Schema(description = "预警日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate warningDate;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleExpiryStatVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleExpiryStatVO.java
new file mode 100644
index 0000000..271fc26
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleExpiryStatVO.java
@@ -0,0 +1,55 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 车辆证件有效期统计
+ *
+ * @author Chill
+ */
+@Data
+@Schema(description = "车辆证件有效期统计")
+public class TransportVehicleExpiryStatVO implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @Schema(description = "全部")
+ private Long total;
+
+ @Schema(description = "30天内到期")
+ private Long within30;
+
+ @Schema(description = "已到期")
+ private Long expired;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleVO.java
new file mode 100644
index 0000000..46acec1
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/TransportVehicleVO.java
@@ -0,0 +1,72 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.TransportVehicle;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDate;
+
+/**
+ * 车辆管理视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "车辆管理")
+public class TransportVehicleVO extends TransportVehicle {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 证件有效期状态:within30-30天内到期,expired-已到期
+ */
+ @TableField(exist = false)
+ @Schema(description = "证件有效期状态")
+ private String expireStatus;
+ /**
+ * 当前日期
+ */
+ @TableField(exist = false)
+ @Schema(description = "当前日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate today;
+ /**
+ * 预警日期
+ */
+ @TableField(exist = false)
+ @Schema(description = "预警日期")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ private LocalDate warningDate;
+
+}
diff --git a/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/ViolationRecordVO.java b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/ViolationRecordVO.java
new file mode 100644
index 0000000..98b7569
--- /dev/null
+++ b/blade-service-api/blade-transport-api/src/main/java/org/springblade/transport/pojo/vo/ViolationRecordVO.java
@@ -0,0 +1,73 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.transport.pojo.entity.ViolationRecord;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serial;
+import java.time.LocalDateTime;
+
+/**
+ * 违章记录视图实体类
+ *
+ * @author Chill
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Schema(description = "违章记录")
+public class ViolationRecordVO extends ViolationRecord {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 创建开始时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建开始时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeStart;
+
+ /**
+ * 创建结束时间
+ */
+ @TableField(exist = false)
+ @Schema(description = "创建结束时间")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private LocalDateTime createTimeEnd;
+
+ /**
+ * 更新人姓名
+ */
+ @TableField(exist = false)
+ @Schema(description = "更新人姓名")
+ private String updateUserName;
+
+}
diff --git a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java
index a0c0ac2..0dbd04f 100644
--- a/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java
+++ b/blade-service-api/blade-user-api/src/main/java/org/springblade/system/cache/UserCache.java
@@ -79,6 +79,32 @@ public class UserCache {
});
}
+ /**
+ * 获取用户姓名
+ *
+ * @param userId 用户id
+ * @return 用户姓名
+ */
+ public static String getUserRealName(Long userId) {
+ if (userId == null) {
+ return StringPool.EMPTY;
+ }
+ User user = getUser(userId);
+ if (user == null) {
+ return Func.toStr(userId);
+ }
+ if (StringUtil.isNotBlank(user.getRealName())) {
+ return user.getRealName();
+ }
+ if (StringUtil.isNotBlank(user.getName())) {
+ return user.getName();
+ }
+ if (StringUtil.isNotBlank(user.getAccount())) {
+ return user.getAccount();
+ }
+ return Func.toStr(userId);
+ }
+
/**
* 获取用户
*
diff --git a/blade-service/blade-system/src/main/java/org/springblade/system/controller/CurrencyController.java b/blade-service/blade-system/src/main/java/org/springblade/system/controller/CurrencyController.java
index b2dfd8f..d6ec0ef 100644
--- a/blade-service/blade-system/src/main/java/org/springblade/system/controller/CurrencyController.java
+++ b/blade-service/blade-system/src/main/java/org/springblade/system/controller/CurrencyController.java
@@ -25,8 +25,9 @@
*/
package org.springblade.system.controller;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -49,6 +50,7 @@ import org.springblade.system.pojo.entity.Currency;
import org.springblade.system.pojo.vo.CurrencyVO;
import org.springblade.system.service.ICurrencyService;
import org.springblade.system.wrapper.CurrencyWrapper;
+import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -57,12 +59,12 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
+import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
-import java.util.Map;
/**
- * 币种主数据 控制器
+ * 币种汇率 控制器
*
* @author Chill
*/
@@ -71,7 +73,7 @@ import java.util.Map;
@AllArgsConstructor
@PreAuth(menu = "currency")
@RequestMapping("/currency")
-@Tag(name = "币种主数据", description = "币种主数据")
+@Tag(name = "币种汇率", description = "币种汇率")
public class CurrencyController extends BladeController {
private final ICurrencyService currencyService;
@@ -98,11 +100,22 @@ public class CurrencyController extends BladeController {
return R.data(pages);
}
+ /**
+ * 有效汇率查询
+ */
+ @GetMapping("/rate")
+ @ApiOperationSupport(order = 3)
+ @Operation(summary = "有效汇率查询", description = "根据币种编码和业务日期查询有效汇率")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.AccidentRecordExcel;
+import org.springblade.transport.excel.AccidentRecordImporter;
+import org.springblade.transport.pojo.entity.AccidentRecord;
+import org.springblade.transport.pojo.vo.AccidentRecordVO;
+import org.springblade.transport.service.IAccidentRecordService;
+import org.springblade.transport.wrapper.AccidentRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 事故记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "accident_record")
+@RequestMapping("/accident-record")
+@Tag(name = "事故记录", description = "事故记录")
+public class AccidentRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IAccidentRecordService accidentRecordService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入accidentRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.AnnualInspectionRecordExcel;
+import org.springblade.transport.excel.AnnualInspectionRecordImporter;
+import org.springblade.transport.pojo.entity.AnnualInspectionRecord;
+import org.springblade.transport.pojo.vo.AnnualInspectionRecordVO;
+import org.springblade.transport.service.IAnnualInspectionRecordService;
+import org.springblade.transport.wrapper.AnnualInspectionRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 年检记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "annual_inspection_record")
+@RequestMapping("/annual-inspection-record")
+@Tag(name = "年检记录", description = "年检记录")
+public class AnnualInspectionRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IAnnualInspectionRecordService annualInspectionRecordService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入annualInspectionRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.CustomerArchiveExcel;
+import org.springblade.transport.pojo.entity.CustomerArchive;
+import org.springblade.transport.pojo.vo.CustomerArchiveVO;
+import org.springblade.transport.pojo.vo.CustomerCreditScoreVO;
+import org.springblade.transport.service.ICustomerArchiveService;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * 客商档案 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "customer_archive")
+@RequestMapping("/customer-archive")
+@Tag(name = "客商档案", description = "客商档案")
+public class CustomerArchiveController extends BladeController {
+
+ private final ICustomerArchiveService customerArchiveService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入id")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.DriverExcel;
+import org.springblade.transport.pojo.entity.Driver;
+import org.springblade.transport.pojo.vo.DriverExpiryStatVO;
+import org.springblade.transport.pojo.vo.DriverVO;
+import org.springblade.transport.service.IDriverService;
+import org.springblade.transport.wrapper.DriverWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 司机管理 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "driver")
+@RequestMapping("/driver")
+@Tag(name = "司机管理", description = "司机管理")
+public class DriverController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IDriverService driverService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入driver")
+ public R
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.EtcRecordExcel;
+import org.springblade.transport.excel.EtcRecordImporter;
+import org.springblade.transport.pojo.entity.EtcRecord;
+import org.springblade.transport.pojo.vo.EtcRecordVO;
+import org.springblade.transport.service.IEtcRecordService;
+import org.springblade.transport.wrapper.EtcRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * ETC记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "etc_record")
+@RequestMapping("/etc-record")
+@Tag(name = "ETC记录", description = "ETC记录")
+public class EtcRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IEtcRecordService etcRecordService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入etcRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.InsuranceRecordExcel;
+import org.springblade.transport.excel.InsuranceRecordImporter;
+import org.springblade.transport.pojo.entity.InsuranceRecord;
+import org.springblade.transport.pojo.vo.InsuranceRecordVO;
+import org.springblade.transport.service.IInsuranceRecordService;
+import org.springblade.transport.wrapper.InsuranceRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 保险记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "insurance_record")
+@RequestMapping("/insurance-record")
+@Tag(name = "保险记录", description = "保险记录")
+public class InsuranceRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IInsuranceRecordService insuranceRecordService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入insuranceRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.MileageRecordExcel;
+import org.springblade.transport.excel.MileageRecordImporter;
+import org.springblade.transport.pojo.entity.MileageRecord;
+import org.springblade.transport.pojo.vo.MileageRecordVO;
+import org.springblade.transport.service.IMileageRecordService;
+import org.springblade.transport.wrapper.MileageRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 里程记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "mileage_record")
+@RequestMapping("/mileage-record")
+@Tag(name = "里程记录", description = "里程记录")
+public class MileageRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IMileageRecordService mileageRecordService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入mileageRecord")
+ public R
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.OilElectricRecordExcel;
+import org.springblade.transport.excel.OilElectricRecordImporter;
+import org.springblade.transport.pojo.entity.OilElectricRecord;
+import org.springblade.transport.pojo.vo.OilElectricRecordVO;
+import org.springblade.transport.service.IOilElectricRecordService;
+import org.springblade.transport.wrapper.OilElectricRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 油电记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "oil_electric_record")
+@RequestMapping("/oil-electric-record")
+@Tag(name = "油电记录", description = "油电记录")
+public class OilElectricRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IOilElectricRecordService oilElectricRecordService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入oilElectricRecord")
+ public R
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.OtherExpenseRecordExcel;
+import org.springblade.transport.excel.OtherExpenseRecordImporter;
+import org.springblade.transport.pojo.entity.OtherExpenseRecord;
+import org.springblade.transport.pojo.vo.OtherExpenseRecordVO;
+import org.springblade.transport.service.IOtherExpenseRecordService;
+import org.springblade.transport.wrapper.OtherExpenseRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 其他费用记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "other_expense_record")
+@RequestMapping("/other-expense-record")
+@Tag(name = "其他费用记录", description = "其他费用记录")
+public class OtherExpenseRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IOtherExpenseRecordService otherExpenseRecordService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入otherExpenseRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.TireReplacementRecordExcel;
+import org.springblade.transport.excel.TireReplacementRecordImporter;
+import org.springblade.transport.pojo.entity.TireReplacementRecord;
+import org.springblade.transport.pojo.vo.TireReplacementRecordVO;
+import org.springblade.transport.service.ITireReplacementRecordService;
+import org.springblade.transport.wrapper.TireReplacementRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 换胎记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "tire_replacement_record")
+@RequestMapping("/tire-replacement-record")
+@Tag(name = "换胎记录", description = "换胎记录")
+public class TireReplacementRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final ITireReplacementRecordService tireReplacementRecordService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入tireReplacementRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.TransportChangeRecordExcel;
+import org.springblade.transport.excel.TransportChangeRecordImporter;
+import org.springblade.transport.pojo.entity.TransportChangeRecord;
+import org.springblade.transport.pojo.vo.TransportChangeRecordVO;
+import org.springblade.transport.service.ITransportChangeRecordService;
+import org.springblade.transport.wrapper.TransportChangeRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 变更记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "transport_change_record")
+@RequestMapping("/transport-change-record")
+@Tag(name = "变更记录", description = "变更记录")
+public class TransportChangeRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final ITransportChangeRecordService transportChangeRecordService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入transportChangeRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.TransportShipExcel;
+import org.springblade.transport.pojo.entity.TransportShip;
+import org.springblade.transport.pojo.vo.TransportShipExpiryStatVO;
+import org.springblade.transport.pojo.vo.TransportShipVO;
+import org.springblade.transport.service.ITransportShipService;
+import org.springblade.transport.wrapper.TransportShipWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 船舶管理 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "transport_ship")
+@RequestMapping("/transport-ship")
+@Tag(name = "船舶管理", description = "船舶管理")
+public class TransportShipController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final ITransportShipService transportShipService;
+
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入transportShip")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.TransportVehicleExcel;
+import org.springblade.transport.pojo.entity.TransportVehicle;
+import org.springblade.transport.pojo.vo.TransportVehicleExpiryStatVO;
+import org.springblade.transport.pojo.vo.TransportVehicleVO;
+import org.springblade.transport.service.ITransportVehicleService;
+import org.springblade.transport.wrapper.TransportVehicleWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 车辆管理 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "transport_vehicle")
+@RequestMapping("/transport-vehicle")
+@Tag(name = "车辆管理", description = "车辆管理")
+public class TransportVehicleController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final ITransportVehicleService transportVehicleService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入transportVehicle")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.transport.excel.ViolationRecordExcel;
+import org.springblade.transport.excel.ViolationRecordImporter;
+import org.springblade.transport.pojo.entity.ViolationRecord;
+import org.springblade.transport.pojo.vo.ViolationRecordVO;
+import org.springblade.transport.service.IViolationRecordService;
+import org.springblade.transport.wrapper.ViolationRecordWrapper;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 违章记录 控制器
+ *
+ * @author Chill
+ */
+@RestController
+@AllArgsConstructor
+@PreAuth(menu = "violation_record")
+@RequestMapping("/violation-record")
+@Tag(name = "违章记录", description = "违章记录")
+public class ViolationRecordController extends BladeController {
+
+ private static final int DEFAULT_CURRENT = 1;
+ private static final int DEFAULT_SIZE = 10;
+ private static final int MAX_SIZE = 100;
+
+ private final IViolationRecordService violationRecordService;
+
+ /**
+ * 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @Operation(summary = "详情", description = "传入violationRecord")
+ public R
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 事故记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class AccidentRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("事故发生日期")
+ private LocalDate accidentDate;
+
+ @ExcelProperty("事故发生地点")
+ private String accidentLocation;
+
+ @ExcelProperty("事故性质")
+ private String accidentNature;
+
+ @ExcelProperty("事故责任")
+ private String accidentResponsibility;
+
+ @ExcelProperty("直接经济损失")
+ private BigDecimal directEconomicLoss;
+
+ @ExcelProperty("保险理赔金额")
+ private BigDecimal insuranceClaimAmount;
+
+ @ExcelProperty("事故原因及损坏情况")
+ private String accidentReasonDamage;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AccidentRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AccidentRecordImporter.java
new file mode 100644
index 0000000..b6aeeff
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AccidentRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IAccidentRecordService;
+
+import java.util.List;
+
+/**
+ * 事故记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class AccidentRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 年检记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(22)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class AnnualInspectionRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("检测评定日期")
+ private LocalDate inspectionAssessmentDate;
+
+ @ExcelProperty("车辆技术等级/船舶检验类型")
+ private String inspectionContent;
+
+ @ExcelProperty("有效期截止日")
+ private LocalDate validUntilDate;
+
+ @ExcelProperty("客车类型及等级")
+ private String passengerTypeLevel;
+
+ @ExcelProperty("检测评定单位")
+ private String inspectionUnit;
+
+ @ExcelProperty("费用")
+ private BigDecimal fee;
+
+ @ExcelProperty("评定(复核)单位")
+ private String assessmentUnit;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AnnualInspectionRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AnnualInspectionRecordImporter.java
new file mode 100644
index 0000000..9de4718
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/AnnualInspectionRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IAnnualInspectionRecordService;
+
+import java.util.List;
+
+/**
+ * 年检记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class AnnualInspectionRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * 客商档案 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(22)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class CustomerArchiveExcel implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelProperty("客商编号")
+ private String customerCode;
+
+ @ExcelProperty("客商简称")
+ private String shortName;
+
+ @ExcelProperty("客商名称")
+ private String fullName;
+
+ @ExcelProperty("客商类型")
+ private String customerType;
+
+ @ExcelProperty("客商性质")
+ private String customerNature;
+
+ @ExcelProperty("统一信用代码")
+ private String unifiedCreditCode;
+
+ @ExcelProperty("所属组织")
+ private String deptName;
+
+ @ExcelProperty("准入类型")
+ private String accessTypeName;
+
+ @ExcelProperty("审批状态")
+ private String approvalStatusName;
+
+ @ExcelProperty("当前节点")
+ private String currentNode;
+
+ @ExcelProperty("当前处理人")
+ private String currentProcessor;
+
+ @ExcelProperty("审核通过时间")
+ private LocalDateTime approvedTime;
+
+ @ExcelProperty("状态")
+ private String statusName;
+
+ @ExcelProperty("客户等级")
+ private String customerLevel;
+
+ @ExcelProperty("最大资金使用额度(万元)")
+ private BigDecimal maxCreditLimit;
+
+ @ExcelProperty("申请总资金使用额度(万元)")
+ private BigDecimal applyCreditLimit;
+
+ @ExcelProperty("联系电话")
+ private String contactPhone;
+
+ @ExcelProperty("法人/负责人")
+ private String legalPerson;
+
+ @ExcelProperty("创建时间")
+ private Date createTime;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/DriverExcel.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/DriverExcel.java
new file mode 100644
index 0000000..933c5fd
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/DriverExcel.java
@@ -0,0 +1,119 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDate;
+
+/**
+ * 司机管理 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class DriverExcel implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("司机姓名")
+ private String driverName;
+
+ @ExcelProperty("身份证号")
+ private String idCardNo;
+
+ @ExcelProperty("手机号")
+ private String mobile;
+
+ @ExcelProperty("性别")
+ private String gender;
+
+ @ExcelProperty("司机类型")
+ private String driverType;
+
+ @ExcelProperty("岗位")
+ private String posts;
+
+ @ExcelProperty("所属组织")
+ private String organizationName;
+
+ @ExcelProperty("状态")
+ private String statusName;
+
+ @ExcelProperty("准驾车型")
+ private String drivingType;
+
+ @ExcelProperty("驾驶证档案编号")
+ private String drivingLicenseNo;
+
+ @ExcelProperty("驾驶证有效期起")
+ private LocalDate drivingLicenseStartDate;
+
+ @ExcelProperty("驾驶证有效期止")
+ private LocalDate drivingLicenseEndDate;
+
+ @ExcelProperty("驾驶证长期有效")
+ private String drivingLicenseLongTermName;
+
+ @ExcelProperty("从业资格证类型")
+ private String qualificationType;
+
+ @ExcelProperty("资格证号")
+ private String qualificationNo;
+
+ @ExcelProperty("从业资格证有效期止")
+ private LocalDate qualificationEndDate;
+
+ @ExcelProperty("从业资格证长期有效")
+ private String qualificationLongTermName;
+
+ @ExcelProperty("紧急联系人")
+ private String emergencyContactName;
+
+ @ExcelProperty("紧急联系人手机号")
+ private String emergencyContactMobile;
+
+ @ExcelProperty("与联系人关系")
+ private String contactRelation;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordExcel.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordExcel.java
new file mode 100644
index 0000000..5d83d8e
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordExcel.java
@@ -0,0 +1,64 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * ETC记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(22)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class EtcRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车牌号")
+ private String vehicleNo;
+
+ @ExcelProperty("ETC卡号")
+ private String etcCardNo;
+
+ @ExcelProperty("入口时间")
+ private LocalDateTime entryTime;
+
+ @ExcelProperty("出口时间")
+ private LocalDateTime exitTime;
+
+ @ExcelProperty("入口站")
+ private String entryStation;
+
+ @ExcelProperty("出口站")
+ private String exitStation;
+
+ @ExcelProperty("交易金额")
+ private BigDecimal transactionAmount;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordImporter.java
new file mode 100644
index 0000000..398a389
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/EtcRecordImporter.java
@@ -0,0 +1,30 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IEtcRecordService;
+
+import java.util.List;
+
+/**
+ * ETC记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class EtcRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 保险记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class InsuranceRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("保险类型")
+ private String insuranceType;
+
+ @ExcelProperty("保单号")
+ private String policyNo;
+
+ @ExcelProperty("开始日期")
+ private LocalDate startDate;
+
+ @ExcelProperty("结束日期")
+ private LocalDate endDate;
+
+ @ExcelProperty("保额")
+ private BigDecimal insuredAmount;
+
+ @ExcelProperty("保费")
+ private BigDecimal premium;
+
+ @ExcelProperty("发票号")
+ private String invoiceNo;
+
+ @ExcelProperty("开票日期")
+ private LocalDate invoiceDate;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/InsuranceRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/InsuranceRecordImporter.java
new file mode 100644
index 0000000..4eee159
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/InsuranceRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IInsuranceRecordService;
+
+import java.util.List;
+
+/**
+ * 保险记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class InsuranceRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 里程记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(22)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class MileageRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车牌号")
+ private String vehicleNo;
+
+ @ExcelProperty("上月统计里程")
+ private BigDecimal previousMonthMileage;
+
+ @ExcelProperty("本月统计里程")
+ private BigDecimal currentMonthMileage;
+
+ @ExcelProperty("本月行驶里程")
+ private BigDecimal monthlyMileage;
+
+ @ExcelProperty("累计行驶里程")
+ private BigDecimal totalMileage;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordImporter.java
new file mode 100644
index 0000000..b701cc1
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/MileageRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IMileageRecordService;
+
+import java.util.List;
+
+/**
+ * 里程记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class MileageRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 油电记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(22)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class OilElectricRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("交易时间")
+ private LocalDateTime transactionTime;
+
+ @ExcelProperty("费用类型")
+ private String feeType;
+
+ @ExcelProperty("交易金额")
+ private BigDecimal transactionAmount;
+
+ @ExcelProperty("数量")
+ private BigDecimal quantity;
+
+ @ExcelProperty("单价")
+ private BigDecimal unitPrice;
+
+ @ExcelProperty("持卡人")
+ private String cardHolder;
+
+ @ExcelProperty("余额")
+ private BigDecimal balance;
+
+ @ExcelProperty("油品")
+ private String oilProduct;
+
+ @ExcelProperty("站点")
+ private String station;
+
+ @ExcelProperty("卡号")
+ private String cardNo;
+
+ @ExcelProperty("数据来源")
+ private String dataSource;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OilElectricRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OilElectricRecordImporter.java
new file mode 100644
index 0000000..a078178
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OilElectricRecordImporter.java
@@ -0,0 +1,30 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IOilElectricRecordService;
+
+import java.util.List;
+
+/**
+ * 油电记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class OilElectricRecordImporter implements ExcelImporter
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 其他费用记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(22)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class OtherExpenseRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("费用日期")
+ private LocalDate expenseDate;
+
+ @ExcelProperty("费用类型")
+ private String expenseType;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("金额")
+ private BigDecimal amount;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OtherExpenseRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OtherExpenseRecordImporter.java
new file mode 100644
index 0000000..639c817
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/OtherExpenseRecordImporter.java
@@ -0,0 +1,30 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IOtherExpenseRecordService;
+
+import java.util.List;
+
+/**
+ * 其他费用记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class OtherExpenseRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+
+/**
+ * 换胎记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class TireReplacementRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车牌号")
+ private String vehicleNo;
+
+ @ExcelProperty("处理人")
+ private String handler;
+
+ @ExcelProperty("换胎时间")
+ private LocalDate replacementTime;
+
+ @ExcelProperty("轮胎品牌")
+ private String tireBrand;
+
+ @ExcelProperty("换胎数量")
+ private Integer tireQuantity;
+
+ @ExcelProperty("换胎费用")
+ private BigDecimal replacementCost;
+
+ @ExcelProperty("换胎说明")
+ private String replacementDescription;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TireReplacementRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TireReplacementRecordImporter.java
new file mode 100644
index 0000000..6c2b67c
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TireReplacementRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.ITireReplacementRecordService;
+
+import java.util.List;
+
+/**
+ * 换胎记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class TireReplacementRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 变更记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(24)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class TransportChangeRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("变更事项")
+ private String changeItem;
+
+ @ExcelProperty("变更内容")
+ private String changeContent;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportChangeRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportChangeRecordImporter.java
new file mode 100644
index 0000000..c27ce29
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportChangeRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.ITransportChangeRecordService;
+
+import java.util.List;
+
+/**
+ * 变更记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class TransportChangeRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDate;
+
+/**
+ * 船舶管理 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class TransportShipExcel implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("船舶名")
+ private String shipName;
+
+ @ExcelProperty("船舶识别号")
+ private String shipIdentifierNo;
+
+ @ExcelProperty("所属组织")
+ private String organizationName;
+
+ @ExcelProperty("船检登记号")
+ private String shipInspectionNo;
+
+ @ExcelProperty("船舶类型")
+ private String shipType;
+
+ @ExcelProperty("国籍证有效期至")
+ private LocalDate nationalityCertEndDate;
+
+ @ExcelProperty("国籍证长期有效")
+ private String nationalityCertLongTermName;
+
+ @ExcelProperty("最低安全配员证书有效期至")
+ private LocalDate safeManningCertEndDate;
+
+ @ExcelProperty("最低安全配员证书长期有效")
+ private String safeManningCertLongTermName;
+
+ @ExcelProperty("营业运输证有效期至")
+ private LocalDate businessTransportCertEndDate;
+
+ @ExcelProperty("营业运输证长期有效")
+ private String businessTransportCertLongTermName;
+
+ @ExcelProperty("承租有效期至")
+ private LocalDate leaseEndDate;
+
+ @ExcelProperty("承租长期有效")
+ private String leaseLongTermName;
+
+ @ExcelProperty("状态")
+ private String statusName;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportVehicleExcel.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportVehicleExcel.java
new file mode 100644
index 0000000..2814475
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/TransportVehicleExcel.java
@@ -0,0 +1,137 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDate;
+
+/**
+ * 车辆管理 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class TransportVehicleExcel implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("所属组织")
+ private String organizationName;
+
+ @ExcelProperty("车牌号")
+ private String plateNo;
+
+ @ExcelProperty("车辆类型")
+ private String vehicleType;
+
+ @ExcelProperty("外廓长度(mm)")
+ private Integer outerLength;
+
+ @ExcelProperty("外廓宽度(mm)")
+ private Integer outerWidth;
+
+ @ExcelProperty("外廓高度(mm)")
+ private Integer outerHeight;
+
+ @ExcelProperty("核定载质量(KG)")
+ private Integer approvedLoadKg;
+
+ @ExcelProperty("准牵引总质量(KG)")
+ private Integer tractionMassKg;
+
+ @ExcelProperty("业务关系")
+ private String businessRelation;
+
+ @ExcelProperty("能源类型")
+ private String energyType;
+
+ @ExcelProperty("强制报废日期")
+ private LocalDate compulsoryScrapDate;
+
+ @ExcelProperty("强制报废长期有效")
+ private String compulsoryScrapLongTermName;
+
+ @ExcelProperty("海关备案号")
+ private String customsRecordNo;
+
+ @ExcelProperty("行驶证档案编号")
+ private String drivingLicenseNo;
+
+ @ExcelProperty("行驶证有效期起")
+ private LocalDate drivingLicenseStartDate;
+
+ @ExcelProperty("行驶证有效期止")
+ private LocalDate drivingLicenseEndDate;
+
+ @ExcelProperty("行驶证长期有效")
+ private String drivingLicenseLongTermName;
+
+ @ExcelProperty("道路运输证号")
+ private String roadTransportCertNo;
+
+ @ExcelProperty("道路运输证有效期起")
+ private LocalDate roadTransportCertStartDate;
+
+ @ExcelProperty("道路运输证有效期止")
+ private LocalDate roadTransportCertEndDate;
+
+ @ExcelProperty("道路运输证长期有效")
+ private String roadTransportCertLongTermName;
+
+ @ExcelProperty("道路运输年审有效期")
+ private LocalDate annualReviewEndDate;
+
+ @ExcelProperty("道路运输年审长期有效")
+ private String annualReviewLongTermName;
+
+ @ExcelProperty("机动车登记编号")
+ private String registrationNo;
+
+ @ExcelProperty("机动车登记日期")
+ private LocalDate registrationDate;
+
+ @ExcelProperty("状态")
+ private String statusName;
+
+ @ExcelProperty("备注")
+ private String remark;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordExcel.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordExcel.java
new file mode 100644
index 0000000..51fbc5a
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordExcel.java
@@ -0,0 +1,95 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import cn.idev.excel.annotation.ExcelIgnore;
+import cn.idev.excel.annotation.ExcelProperty;
+import cn.idev.excel.annotation.write.style.ColumnWidth;
+import cn.idev.excel.annotation.write.style.ContentRowHeight;
+import cn.idev.excel.annotation.write.style.HeadRowHeight;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 违章记录 Excel
+ *
+ * @author Chill
+ */
+@Data
+@ColumnWidth(18)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class ViolationRecordExcel implements Serializable {
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ @ExcelIgnore
+ private Long id;
+
+ @ExcelProperty("车船类型")
+ private String vehicleType;
+
+ @ExcelProperty("车牌号/船号")
+ private String vehicleNo;
+
+ @ExcelProperty("驾驶人")
+ private String driverName;
+
+ @ExcelProperty("类型/事项")
+ private String violationContent;
+
+ @ExcelProperty("时间")
+ private LocalDateTime violationTime;
+
+ @ExcelProperty("地址")
+ private String location;
+
+ @ExcelProperty("被罚金额")
+ private BigDecimal fineAmount;
+
+ @ExcelProperty("被扣分数")
+ private Integer deductPoints;
+
+ @ExcelProperty("被罚单位")
+ private String penaltyUnit;
+
+ @ExcelProperty("状态")
+ private String processStatus;
+
+ @ExcelProperty("过程描述")
+ private String processDescription;
+
+ @ExcelProperty("处理结果")
+ private String processResult;
+
+ @ExcelProperty("报错文案")
+ private String errorMessage;
+
+}
diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordImporter.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordImporter.java
new file mode 100644
index 0000000..986db7c
--- /dev/null
+++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/excel/ViolationRecordImporter.java
@@ -0,0 +1,49 @@
+/**
+ * BladeX Commercial License Agreement
+ * Copyright (c) 2018-2099, https://bladex.cn. All rights reserved.
+ *
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.excel;
+
+import lombok.RequiredArgsConstructor;
+import org.springblade.core.excel.support.ExcelImporter;
+import org.springblade.transport.service.IViolationRecordService;
+
+import java.util.List;
+
+/**
+ * 违章记录导入类
+ *
+ * @author Chill
+ */
+@RequiredArgsConstructor
+public class ViolationRecordImporter implements ExcelImporter
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.transport.pojo.entity.AccidentRecord;
+import org.springblade.transport.pojo.vo.AccidentRecordVO;
+
+import java.util.List;
+
+/**
+ * 事故记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface AccidentRecordMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.transport.pojo.entity.AnnualInspectionRecord;
+import org.springblade.transport.pojo.vo.AnnualInspectionRecordVO;
+
+import java.util.List;
+
+/**
+ * 年检记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface AnnualInspectionRecordMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.transport.pojo.entity.CustomerArchive;
+import org.springblade.transport.pojo.vo.CustomerArchiveVO;
+
+import java.util.List;
+
+/**
+ * 客商档案 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerArchiveMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.transport.pojo.entity.CustomerChangeRecord;
+
+/**
+ * 客商变更记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerChangeRecordMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.transport.pojo.entity.CustomerContact;
+
+/**
+ * 客商联系人 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerContactMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.transport.pojo.entity.CustomerCreditScoreDetail;
+
+/**
+ * 客商评分明细 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerCreditScoreDetailMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.transport.pojo.entity.CustomerCreditScore;
+
+/**
+ * 客商评分记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerCreditScoreMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.transport.pojo.entity.CustomerInvoiceInfo;
+
+/**
+ * 客商发票信息 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerInvoiceInfoMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.transport.pojo.entity.CustomerReceiptAccount;
+
+/**
+ * 客商收款信息 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface CustomerReceiptAccountMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.transport.pojo.entity.Driver;
+import org.springblade.transport.pojo.vo.DriverExpiryStatVO;
+import org.springblade.transport.pojo.vo.DriverVO;
+
+import java.util.List;
+
+/**
+ * 司机管理 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface DriverMapper extends BaseMapper
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.transport.pojo.entity.EtcRecord;
+import org.springblade.transport.pojo.vo.EtcRecordVO;
+
+import java.util.List;
+
+/**
+ * ETC记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface EtcRecordMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.transport.pojo.entity.InsuranceRecord;
+import org.springblade.transport.pojo.vo.InsuranceRecordVO;
+
+import java.util.List;
+
+/**
+ * 保险记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface InsuranceRecordMapper extends BaseMapper
+ * Use of this software is governed by the Commercial License Agreement
+ * obtained after purchasing a license from BladeX.
+ *
+ * 1. This software is for development use only under a valid license
+ * from BladeX.
+ *
+ * 2. Redistribution of this software's source code to any third party
+ * without a commercial license is strictly prohibited.
+ *
+ * 3. Licensees may copyright their own code but cannot use segments
+ * from this software for such purposes. Copyright of this software
+ * remains with BladeX.
+ *
+ * Using this software signifies agreement to this License, and the software
+ * must not be used for illegal purposes.
+ *
+ * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY. The author is
+ * not liable for any claims arising from secondary or illegal development.
+ *
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.transport.pojo.entity.MileageRecord;
+import org.springblade.transport.pojo.vo.MileageRecordVO;
+
+import java.util.List;
+
+/**
+ * 里程记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface MileageRecordMapper extends BaseMapper
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.transport.pojo.entity.OilElectricRecord;
+import org.springblade.transport.pojo.vo.OilElectricRecordVO;
+
+import java.util.List;
+
+/**
+ * 油电记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface OilElectricRecordMapper extends BaseMapper
+ * Author: Chill Zhuang (bladejava@qq.com)
+ */
+package org.springblade.transport.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.transport.pojo.entity.OtherExpenseRecord;
+import org.springblade.transport.pojo.vo.OtherExpenseRecordVO;
+
+import java.util.List;
+
+/**
+ * 其他费用记录 Mapper 接口
+ *
+ * @author Chill
+ */
+public interface OtherExpenseRecordMapper extends BaseMapper