diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java index e93f3d5..92540ec 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-application/schisandra-cloud-storage-share-application-controller/src/main/java/com/schisandra/share/application/controller/SchisandraShareDetailController.java @@ -13,12 +13,10 @@ import com.schisandra.share.common.utils.CaffeineUtil; import com.schisandra.share.domain.bo.SchisandraShareDetailBO; import com.schisandra.share.domain.bo.SchisandraUserLikesDetailBO; import com.schisandra.share.domain.service.SchisandraShareDetailDomainService; -import feign.form.FormData; import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.client.producer.SendCallback; import org.apache.rocketmq.client.producer.SendResult; import org.apache.rocketmq.spring.core.RocketMQTemplate; -import org.springframework.cache.annotation.Cacheable; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -49,6 +47,13 @@ public class SchisandraShareDetailController { @Resource private RocketMQTemplate rocketMQTemplate; + @GetMapping("getRecentShare") + public Result getRecentShare(String userId) { + String key = redisUtil.buildKey(SHARE_USER_RECENT, userId, "*"); + List> list = redisUtil.getDataFromShare(key); + return Result.ok(list); + } + /** * @description: 点赞 @@ -161,11 +166,11 @@ public class SchisandraShareDetailController { } } ); - String value="您最近创建了一个分享:"+schisandraShareDetailDTO.getTitle(); + String value = "您最近创建了一个分享:" + schisandraShareDetailDTO.getTitle(); Date date = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String formattedDate = dateFormat.format(date); - String key = redisUtil.buildKey(SHARE_USER_RECENT, schisandraShareDetailDTO.getUserId(),formattedDate); + String key = redisUtil.buildKey(SHARE_USER_RECENT, schisandraShareDetailDTO.getUserId(), formattedDate); redisUtil.setNx(key, value, 30L, TimeUnit.DAYS); return Result.ok(); } @@ -178,9 +183,9 @@ public class SchisandraShareDetailController { * 查询分享详细信息 */ @GetMapping("get_detail") - public Result selectDetail(@RequestParam("Id") String Id,String userId) { + public Result selectDetail(@RequestParam("Id") String Id, String userId) { try { - SchisandraShareDetailBO resultList = schisandraShareDetailDomainService.getDetailsById(Id,userId); + SchisandraShareDetailBO resultList = schisandraShareDetailDomainService.getDetailsById(Id, userId); HashMap map = new HashMap<>(); map.put("Id", Id); map.put("Views", true); @@ -213,11 +218,11 @@ public class SchisandraShareDetailController { * @date: 2024/7/15 下午7:09 */ @PostMapping("list") - public Result> selectCircleList(@RequestParam("circleId") String circleId,String userId) { + public Result> selectCircleList(@RequestParam("circleId") String circleId, String userId) { List result = (List) caffeineUtil .caffeineBuild().getIfPresent("list" + circleId); if (result == null) { - result = schisandraShareDetailDomainService.list(circleId,userId); + result = schisandraShareDetailDomainService.list(circleId, userId); caffeineUtil.caffeineBuild().put("list" + circleId, result); return Result.ok(SchisandraShareDetailDTOConverter.INSTANCE.convertBOToDTOList(result)); } @@ -337,11 +342,11 @@ public class SchisandraShareDetailController { } } ); - String value="您最近删除了一个分享:"+schisandraShareDetailDTO.getTitle(); + String value = "您最近删除了一个分享:" + schisandraShareDetailDTO.getTitle(); Date date = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String formattedDate = dateFormat.format(date); - String key = redisUtil.buildKey(SHARE_USER_RECENT, schisandraShareDetailDTO.getUserId(),formattedDate); + String key = redisUtil.buildKey(SHARE_USER_RECENT, schisandraShareDetailDTO.getUserId(), formattedDate); redisUtil.setNx(key, value, 30L, TimeUnit.DAYS); return Result.ok(); } @@ -355,8 +360,8 @@ public class SchisandraShareDetailController { @GetMapping("returnAllDetails") public Result> returnAllDetails(@RequestParam("circleId") Long circleId) { - List shareDetailBOList= schisandraShareDetailDomainService.queryAllDetails(); - List schisandraShareDetailDTOS=SchisandraShareDetailDTOConverter.INSTANCE.convertBOToDTOList(shareDetailBOList); + List shareDetailBOList = schisandraShareDetailDomainService.queryAllDetails(); + List schisandraShareDetailDTOS = SchisandraShareDetailDTOConverter.INSTANCE.convertBOToDTOList(shareDetailBOList); return Result.ok(schisandraShareDetailDTOS); } diff --git a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-common/src/main/java/com/schisandra/share/common/redis/RedisUtil.java b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-common/src/main/java/com/schisandra/share/common/redis/RedisUtil.java index 2d6baee..e242bcf 100644 --- a/schisandra-cloud-storage-share/schisandra-cloud-storage-share-common/src/main/java/com/schisandra/share/common/redis/RedisUtil.java +++ b/schisandra-cloud-storage-share/schisandra-cloud-storage-share-common/src/main/java/com/schisandra/share/common/redis/RedisUtil.java @@ -53,6 +53,17 @@ public class RedisUtil { }); return keysList; } + public List> getDataFromShare(String directory) { + Setkeys=redisTemplate.keys(directory); + List> keysList=new ArrayList<>(); + keys.forEach(key->{ + HashMap map=new HashMap<>(); + String value= (String) redisTemplate.opsForValue().get(key); + map.put(key,value); + keysList.add(map); + }); + return keysList; + }