From 69fdc83bc60955eb528734b91a193452622abc8a Mon Sep 17 00:00:00 2001
From: zhouxiantao <1026371446@qq.com>
Date: Tue, 10 Sep 2024 16:55:23 +0800
Subject: [PATCH] 小程序,AI助手加入缓存机制

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/ai/controller/AiController.java |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/ai/controller/AiController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/ai/controller/AiController.java
index c15986c..fd515eb 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/ai/controller/AiController.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/ai/controller/AiController.java
@@ -1,6 +1,8 @@
 package cn.huge.module.ai.controller;
 
+import cn.huge.base.common.utils.GuavaCacheUtils;
 import cn.huge.base.common.utils.HttpClientUtils;
+import cn.huge.base.common.utils.ObjectUtils;
 import cn.huge.base.common.utils.ReturnSucUtils;
 import cn.huge.module.ai.controller.domain.dto.CaseInfoDetailDto;
 import cn.huge.module.ai.controller.domain.dto.CaseInfoDto;
@@ -32,6 +34,10 @@
 
     @PostMapping("/get-case")
     public Object getCase(@RequestBody AiRequestVo aiRequestVo) {
+        Object cacheAi = GuavaCacheUtils.getCacheAi("get-case"+aiRequestVo.getCaseId());
+        if(ObjectUtils.isNotEmpty(cacheAi)){
+            return ReturnSucUtils.getRepInfo("请求成功", cacheAi);
+        }
         List<CaseInfoDto> caseInfoDtoList = new ArrayList<>();
         Map<String, String> params = new HashMap<>();
         params.put("caseDes", aiRequestVo.getCaseDes());//案件描述
@@ -71,12 +77,17 @@
                 }
             }
         }
+        GuavaCacheUtils.putCacheAi("get-case"+aiRequestVo.getCaseId(), caseInfoDtoList);
         return ReturnSucUtils.getRepInfo("请求成功", caseInfoDtoList);
     }
 
 
     @PostMapping("/get-law")
     public Object getLaw(@RequestBody AiRequestVo aiRequestVo) {
+        Object cacheAi = GuavaCacheUtils.getCacheAi("get-law"+aiRequestVo.getCaseId());
+        if(ObjectUtils.isNotEmpty(cacheAi)){
+            return ReturnSucUtils.getRepInfo("请求成功", cacheAi);
+        }
         List<LawInfoDto> lawInfoDtos = new ArrayList<>();
         Map<String, String> params = new HashMap<>();
         params.put("caseDes", aiRequestVo.getCaseDes());//案件描述
@@ -97,6 +108,7 @@
                 lawInfoDtos.add(lawInfoDto);
             }
         }
+        GuavaCacheUtils.putCacheAi("get-law"+aiRequestVo.getCaseId(), lawInfoDtos);
         return ReturnSucUtils.getRepInfo("请求成功", lawInfoDtos);
     }
 
@@ -134,6 +146,10 @@
 
     @PostMapping("/get-clain-rise-case")
     public Object getClaimRiskByCase(@RequestBody AiRequestVo aiRequestVo) {
+        Object cacheAi = GuavaCacheUtils.getCacheAi("get-clain-rise-case"+aiRequestVo.getCaseId());
+        if(ObjectUtils.isNotEmpty(cacheAi)){
+            return ReturnSucUtils.getRepInfo("请求成功", cacheAi);
+        }
         CaseRiskDto caseRiskDto  = new CaseRiskDto();
         Map<String, String> params = new HashMap<>();
         params.put("caseDes", aiRequestVo.getCaseDes());//案件描述
@@ -147,6 +163,7 @@
             caseRiskDto.setIsClaimRisk(data.getIntValue("is_claim_risk"));
             caseRiskDto.setAnalysisProcess(data.getString("analysis_process"));
         }
+        GuavaCacheUtils.putCacheAi("get-clain-rise-case"+aiRequestVo.getCaseId(), caseRiskDto);
         return ReturnSucUtils.getRepInfo("请求成功", caseRiskDto);
     }
 

--
Gitblit v1.8.0