Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/saas' into saas

zouxuan 3 anni fa
parent
commit
4c404ec312

+ 33 - 31
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupDao.java

@@ -23,7 +23,7 @@ import java.util.Set;
 public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
 
     MusicGroup getLocked(String id);
-    
+
     /**
      * 查询乐团基本信息
      * @param id
@@ -451,16 +451,16 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
      * @return
      */
     List<MusicMemberDto> queryMusicMemberList(Map<String, Object> params);
-    
-	int updateIsShowRecordOfStudent(@Param("musicGroupId") String musicGroupId, @Param("isShowRecordOfStudent") Boolean isShowRecordOfStudent);
-
-	/**
-	 * @describe 查询乐团相关学员数量
-	 * @author Joburgess
-	 * @date 2021/8/12 0012
-	 * @param params:
-	 * @return java.util.List<java.lang.String>
-	 */
+
+    int updateIsShowRecordOfStudent(@Param("musicGroupId") String musicGroupId, @Param("isShowRecordOfStudent") Boolean isShowRecordOfStudent);
+
+    /**
+     * @describe 查询乐团相关学员数量
+     * @author Joburgess
+     * @date 2021/8/12 0012
+     * @param params:
+     * @return java.util.List<java.lang.String>
+     */
     List<TeacherMusicStudentOverViewDto> queryTeacherMusicStudentOverView(@Param("musicGroupIds") List<String> musicGroupIds);
 
     /**
@@ -471,40 +471,40 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
     List<Map<Integer, String>> queryNormalGroupName(@Param("studentIds") List<Integer> studentIds);
 
     /**
-    * @description: 乐团剩余时长未排课
+     * @description: 乐团剩余时长未排课
      * @param organIds
      * @param tenantId
-    * @return java.util.List<java.lang.String>
-    * @author zx
-    * @date 2022/3/3 15:15 
-    */
+     * @return java.util.List<java.lang.String>
+     * @author zx
+     * @date 2022/3/3 15:15
+     */
     List<String> queryHasSubCourseTimes(@Param("organIds") String organIds, @Param("tenantId") Integer tenantId);
 
     /**
-    * @description: 获取课程时间消耗异常的学员数
+     * @description: 获取课程时间消耗异常的学员数
      * @param params
-    * @return int
-    * @author zx
-    * @date 2022/3/4 11:22
-    */
+     * @return int
+     * @author zx
+     * @date 2022/3/4 11:22
+     */
     Integer countHasFreeCourseTimes(Map<String, Object> params);
 
     /**
-    * @description: 获取课程时间消耗异常的学员
+     * @description: 获取课程时间消耗异常的学员
      * @param params
-    * @return java.util.List<com.ym.mec.biz.dal.dto.HasFreeCourseTimesDto>
-    * @author zx
-    * @date 2022/3/4 11:40
-    */
+     * @return java.util.List<com.ym.mec.biz.dal.dto.HasFreeCourseTimesDto>
+     * @author zx
+     * @date 2022/3/4 11:40
+     */
     List<HasFreeCourseTimesDto> queryHasFreeCourseTimes(Map<String, Object> params);
 
     /**
-    * @description: 获取首页退学学员数量
+     * @description: 获取首页退学学员数量
      * @param queryInfo
-    * @return java.lang.Integer
-    * @author zx
-    * @date 2022/3/17 16:20
-    */
+     * @return java.lang.Integer
+     * @author zx
+     * @date 2022/3/17 16:20
+     */
     Integer countQuitNum(@Param("queryInfo") IndexDataQueryInfo queryInfo);
 
     //乐团统计数据导出
@@ -512,4 +512,6 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
 
     //乐团统计数据导出
     List<MusicGroupExportDto> exportMusicGroupCourseList(@Param("queryInfo") ExportUserAccountQueryInfo queryInfo);
+    //查询
+    List<MusicGroupBasicDto> findMusicByCourseIds(@Param("courseIds") List<Long> courseIds);
 }

+ 11 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/CourseScheduleEndDto.java

