| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -12,6 +12,7 @@ import com.hnac.gglm.bigmodel.interactive.service.IHznlmInvokeService; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.interactive.vo.AnswerVO; | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.interactive.vo.AnswerVO; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.manager.SessionRedisManager; | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.manager.SessionRedisManager; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.question.dto.QuestionDTO; | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.question.dto.QuestionDTO; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.utils.MultipartFileToBase64Converter; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.utils.RequestClientUtil; | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.utils.RequestClientUtil; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.websocket.constants.RedisKeyConstants; | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.websocket.constants.RedisKeyConstants; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.websocket.sessionManager.InteractiveSessionManager; | 
					 | 
					 | 
					 | 
					import com.hnac.gglm.bigmodel.websocket.sessionManager.InteractiveSessionManager; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -19,12 +20,15 @@ import com.hnac.hzims.common.constant.CommonConstant; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import com.hnac.hzinfo.exception.HzServiceException; | 
					 | 
					 | 
					 | 
					import com.hnac.hzinfo.exception.HzServiceException; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import lombok.RequiredArgsConstructor; | 
					 | 
					 | 
					 | 
					import lombok.RequiredArgsConstructor; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import lombok.extern.slf4j.Slf4j; | 
					 | 
					 | 
					 | 
					import lombok.extern.slf4j.Slf4j; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import org.springblade.core.oss.model.BladeFile; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import org.springblade.core.tool.api.R; | 
					 | 
					 | 
					 | 
					import org.springblade.core.tool.api.R; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import org.springblade.core.tool.jackson.JsonUtil; | 
					 | 
					 | 
					 | 
					import org.springblade.core.tool.jackson.JsonUtil; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import org.springblade.core.tool.utils.Func; | 
					 | 
					 | 
					 | 
					import org.springblade.core.tool.utils.Func; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import org.springblade.resource.feign.IOssClient; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import org.springframework.beans.factory.annotation.Value; | 
					 | 
					 | 
					 | 
					import org.springframework.beans.factory.annotation.Value; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import org.springframework.data.redis.core.RedisTemplate; | 
					 | 
					 | 
					 | 
					import org.springframework.data.redis.core.RedisTemplate; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import org.springframework.stereotype.Service; | 
					 | 
					 | 
					 | 
					import org.springframework.stereotype.Service; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import org.springframework.web.multipart.MultipartFile; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import java.util.HashMap; | 
					 | 
					 | 
					 | 
					import java.util.HashMap; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import java.util.List; | 
					 | 
					 | 
					 | 
					import java.util.List; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -46,6 +50,7 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    private final SessionRedisManager sessionRedisManager; | 
					 | 
					 | 
					 | 
					    private final SessionRedisManager sessionRedisManager; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    private final IAuthClient authClient; | 
					 | 
					 | 
					 | 
					    private final IAuthClient authClient; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    private final RedisTemplate redisTemplate; | 
					 | 
					 | 
					 | 
					    private final RedisTemplate redisTemplate; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    private final IOssClient ossClient; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    @Value("${gglm.url}") | 
					 | 
					 | 
					 | 
					    @Value("${gglm.url}") | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    private String gglmUrl; | 
					 | 
					 | 
					 | 
					    private String gglmUrl; | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -55,8 +60,8 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String,Object> params = new HashMap<>(); | 
					 | 
					 | 
					 | 
					        Map<String,Object> params = new HashMap<>(); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("chat_id",sessionId); | 
					 | 
					 | 
					 | 
					        params.put("chat_id",sessionId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("user_id", userId); | 
					 | 
					 | 
					 | 
					        params.put("user_id", userId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("query",question); | 
					 | 
					 | 
					 | 
					        params.put("query",question); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String, String[]> authDataIds = this.getAuthDataIds(userId); | 
					 | 
					 | 
					 | 
					        Map<String, String[]> authDataIds = this.getAuthDataIds(userId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.putAll(authDataIds); | 
					 | 
					 | 
					 | 
					        params.putAll(authDataIds); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantAsk(), params); | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantAsk(), params); | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -65,7 +70,9 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    @Override | 
					 | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    public void ask(QuestionDTO question) { | 
					 | 
					 | 
					 | 
					    public void ask(QuestionDTO question) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantAsk(), JSON.toJSONString(question)); | 
					 | 
					 | 
					 | 
					        Map<String, Object> params = Func.toMap(question); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantAsk(), params); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -74,8 +81,8 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String,Object> params = new HashMap<>(); | 
					 | 
					 | 
					 | 
					        Map<String,Object> params = new HashMap<>(); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("chat_id",sessionId); | 
					 | 
					 | 
					 | 
					        params.put("chat_id",sessionId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("user_id", userId); | 
					 | 
					 | 
					 | 
					        params.put("user_id", userId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("extra",extra); | 
					 | 
					 | 
					 | 
					        params.put("extra",extra); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String, String[]> authDataIds = this.getAuthDataIds(userId); | 
					 | 
					 | 
					 | 
					        Map<String, String[]> authDataIds = this.getAuthDataIds(userId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.putAll(authDataIds); | 
					 | 
					 | 
					 | 
					        params.putAll(authDataIds); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        log.info("调用大模型接口:{},传参为:{}",gglmUrl + bigModelInvokeApi.getAssistantSpecialAsk(),JSON.toJSONString(params)); | 
					 | 
					 | 
					 | 
					        log.info("调用大模型接口:{},传参为:{}",gglmUrl + bigModelInvokeApi.getAssistantSpecialAsk(),JSON.toJSONString(params)); | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -85,9 +92,9 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    @Override | 
					 | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    public void specialAsk(QuestionDTO question) { | 
					 | 
					 | 
					 | 
					    public void specialAsk(QuestionDTO question) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String, Object> questionMap = JsonUtil.toMap(JSON.toJSONString(question)); | 
					 | 
					 | 
					 | 
					        Map<String, Object> params = Func.toMap(question); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        questionMap.put("q_id", UUID.randomUUID()); | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantSpecialAsk(), JSON.toJSONString(questionMap)); | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantSpecialAsk(), params); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -97,8 +104,8 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("chat_id", sessionId); | 
					 | 
					 | 
					 | 
					        params.put("chat_id", sessionId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("user_id", userId); | 
					 | 
					 | 
					 | 
					        params.put("user_id", userId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("query", question); | 
					 | 
					 | 
					 | 
					        params.put("query", question); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("knowledge", knowledge); | 
					 | 
					 | 
					 | 
					        params.put("knowledge", knowledge); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID()); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String, String[]> authDataIds = this.getAuthDataIds(userId); | 
					 | 
					 | 
					 | 
					        Map<String, String[]> authDataIds = this.getAuthDataIds(userId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.putAll(authDataIds); | 
					 | 
					 | 
					 | 
					        params.putAll(authDataIds); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantKnowledgeAsk(), params); | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantKnowledgeAsk(), params); | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -107,17 +114,17 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    @Override | 
					 | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    public void knowledgeAsk(QuestionDTO question) { | 
					 | 
					 | 
					 | 
					    public void knowledgeAsk(QuestionDTO question) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String, Object> questionMap = JsonUtil.toMap(JSON.toJSONString(question)); | 
					 | 
					 | 
					 | 
					        Map<String, Object> params = Func.toMap(question); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        questionMap.put("q_id", UUID.randomUUID()); | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantKnowledgeAsk(), JSON.toJSONString(questionMap)); | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantKnowledgeAsk(), params); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    @Override | 
					 | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    public void analyseAsk(QuestionDTO question) { | 
					 | 
					 | 
					 | 
					    public void analyseAsk(QuestionDTO question) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String, Object> questionMap = JsonUtil.toMap(JSON.toJSONString(question)); | 
					 | 
					 | 
					 | 
					        Map<String, Object> params = Func.toMap(question); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        questionMap.put("q_id", UUID.randomUUID()); | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantAnalyseAsk(), JSON.toJSONString(questionMap)); | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantAnalyseAsk(), params); | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
					 | 
					 | 
					 | 
					        sessionRedisManager.addSessionId(question.getChatId()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -172,6 +179,7 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("user_id", CommonConstant.SYSTEM_USER.toString()); | 
					 | 
					 | 
					 | 
					        params.put("user_id", CommonConstant.SYSTEM_USER.toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("data", req.getAnalyseDTOS()); | 
					 | 
					 | 
					 | 
					        params.put("data", req.getAnalyseDTOS()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("query", ""); | 
					 | 
					 | 
					 | 
					        params.put("query", ""); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        params.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getSmartReportGeneratePower(), params); | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getSmartReportGeneratePower(), params); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        // 将sessionId存入redis,拿到数据之后输入月报中
 | 
					 | 
					 | 
					 | 
					        // 将sessionId存入redis,拿到数据之后输入月报中
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        JSONObject report = new JSONObject(); | 
					 | 
					 | 
					 | 
					        JSONObject report = new JSONObject(); | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -190,11 +198,31 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    @Override | 
					 | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    public void identifyForm(String formStructure, MultipartFile file, String content, String chatId, Long userId) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        // 若 file 不为空,则转换为base64编码格式字符串传给大模型
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        String pic = null; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        if(Func.isNotEmpty(file)) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            pic = MultipartFileToBase64Converter.convertToBase64(file); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        Map<String,Object> param = new HashMap<>(5); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        Map<String,Object> data = new HashMap<>(3); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        data.put("form",JSONObject.parseObject(formStructure)); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        data.put("pic", pic); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        data.put("content", content); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        param.put("chat_id", chatId); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        param.put("user_id", userId.toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        param.put("query", ""); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        param.put("data",data); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        param.put("q_id", UUID.randomUUID().toString()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getIdentifyForm(), param, new TypeReference<JSONObject>(){}); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    @Override | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    public List hotQuestions() { | 
					 | 
					 | 
					 | 
					    public List hotQuestions() { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        try { | 
					 | 
					 | 
					 | 
					        try { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            return RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getHotQuestion(), null, new TypeReference<List<String>>() { | 
					 | 
					 | 
					 | 
					            return RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getHotQuestion(), null, new TypeReference<List<String>>(){}); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            }); | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } catch (Exception e) { | 
					 | 
					 | 
					 | 
					        catch (Exception e) { | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            log.error("An error occurred",e); | 
					 | 
					 | 
					 | 
					            log.error("An error occurred",e); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            return Lists.newArrayList(); | 
					 | 
					 | 
					 | 
					            return Lists.newArrayList(); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -204,8 +232,7 @@ public class HznlmInvokeServiceImpl implements IHznlmInvokeService { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    public List<AnswerVO> getAnswerBySessionIds(String sessionIds) { | 
					 | 
					 | 
					 | 
					    public List<AnswerVO> getAnswerBySessionIds(String sessionIds) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Map<String,Object> params = new HashMap<>(); | 
					 | 
					 | 
					 | 
					        Map<String,Object> params = new HashMap<>(); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        params.put("chat_ids",Func.toStrList(",",sessionIds).toArray()); | 
					 | 
					 | 
					 | 
					        params.put("chat_ids",Func.toStrList(",",sessionIds).toArray()); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        return RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantStatus(), params, new TypeReference<List<AnswerVO>>() { | 
					 | 
					 | 
					 | 
					        return RequestClientUtil.postCall(gglmUrl + bigModelInvokeApi.getAssistantStatus(), params, new TypeReference<List<AnswerVO>>(){}); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        }); | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    private Map<String,String[]> getAuthDataIds(String userId) { | 
					 | 
					 | 
					 | 
					    private Map<String,String[]> getAuthDataIds(String userId) { | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |