Forráskód Böngészése

Merge branch 'dev' into pre

tanzh 3 éve
szülő
commit
bd21e0ed6f

+ 1 - 1
zhongzheng-admin/src/main/java/com/zhongzheng/controller/schedule/ScheduleController.java

@@ -215,7 +215,7 @@ public class ScheduleController extends BaseController {
      * 模考直播提醒
      * @return
      */
-    @ApiOperation("模考开始前60分钟提醒")
+    @ApiOperation("模考直播开始前60分钟提醒")
     @GetMapping("/mockLiveSend")
     public AjaxResult mockLiveSend(UserQueryBo bo) {
         iScheduleService.mockLiveSend(bo);

+ 20 - 5
zhongzheng-system/src/main/java/com/zhongzheng/modules/mock/service/impl/MockApplyServiceImpl.java

@@ -39,10 +39,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -496,13 +493,14 @@ public class MockApplyServiceImpl extends ServiceImpl<MockApplyMapper, MockApply
         //判断关联商品
         LambdaQueryWrapper<MockMajorSubjectGoods> lq = Wrappers.lambdaQuery();
         List<MockMajorSubjectGoods> mockMajorSubjectGoodsList = iMockMajorSubjectGoodsService.list(lq);
+        List<Long> crossList = new ArrayList<>();
         if (mockMajorSubjectGoodsList != null && mockMajorSubjectGoodsList.size() > 0) {
             List<Long> goodsIds = iOrderService.getUserGoods(bo.getUserId());
             List<Long> userGoods = new ArrayList<>();
             mockMajorSubjectGoodsList.stream().forEach(mockMajorSubjectGoods -> {
                 userGoods.add(mockMajorSubjectGoods.getGoodsId());
             });
-            List<Long> crossList = goodsIds.stream().filter(userGoods::contains).collect(Collectors.toList());
+            crossList = goodsIds.stream().filter(userGoods::contains).collect(Collectors.toList());
             if (crossList.size() == 0) {
                 return new ArrayList<>();
             }
@@ -539,6 +537,23 @@ public class MockApplyServiceImpl extends ServiceImpl<MockApplyMapper, MockApply
         resultList.addAll(offList);
         resultList.addAll(playBackList);
         resultList.addAll(overList);
+
+        List<Long> finalCrossList = crossList;
+        resultList.removeIf(result -> {
+            LambdaQueryWrapper<MockMajorSubjectGoods> lqw = Wrappers.lambdaQuery();
+            lqw.eq(MockMajorSubjectGoods::getMockMajorSubjectId, result.getMockMajorSubjectId());
+            List<MockMajorSubjectGoods> mockMajorSubjectGoods = iMockMajorSubjectGoodsService.list(lqw);
+            if (mockMajorSubjectGoods != null && mockMajorSubjectGoods.size() > 0) {
+                for (MockMajorSubjectGoods mockMajorSubjectGood : mockMajorSubjectGoods) {
+                    if (finalCrossList.contains(mockMajorSubjectGood.getGoodsId())) {
+                        return false;
+                    }else {
+                        return true;
+                    }
+                }
+            }
+            return false;
+        });
         return resultList;
     }
 

+ 2 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/schedule/service/impl/ScheduleServiceImpl.java

@@ -1421,7 +1421,7 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
         List<UserMockSubscribe> userMockSubscribeList = iUserMockSubscribeService.list(lqw);
         userMockSubscribeList.removeIf(userMockSubscribe -> {
             try {
-                return System.currentTimeMillis()/1000 + 3600 >= formatTime(userMockSubscribe.getApplySiteExamTime(), userMockSubscribe.getApplySiteStartTime());
+                return System.currentTimeMillis()/1000 + 3600 <= formatTime(userMockSubscribe.getApplySiteExamTime(), userMockSubscribe.getApplySiteStartTime());
             } catch (ParseException e) {
                 e.printStackTrace();
             }
@@ -1488,7 +1488,7 @@ public class ScheduleServiceImpl extends ServiceImpl<PolyvVideoMapper, PolyvVide
     @Override
     public void mockLiveSend(UserQueryBo bo) {
         List<UserMockSubscribeVo> userMockSubscribeVoList = iUserMockSubscribeService.listLiveSubscribe();
-        userMockSubscribeVoList.removeIf(userMockSubscribeVo -> System.currentTimeMillis()/1000 + 3600 >= userMockSubscribeVo.getLiveStartTime());
+        userMockSubscribeVoList.removeIf(userMockSubscribeVo -> System.currentTimeMillis()/1000 + 3600 <= userMockSubscribeVo.getLiveStartTime());
         for (UserMockSubscribeVo userMockSubscribeVo : userMockSubscribeVoList) {
             InformRemindVo informRemindVo = informRemindService.queryById(27L);
             if (userMockSubscribeVo.getLiveSubscribe() == 1) {

+ 30 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserMockSubscribeServiceImpl.java

@@ -325,6 +325,36 @@ public class UserMockSubscribeServiceImpl extends ServiceImpl<UserMockSubscribeM
             }
         }
 
+        //判断关联商品
+        LambdaQueryWrapper<MockMajorSubjectGoods> lq = Wrappers.lambdaQuery();
+        List<MockMajorSubjectGoods> mockMajorSubjectGoodsList = iMockMajorSubjectGoodsService.list(lq);
+        List<Long> crossList = new ArrayList<>();
+        if (mockMajorSubjectGoodsList != null && mockMajorSubjectGoodsList.size() > 0) {
+            List<Long> goodsIds = iOrderService.getUserGoods(bo.getUserId());
+            List<Long> userGoods = new ArrayList<>();
+            mockMajorSubjectGoodsList.stream().forEach(mockMajorSubjectGoods -> {
+                userGoods.add(mockMajorSubjectGoods.getGoodsId());
+            });
+            crossList = goodsIds.stream().filter(userGoods::contains).collect(Collectors.toList());
+        }
+        List<Long> finalCrossList = crossList;
+        userMockSubscribeVos.removeIf(userMockSubscribeVo -> {
+            LambdaQueryWrapper<MockMajorSubjectGoods> lqw = Wrappers.lambdaQuery();
+            lqw.eq(MockMajorSubjectGoods::getMockMajorSubjectId, userMockSubscribeVo.getMockMajorSubjectId());
+            List<MockMajorSubjectGoods> mockMajorSubjectGoods = iMockMajorSubjectGoodsService.list(lqw);
+            if (mockMajorSubjectGoods != null && mockMajorSubjectGoods.size() > 0) {
+                for (MockMajorSubjectGoods mockMajorSubjectGood : mockMajorSubjectGoods) {
+                    if (finalCrossList.contains(mockMajorSubjectGood.getGoodsId())) {
+                        return false;
+                    }else {
+                        return true;
+                    }
+                }
+            }
+            return false;
+        });
+
+
         Collections.sort(userMockSubscribeVos, new Comparator<UserMockSubscribeVo>() {
             @Override
             public int compare(UserMockSubscribeVo o1, UserMockSubscribeVo o2) {

+ 2 - 1
zhongzheng-system/src/main/resources/mapper/modules/mock/MockMajorSubjectTimeMapper.xml

@@ -91,7 +91,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             mms.exam_id,
             css.live_url,
             css.live_start_time,
-            css.live_end_time
+            css.live_end_time,
+            mmst.mock_major_subject_id
         FROM
             mock_major_subject_time mmst
         LEFT JOIN mock_major_subject mms ON mmst.mock_major_subject_id = mms.mock_major_subject_id