ソースを参照

Merge branch 'saas' of http://git.dayaedu.com/yonge/mec into test

zouxuan 1 年間 前
コミット
61bc219b6f

+ 2 - 2
mec-application/src/main/resources/exportColumnMapper.ini

@@ -183,8 +183,8 @@ headColumns = ["序号", "业务分部", "学生编号", "学生姓名", "交易
 fieldColumns = ["id", "userOrganName", "userId", "user.username", "transNo", "orderNo", "paymentChannel", "merNos", "orderAmount" , "expectAmount", "actualAmount", "balancePaymentAmount", "routeMerNo", "routeAmount", "routeBalance",  "couponRemitFee","musicGroupCourseFee", "vipCourseFee",  "liveCourseFee", "practiceCourseFee", "theoryCourseFee", "degreeFee", "repairFee", "maintenanceFee", "cloudTeacherFee", "leaseFee", "musicalFee", "teachingFee", "visitFee", "rechargeFee", "otherFee", "platformFee", "payTime", "musicGroupId", "groupType.desc","typeDesc","feeMusicGroupId","feeMusicGroupName", "sporadicType", "subjectName", "organName", "schoolName", "cooperationOrganName", "eduTeacher", "memo"]
 
 [老师默认课酬导出]
-headColumns = ["老师编号", "姓名", "分部", "工作类型", "在职状态", "老师状态", "1v1", "1v2", "1v3", "1v4", "1v5", "1v6", "1v7","网管课", "单技课2.0(主教)", "合奏课2.0(主教)", "综合课2.0(主教)", "集训单技课2.0(主教)", "集训合奏课2.0(主教)","基础技能课2.0(主教)", "课堂课(主教)", "单技课3.0(主教)", "合奏课3.0(主教)", "综合课3.0(主教)", "集训单技课3.0(主教)", "集训合奏课3.0(主教)","基础技能课3.0(主教)", "单技课2.0(助教)", "合奏课2.0(助教)", "综合课2.0(助教)", "集训单技课2.0(助教)", "集训合奏课2.0(助教)","基础技能课2.0(助教)", "课堂课(助教)", "单技课3.0(助教)", "合奏课3.0(助教)", "综合课3.0(助教)", "集训单技课3.0(助教)", "集训合奏课3.0(助教)","基础技能课3.0(助教)", "线上基础技能课1v3", "线上基础技能课1v4", "线上基础技能课1v5", "乐团网管课1v1"]
-fieldColumns = ["userId", "realName", "organName", "jobNature", "demissionStatus", "status", "vip1", "vip2", "vip3", "vip4", "vip5", "vip6", "vip7", "practiceSalary", "mainSingleSalary2", "mainMixSalary2", "mainComprehensiveSalary2", "mainTraningSigleSalary2", "mainTraningMixSalary2", "mainHighSalary2", "mainClassroomSalary2", "mainSingleSalary", "mainMixSalary", "mainComprehensiveSalary", "mainTraningSigleSalary", "mainTraningMixSalary", "mainHighSalary", "assistantSingleSalary2", "assistantMixSalary2", "assistantComprehensiveSalary2", "assistantTraningSigleSalary2", "assistantTraningMixSalary2", "assistantHighSalary2", "assistantClassroomSalary2", "assistantSingleSalary", "assistantMixSalary", "assistantComprehensiveSalary", "assistantTraningSigleSalary", "assistantTraningMixSalary", "assistantHighSalary", "highOnline3Salary", "highOnline4Salary", "highOnline5Salary", "musicNetwork1Salary"]
+headColumns = ["老师编号", "姓名", "分部", "工作类型", "在职状态", "老师状态", "1v1", "1v2", "1v3", "1v4", "1v5", "1v6", "1v7","小组课", "网管课", "声部课(主教)", "合奏课(主教)", "综合课(主教)", "集训声部课(主教)", "集训合奏课(主教)","基础技能课(主教)","课堂课(主教)", "声部课(助教)", "合奏课(助教)", "综合课(助教)", "集训声部课(助教)", "集训合奏课(助教)","基础技能课(助教)", "课堂课(助教)", "线上基础技能课1v1", "线上基础技能课1v2", "线上基础技能课1v3", "线上基础技能课1v4", "线上基础技能课1v5", "乐团网管课1v1", "乐团网管课1v2", "乐团网管课1v3", "乐团网管课1v4", "乐团网管课1v5"]
+fieldColumns = ["userId", "realName", "organName", "jobNature", "demissionStatus", "status", "vip1", "vip2", "vip3", "vip4", "vip5", "vip6", "vip7", "theorySalary", "practiceSalary", "mainSingleSalary", "mainMixSalary", "mainComprehensiveSalary", "mainTraningSigleSalary", "mainTraningMixSalary", "mainHighSalary", "mainClassroomSalary","assistantSingleSalary", "assistantMixSalary", "assistantComprehensiveSalary", "assistantTraningSigleSalary", "assistantTraningMixSalary", "assistantHighSalary","assistantClassroomSalary", "highOnline1Salary", "highOnline2Salary", "highOnline3Salary", "highOnline4Salary", "highOnline5Salary", "musicNetwork1Salary", "musicNetwork2Salary", "musicNetwork3Salary", "musicNetwork4Salary", "musicNetwork5Salary"]
 
 [报名中缴费中乐团缴费情况导出]
 headColumns = ["分部","乐团名称","乐团状态","审核通过时间","报名总数","团购数","缴费总数","回款总金额"]

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MultiDataSourceHomeStatsDao.java

@@ -13,4 +13,8 @@ public interface MultiDataSourceHomeStatsDao {
     List<MultiDataSourceHomeStatsWrapper.IncomeByDate> gytSummerIncome(@Param("queryDto") MultiDataSourceHomeStatsWrapper.QueryDto queryDto);
 
     List<MultiDataSourceHomeStatsWrapper.IncomeByDate> gymSummerIncome(@Param("queryDto") MultiDataSourceHomeStatsWrapper.QueryDto queryDto);
+
+    List<MultiDataSourceHomeStatsWrapper.IncomeByDate> ktSummerIncome(@Param("queryDto") MultiDataSourceHomeStatsWrapper.QueryDto queryDto);
+
+    List<MultiDataSourceHomeStatsWrapper.IncomeByDate> clsOrgSummerIncome(@Param("queryDto") MultiDataSourceHomeStatsWrapper.QueryDto queryDto);
 }

+ 71 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/TeacherDefaultSalaryDto.java

@@ -32,6 +32,8 @@ public class TeacherDefaultSalaryDto {
 	
 	private BigDecimal practiceSalary = new BigDecimal(0);
 
+	private BigDecimal theorySalary = new BigDecimal(0);
+
 	
 	private BigDecimal mainSingleSalary2 = new BigDecimal(0);
 	
@@ -91,14 +93,82 @@ public class TeacherDefaultSalaryDto {
 	private BigDecimal assistantClassroomSalary = new BigDecimal(0);
 
 	
-	private BigDecimal highOnline3Salary = new BigDecimal(0);
+	private BigDecimal highOnline1Salary = new BigDecimal(0);
 	
+	private BigDecimal highOnline2Salary = new BigDecimal(0);
+
+	private BigDecimal highOnline3Salary = new BigDecimal(0);
+
 	private BigDecimal highOnline4Salary = new BigDecimal(0);
 	
 	private BigDecimal highOnline5Salary = new BigDecimal(0);
 	
 	private BigDecimal musicNetwork1Salary = new BigDecimal(0);
 
+	private BigDecimal musicNetwork2Salary = new BigDecimal(0);
+
+	private BigDecimal musicNetwork3Salary = new BigDecimal(0);
+
+	private BigDecimal musicNetwork4Salary = new BigDecimal(0);
+
+	private BigDecimal musicNetwork5Salary = new BigDecimal(0);
+
+	public BigDecimal getTheorySalary() {
+		return theorySalary;
+	}
+
+	public void setTheorySalary(BigDecimal theorySalary) {
+		this.theorySalary = theorySalary;
+	}
+
+	public BigDecimal getHighOnline1Salary() {
+		return highOnline1Salary;
+	}
+
+	public void setHighOnline1Salary(BigDecimal highOnline1Salary) {
+		this.highOnline1Salary = highOnline1Salary;
+	}
+
+	public BigDecimal getHighOnline2Salary() {
+		return highOnline2Salary;
+	}
+
+	public void setHighOnline2Salary(BigDecimal highOnline2Salary) {
+		this.highOnline2Salary = highOnline2Salary;
+	}
+
+	public BigDecimal getMusicNetwork2Salary() {
+		return musicNetwork2Salary;
+	}
+
+	public void setMusicNetwork2Salary(BigDecimal musicNetwork2Salary) {
+		this.musicNetwork2Salary = musicNetwork2Salary;
+	}
+
+	public BigDecimal getMusicNetwork3Salary() {
+		return musicNetwork3Salary;
+	}
+
+	public void setMusicNetwork3Salary(BigDecimal musicNetwork3Salary) {
+		this.musicNetwork3Salary = musicNetwork3Salary;
+	}
+
+	public BigDecimal getMusicNetwork4Salary() {
+		return musicNetwork4Salary;
+	}
+
+	public void setMusicNetwork4Salary(BigDecimal musicNetwork4Salary) {
+		this.musicNetwork4Salary = musicNetwork4Salary;
+	}
+
+	public BigDecimal getMusicNetwork5Salary() {
+		return musicNetwork5Salary;
+	}
+
+	public void setMusicNetwork5Salary(BigDecimal musicNetwork5Salary) {
+		this.musicNetwork5Salary = musicNetwork5Salary;
+	}
+
 	public BigDecimal getMainClassroomSalary() {
 		return mainClassroomSalary;
 	}

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MultiDataSourceHomeStatsServiceImpl.java

@@ -42,6 +42,10 @@ public class MultiDataSourceHomeStatsServiceImpl implements MultiDataSourceHomeS
         List<MultiDataSourceHomeStatsWrapper.IncomeByDate> gytIncomeDateList = multiDataSourceHomeStatsDao.gytSummerIncome(queryDto);
         //获取管乐迷收入
         List<MultiDataSourceHomeStatsWrapper.IncomeByDate> gymIncomeDateList = multiDataSourceHomeStatsDao.gymSummerIncome(queryDto);
+        //获取课堂乐器收入
+        List<MultiDataSourceHomeStatsWrapper.IncomeByDate> ktIncomeDateList = multiDataSourceHomeStatsDao.ktSummerIncome(queryDto);
+        //获取酷乐秀机构版收入
+        List<MultiDataSourceHomeStatsWrapper.IncomeByDate> clsOrgIncomeDateList = multiDataSourceHomeStatsDao.clsOrgSummerIncome(queryDto);
 
         Map<String, MultiDataSourceHomeStatsWrapper.IncomeByDate> clsMap = clsIncomeDateList.stream().
                 collect(Collectors.groupingBy(e -> e.getDate(), Collectors.collectingAndThen(Collectors.toList(), v -> v.get(0))));
@@ -58,16 +62,30 @@ public class MultiDataSourceHomeStatsServiceImpl implements MultiDataSourceHomeS
         Set<String> gymKeySet = gymMap.keySet();
         List<MultiDataSourceHomeStatsWrapper.IncomeByDate> gymList = new ArrayList<>();
 
+        Map<String, MultiDataSourceHomeStatsWrapper.IncomeByDate> ktMap = ktIncomeDateList.stream().
+                collect(Collectors.groupingBy(e -> e.getDate(), Collectors.collectingAndThen(Collectors.toList(), v -> v.get(0))));
+        Set<String> ktKeySet = ktMap.keySet();
+        List<MultiDataSourceHomeStatsWrapper.IncomeByDate> ktList = new ArrayList<>();
+
+        Map<String, MultiDataSourceHomeStatsWrapper.IncomeByDate> clsOrgMap = clsOrgIncomeDateList.stream().
+                collect(Collectors.groupingBy(e -> e.getDate(), Collectors.collectingAndThen(Collectors.toList(), v -> v.get(0))));
+        Set<String> clsOrgKeySet = clsOrgMap.keySet();
+        List<MultiDataSourceHomeStatsWrapper.IncomeByDate> clsOrgList = new ArrayList<>();
+
         // 遍历日期列表,补全数据并添加到结果集中
         for (String date : dates) {
             this.addItem(clsKeySet,clsList,date,clsMap);
             this.addItem(gytKeySet,gytList,date,gytMap);
             this.addItem(gymKeySet,gymList,date,gymMap);
+            this.addItem(ktKeySet,ktList,date,ktMap);
+            this.addItem(clsOrgKeySet,clsOrgList,date,clsOrgMap);
         }
         List<MultiDataSourceHomeStatsWrapper.summerIncome> result = new ArrayList<>();
         result.add(this.init("cls",clsList));
         result.add(this.init("gyt",gytList));
         result.add(this.init("gym",gymList));
+        result.add(this.init("kt",ktList));
+        result.add(this.init("clsOrg",clsOrgList));
         return result;
     }
 

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -406,6 +406,9 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
         //保存课程费用列表
         List<MusicGroupPaymentCalenderCourseSettings> courseSettingsList = musicGroupPaymentBaseCalender.getMusicGroupPaymentCalenderCourseSettingsList();
         if(CollectionUtils.isNotEmpty(courseSettingsList)){
+            courseSettingsList.forEach(e -> {
+                e.setOverflowCoursePrice(BigDecimal.ZERO);
+            });
             //是否会员团
             if(musicGroup.getCourseViewType() == CourseViewTypeEnum.MEMBER_FEE && Objects.nonNull(calenderMember)){
                 //获取云教练溢出费用

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

@@ -1272,7 +1272,7 @@
         FROM course_schedule cs
                  LEFT JOIN school s ON cs.schoole_id_ = s.id_
         WHERE cs.music_group_id_ = #{groupId}
-          AND cs.group_type_ = #{groupType}
+          AND cs.group_type_ = #{groupType} AND cs.del_flag_ = 0
         ORDER BY start_class_time_
     </select>
     <select id="findVipGroupNotStartCourseScheduleIds" resultType="long">

+ 14 - 0
mec-biz/src/main/resources/config/mybatis/MultiDataSourceHomeStatsMapper.xml

@@ -31,4 +31,18 @@
         </if>
         GROUP BY DATE_FORMAT(pay_time_,#{queryDto.groupBy})
     </select>
+    <select id="clsOrgSummerIncome"
+            resultType="com.ym.mec.biz.dal.wrapper.MultiDataSourceHomeStatsWrapper$IncomeByDate">
+        select DATE_FORMAT(create_time_,#{queryDto.format}) `date`,SUM(trans_amount_) totalAmount
+        from cooleshow_pro.tenant_account_record where in_or_out_ = 'IN' AND post_status_ = 'RECORDED'
+        AND DATE_FORMAT(create_time_,'%Y-%m-%d') BETWEEN #{queryDto.startTime} AND #{queryDto.endTime}
+        group by DATE_FORMAT(create_time_,#{queryDto.groupBy})
+    </select>
+    <select id="ktSummerIncome"
+            resultType="com.ym.mec.biz.dal.wrapper.MultiDataSourceHomeStatsWrapper$IncomeByDate">
+        select DATE_FORMAT(create_time_,#{queryDto.format}) `date`,SUM(payment_cash_amount_) totalAmount
+        from cooleshow_edu_pro.user_payment_order where status_ = 'PAID'
+        AND DATE_FORMAT(create_time_,'%Y-%m-%d') BETWEEN #{queryDto.startTime} AND #{queryDto.endTime}
+        group by DATE_FORMAT(create_time_,#{queryDto.groupBy})
+    </select>
 </mapper>

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

@@ -296,7 +296,7 @@
             and mgpscd.sub_course_minutes_ > 0
         </if>
         <if test="hastimer != null and hastimer == false">
-            and mgpscd.used_course_minutes_ = 0
+            and mgpscd.sub_course_minutes_ = 0
         </if>
         <if test="courseType != null and courseType != ''">
             and mgpscd.course_type_ = #{courseType}

+ 19 - 33
mec-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -78,15 +78,9 @@
         <result column="vip5" property="vip5"/>
         <result column="vip6" property="vip6"/>
         <result column="vip7" property="vip7"/>
+        <result column="theorySalary" property="theorySalary"/>
         <result column="practice" property="practiceSalary"/>
 
-        <result column="main_single2" property="mainSingleSalary2"/>
-        <result column="main_mix2" property="mainMixSalary2"/>
-        <result column="main_comprehensive2" property="mainComprehensiveSalary2"/>
-        <result column="main_training_single2" property="mainTraningSigleSalary2"/>
-        <result column="main_training_mix2" property="mainTraningMixSalary2"/>
-        <result column="main_high2" property="mainHighSalary2"/>
-        <result column="main_classroom2" property="mainClassroomSalary2"/>
         <result column="main_single" property="mainSingleSalary"/>
         <result column="main_mix" property="mainMixSalary"/>
         <result column="main_comprehensive" property="mainComprehensiveSalary"/>
@@ -95,18 +89,17 @@
         <result column="main_high" property="mainHighSalary"/>
         <result column="main_classroom" property="mainClassroomSalary"/>
 
+        <result column="high_online1" property="highOnline1Salary"/>
+        <result column="high_online2" property="highOnline2Salary"/>
         <result column="high_online3" property="highOnline3Salary"/>
         <result column="high_online4" property="highOnline4Salary"/>
         <result column="high_online5" property="highOnline5Salary"/>
         <result column="music_network1" property="musicNetwork1Salary"/>
+        <result column="music_network2" property="musicNetwork2Salary"/>
+        <result column="music_network3" property="musicNetwork3Salary"/>
+        <result column="music_network4" property="musicNetwork4Salary"/>
+        <result column="music_network5" property="musicNetwork5Salary"/>
 
-        <result column="assistant_single2" property="assistantSingleSalary2"/>
-        <result column="assistant_mix2" property="assistantMixSalary2"/>
-        <result column="assistant_comprehensive2" property="assistantComprehensiveSalary2"/>
-        <result column="assistant_training_single2" property="assistantTraningSigleSalary2"/>
-        <result column="assistant_training_mix2" property="assistantTraningMixSalary2"/>
-        <result column="assistant_high2" property="assistantHighSalary2"/>
-        <result column="assistant_classroom2" property="assistantClassroomSalary2"/>
         <result column="assistant_single" property="assistantSingleSalary"/>
         <result column="assistant_mix" property="assistantMixSalary"/>
         <result column="assistant_comprehensive" property="assistantComprehensiveSalary"/>
@@ -1367,14 +1360,8 @@
 		max(case when gc.`name_` = '1V5' then gs.`offline_classes_salary_` else 0 end) vip5,
 		max(case when gc.`name_` = '1V6' then gs.`offline_classes_salary_` else 0 end) vip6,
 		max(case when gc.`name_` = '1V7' then gs.`offline_classes_salary_` else 0 end) vip7,
+        max(case when gc.`music_theory_` then gs.`offline_classes_salary_` else 0 end) theorySalary,
 		max(pgs.main_teacher_salary_) practice,
-        MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_single2,
-        MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_mix2,
-        MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_comprehensive2,
-        MAX(case when mgs.course_schedule_type_ = 'TRAINING_SINGLE' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_training_single2,
-        MAX(case when mgs.course_schedule_type_ = 'TRAINING_MIX' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_training_mix2,
-        MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_high2,
-        MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.main_teacher_30min_salary_ ELSE 0 END) main_classroom2,
         MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.main_teacher_90min_salary_ ELSE 0 END) main_single,
         MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.main_teacher_90min_salary_ ELSE 0 END) main_mix,
         MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.main_teacher_90min_salary_ ELSE 0 END) main_comprehensive,
@@ -1383,13 +1370,6 @@
         MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.main_teacher_90min_salary_ ELSE 0 END) main_high,
         MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.main_teacher_90min_salary_ ELSE 0 END) main_classroom,
 
-        MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_single2,
-        MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_mix2,
-        MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_comprehensive2,
-        MAX(case when mgs.course_schedule_type_ = 'TRAINING_SINGLE' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_training_single2,
-        MAX(case when mgs.course_schedule_type_ = 'TRAINING_MIX' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_training_mix2,
-        MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_high2,
-        MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.assistant_teacher_30min_salary_ ELSE 0 END) assistant_classroom2,
         MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.assistant_teacher_90min_salary_ ELSE 0 END) assistant_single,
         MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.assistant_teacher_90min_salary_ ELSE 0 END) assistant_mix,
         MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.assistant_teacher_90min_salary_ ELSE 0 END) assistant_comprehensive,
@@ -1398,10 +1378,16 @@
         MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.assistant_teacher_90min_salary_ ELSE 0 END) assistant_high,
         MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.assistant_teacher_90min_salary_ ELSE 0 END) assistant_classroom,
 
-		MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."3"'),DECIMAL) END) high_online3,
-		MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."4"'),DECIMAL) END) high_online4,
-		MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."5"'),DECIMAL) END) high_online5,
-		MAX(case when mgs.course_schedule_type_ = 'MUSIC_NETWORK' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."1"'),DECIMAL) END) music_network1
+        MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."1"'),DECIMAL) END) high_online1,
+        MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."2"'),DECIMAL) END) high_online2,
+        MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."3"'),DECIMAL) END) high_online3,
+        MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."4"'),DECIMAL) END) high_online4,
+        MAX(case when mgs.course_schedule_type_ = 'HIGH_ONLINE' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."5"'),DECIMAL) END) high_online5,
+        MAX(case when mgs.course_schedule_type_ = 'MUSIC_NETWORK' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."1"'),DECIMAL) END) music_network1,
+        MAX(case when mgs.course_schedule_type_ = 'MUSIC_NETWORK' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."2"'),DECIMAL) END) music_network2,
+        MAX(case when mgs.course_schedule_type_ = 'MUSIC_NETWORK' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."3"'),DECIMAL) END) music_network3,
+        MAX(case when mgs.course_schedule_type_ = 'MUSIC_NETWORK' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."4"'),DECIMAL) END) music_network4,
+        MAX(case when mgs.course_schedule_type_ = 'MUSIC_NETWORK' then CONVERT(JSON_EXTRACT(mgs.salary_rule_json_,'$."5"'),DECIMAL) END) music_network5
 		FROM `teacher` t LEFT JOIN `sys_user` su on t.`id_` = su.`id_` 
 		LEFT JOIN `organization` o on o.`id_` = t.`organ_id_` 
 		LEFT JOIN `teacher_default_vip_group_salary` gs on gs.`user_id_` = t.`id_`
@@ -1409,7 +1395,7 @@
 		LEFT JOIN teacher_default_practice_group_salary pgs ON pgs.user_id_ = t.id_
 		LEFT JOIN teacher_default_music_group_salary mgs ON mgs.user_id_ = t.id_
 		<where>
-			t.tenant_id_ = #{tenantId}
+			t.tenant_id_ = #{tenantId} AND su.del_flag_ = 0
 			<if test="organIdList != null">
                 AND find_in_set(t.organ_id_,#{organIdList})
             </if>