| 
														
															@@ -2,9 +2,9 @@ package com.fs.course.service.impl; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.math.BigDecimal; 
														 | 
														
														 | 
														
															 import java.math.BigDecimal; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.math.BigInteger; 
														 | 
														
														 | 
														
															 import java.math.BigInteger; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import java.util.Date; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import java.util.List; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import java.util.Map; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import java.sql.Wrapper; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import java.time.LocalDate; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import java.util.*; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.util.concurrent.atomic.AtomicInteger; 
														 | 
														
														 | 
														
															 import java.util.concurrent.atomic.AtomicInteger; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.util.function.Function; 
														 | 
														
														 | 
														
															 import java.util.function.Function; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import java.util.stream.Collectors; 
														 | 
														
														 | 
														
															 import java.util.stream.Collectors; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -25,6 +25,7 @@ import com.fs.course.vo.newfs.FsCourseAnalysisCountVO; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.fs.store.mapper.FsUserMapper; 
														 | 
														
														 | 
														
															 import com.fs.store.mapper.FsUserMapper; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.fs.store.param.h5.CourseAnalysisParam; 
														 | 
														
														 | 
														
															 import com.fs.store.param.h5.CourseAnalysisParam; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import lombok.AllArgsConstructor; 
														 | 
														
														 | 
														
															 import lombok.AllArgsConstructor; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import lombok.extern.slf4j.Slf4j; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.beans.BeanUtils; 
														 | 
														
														 | 
														
															 import org.springframework.beans.BeanUtils; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import org.springframework.stereotype.Service; 
														 | 
														
														 | 
														
															 import org.springframework.stereotype.Service; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import com.fs.course.mapper.FsUserCoursePeriodDaysMapper; 
														 | 
														
														 | 
														
															 import com.fs.course.mapper.FsUserCoursePeriodDaysMapper; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -39,12 +40,15 @@ import com.fs.course.service.IFsUserCoursePeriodDaysService; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  */ 
														 | 
														
														 | 
														
															  */ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 @Service 
														 | 
														
														 | 
														
															 @Service 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 @AllArgsConstructor 
														 | 
														
														 | 
														
															 @AllArgsConstructor 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+@Slf4j 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 public class FsUserCoursePeriodDaysServiceImpl extends ServiceImpl<FsUserCoursePeriodDaysMapper, FsUserCoursePeriodDays> implements IFsUserCoursePeriodDaysService { 
														 | 
														
														 | 
														
															 public class FsUserCoursePeriodDaysServiceImpl extends ServiceImpl<FsUserCoursePeriodDaysMapper, FsUserCoursePeriodDays> implements IFsUserCoursePeriodDaysService { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     private final FsUserCoursePeriodMapper fsUserCoursePeriodMapper; 
														 | 
														
														 | 
														
															     private final FsUserCoursePeriodMapper fsUserCoursePeriodMapper; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     private final FsUserMapper  fsUserMapper; 
														 | 
														
														 | 
														
															     private final FsUserMapper  fsUserMapper; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    private final FsUserCoursePeriodDaysMapper fsUserCoursePeriodDaysMapper; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     /** 
														 | 
														
														 | 
														
															     /** 
														 | 
													
												
											
												
													
														| 
														 | 
														
															      * 查询营期课程 
														 | 
														
														 | 
														
															      * 查询营期课程 
														 | 
													
												
											
												
													
														| 
														 | 
														
															      * 
														 | 
														
														 | 
														
															      * 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -218,6 +222,38 @@ public class FsUserCoursePeriodDaysServiceImpl extends ServiceImpl<FsUserCourseP 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         }).collect(Collectors.toList()); 
														 | 
														
														 | 
														
															         }).collect(Collectors.toList()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    @Override 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    public R periodCourseMove(Long id, Long targetId) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        List<Long> idList = new ArrayList<>(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        idList.add(id); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        idList.add(targetId); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        List<FsUserCoursePeriodDays> fsUserCoursePeriodDays = baseMapper.selectBatchIds(idList); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        if(fsUserCoursePeriodDays.isEmpty()){ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            return R.error(404, "当前数据或者移动的目标数据不存在"); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        List<FsUserCoursePeriodDays> list = new ArrayList<>(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        FsUserCoursePeriodDays periodDays = fsUserCoursePeriodDays.get(0); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        LocalDate currentDayDate = periodDays.getDayDate(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        Integer lesson = periodDays.getLesson(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        FsUserCoursePeriodDays periodDaysTarget = fsUserCoursePeriodDays.get(1); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        periodDays.setDayDate(periodDaysTarget.getDayDate()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        periodDays.setLesson(periodDaysTarget.getLesson()); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        list.add(periodDays); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        periodDaysTarget.setDayDate(currentDayDate); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        periodDaysTarget.setLesson(lesson); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        list.add(periodDaysTarget); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        try { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            fsUserCoursePeriodDaysMapper.batchUpdateCoursePeriodDays(list); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } catch (RuntimeException e) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            log.error("上移/下移异常,当前id:{}, 目标id:{}", id, targetId); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+            return R.error(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        return R.ok(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     private static FsCourseAnalysisCountVO getCourseAnalysisCountVO(FsUserCoursePeriodDays v, Map<Long, FsCourseAnalysisCountVO> courseMap, Map<Long, FsCourseAnalysisCountVO> redPacketMap, Map<Long, FsCourseAnalysisCountVO> answerMap) { 
														 | 
														
														 | 
														
															     private static FsCourseAnalysisCountVO getCourseAnalysisCountVO(FsUserCoursePeriodDays v, Map<Long, FsCourseAnalysisCountVO> courseMap, Map<Long, FsCourseAnalysisCountVO> redPacketMap, Map<Long, FsCourseAnalysisCountVO> answerMap) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         FsCourseAnalysisCountVO countVO = new FsCourseAnalysisCountVO(); 
														 | 
														
														 | 
														
															         FsCourseAnalysisCountVO countVO = new FsCourseAnalysisCountVO(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         FsCourseAnalysisCountVO courseVO = courseMap.getOrDefault(v.getVideoId(), countVO); 
														 | 
														
														 | 
														
															         FsCourseAnalysisCountVO courseVO = courseMap.getOrDefault(v.getVideoId(), countVO); 
														 |