dyh-service/dyh-base/src/main/java/cn/huge/base/common/utils/GuavaCacheUtils.java
@@ -13,13 +13,20 @@ */ public class GuavaCacheUtils { private static Cache<String, Object> cache = CacheBuilder.newBuilder() //5分钟后过期 //5秒后过期 .expireAfterWrite(5, TimeUnit.SECONDS) // .expireAfterWrite(10, TimeUnit.SECONDS) //最大10个缓存 .maximumSize(10) .build(); private static Cache<String, Object> cacheAi = CacheBuilder.newBuilder() //5秒后过期 .expireAfterWrite(5, TimeUnit.MINUTES) // .expireAfterWrite(10, TimeUnit.SECONDS) //最大10个缓存 .maximumSize(500) .build(); public static Object getCache(String k) { return cache.getIfPresent(k); @@ -29,6 +36,14 @@ cache.put(k, value); } public static Object getCacheAi(String k) { return cacheAi.getIfPresent(k); } public static void putCacheAi(String k, Object value) { cacheAi.put(k, value); } public static void main(String[] args) throws InterruptedException { putCache("15008985673","123456"); while (true){ dyh-service/dyh-disp/src/main/java/cn/huge/module/casedisp/dao/mapper/xml/DispNormCauseMapper.xml
@@ -168,6 +168,7 @@ FROM dyh_ct_unit where unit_type = 1 <include refid="getZzzxUnitByTerms-where-part"/> limit 1 </select> <!-- 根据条件获取对应综治中心组织-条件 --> <sql id="getZzzxUnitByTerms-where-part"> 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); } dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/wechat/CaseInfoWechatController.java
@@ -96,8 +96,9 @@ /** * 小程序端-纠纷登记-保存纠纷信息-正常案件 * @url {ctx}/api/v1/caseInfo/caseRegister * @url {ctx}/api/wechat/caseInfo/caseRegister * @param registerSaveDTO 实体对象 * @CurrentUser String userId, */ @PostMapping("/caseRegister") public Object caseRegister(@CurrentUser String userId, @RequestBody RegisterSaveDTO registerSaveDTO) { dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/dao/mapper/xml/CaseInfoMapper.xml
@@ -596,7 +596,7 @@ select COUNT(1) from dyh_case_info a LEFT JOIN dyh_case_info_unfold b on a.id = b.case_id dyh_case_info a LEFT JOIN dyh_case_info_unfold b on a.id = b.id <include refid="where-part-all"/> </select> <!-- 根据条件分页查询 --> @@ -604,7 +604,7 @@ SELECT <include refid="column-part-all"/> FROM dyh_case_info a LEFT JOIN dyh_case_info_unfold b on a.id = b.case_id dyh_case_info a LEFT JOIN dyh_case_info_unfold b on a.id = b.id <include refid="where-part-all"/> <if test="page.sort != null"> <foreach collection="page.sort" item="s" index="index" separator="," open="order by "> dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/domain/dto/CaseInfoWeChatDTO.java
@@ -60,6 +60,26 @@ private String caseClaim; /** * 实际调解部门编号(承办部门) */ private String mediateDeptId; /** * 实际调解部门名称(承办部门) */ private String mediateDeptName; /** * 调解结果 */ private String mediResult; /** * 调解结果名称 */ private String mediResultName; /** * 申请人集合 * */ private List<CasePersonWechatDTO> plaintiffList; dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java
@@ -553,8 +553,6 @@ caseInfo.setUpdateTime(nowDate); caseInfo.setVisitTime(nowDate); caseInfo.setDeleteStatus(BaseConsts.DELETE_STATUS_0); caseInfo.setProcess(1); caseInfo.setProcessName("来访登记"); //todo case_ref生成、case_title生成 caseInfoUnfold.setId(caseInfo.getId()); @@ -567,6 +565,10 @@ caseInfo.setPagents(pagents.toString()); caseInfo.setDefendants(defendants.toString()); caseInfo.setDagents(dagents.toString()); caseInfo.setInfoProcess(1); caseInfo.setInfoProcessName("待受理"); caseInfo.setProcess(1); caseInfo.setProcessName("来访登记"); this.saveOrUpdate(caseInfo); // 启动工作流-自动调度流程 @@ -702,6 +704,15 @@ BeanUtils.copyProperties(caseInfo, caseInfoWeChatDTO); caseInfoWeChatDTO.setProcessStatus(caseInfo.getInfoProcess()); caseInfoWeChatDTO.setProcessStatusName(caseInfo.getInfoProcessName()); //扩展信息 CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseInfo.getId()); if(ObjectUtils.isNotEmpty(caseInfoUnfold)){ caseInfoWeChatDTO.setMediResult(caseInfoUnfold.getMediResult()); caseInfoWeChatDTO.setMediResultName(caseInfoUnfold.getMediResultName()); caseInfoWeChatDTO.setMediateDeptId(caseInfoUnfold.getMediateDeptId()); caseInfoWeChatDTO.setMediateDeptName(caseInfoUnfold.getMediateDeptName()); } QueryWrapper<CasePerson> personWrapper1 = new QueryWrapper<>(); personWrapper1.eq("case_id", caseInfo.getId()); List<CasePerson> casePersonList1 = personService.list(personWrapper1); dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -36,6 +36,7 @@ import cn.huge.module.flow.service.FlowInfoService; import cn.huge.module.mediate.constant.*; import cn.huge.module.sys.constant.SyTimeEnum; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Maps; @@ -675,6 +676,7 @@ BeanUtils.copyProperties(caseInfo, dispCaseBaseDTO); dispCaseBaseDTO.setCaseId(caseInfo.getId()); CaseDispBaseDTO caseDispBaseDTO = dispClient.sysDisp(dispCaseBaseDTO); log.info(JSON.toJSONString(caseDispBaseDTO)); // 目前平台只能调度给组织 if (DispBaseConstsEnum.TARGET_TYPE_1.getIndex().equals(caseDispBaseDTO.getTargetType())) { // 目前平台只做镇街、村居级别的调度,