From 9a8a4a431c61d22a334003b2e8a52571ea809920 Mon Sep 17 00:00:00 2001
From: heheng <475597332@qq.com>
Date: 星期一, 24 三月 2025 13:15:34 +0800
Subject: [PATCH] 增加业务类别

---
 assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssFaceRecognitionServiceImpl.java |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssFaceRecognitionServiceImpl.java b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssFaceRecognitionServiceImpl.java
index 66c5fd6..917922f 100644
--- a/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssFaceRecognitionServiceImpl.java
+++ b/assess-system/src/main/java/com/gkhy/assess/system/service/impl/AssFaceRecognitionServiceImpl.java
@@ -19,6 +19,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -69,7 +70,9 @@
     public Boolean checkAllFaceRecongnition(Long projectId){
         projectService.checkUserAllowed(projectId);
         List<AssPlanPerson> planPersonList=planPersonMapper.getAllPlanPersonByProjectId(projectId);
-        List<AssFaceRecognition> faceRecognitionList=baseMapper.getFaceRecognitionByProjectId(projectId);
+        Map<Long,AssPlanPerson> planPersonMap=planPersonList.stream().collect(Collectors.toMap(AssPlanPerson::getPersonId,a -> a,(k1,k2) -> k1));
+        planPersonList=planPersonMap.values().stream().collect(Collectors.toList());
+        List<AssFaceRecognition> faceRecognitionList=baseMapper.getSimpleFaceRecognitionByProjectId(projectId);
         Map<Long,AssFaceRecognition> map=faceRecognitionList.stream().collect(Collectors.toMap(AssFaceRecognition::getPersonId,a -> a,(k1,k2) -> k1));
         String message="";
         for(AssPlanPerson planPerson:planPersonList){
@@ -104,7 +107,21 @@
     public List<AssFaceRecognition> getFaceRecognitionByProjectId(Long projectId) {
         projectService.checkUserAllowed(projectId);
         List<AssFaceRecognition> faceRecognitionList= baseMapper.getFaceRecognitionByProjectId(projectId);
-        return faceRecognitionList;
+        //同一个人员担任多种角色
+        Map<Long,List<Integer>> playRoleMap=faceRecognitionList.stream().collect(Collectors.toMap(AssFaceRecognition::getPersonId,p -> {
+            List<Integer> pRoles=new ArrayList<>();
+            pRoles.add(p.getPlanPerson().getPlayRole());
+            return pRoles;
+        },(List<Integer>value1,List<Integer> value2) -> {
+                value1.addAll(value2);
+                return value1;
+        }));
+        Map<Long,AssFaceRecognition> faceMap=faceRecognitionList.stream().collect(Collectors.toMap(AssFaceRecognition::getPersonId,a -> a,(k1,k2) -> k2));
+        List<AssFaceRecognition> faceRecognitions=faceMap.values().stream().collect(Collectors.toList());
+        for(AssFaceRecognition faceRecognition:faceRecognitions){
+            faceRecognition.getPlanPerson().setPlayRoles(playRoleMap.get(faceRecognition.getPersonId()));
+        }
+        return faceRecognitions;
     }
 
 

--
Gitblit v1.9.2