@@ -45,7 +45,7 @@ public class CourseScheduleEndDto extends CourseSchedule {
     private String settlementTime;
 
     private PracticeGroup practiceGroup;
-    
+
     private String isComplaints;
 
     private boolean beMerged;
@@ -54,6 +54,8 @@ public class CourseScheduleEndDto extends CourseSchedule {
 
     /** 处理时间 */
     private java.util.Date dealTime;
+    /** 合作单位 */
+    private String cooperationOrgan;
 
     public Date getGenerateTime() {
         return generateTime;
@@ -214,4 +216,12 @@ public class CourseScheduleEndDto extends CourseSchedule {
 	public void setIsComplaints(String isComplaints) {
 		this.isComplaints = isComplaints;
 	}
+
+    public String getCooperationOrgan() {
+        return cooperationOrgan;
+    }
+
+    public void setCooperationOrgan(String cooperationOrgan) {
+        this.cooperationOrgan = cooperationOrgan;
+    }
 }

+ 56 - 78
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -33,6 +33,7 @@ import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
 import com.ym.mec.biz.dal.dto.*;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.page.*;
 import org.apache.commons.collections.ListUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -82,43 +83,7 @@ import com.ym.mec.biz.dal.dao.TeacherDefaultVipGroupSalaryDao;
 import com.ym.mec.biz.dal.dao.VipGroupActivityDao;
 import com.ym.mec.biz.dal.dao.VipGroupCategoryDao;
 import com.ym.mec.biz.dal.dao.VipGroupDao;
-import com.ym.mec.biz.dal.entity.ActivityUserMapper;
-import com.ym.mec.biz.dal.entity.ClassGroup;
-import com.ym.mec.biz.dal.entity.ClassGroupStudentMapper;
-import com.ym.mec.biz.dal.entity.ClassGroupTeacherMapper;
-import com.ym.mec.biz.dal.entity.CourseGenerateDto;
-import com.ym.mec.biz.dal.entity.CourseSchedule;
 import com.ym.mec.biz.dal.entity.CourseSchedule.CourseScheduleType;
-import com.ym.mec.biz.dal.entity.CourseScheduleAuditDetailDto;
-import com.ym.mec.biz.dal.entity.CourseScheduleComplaints;
-import com.ym.mec.biz.dal.entity.CourseScheduleEvaluate;
-import com.ym.mec.biz.dal.entity.CourseScheduleModifyLog;
-import com.ym.mec.biz.dal.entity.CourseScheduleReview;
-import com.ym.mec.biz.dal.entity.CourseScheduleStudentPayment;
-import com.ym.mec.biz.dal.entity.CourseScheduleTeacherSalary;
-import com.ym.mec.biz.dal.entity.CoursesGroup;
-import com.ym.mec.biz.dal.entity.CoursesGroupModifyLog;
-import com.ym.mec.biz.dal.entity.Group;
-import com.ym.mec.biz.dal.entity.MusicGroup;
-import com.ym.mec.biz.dal.entity.MusicGroupTrainPlan;
-import com.ym.mec.biz.dal.entity.MusicGroupTrainPlanSaveDto;
-import com.ym.mec.biz.dal.entity.PracticeGroup;
-import com.ym.mec.biz.dal.entity.PracticeGroupSellPrice;
-import com.ym.mec.biz.dal.entity.School;
-import com.ym.mec.biz.dal.entity.StudentAttendance;
-import com.ym.mec.biz.dal.entity.StudentCourseScheduleRecordDto;
-import com.ym.mec.biz.dal.entity.Subject;
-import com.ym.mec.biz.dal.entity.SysConfig;
-import com.ym.mec.biz.dal.entity.Teacher;
-import com.ym.mec.biz.dal.entity.TeacherAttendance;
-import com.ym.mec.biz.dal.entity.TeacherDefaultMusicGroupSalary;
-import com.ym.mec.biz.dal.entity.TeacherDefaultPracticeGroupSalary;
-import com.ym.mec.biz.dal.entity.TeacherDefaultVipGroupSalary;
-import com.ym.mec.biz.dal.entity.TenantConfig;
-import com.ym.mec.biz.dal.entity.TenantConfigDetail;
-import com.ym.mec.biz.dal.entity.VipGroup;
-import com.ym.mec.biz.dal.entity.VipGroupActivity;
-import com.ym.mec.biz.dal.entity.VipGroupCategory;
 import com.ym.mec.biz.dal.enums.AuditStatusEnum;
 import com.ym.mec.biz.dal.enums.ClassGroupStudentStatusEnum;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
@@ -1668,7 +1633,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			existCours.setUpdateTime(now);
 			existCours.setStartClassTime(ac.getStartClassTime());
 			existCours.setEndClassTime(DateUtil.addMinutes(existCours.getStartClassTime(), singleClassMinutes));
-            
+
             //课程结束时间必须在21:00之前
             if(DateUtil.getHour(existCours.getEndClassTime()) > 20 && DateUtil.getMinute(existCours.getEndClassTime()) > 0){
             	throw new BizException("课程结束时间不能超过21:00,请重新调整上课时间");
@@ -3168,7 +3133,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 					if (!DateUtil.isSameDay(courseSchedule.getStartClassTime(), courseSchedule.getEndClassTime())) {
 						throw new BizException("上课时间不允许跨天,请重新调整上课时间");
 					}
-					
+
                     if(vipGroupCourseAdjustInfo.getTeachMode().equals(TeachModeEnum.OFFLINE)){
 						courseSchedule.setSchoolId(vipGroup.getTeacherSchoolId());
 					}
@@ -3299,7 +3264,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
             if(newCourseSchedule.getStatus() == oldCourseSchedule.getStatus() && newCourseSchedule.getStatus() == CourseStatusEnum.OVER){
             	throw new BizException("已结束的课程需要调整课程状态");
             }
-            
+
             /*if (oldCourseSchedule.getType().equals(CourseSchedule.CourseScheduleType.VIP)) {
                 VipGroup vipGroup = vipGroupDao.get(Long.valueOf(oldCourseSchedule.getMusicGroupId()));
                 if(Objects.isNull(vipGroup)){
@@ -3343,12 +3308,12 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
             	int minutes = DateUtil.minutesBetween(oldCourseSchedule.getStartClassTime(), oldCourseSchedule.getEndClassTime());
             	newCourseSchedule.setEndClassTime(DateUtil.addMinutes(newCourseSchedule.getStartClassTime(), minutes));
             }
-            
+
             //课程结束时间必须在21:00之前
             if(DateUtil.getHour(newCourseSchedule.getEndClassTime()) > 20 && DateUtil.getMinute(newCourseSchedule.getEndClassTime()) > 0){
             	throw new BizException("课程结束时间不能超过21:00,请重新调整上课时间");
             }
-            
+
             //判断上课时间是否跨天
 			if (!DateUtil.isSameDay(newCourseSchedule.getStartClassTime(), newCourseSchedule.getEndClassTime())) {
 				throw new BizException("上课时间不允许跨天,请重新调整上课时间");
@@ -3523,13 +3488,13 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			}
 
 			if ((newCourseSchedule.getStatus() != oldCourseSchedule.getStatus() && newCourseSchedule.getStatus() == CourseStatusEnum.NOT_START)) {
-                
+
 				// 清理课程作业
 				courseHomeworkService.delHomwworkByCourseScheduleId(courseScheduleId);
 
 				//删除申述
 				courseScheduleComplaintsDao.delByCourseScheduleId(courseScheduleId);
-				
+
 				//删除评论
 				courseScheduleReviewDao.delByCourseScheduleId(courseScheduleId);
 
@@ -4679,35 +4644,48 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			//获取班级声部名称
             List<Map<Integer, String>> classGroupSubjectNameMaps = classGroupDao.findClassGroupSubjectNameMaps(courseScheduleIds);
             Map<Integer, String> classGroupSubjectNameMap = MapUtil.convertIntegerMap(classGroupSubjectNameMaps);
-			Map<Long, String> eduName = null;
-			if(queryInfo.getIsExport()){
-				List<Long> musicCourseIds = results.stream().filter(e -> e.getGroupType() == MUSIC).map(CourseScheduleEndDto::getId).collect(Collectors.toList());
-				eduName = new HashMap<>(courseScheduleIds.size());
-				if(musicCourseIds != null && musicCourseIds.size() > 0){
-					eduName.putAll(MapUtil.convertMybatisMap(musicGroupDao.queryEduNameMapByCourseId(musicCourseIds)));
-				}
-				List<Long> vipCourseIds = results.stream().filter(e -> e.getGroupType() == VIP).map(CourseScheduleEndDto::getId).collect(Collectors.toList());
-				if(vipCourseIds != null && vipCourseIds.size() > 0){
-					eduName.putAll(MapUtil.convertMybatisMap(vipGroupDao.queryEduNameMapByCourseId(vipCourseIds)));
-				}
-				List<Long> practiceCourseIds = results.stream().filter(e -> e.getGroupType() == PRACTICE).map(CourseScheduleEndDto::getId).collect(Collectors.toList());
-				if(practiceCourseIds != null && practiceCourseIds.size() > 0){
-					eduName.putAll(MapUtil.convertMybatisMap(practiceGroupDao.queryEduNameMapByCourseId(practiceCourseIds)));
-				}
-			}
-			for (CourseScheduleEndDto result : results) {
-				if(eduName != null){
-					result.setEducationTeacherName(eduName.get(result.getId()));
-				}
-				result.setTeacher(null);
-				result.setTeacherName(nameIdMap.get(result.getActualTeacherId()));
-				result.setSubjectName(classGroupSubjectNameMap.get(result.getId()));
-				result.setIsSettlement(Objects.isNull(result.getSettlementTime())?0:1);
-				if(courseMergeCourseNumMap.containsKey(result.getId())){
-					result.setBeMerged(courseMergeCourseNumMap.get(result.getId())>0?true:false);
-				}
-				result.setStudentNum(courseScheduleStudentNumMap.getOrDefault(result.getId(), 0));
-			}
+            Map<Long, String> eduName = null;
+            Map<String, MusicGroupBasicDto> cooperationMap = new HashMap<>();
+            if (queryInfo.getIsExport()) {
+                List<Long> musicCourseIds = results.stream().filter(e -> e.getGroupType() == MUSIC).map(CourseScheduleEndDto::getId).collect(Collectors.toList());
+                eduName = new HashMap<>(courseScheduleIds.size());
+                if (musicCourseIds != null && musicCourseIds.size() > 0) {
+                    eduName.putAll(MapUtil.convertMybatisMap(musicGroupDao.queryEduNameMapByCourseId(musicCourseIds)));
+                }
+                List<Long> vipCourseIds = results.stream().filter(e -> e.getGroupType() == VIP).map(CourseScheduleEndDto::getId).collect(Collectors.toList());
+                if (vipCourseIds != null && vipCourseIds.size() > 0) {
+                    eduName.putAll(MapUtil.convertMybatisMap(vipGroupDao.queryEduNameMapByCourseId(vipCourseIds)));
+                }
+                List<Long> practiceCourseIds = results.stream().filter(e -> e.getGroupType() == PRACTICE).map(CourseScheduleEndDto::getId).collect(Collectors.toList());
+                if (practiceCourseIds != null && practiceCourseIds.size() > 0) {
+                    eduName.putAll(MapUtil.convertMybatisMap(practiceGroupDao.queryEduNameMapByCourseId(practiceCourseIds)));
+                }
+
+                //获取合作单位,只有groupType是 MUSIC 的才有合作单位
+                List<MusicGroupBasicDto> maps = musicGroupDao.findMusicByCourseIds(musicCourseIds);
+                for (MusicGroupBasicDto map : maps) {
+                    cooperationMap.put(map.getId(), map);
+                }
+            }
+
+            for (CourseScheduleEndDto result : results) {
+                if (eduName != null) {
+                    result.setEducationTeacherName(eduName.get(result.getId()));
+                }
+                result.setTeacher(null);
+                result.setTeacherName(nameIdMap.get(result.getActualTeacherId()));
+                result.setSubjectName(classGroupSubjectNameMap.get(result.getId()));
+                result.setIsSettlement(Objects.isNull(result.getSettlementTime()) ? 0 : 1);
+                if (courseMergeCourseNumMap.containsKey(result.getId())) {
+                    result.setBeMerged(courseMergeCourseNumMap.get(result.getId()) > 0 ? true : false);
+                }
+                result.setStudentNum(courseScheduleStudentNumMap.getOrDefault(result.getId(), 0));
+
+                MusicGroupBasicDto musicGroupBasicDto = cooperationMap.get(result.getId().toString());
+                if(null != musicGroupBasicDto){
+                    result.setCooperationOrgan(musicGroupBasicDto.getCooperationOrganName());
+                }
+            }
         }
         pageInfo.setRows(results);
         return pageInfo;
@@ -5846,15 +5824,15 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 
 	@Override
 	public Object queryMusicCoursePlan(Integer userId, Date startDate, Date endDate) {
-		
+
 		List<CourseSchedule> courseScheduleList = courseScheduleDao.findStudentCoursesWithIncludeDateRange(userId, GroupType.MUSIC, startDate, endDate);
-		
+
 		List<CourseSchedulePlanDto> result = new ArrayList<CourseSchedulePlanDto>();
-		
+
 		for(CourseSchedule courseSchedule : courseScheduleList){
 			CourseSchedulePlanDto dto = new CourseSchedulePlanDto();
 			dto.setCourseSchedule(courseSchedule);
-			
+
 			//获取课程规划
 			MusicGroupTrainPlanSaveDto schoolTerm = musicGroupTrainPlanService.getSchoolTerm(courseSchedule);
 			int courseNumNo = courseScheduleDao.getCourseNumNo(schoolTerm);
@@ -5862,10 +5840,10 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 			if(planList.size() >= courseNumNo){
 				dto.setMusicGroupTrainPlan(planList.get(courseNumNo - 1));
 			}
-			
+
 			result.add(dto);
 		}
-		
+
 		return result;
 	}
 

+ 14 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -80,8 +80,8 @@ public class ExportServiceImpl implements ExportService {
     private CourseScheduleService courseScheduleService;
     @Autowired
     private StudentService studentService;
-	@Autowired
-	private TenantConfigService tenantConfigService;
+    @Autowired
+    private TenantConfigService tenantConfigService;
     @Autowired
     private CourseScheduleStudentPaymentDao courseScheduleStudentPaymentDao;
     @Autowired
@@ -1611,7 +1611,7 @@ public class ExportServiceImpl implements ExportService {
             List<CooperationOrgan> cooperationOrgans = cooperationOrganDao.getCooperationOrganByIds(cooperationOrganIds);
             cooperationOrganMap = cooperationOrgans.stream().collect(Collectors.toMap(CooperationOrgan::getId, CooperationOrgan::getName));
         }
-        
+
         //获取机构费率
         Integer tenantId = (Integer) params.get("tenantId");
         TenantConfig tenantConfig = tenantConfigService.queryByTenantId(tenantId);
@@ -2164,8 +2164,8 @@ public class ExportServiceImpl implements ExportService {
             } else if (row.getGroupType().equals(GroupType.SPORADIC)) {
                 //考级报名
                 if (row.getType().equals(OrderTypeEnum.DEGREE_REGISTRATION)) {
-                	
-                	if(StringUtils.isNotBlank(row.getMemo())){
+
+                    if(StringUtils.isNotBlank(row.getMemo())){
                         String[] feeTypes = row.getMemo().split(";");
                         List<String> feeTypeList = Arrays.asList(feeTypes);
                         for (String feeTypeStr : feeTypeList) {
@@ -2185,7 +2185,7 @@ public class ExportServiceImpl implements ExportService {
                                 row.setTheoryCourseFee(typeFee);
                             }
                         }
-                	}
+                    }
                     row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
                 } else {
                     if (row.getChargeType() != null && SporadicChargeTypeEnum.LEVEL.getCode().equals(row.getChargeType())) {
@@ -2318,7 +2318,7 @@ public class ExportServiceImpl implements ExportService {
             List<CooperationOrgan> cooperationOrgans = cooperationOrganDao.getCooperationOrganByIds(cooperationOrganIds);
             cooperationOrganMap = cooperationOrgans.stream().collect(Collectors.toMap(CooperationOrgan::getId, CooperationOrgan::getName));
         }
-        
+
         //获取机构费率
         Integer tenantId = (Integer) params.get("tenantId");
         TenantConfig tenantConfig = tenantConfigService.queryByTenantId(tenantId);
@@ -2343,10 +2343,10 @@ public class ExportServiceImpl implements ExportService {
         if(musicGroupIds != null && musicGroupIds.size() > 0){
             musicGroupNameMap = MapUtil.convertIntegerMap(musicGroupDao.queryMusicGroupNameMap(musicGroupIds));
         }
-        
+
         Map<String,BigDecimal> serviceChargeMap = new HashMap<String, BigDecimal>();
         Map<String,Integer> orderCountMap = new HashMap<String, Integer>();
-        
+
         for (StudentPaymentOrderExportDto row : studentPaymentOrderExportDtos) {
             if (row.getActualAmount() == null) {
                 row.setActualAmount(BigDecimal.ZERO);
@@ -2365,7 +2365,7 @@ public class ExportServiceImpl implements ExportService {
             BigDecimal totalFee = BigDecimal.ZERO;
             if (row.getPaymentChannel() != null && row.getPaymentChannel().equals("ADAPAY")) {
                 FeeFlagNumDto countFeeFlagNum = studentPaymentRouteOrderDao.getCountFeeFlagNum(row.getOrderNo());
-                
+
                 Integer times = orderCountMap.get(row.getOrderNo());
 				if (times == null) {
 					times = 1;
@@ -2373,9 +2373,9 @@ public class ExportServiceImpl implements ExportService {
 					++times;
 				}
             	orderCountMap.put(row.getOrderNo(), times);
-            	
+
             	currentFee = row.getServiceFee();
-                
+
             	//兼容2022年之前的数据
 				if (currentFee == null || (currentFee.floatValue() == 0 && row.getCreateTime().before(DateUtil.stringToDate("2022-01-01 00:00:00")))) {
 					transferFee = serviceChargeMap.get(row.getOrderNo());
@@ -2855,9 +2855,9 @@ public class ExportServiceImpl implements ExportService {
         }
         HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"分部名称", "乐团主管", "课程编号", "开始时间", "结束时间",
                 "班级名称", "班级声部", "课程名称", "课程类型", "教学模式",
-                "教学点", "课程状态", "指导老师", "学员编号", "是否点名", "是否有考勤申诉", "预计上课人数"}, new String[]{
+                "教学点", "课程状态", "指导老师", "学员编号", "是否点名", "是否有考勤申诉", "预计上课人数","合作单位"}, new String[]{
                 "organName", "educationTeacherName", "id", "startClassTime", "endClassTime", "classGroupName", "subjectName", "name",
-                "groupType.desc", "teachMode.msg", "schoolName", "status.msg", "teacherName", "studentId", "isCallNames.msg", "isComplaints", "studentNum"}, rows);
+                "groupType.desc", "teachMode.msg", "schoolName", "status.msg", "teacherName", "studentId", "isCallNames.msg", "isComplaints", "studentNum","cooperationOrgan"}, rows);
         exportManagerDownload(workbook,managerDownload);
     }
 

+ 17 - 4
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -50,7 +50,7 @@
         <result column="tenant_id_" property="tenantId"/>
         <result column="is_give_accessories_" property="isGiveAccessories"/>
     </resultMap>
-    
+
     <resultMap type="com.ym.mec.biz.dal.dto.MusicGroupBasicDto" id="MusicGroupBasicDto" extends="MusicGroup">
     	<result column="organ_name_" property="organName"/>
         <result column="school_name_" property="schoolName"/>
@@ -77,7 +77,7 @@
         WHERE id_ = #{id} for
         update
     </select>
-    
+
     <select id="queryBasicInfo" resultMap="MusicGroupBasicDto">
         SELECT mg.*,o.name_ organ_name_,s.name_ school_name_ ,co.name_ cooperation_organ_name_,ct.name_ charge_type_name_,
         u1.real_name_ edu_teacher_name_,u2.real_name_ teans_teacher_name_,u2.phone_ teans_teacher_phone_,
@@ -241,7 +241,7 @@
         </set>
         WHERE id_ = #{id}
     </update>
-    
+
     <update id="batchUpdateEdu">
         UPDATE music_group
         SET educational_teacher_id_ = #{educationUserId}
@@ -968,7 +968,7 @@
             </if>
         </where>
     </sql>
-    
+
     <update id="updateIsShowRecordOfStudent" parameterType="map">
     	update music_group set is_show_record_of_student_ = #{isShowRecordOfStudent},update_time_ = now() where id_ = #{musicGroupId}
     </update>
@@ -1153,4 +1153,17 @@
             </if>
         </where>
     </select>
+
+    <select id="findMusicByCourseIds" resultMap="MusicGroupBasicDto">
+        select
+        t.id_,b.organ_id_ as cooperation_organ_id_,b.name_ as cooperation_organ_name_
+        from course_schedule t
+        left join music_group a on t.music_group_id_ = a.id_
+        left join cooperation_organ b on a.cooperation_organ_id_ = b.id_
+        where t.group_type_ = 'MUSIC'
+        and t.id_ IN
+        <foreach collection="courseIds" item="item" open="(" close=")" separator=",">
+            #{item}
+        </foreach>
+    </select>
 </mapper>