From 17e0e58e4c6f1f436a50efa424853e1271fb2f96 Mon Sep 17 00:00:00 2001
From: “mitao” <“2763622819@qq.com”>
Date: 星期三, 04 二月 2026 15:43:54 +0800
Subject: [PATCH] fix(management):分公司车辆服务模式跟随分公司
---
ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java | 46 +++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 45 insertions(+), 1 deletions(-)
diff --git a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
index d452c95..1d19b6f 100644
--- a/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
+++ b/ManagementQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TCompanyController.java
@@ -77,6 +77,12 @@
@Autowired
private ITDriverServiceService tDriverServiceService;
+
+ @Autowired
+ private ITCarService tCarService;
+
+ @Autowired
+ private ITCarServiceService tCarServiceService;
@Value("${pushMinistryOfTransport}")
private boolean pushMinistryOfTransport;
@@ -799,7 +805,10 @@
// 4. 删除分公司直属司机的对应经营业务记录
deleteDriverServices(companyId, null, cancelledServiceTypes);
- // 5. 删除加盟商司机的对应经营业务记录
+ // 5. 删除分公司直属车辆的对应经营业务记录
+ deleteCarServices(companyId, null, cancelledServiceTypes);
+
+ // 6. 删除加盟商司机和车辆的对应经营业务记录
List<Integer> franchiseeIds = franchiseeList.stream()
.map(TCompany::getId)
.collect(Collectors.toList());
@@ -807,6 +816,7 @@
if (!franchiseeIds.isEmpty()) {
for (Integer franchiseeId : franchiseeIds) {
deleteDriverServices(null, franchiseeId, cancelledServiceTypes);
+ deleteCarServices(null, franchiseeId, cancelledServiceTypes);
}
}
}
@@ -900,4 +910,38 @@
}
}
+ /**
+ * 删除车辆的经营业务记录
+ * @param companyId 分公司ID(查询直属车辆时使用)
+ * @param franchiseeId 加盟商ID(查询加盟商车辆时使用)
+ * @param serviceTypes 要删除的业务类型列表
+ */
+ private void deleteCarServices(Integer companyId, Integer franchiseeId, List<Integer> serviceTypes) {
+ Wrapper<TCar> wrapper = new EntityWrapper<TCar>().ne("state", 2);
+
+ if (companyId != null) {
+ // 查询分公司直属车辆(companyId匹配且franchiseeId为空或0)
+ wrapper.eq("companyId", companyId)
+ .andNew()
+ .isNull("franchiseeId")
+ .or()
+ .eq("franchiseeId", 0);
+ } else if (franchiseeId != null) {
+ // 查询加盟商车辆
+ wrapper.eq("franchiseeId", franchiseeId);
+ } else {
+ return;
+ }
+
+ List<TCar> cars = tCarService.selectList(wrapper);
+
+ for (TCar car : cars) {
+ tCarServiceService.delete(
+ new EntityWrapper<TCarService>()
+ .eq("carId", car.getId())
+ .in("type", serviceTypes)
+ );
+ }
+ }
+
}
--
Gitblit v1.7.1