Преглед на файлове

自动派车系数记录设置人

donglang преди 1 ден
родител
ревизия
bfade5512f

+ 6 - 0
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/model/vo/KwfDriverConductRulesLogVO.java

@@ -59,6 +59,12 @@ public class KwfDriverConductRulesLogVO implements Serializable {
     @Schema(description = "创建人")
     private Long createUser;
 
+    /**
+     * 创建人
+     */
+    @Schema(description = "创建人姓名")
+    private String createUserName;
+
 
     private static KwfDriverConductRulesLogVO getInstance(){
         return new KwfDriverConductRulesLogVO();

+ 22 - 4
sckw-modules/sckw-fleet/src/main/java/com/sckw/fleet/service/KwfAutoDispatchService.java

@@ -23,17 +23,18 @@ import com.sckw.fleet.model.vo.KwfTruckDispatchCoefficientVO;
 import com.sckw.fleet.repository.KwfDriverConductRulesLogRepository;
 import com.sckw.fleet.repository.KwfDriverConductRulesRepository;
 import com.sckw.fleet.repository.KwfTruckDispatchCoefficientRepository;
+import com.sckw.system.api.RemoteSystemService;
+import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.dubbo.config.annotation.DubboReference;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -53,6 +54,9 @@ public class KwfAutoDispatchService {
 
     private final KwfTruckDispatchCoefficientRepository truckDispatchCoefficientRepository;
 
+    @DubboReference(version = "1.0.0", group = "design", check = false)
+    private RemoteSystemService remoteSystemService;
+
 
     /**
      * 查询自动派车系数
@@ -443,8 +447,22 @@ public class KwfAutoDispatchService {
             return PageDataResult.empty(request.getPageNum(), request.getPageSize());
         }
         List<KwfDriverConductRulesLogVO> rulesLogVOS = records.stream().map(KwfDriverConductRulesLogVO::toVO).collect(Collectors.toList());
+        // 提取所有createUser
+        Set<Long> userIds = rulesLogVOS.stream().map(KwfDriverConductRulesLogVO::getCreateUser)
+                .filter(Objects::nonNull).collect(Collectors.toSet());
+
+        // 批量查询用户信息
+        List<UserCacheResDto> userDtoList = remoteSystemService.queryUserCacheByIds(new ArrayList<>(userIds));
+        Map<Long, String> userMap = userDtoList.stream()
+                    .collect(Collectors.toMap(UserCacheResDto::getId, UserCacheResDto::getName, (v1, v2) -> v1));
+
+        List<KwfDriverConductRulesLogVO> result = rulesLogVOS.stream()
+                .peek(relu -> {
+                    relu.setCreateUserName(userMap.getOrDefault(relu.getCreateUser(), "未知用户"));
+                }).collect(Collectors.toList());
+
         log.info("查询司机行为规则日志成功!");
-        return PageDataResult.success(request.getPageNum(), request.getPageSize(), driverConductRulesLog.getTotal(), rulesLogVOS);
+        return PageDataResult.success(request.getPageNum(), request.getPageSize(), driverConductRulesLog.getTotal(), result);
     }
 
 }