From 97ee2a09555c85119e14c6c886251b29d3a7055e Mon Sep 17 00:00:00 2001 From: LiJianZhao Date: Tue, 13 May 2025 10:59:00 +0800 Subject: [PATCH] dev --- pom.xml | 2 ++ .../server/common/api/output/OM1101.java | 2 ++ .../server/common/config/RedisConfig.java | 1 - .../clinic/server/common/util/CacheUtil.java | 19 +++++++++++++++---- .../social/SocialPersonController.java | 9 +++++++++ .../service/social/SocialUserService.java | 18 ++++++++++++++++-- 6 files changed, 44 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 5d8d38d..e25a443 100644 --- a/pom.xml +++ b/pom.xml @@ -81,6 +81,8 @@ + + org.projectlombok diff --git a/src/main/java/com/syjiaer/clinic/server/common/api/output/OM1101.java b/src/main/java/com/syjiaer/clinic/server/common/api/output/OM1101.java index 6719b71..9b9124e 100644 --- a/src/main/java/com/syjiaer/clinic/server/common/api/output/OM1101.java +++ b/src/main/java/com/syjiaer/clinic/server/common/api/output/OM1101.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.common.api.output; +import com.fasterxml.jackson.annotation.JsonFormat; import com.syjiaer.clinic.server.common.api.annotations.OMField; import lombok.Getter; import lombok.Setter; @@ -40,6 +41,7 @@ public class OM1101 extends BaseOutputModel{ @OMField(key="naty",name = "民族") private String naty; @OMField(key="brdy",name = "出生日期") + @JsonFormat(pattern = "yyyy-MM-dd") private LocalDate brdy; @OMField(key="age",name = "年龄") private BigDecimal age; diff --git a/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java b/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java index 9ac5859..af27130 100644 --- a/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java +++ b/src/main/java/com/syjiaer/clinic/server/common/config/RedisConfig.java @@ -16,7 +16,6 @@ public class RedisConfig { RedisTemplate template = new RedisTemplate<>(); template.setConnectionFactory(connectionFactory); template.setKeySerializer(new StringRedisSerializer()); - template.setValueSerializer(new GenericJackson2JsonRedisSerializer()); return template; } diff --git a/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java b/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java index 65a8819..dae3e97 100644 --- a/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java +++ b/src/main/java/com/syjiaer/clinic/server/common/util/CacheUtil.java @@ -1,5 +1,7 @@ package com.syjiaer.clinic.server.common.util; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Component; @@ -11,12 +13,21 @@ public class CacheUtil { @Autowired private RedisTemplate redisTemplate; - public void save(String key, Object value,Integer seconds) { - redisTemplate.opsForValue().set(key, value,seconds, TimeUnit.SECONDS); + public void set(String key, Object value, Integer seconds) { + + String s = JSONObject.toJSONString(value); + redisTemplate.opsForValue().set(key, s, seconds, TimeUnit.SECONDS); + } - public Object get(String key) { - return redisTemplate.opsForValue().get(key); + public T get(String key, Class clazz) { + Object object = redisTemplate.opsForValue().get(key); + T t = JSON.parseObject((String) object, clazz); + return t; + } + + public JSONObject get(String key) { + return JSONObject.parseObject(JSON.toJSONString(redisTemplate.opsForValue().get(key))); } public void delete(String key) { diff --git a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialPersonController.java b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialPersonController.java index db6e4fe..c97d89b 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialPersonController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialPersonController.java @@ -26,4 +26,13 @@ public class SocialPersonController extends BaseController { return success(socialUserService.getSocialInfo(im1101)); } + @RequestMapping("getSocialInfoByPsnNo") + public Result getSocialInfoByPsnNo() { + String psnNo = parmsUtil.getString("psnNo"); + if (psnNo == null) { + return error("没有带数据"); + } + return success(socialUserService.getSocialInfoFromCache(psnNo)); + } + } diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialUserService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialUserService.java index bbf0254..1deb884 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialUserService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialUserService.java @@ -3,12 +3,12 @@ package com.syjiaer.clinic.server.service.social; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.syjiaer.clinic.server.common.api.input.*; import com.syjiaer.clinic.server.common.api.output.OM1101; -import com.syjiaer.clinic.server.common.api.output.OM2001; import com.syjiaer.clinic.server.common.api.output.OM5267; import com.syjiaer.clinic.server.common.api.output.OM5283; import com.syjiaer.clinic.server.common.api.request.SocialRequest; import com.syjiaer.clinic.server.common.config.Config; import com.syjiaer.clinic.server.common.exception.MessageException; +import com.syjiaer.clinic.server.common.util.CacheUtil; import com.syjiaer.clinic.server.entity.social.SocialUser; import com.syjiaer.clinic.server.entity.social.vo.SocialPersonInfoVo; import com.syjiaer.clinic.server.mapper.social.SocialUserMapper; @@ -19,7 +19,6 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.time.LocalDate; -import java.time.LocalDateTime; /* * 医保用户 @@ -33,6 +32,8 @@ public class SocialUserService { private SocialUserMapper socialUserMapper; @Autowired private Config config; + @Autowired + private CacheUtil cacheUtil; /* * 获取医保信息 @@ -77,7 +78,20 @@ public class SocialUserService { socialPersonInfoVo.setBlockInfo(om5267); socialPersonInfoVo.setHospitalizationInfo(om5283); + //缓存入redis + String key = "social_user_info:" + socialPersonInfoVo.getBaseinfo().getPsn_no(); + cacheUtil.set(key, socialPersonInfoVo, 60 * 10); return socialPersonInfoVo; } + /** + * 读redis的信息 + * @param psnNo + * @return + */ + public SocialPersonInfoVo getSocialInfoFromCache(String psnNo) { + String key = "social_user_info:" + psnNo; + return cacheUtil.get(key, SocialPersonInfoVo.class); + } + }