|  | @@ -22,15 +22,15 @@ import com.fs.course.service.IFsCourseLinkService;
 | 
	
		
			
				|  |  |  import com.fs.fastGpt.domain.FastGptChatReplaceWords;
 | 
	
		
			
				|  |  |  import com.fs.fastGpt.mapper.FastGptChatReplaceWordsMapper;
 | 
	
		
			
				|  |  |  import com.fs.qw.domain.*;
 | 
	
		
			
				|  |  | -import com.fs.qw.mapper.QwExternalContactMapper;
 | 
	
		
			
				|  |  | -import com.fs.qw.mapper.QwGroupChatMapper;
 | 
	
		
			
				|  |  | -import com.fs.qw.mapper.QwGroupChatUserMapper;
 | 
	
		
			
				|  |  | -import com.fs.qw.mapper.QwUserMapper;
 | 
	
		
			
				|  |  | +import com.fs.qw.mapper.*;
 | 
	
		
			
				|  |  | +import com.fs.qw.param.QwExternalContactVOTime;
 | 
	
		
			
				|  |  | +import com.fs.qw.param.QwTagSearchParam;
 | 
	
		
			
				|  |  |  import com.fs.qw.service.IQwCompanyService;
 | 
	
		
			
				|  |  |  import com.fs.qw.service.impl.AsyncSopTestService;
 | 
	
		
			
				|  |  |  import com.fs.qw.vo.GroupUserExternalVo;
 | 
	
		
			
				|  |  |  import com.fs.qw.vo.QwSopCourseFinishTempSetting;
 | 
	
		
			
				|  |  |  import com.fs.qw.vo.QwSopRuleTimeVO;
 | 
	
		
			
				|  |  | +import com.fs.qw.vo.QwTagGroupListVO;
 | 
	
		
			
				|  |  |  import com.fs.sop.domain.QwSop;
 | 
	
		
			
				|  |  |  import com.fs.sop.domain.QwSopLogs;
 | 
	
		
			
				|  |  |  import com.fs.sop.domain.SopUserLogs;
 | 
	
	
		
			
				|  | @@ -128,6 +128,8 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private IFsCourseLinkService fsCourseLinkService;
 | 
	
		
			
				|  |  | +    @Autowired
 | 
	
		
			
				|  |  | +    private QwTagMapper qwTagMapper;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Autowired
 | 
	
		
			
				|  |  |      private QwExternalContactMapper qwExternalContactMapper;
 | 
	
	
		
			
				|  | @@ -173,7 +175,18 @@ public class SopUserLogsInfoServiceImpl implements ISopUserLogsInfoService {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public List<SopUserLogsInfo> selectSopUserLogsInfoList(SopUserLogsInfo info) {
 | 
	
		
			
				|  |  | -     return  sopUserLogsInfoMapper.selectSopUserLogsInfoList(info);
 | 
	
		
			
				|  |  | +        List<SopUserLogsInfo> list = sopUserLogsInfoMapper.selectSopUserLogsInfoList(info);
 | 
	
		
			
				|  |  | +        List<String> tagIds = list.stream().map(SopUserLogsInfo::getTagIds).filter(StringUtils::isNotEmpty).flatMap(e -> JSON.parseArray(e, String.class).stream()).collect(Collectors.toList());
 | 
	
		
			
				|  |  | +        if(!tagIds.isEmpty()){
 | 
	
		
			
				|  |  | +            List<QwTag> tagList = qwTagMapper.selectQwTagListByTagIds(tagIds);
 | 
	
		
			
				|  |  | +            Map<String, QwTag> tagMap = PubFun.listToMapByGroupObject(tagList, QwTag::getTagId);
 | 
	
		
			
				|  |  | +            list.forEach(e -> {
 | 
	
		
			
				|  |  | +                List<String> tagId = JSON.parseArray(e.getTagIds(), String.class);
 | 
	
		
			
				|  |  | +                List<String> tagNameList = tagId.stream().filter(tagMap::containsKey).map(t -> tagMap.get(t).getName()).filter(StringUtils::isNotEmpty).collect(Collectors.toList());
 | 
	
		
			
				|  |  | +                e.setTagIdsName(tagNameList);
 | 
	
		
			
				|  |  | +            });
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        return list;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      public List<SopUserLogsInfoVOE> selectSopUserLogsInfoListVO(SopUserLogsInfo info) {
 |