From 9486766c806fe1d9e082b2fd02ea1cc558f1b443 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 08 五月 2025 09:21:57 +0800
Subject: [PATCH] bug修改

---
 cloud-server-activity/src/main/java/com/dsh/activity/service/impl/BenefitsVideosServiceImpl.java |   86 ++++++++++++++++++++++++------------------
 1 files changed, 49 insertions(+), 37 deletions(-)

diff --git a/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/BenefitsVideosServiceImpl.java b/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/BenefitsVideosServiceImpl.java
index f80ffc2..3d22fa8 100644
--- a/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/BenefitsVideosServiceImpl.java
+++ b/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/BenefitsVideosServiceImpl.java
@@ -51,17 +51,13 @@
 
     @Resource
     private UserIntegralChangesClient userIntegralChangesClient;
-    @Autowired
-    private BenefitsVideoClassificationMapper benefitsVideoClassificationMapper;
-    @Autowired
+    @Resource
     private BenefitsVideosMapper benefitsVideosMapper;
-
-
-
 
 
     /**
      * 获取福利视频分类列表数据
+     *
      * @param uid
      * @param search
      * @return
@@ -70,43 +66,52 @@
     @Override
     public List<BenefitsVideoClassificationListVo> queryClassificationBenefitsVideosList(Integer uid, Integer position, String search) throws Exception {
         QueryWrapper<BenefitsVideoClassification> wrapper = new QueryWrapper<BenefitsVideoClassification>().eq("position", position);
-        if(ToolUtil.isNotEmpty(search)){
+        if (ToolUtil.isNotEmpty(search)) {
             wrapper.like("name", search);
         }
-        List<BenefitsVideoClassification> list = benefitsVideoClassificationService.list(wrapper.orderByAsc("sort"));
-        List<UserBenefitsVideos> userBenefitsVideos = userBenefitsVideosService.list(new QueryWrapper<UserBenefitsVideos>().eq("appUserId", uid));
+
+        List<BenefitsVideoClassification> list = benefitsVideoClassificationService.list(wrapper.eq("state", 1)
+                .orderByDesc("sort"));
+        List<UserBenefitsVideos> userBenefitsVideos = userBenefitsVideosService.list(new QueryWrapper<UserBenefitsVideos>()
+                .eq("appUserId", uid));
         List<Integer> collect = userBenefitsVideos.stream().map(UserBenefitsVideos::getBenefitsVideosId).collect(Collectors.toList());
 
         List<BenefitsVideoClassificationListVo> listVos = new ArrayList<>();
         for (BenefitsVideoClassification benefitsVideoClassification : list) {
-            BenefitsVideoClassificationListVo benefitsVideoClassificationListVo = new BenefitsVideoClassificationListVo();
-            benefitsVideoClassificationListVo.setId(benefitsVideoClassification.getId());
-            benefitsVideoClassificationListVo.setName(benefitsVideoClassification.getName());
-            QueryWrapper<BenefitsVideos> benefitsVideosQueryWrapper = new QueryWrapper<BenefitsVideos>().eq("state", 1);
-            if(collect.size() > 0){
-                benefitsVideosQueryWrapper.notIn("id", collect);
+            if (benefitsVideoClassification.getState() == 1) {
+                BenefitsVideoClassificationListVo benefitsVideoClassificationListVo = new BenefitsVideoClassificationListVo();
+                benefitsVideoClassificationListVo.setId(benefitsVideoClassification.getId());
+                benefitsVideoClassificationListVo.setName(benefitsVideoClassification.getName());
+                QueryWrapper<BenefitsVideos> benefitsVideosQueryWrapper = new QueryWrapper<BenefitsVideos>()
+                        .eq("state", 1).eq("benefitsVideoClassificationId", benefitsVideoClassification.getId());
+                if (collect.size() > 0) {
+                    benefitsVideosQueryWrapper.notIn("id", collect);
+                }
+                List<BenefitsVideos> list1 = this.list(benefitsVideosQueryWrapper.orderByAsc("insertTime").last(" limit 0, 4"));
+                List<BenefitsVideosListVo> lists = new ArrayList<>();
+                for (BenefitsVideos benefitsVideos : list1) {
+                    if (benefitsVideos.getState() == 1) {
+                        Integer courseId = benefitsVideos.getCourseId();
+                        Course course = courseClient.queryCourseById(courseId);
+                        BenefitsVideosListVo benefitsVideosListVo = new BenefitsVideosListVo();
+                        benefitsVideosListVo.setId(benefitsVideos.getId());
+                        benefitsVideosListVo.setName(course.getName());
+                        benefitsVideosListVo.setCover(course.getCoverDrawing());
+                        benefitsVideosListVo.setIntroduce(course.getIntroduce());
+                        lists.add(benefitsVideosListVo);
+                    }
+                }
+                benefitsVideoClassificationListVo.setList(lists);
+                listVos.add(benefitsVideoClassificationListVo);
             }
-            List<BenefitsVideos> list1 = this.list(benefitsVideosQueryWrapper.orderByDesc("insertTime").last(" limit 0, 4"));
-            List<BenefitsVideosListVo> lists = new ArrayList<>();
-            for (BenefitsVideos benefitsVideos : list1) {
-                Integer courseId = benefitsVideos.getCourseId();
-                Course course = courseClient.queryCourseById(courseId);
-                BenefitsVideosListVo benefitsVideosListVo = new BenefitsVideosListVo();
-                benefitsVideosListVo.setId(benefitsVideos.getId());
-                benefitsVideosListVo.setName(course.getName());
-                benefitsVideosListVo.setCover(course.getCoverDrawing());
-                benefitsVideosListVo.setIntroduce(course.getIntroduce());
-                lists.add(benefitsVideosListVo);
-            }
-            benefitsVideoClassificationListVo.setList(lists);
-            listVos.add(benefitsVideoClassificationListVo);
         }
         return listVos;
     }
+
     @Override
     public List<BenefitsVideoClassificationListVo> queryClassificationBenefitsVideosListOne(Integer uid, Integer position, String search) throws Exception {
         QueryWrapper<BenefitsVideoClassification> wrapper = new QueryWrapper<BenefitsVideoClassification>().eq("position", position);
-        if(ToolUtil.isNotEmpty(search)){
+        if (ToolUtil.isNotEmpty(search)) {
             wrapper.like("name", search);
         }
         List<BenefitsVideoClassification> list = benefitsVideoClassificationService.list(wrapper.orderByAsc("sort"));
@@ -119,7 +124,7 @@
             benefitsVideoClassificationListVo.setId(benefitsVideoClassification.getId());
             benefitsVideoClassificationListVo.setName(benefitsVideoClassification.getName());
             QueryWrapper<BenefitsVideos> benefitsVideosQueryWrapper = new QueryWrapper<BenefitsVideos>().eq("state", 1);
-            if(collect.size() > 0){
+            if (collect.size() > 0) {
                 benefitsVideosQueryWrapper.notIn("id", collect);
             }
             List<BenefitsVideos> list1 = this.list(benefitsVideosQueryWrapper.orderByDesc("insertTime").last(" limit 0, 4"));
@@ -145,11 +150,16 @@
     public List<BenefitsVideosListVo> queryBenefitsVideosList(Integer uid, Integer classificationId, String search, Integer pageSize, Integer pageNo) throws Exception {
         pageSize = (pageSize - 1) * pageNo;
         List<Integer> ids = null;
-        if(ToolUtil.isNotEmpty(search)){
+
+        if (ToolUtil.isNotEmpty(search)) {
             List<Course> courses = courseClient.queryCourseByName(search);
             ids = courses.stream().map(Course::getId).collect(Collectors.toList());
         }
-        List<Map<String, Object>> benefitsVideos = this.baseMapper.queryBenefitsVideosList(uid, classificationId, ids, pageSize, pageNo);
+        int offset = (pageNo - 1) * pageSize;
+        int limit = pageSize;
+
+
+        List<Map<String, Object>> benefitsVideos = this.baseMapper.queryBenefitsVideosList(uid, classificationId, ids, offset, limit);
         List<BenefitsVideosListVo> lists = new ArrayList<>();
         for (Map<String, Object> benefitsVideo : benefitsVideos) {
             Integer id = Integer.valueOf(benefitsVideo.get("id").toString());
@@ -172,6 +182,7 @@
 
     /**
      * 获取福利视频详情
+     *
      * @param uid
      * @param id
      * @return
@@ -198,6 +209,7 @@
 
     /**
      * 视频观看完毕后获得奖励
+     *
      * @param uid
      * @param id
      * @throws Exception
@@ -206,7 +218,7 @@
     public void receiveAward(Integer uid, Integer id) throws Exception {
         BenefitsVideos benefitsVideos = this.getById(id);
         UserBenefitsVideos one = userBenefitsVideosService.getOne(new QueryWrapper<UserBenefitsVideos>().eq("appUserId", uid).eq("benefitsVideosId", id));
-        if(null == one){
+        if (null == one) {
             one = new UserBenefitsVideos();
             one.setAppUserId(uid);
             one.setBenefitsVideoClassificationId(benefitsVideos.getBenefitsVideoClassificationId());
@@ -225,13 +237,13 @@
     }
 
     @Override
-    public List<BenefitsVideos> getBenefitVideoById(Integer id) {
-        return benefitsVideosMapper.getBenefitVideoById(id);
+    public List<BenefitsVideos> getBenefitVideoById(Integer id, Integer state) {
+        return benefitsVideosMapper.getBenefitVideoById(id, state);
     }
 
     @Override
     public List<BenefitsVideos> getBybIdAndcId(Integer benefitsVideoClassificationId, Integer courseId) {
-        return  benefitsVideosMapper.getBybIdAndcId(benefitsVideoClassificationId,courseId);
+        return benefitsVideosMapper.getBybIdAndcId(benefitsVideoClassificationId, courseId);
     }
 
 

--
Gitblit v1.7.1