zouxuan před 8 měsíci
rodič
revize
efa88a4cc0

+ 12 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseGroupServiceImpl.java

@@ -114,6 +114,8 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
 
     @Autowired
     private UserPaymentCoreService userPaymentCoreService;
+    @Autowired
+    private StudentService studentService;
 
     @Override
     public CourseGroupDao getDao() {
@@ -432,7 +434,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
                         }
                     }
                     e.setStudentName(studentName.toString());
-                }else{
+                }else {
                     CourseScheduleStudentPayment studentPayment = map.get(e.getCourseGroupId()).get(0);
                     com.yonge.cooleshow.biz.dal.entity.SysUser sysUser = userMap.get(studentPayment.getUserId());
                     e.setStudentName(sysUser.getUsername());
@@ -476,6 +478,8 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
                 .list();
         if (CollectionUtils.isNotEmpty(studentPayments)) {
             List<Long> userIds = studentPayments.stream().map(CourseScheduleStudentPayment::getUserId).distinct().collect(Collectors.toList());
+            Map<Long, Student> studentMap = studentService.getMapByIds(userIds);
+            //获取用户声部列表
             Map<Long, com.yonge.cooleshow.biz.dal.entity.SysUser> mapByIds = sysUserService.getMapByIds(userIds);
             List<CourseGroupWrapper.CourseStudentVo> result = new ArrayList<>();
             userIds.forEach(e -> {
@@ -485,6 +489,13 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
                 vo.setStudentName(sysUser.getRealName());
                 vo.setUserName(sysUser.getUsername());
                 vo.setAvatar(sysUser.getAvatar());
+                vo.setSubjectId(studentMap.get(e).getSubjectId());
+                if(StringUtils.isNotEmpty(vo.getSubjectId())){
+                    List<Subject> subjectList = subjectService.findBySubjectByIdList(vo.getSubjectId());
+                    if(CollectionUtils.isNotEmpty(subjectList)){
+                        vo.setSubjectName(subjectList.stream().map(Subject::getName).collect(Collectors.joining(",")));
+                    }
+                }
                 vo.setImUserId(imGroupService.getImUserId(String.valueOf(e),
                         ClientEnum.STUDENT.name()));
                 result.add(vo);

+ 7 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java

@@ -2767,7 +2767,7 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
         List<CourseSchedule> courseSchedules = this.lambdaQuery().eq(CourseSchedule::getCourseGroupId, query.getCourseGroupId())
                 .eq(StringUtils.isNotEmpty(query.getStatus()), CourseSchedule::getStatus, query.getStatus())
                 .ne(query.getAttendanceStatus() != null,CourseSchedule::getStatus,"NOT_START")
-                .orderByDesc(CourseSchedule::getStartTime)
+                .orderByAsc(CourseSchedule::getStartTime)
                 .list();
         if (CollectionUtils.isEmpty(courseSchedules)) {
             return Lists.newArrayList();
@@ -2824,7 +2824,7 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
             courseVo.setEndTime(courseSchedule.getEndTime());
             courseVo.setStatus(courseSchedule.getStatus());
             courseVo.setCourseGoupId(courseGroup.getId());
-            courseVo.setCourseGroupName(courseGroup.getName());
+            courseVo.setCourseGroupName(courseGroup.getName() + "-第" + courseSchedule.getClassNum() + "课");
             courseVo.setSubjectId(courseGroup.getSubjectId());
             courseVo.setSubjectName(subject.getName());
             if(query.getAttendanceStatus() == null){
@@ -2844,6 +2844,8 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
                     }).collect(Collectors.toList()));
             courseVos.add(courseVo);
         }
+        //按照课程开始时间排序
+        courseVos.sort(Comparator.comparing(CourseScheduleWrapper.MyCourseVo::getStartTime));
         return courseVos;
     }
 
@@ -2883,7 +2885,7 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
         List<CourseSchedule> courseSchedules = this.lambdaQuery()
                 .in(CourseSchedule::getId, courseIds)
                 .ne(query.getAttendanceStatus() != null,CourseSchedule::getStatus,"NOT_START")
-                .orderByDesc(CourseSchedule::getStartTime).list();
+                .orderByAsc(CourseSchedule::getStartTime).list();
         if(StringUtils.isNotEmpty(query.getClassMonth())){
             courseSchedules = courseSchedules.stream().
                     filter(courseSchedule -> query.getClassMonth().equals(DateUtil.dateToString(courseSchedule.getStartTime(),"yyyy-MM"))).collect(Collectors.toList());
@@ -2929,6 +2931,8 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
             courseVo.setImUserId(imGroupService.getImUserId(String.valueOf(user.getId()),ClientEnum.TEACHER.name()));
             courseVos.add(courseVo);
         }
+        //按照课程时间排序
+        courseVos.sort(Comparator.comparing(CourseScheduleWrapper.StudentCourseList::getStartTime));
         return courseVos;
     }
 

+ 3 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SysMusicCompareRecordServiceImpl.java

@@ -562,6 +562,9 @@ public class SysMusicCompareRecordServiceImpl extends BaseServiceImpl<Long, SysM
 		}
 		teacherPracticeHome.setPracticeTimes(sysMusicCompareRecordDao.getStudentTrainTime(studentIds,summarySearch,groupBy));
 
+		//练习人数
+//		teacherPracticeHome.setPracticeCounts(sysMusicCompareRecordDao.getStudentTrainCount(studentIds,summarySearch,groupBy));
+
         return teacherPracticeHome;
     }
 

+ 6 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/course/CourseGroupWrapper.java

@@ -118,6 +118,12 @@ public class CourseGroupWrapper {
 
         @ApiModelProperty("IM用户ID")
         private String imUserId;
+
+        @ApiModelProperty(value = "声部编号")
+        private String subjectId;
+
+        @ApiModelProperty(value = "声部名称")
+        private String subjectName;
     }
 
 

+ 1 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/CourseGroupMapper.xml

@@ -72,6 +72,7 @@
         b.im_group_id_              as imGroupId,
         b.reason_ as                   reason,
         b.course_plan_ as coursePlan,
+        b.course_introduce_ as courseIntroduce,
         0  as existBuy
         from course_group as b
         left join subject as s on b.subject_id_ = s.id_

+ 1 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/VideoLessonGroupMapper.xml

@@ -602,7 +602,7 @@
 		LIMIT 5
 	</select>
 	<select id="countMusicAlbum" resultType="java.util.Map">
-		select c.course_group_id_ 'key',COUNT(distinct ms.id_) 'value' from
+		select c.course_group_id_,COUNT(distinct ms.id_) from
 			(
 				select crma.course_group_id_, music_album_id_ music_sheet_id_ from course_relation_music_album crma
 				where crma.relation_type_ = 'MUSIC' AND crma.course_group_id_ IN