Browse Source

1、修复教师端不展示报名结束状态中的课程

Joburgess 5 năm trước cách đây
mục cha
commit
9ceea837a3

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/SuperClassGroupDtio.java

@@ -0,0 +1,10 @@
+package com.ym.mec.biz.dal.dto;
+
+import com.ym.mec.biz.dal.entity.ClassGroup;
+
+/**
+ * @Author Joburgess
+ * @Date 2019/12/30
+ */
+public class SuperClassGroupDtio extends ClassGroup {
+}

+ 10 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/ClassGroupService.java

@@ -5,10 +5,7 @@ import com.ym.mec.biz.dal.entity.ClassGroup;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.SalarySettlementTypeEnum;
-import com.ym.mec.biz.dal.page.CourseScheduleQueryInfo;
-import com.ym.mec.biz.dal.page.StudentPayLogQueryInfo;
-import com.ym.mec.biz.dal.page.VipClassQueryInfo;
-import com.ym.mec.biz.dal.page.queryMusicGroupCourseScheduleQueryInfo;
+import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.common.entity.ImGroupModel;
 import com.ym.mec.common.entity.ImUserModel;
 import com.ym.mec.common.page.PageInfo;
@@ -373,4 +370,13 @@ public interface ClassGroupService extends BaseService<Integer, ClassGroup> {
      */
     boolean delClassNoStartCourse(Integer classGroupId);
 
+    /**
+     * @describe 终极班级信息获取
+     * @author Joburgess
+     * @date 2019/12/30
+     * @param queryInfo: 查询条件
+     * @return com.ym.mec.common.page.PageInfo
+     */
+    PageInfo endFindClassGroups(EndCourseScheduleQueryInfo queryInfo);
+
 }

+ 42 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -7,10 +7,7 @@ import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.*;
-import com.ym.mec.biz.dal.page.CourseScheduleQueryInfo;
-import com.ym.mec.biz.dal.page.StudentPayLogQueryInfo;
-import com.ym.mec.biz.dal.page.VipClassQueryInfo;
-import com.ym.mec.biz.dal.page.queryMusicGroupCourseScheduleQueryInfo;
+import com.ym.mec.biz.dal.page.*;
 import com.ym.mec.biz.service.*;
 import com.ym.mec.common.constant.CommonConstants;
 import com.ym.mec.common.dal.BaseDAO;
@@ -106,6 +103,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
     private SysConfigDao sysConfigDao;
     @Autowired
     private SubjectDao subjectDao;
+    @Autowired
+    private GroupDao groupDao;
 
     @Override
     public BaseDAO<Integer, ClassGroup> getDAO() {
@@ -2201,4 +2200,43 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         courseScheduleStudentPaymentDao.deleteByCourseSchedule(courseScheduleIds);
         return true;
     }
+
+    @Override
+    public PageInfo endFindClassGroups(EndCourseScheduleQueryInfo queryInfo) {
+        PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+        Map<String, Object> params = new HashMap<>();
+        MapUtil.populateMap(params, queryInfo);
+
+        if(StringUtils.isNotBlank(queryInfo.getSearch())){
+            List<Group> groups = groupDao.searchGroups(queryInfo.getSearch());
+            if(!CollectionUtils.isEmpty(groups)){
+                params.put("groups", groups);
+            }
+        }
+
+        List<CourseScheduleEndDto> results = new ArrayList<>();
+        int count = courseScheduleDao.endCountCourseSchedules(params);
+        if (count > 0) {
+            pageInfo.setTotal(count);
+            params.put("offset", pageInfo.getOffset());
+            results = courseScheduleDao.endFindCourseSchedules(params);
+            List<Group> groups=new ArrayList<>();
+            groups.add(null);
+            for (CourseScheduleEndDto courseScheduleEndDto : results) {
+                Group group=new Group(courseScheduleEndDto.getMusicGroupId(),courseScheduleEndDto.getGroupType());
+                groups.add(group);
+            }
+            groups = groupDao.findByGroupIds(groups);
+            Map<String, Map<GroupType, List<Group>>> groupsGroupByGroup = groups.stream().collect(Collectors.groupingBy(Group::getId, Collectors.groupingBy(Group::getGroupType)));
+            results.forEach(result -> {
+                List<Group> groupTemps = groupsGroupByGroup.get(result.getMusicGroupId())
+                        .get(result.getGroupType());
+                if(!CollectionUtils.isEmpty(groupTemps)){
+                    result.setGroupName(groupTemps.get(0).getGroupName());
+                }
+            });
+        }
+        pageInfo.setRows(results);
+        return pageInfo;
+    }
 }

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -470,7 +470,7 @@
             LEFT JOIN course_schedule cs ON cg.id_=cs.class_group_id_
             LEFT JOIN school s ON vg.teacher_school_id_ = s.id_
         WHERE
-            vg.user_id_ = #{teacherId} AND vg.status_ = 2
+            vg.user_id_ = #{teacherId} AND (vg.status_ = 2 OR vg.status_ = 5)
         GROUP BY
         vg.id_,cg.id_
     </select>