From 656d6f8029f8bf9b2daa9dcc89101a879a70b860 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期三, 03 十二月 2025 23:10:05 +0800
Subject: [PATCH] feat:优先添加执行人
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTaskVehicleServiceImpl.java | 66 +++++++++++++++++++++++++++++++++
1 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTaskVehicleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTaskVehicleServiceImpl.java
index 9cbaeb1..feab794 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTaskVehicleServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysTaskVehicleServiceImpl.java
@@ -2,7 +2,9 @@
import java.util.ArrayList;
import java.util.Date;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -11,7 +13,9 @@
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.mapper.SysTaskVehicleMapper;
+import com.ruoyi.system.mapper.SysTaskMapper;
import com.ruoyi.system.mapper.VehicleInfoMapper;
+import com.ruoyi.system.domain.SysTask;
import com.ruoyi.system.domain.SysTaskVehicle;
import com.ruoyi.system.domain.VehicleInfo;
import com.ruoyi.system.service.ISysTaskVehicleService;
@@ -32,6 +36,9 @@
@Autowired
private VehicleInfoMapper vehicleInfoMapper;
+
+ @Autowired
+ private SysTaskMapper sysTaskMapper;
/**
* 鏌ヨ浠诲姟杞﹁締鍏宠仈
@@ -308,4 +315,63 @@
taskVehicle.setUpdateTime(DateUtils.getNowDate());
return sysTaskVehicleMapper.updateSysTaskVehicle(taskVehicle);
}
+
+ /**
+ * 鎵归噺鑾峰彇杞﹁締褰撳墠浠诲姟鐘舵��
+ *
+ * @param vehicleIds 杞﹁締ID鍒楄〃
+ * @return Map<杞﹁締ID, Map<"taskCode": 浠诲姟缂栧彿, "taskStatus": 浠诲姟鐘舵��>>
+ */
+ @Override
+ public Map<Long, Map<String, Object>> batchGetVehicleCurrentTaskStatus(List<Long> vehicleIds) {
+ Map<Long, Map<String, Object>> resultMap = new HashMap<>();
+
+ if (vehicleIds == null || vehicleIds.isEmpty()) {
+ return resultMap;
+ }
+
+ try {
+ // 瀵规瘡涓溅杈嗘煡璇㈠叾褰撳墠姝e湪杩涜鐨勪换鍔�
+ for (Long vehicleId : vehicleIds) {
+ if (vehicleId == null) {
+ continue;
+ }
+
+ // 鏌ヨ杞﹁締鐨勬椿璺冧换鍔★紙鏈畬鎴愩�佹湭鍙栨秷鐨勪换鍔★級
+ List<SysTask> activeTasks = sysTaskMapper.selectActiveTasksByVehicleId(vehicleId);
+
+ if (activeTasks != null && !activeTasks.isEmpty()) {
+ // 鍙栫涓�涓椿璺冧换鍔★紙鏈�鏂扮殑锛�
+ SysTask currentTask = activeTasks.get(0);
+
+ Map<String, Object> taskInfo = new HashMap<>();
+ taskInfo.put("taskCode", currentTask.getTaskCode());
+ taskInfo.put("taskStatus", currentTask.getTaskStatus());
+ taskInfo.put("taskId", currentTask.getTaskId());
+
+ resultMap.put(vehicleId, taskInfo);
+ } else {
+ // 娌℃湁娲昏穬浠诲姟
+ resultMap.put(vehicleId, null);
+ }
+ }
+ } catch (Exception e) {
+ logger.error("鎵归噺鏌ヨ杞﹁締浠诲姟鐘舵�佸け璐�", e);
+ }
+
+ return resultMap;
+ }
+
+ /**
+ * 鏇存柊浠诲姟杞﹁締鍏宠仈鐘舵�侊紙鏂版柟娉曪級
+ *
+ * @param id 鍏宠仈ID
+ * @param status 鏂扮姸鎬�
+ * @return 缁撴灉
+ */
+ @Override
+ @Transactional
+ public int updateSysTaskVehicleStatus(Long id, String status) {
+ return updateTaskVehicleStatus(id, status);
+ }
}
--
Gitblit v1.9.1