From 2536f425d95d2e21aa1d61e942b52f10947c9300 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 13 十二月 2024 19:15:50 +0800
Subject: [PATCH] 修改

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TIndexMenuController.java |   44 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TIndexMenuController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TIndexMenuController.java
index 853a319..bb54fbd 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TIndexMenuController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TIndexMenuController.java
@@ -127,7 +127,7 @@
 
     @ApiOperation(value = "定制推荐-2政策3公示",tags = {"web-首页"})
     @PostMapping(value = "/consultation/list")
-    public R<List<TConsultation>> consultationlist(@RequestParam Integer type) {
+    public R<List<TConsultation>> consultationlist(@RequestParam Integer type,@RequestParam(required = false) Integer regionId) {
         //获取当前登录人id
         Long userId = tokenService.getLoginUser().getUserId();
         TUserChange one = changeService.lambdaQuery().eq(TUserChange::getUserId, userId).orderByDesc(TUserChange::getCreateTime).last("limit 1").one();
@@ -148,7 +148,16 @@
                 notices.sort(Comparator.comparing(TConsultation::getCreateTime).reversed());
             }else {
                 // 创建 LambdaQueryWrapper 并设置查询条件
-
+                TRegion region = regionService.getById(regionId);
+                List<TRegion> regions = regionService.list(Wrappers.lambdaQuery(TRegion.class)
+                        .eq(TRegion::getProvinceName, region.getProvinceName()));
+                List<Integer> regionIds = regions.stream().map(TRegion::getId).collect(Collectors.toList());
+                List<TConsultation> list1 = consultationService.lambdaQuery().eq(TConsultation::getClassificationId,type)
+                        .in(TConsultation::getRegionId,regionIds)
+                        .eq(TConsultation::getIsRecommend,1)
+                        .orderByDesc(TConsultation::getCreateTime,TConsultation::getClassificationSort).list();
+                notices.addAll(list1);
+                notices.sort(Comparator.comparing(TConsultation::getCreateTime).reversed());
             }
             List<TConsultation> list1 = consultationService.lambdaQuery().eq(TConsultation::getClassificationId,type).eq(TConsultation::getIsRecommend,1).last("ORDER BY RAND() LIMIT 16").list();
             notices.addAll(list1);
@@ -169,7 +178,15 @@
                 notices.sort(Comparator.comparing(TConsultation::getCreateTime).reversed());
             }else {
                 // 创建 LambdaQueryWrapper 并设置查询条件
-
+                TRegion region = regionService.getById(regionId);
+                List<TRegion> regions = regionService.list(Wrappers.lambdaQuery(TRegion.class)
+                        .eq(TRegion::getProvinceName, region.getProvinceName()));
+                List<Integer> regionIds = regions.stream().map(TRegion::getId).collect(Collectors.toList());
+                List<TConsultation> list1 = consultationService.lambdaQuery().eq(TConsultation::getClassificationId,type)
+                        .in(TConsultation::getRegionId,regionIds)
+                        .orderByDesc(TConsultation::getCreateTime,TConsultation::getClassificationSort).list();
+                notices.addAll(list1);
+                notices.sort(Comparator.comparing(TConsultation::getCreateTime).reversed());
             }
             List<TConsultation> list1 = consultationService.lambdaQuery().eq(TConsultation::getClassificationId,type).last("ORDER BY RAND() LIMIT 16").list();
             notices.addAll(list1);
@@ -214,13 +231,20 @@
     public R allert() {
         Long userId = tokenService.getLoginUser().getUserId();
         TAppUser byId = appUserService.getById(userId);
-        Object cacheObject = redisCache.getCacheObject("ALLERT:"+userId);
-
+        Long cacheObject = redisCache.getCacheObject("ALLERT:"+userId);
         if (cacheObject!=null && byId.getIsSetPreference() == 1){
-            return R.ok(cacheObject);
+            return R.ok(cacheObject == 1);
         }else {
             return R.ok(false);
         }
+    }
+
+    @ApiOperation(value = "取消顶部提示",tags = {"web-取消顶部提示"})
+    @PostMapping(value = "/cancelAllert")
+    public R cancelAllert() {
+        Long userId = tokenService.getLoginUser().getUserId();
+        redisCache.deleteObject("ALLERT:"+userId);
+        return R.ok();
     }
 
 
@@ -276,9 +300,7 @@
     @ApiOperation(value = "订单统计1",tags = {"后台-统计"})
     @PostMapping(value = "/order/count1")
     public R<List<Map<String,String>>> ordercount1(@RequestBody OrderCountQuery orderCountQuery) {
-        List<Map<String,String>> map = new ArrayList<>();
-            map = indexMenuService.count1(orderCountQuery.getStartDate(),orderCountQuery.getEndDate(),orderCountQuery.getPaymentStatus(),orderCountQuery.getDayType());
-
+        List<Map<String,String>> map = indexMenuService.count1(orderCountQuery.getStartDate(),orderCountQuery.getEndDate(),orderCountQuery.getPaymentStatus(),orderCountQuery.getDayType());
         return R.ok(map);
     }
 
@@ -308,6 +330,10 @@
             notices = new ArrayList<>(notices.subList(0, 16));
         }
         notices = notices.stream().distinct().collect(Collectors.toList());
+        Set<Long> cacheSet = redisCache.getCacheSet("INFORMATION:" + userId);
+        for (TInformation notice : notices) {
+            notice.setIsCollect(cacheSet.contains(notice.getId())?1:0);
+        }
         return R.ok(notices);
     }
 

--
Gitblit v1.7.1