| 
					
				 | 
			
			
				@@ -55,7 +55,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <result column="subject_name_" property="splitSubjectName"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <result column="id_card_no_" property="idCardNo"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </resultMap> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <resultMap type="com.ym.mec.biz.dal.dto.TeacherDefaultSalaryDto" id="TeacherDefaultSalaryDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <result column="id_" property="userId"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <result column="real_name_" property="realName"/> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -111,7 +111,7 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         FROM teacher 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ORDER BY id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="getLocked" resultMap="Teacher"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT * FROM teacher where id_ = #{id} for update 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -279,9 +279,9 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="queryPage" resultMap="Teacher" parameterType="map"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT t.id_,su.real_name_,su.lock_flag_,t.subject_id_,su.phone_,t.organ_id_ teacher_organ_id_,t.organ_id_,t.is_support_extra_practice_lesson_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         t.job_nature_,t.is_probation_period_,t.memo_,GROUP_CONCAT(s.name_) subject_name_,su.del_flag_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        FROM teacher t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LEFT JOIN sys_user su ON t.id_ = su.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN `subject` s ON FIND_IN_SET(s.id_,t.subject_id_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        WHERE su.del_flag_ = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <include refid="queryPageMap"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY t.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ORDER BY t.id_ DESC 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -291,26 +291,40 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="queryCount" resultType="int"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT COUNT(DISTINCT t.id_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         FROM teacher t LEFT JOIN sys_user su ON t.id_ = su.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        WHERE su.del_flag_ = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <include refid="queryPageMap"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <sql id="queryPageMap"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <if test="lockFlag != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            AND su.lock_flag_ = #{lockFlag} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <if test="teacherId != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            AND t.id_ IN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <foreach collection="teacherId" separator="," open="(" close=")" item="item"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                #{item} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </foreach> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <if test="search != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            AND (su.real_name_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%') OR t.id_ = #{search}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <if test="isSupportExtraPracticeLesson != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            AND is_support_extra_practice_lesson_ = #{isSupportExtraPracticeLesson} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            su.del_flag_ = 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="organId != null and organId != ''"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND (INTE_ARRAY(#{organId},t.flow_organ_range_) OR FIND_IN_SET(t.organ_id_,#{organId})) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="subjectId != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND FIND_IN_SET(#{subjectId},t.subject_id_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="jobNature != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND t.job_nature_ = #{jobNature} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="isProbationPeriod != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND t.is_probation_period_ = #{isProbationPeriod} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="isSupportExtraPracticeLesson != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND t.is_support_extra_practice_lesson_ = #{isSupportExtraPracticeLesson} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="lockFlag != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND su.lock_flag_ = #{lockFlag} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="teacherId != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND t.id_ IN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <foreach collection="teacherId" separator="," open="(" close=")" item="item"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    #{item} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </foreach> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="search != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                AND (su.real_name_ LIKE CONCAT('%',#{search},'%') OR su.phone_ LIKE CONCAT('%',#{search},'%') OR t.id_ = #{search}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </sql> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <!-- 根据证件号查询老师 --> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -361,18 +375,6 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <result property="subjectNames" column="subject_names_"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <result property="introduction" column="introduction_"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </resultMap> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <select id="findTeachers" resultMap="TeacherBasicDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT su.id_,su.username_,su.real_name_,t.organ_id_ FROM sys_user su 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        LEFT JOIN teacher t ON su.id_=t.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <if test="userIds != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                su.id_ IN 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <foreach collection="userIds" separator="," open="(" close=")" item="item"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    #{item} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </foreach> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="findSimpleTeachers" resultType="com.ym.mec.biz.dal.dto.SimpleUserDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT su.id_ userId,su.real_name_ userName FROM sys_user su 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -389,10 +391,10 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="getUsersSimpleInfo" resultType="com.ym.mec.biz.dal.dto.SimpleUserDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            su.id_ userId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            su.username_ nickName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            su.real_name_ userName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            su.phone_ phone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        su.id_ userId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        su.username_ nickName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        su.real_name_ userName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        su.phone_ phone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         FROM sys_user su 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <if test="userIds != null"> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -755,27 +757,14 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         select count(*) total,sum(case when job_nature_ = 'PART_TIME' then 1 else 0 end) part_time_num_,sum(case when 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         job_nature_ = 'FULL_TIME' then 1 else 0 end) full_time_num_ from teacher 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         where demission_date_ is null and organ_id_ not in (36,38) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <if test="organId != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                and FIND_IN_SET(organ_id_,#{organId}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <if test="organId != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            and FIND_IN_SET(organ_id_,#{organId}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    <select id="findByFlowOrganRange" resultMap="Teacher"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT id_,CONCAT(IF(flow_organ_range_ IS NULL OR flow_organ_range_ = '',0,flow_organ_range_),",", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        IF(organ_id_ IS NULL OR organ_id_ = '',0,organ_id_)) flow_organ_range_ FROM teacher t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <if test="subjectId != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                AND FIND_IN_SET(#{subjectId},t.subject_id_) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <if test="jobNature != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                AND t.job_nature_ = #{jobNature} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <if test="isProbationPeriod != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                AND t.is_probation_period_ = #{isProbationPeriod} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            <if test="isSupportExtraPracticeLesson != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                AND t.is_support_extra_practice_lesson_ = #{isSupportExtraPracticeLesson} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <select id="findByFlowOrganRangeTeachers" resultMap="TeacherBasicDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT su.id_,su.username_,su.real_name_,t.organ_id_ FROM teacher t 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LEFT JOIN sys_user su ON t.id_ = su.id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        WHERE su.del_flag_ = 0 AND (INTE_ARRAY(#{organId},t.flow_organ_range_) OR FIND_IN_SET(t.organ_id_,#{organId})) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="findByTeacherIds" resultMap="Teacher"> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1075,17 +1064,17 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE csts.group_type_ = 'MUSIC' AND (mg.educational_teacher_id_ = #{teacherId} OR mg.director_user_id_ = #{teacherId} OR mg.team_teacher_id_ = #{teacherId}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY csts.user_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         UNION ALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT csts.user_id_ FROM vip_group vg  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT csts.user_id_ FROM vip_group vg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN course_schedule_teacher_salary csts ON vg.id_ = csts.music_group_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE vg.educational_teacher_id_ = #{teacherId} AND csts.group_type_ = 'VIP' AND vg.group_status_ IN (2,3,4) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY csts.user_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         UNION ALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT csts.user_id_ FROM courses_group cg  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT csts.user_id_ FROM courses_group cg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN course_schedule_teacher_salary csts ON cg.id_ = csts.music_group_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE cg.educational_teacher_id_ = #{teacherId} AND csts.group_type_ = 'COMM' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY csts.user_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         UNION ALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT csts.user_id_ FROM practice_group pg  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT csts.user_id_ FROM practice_group pg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN course_schedule_teacher_salary csts ON pg.id_ = csts.music_group_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE pg.educational_teacher_id_ = #{teacherId} AND csts.group_type_ = 'PRACTICE' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY csts.user_id_ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1096,17 +1085,17 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         AND (mg.educational_teacher_id_ = #{teacherId} OR mg.director_user_id_ = #{teacherId} OR mg.team_teacher_id_ = #{teacherId}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY cgtm.user_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         UNION ALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT cgtm.user_id_ FROM vip_group vg  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT cgtm.user_id_ FROM vip_group vg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN class_group_teacher_mapper cgtm ON vg.id_ = cgtm.music_group_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE vg.educational_teacher_id_ = #{teacherId} AND cgtm.group_type_ = 'VIP' AND vg.group_status_ IN (2,3,4) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY cgtm.user_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         UNION ALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT cgtm.user_id_ FROM courses_group cg  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT cgtm.user_id_ FROM courses_group cg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN class_group_teacher_mapper cgtm ON cg.id_ = cgtm.music_group_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE cg.educational_teacher_id_ = #{teacherId} AND cgtm.group_type_ = 'COMM' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY cgtm.user_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         UNION ALL 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        SELECT cgtm.user_id_ FROM practice_group pg  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT cgtm.user_id_ FROM practice_group pg 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         LEFT JOIN class_group_teacher_mapper cgtm ON pg.id_ = cgtm.music_group_id_ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE pg.educational_teacher_id_ = #{teacherId} AND cgtm.group_type_ = 'PRACTICE' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         GROUP BY cgtm.user_id_ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1162,50 +1151,50 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT COUNT(s.user_id_) FROM student s 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         WHERE s.teacher_id_ = #{search} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="queryTeacherDefaultSalary" resultMap="TeacherDefaultSalaryDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    	SELECT t.`id_` ,su.`real_name_` ,o.`name_` , 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		case when t.`job_nature_` = 'PART_TIME' then '兼职' when  t.`job_nature_` = 'FULL_TIME' then '全职' else '临时工' end job_nature, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		case when t.`demission_date_` IS NULL then '在职' else '离职' end demisson_status, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		case when su.`lock_flag_` = 1 then '冻结' WHEN su.`lock_flag_` = 9 then '锁定' else '正常' end status_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		max(case when gc.`name_` = '1V1' then gs.`offline_classes_salary_` else 0 end) vip1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		max(case when gc.`name_` = '1V2' then gs.`offline_classes_salary_` else 0 end) vip2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		max(case when gc.`name_` = '1V3' then gs.`offline_classes_salary_` else 0 end) vip3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		max(case when gc.`name_` = '1V4' then gs.`offline_classes_salary_` else 0 end) vip4, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		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(pgs.main_teacher_salary_) practice, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.main_teacher_30min_salary_ ELSE 0 END) single2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.main_teacher_30min_salary_ ELSE 0 END) mix2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.main_teacher_30min_salary_ ELSE 0 END) comprehensive2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'TRAINING_SINGLE' then mgs.main_teacher_30min_salary_ ELSE 0 END) training_single2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'TRAINING_MIX' then mgs.main_teacher_30min_salary_ ELSE 0 END) training_mix2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.main_teacher_30min_salary_ ELSE 0 END) high2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.main_teacher_30min_salary_ ELSE 0 END) classroom2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.main_teacher_90min_salary_ ELSE 0 END) single, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.main_teacher_90min_salary_ ELSE 0 END) mix, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.main_teacher_90min_salary_ ELSE 0 END) comprehensive, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'TRAINING_SINGLE' then mgs.main_teacher_90min_salary_ ELSE 0 END) training_single, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'TRAINING_MIX' then mgs.main_teacher_90min_salary_ ELSE 0 END) training_mix, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.main_teacher_90min_salary_ ELSE 0 END) high, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.main_teacher_90min_salary_ ELSE 0 END) 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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		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_` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		LEFT JOIN `vip_group_category` gc on gc.`id_` = gs.`vip_group_category_id_` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		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> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			<if test="organIdList != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SELECT t.`id_` ,su.`real_name_` ,o.`name_` , 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        case when t.`job_nature_` = 'PART_TIME' then '兼职' when  t.`job_nature_` = 'FULL_TIME' then '全职' else '临时工' end job_nature, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        case when t.`demission_date_` IS NULL then '在职' else '离职' end demisson_status, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        case when su.`lock_flag_` = 1 then '冻结' WHEN su.`lock_flag_` = 9 then '锁定' else '正常' end status_, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        max(case when gc.`name_` = '1V1' then gs.`offline_classes_salary_` else 0 end) vip1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        max(case when gc.`name_` = '1V2' then gs.`offline_classes_salary_` else 0 end) vip2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        max(case when gc.`name_` = '1V3' then gs.`offline_classes_salary_` else 0 end) vip3, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        max(case when gc.`name_` = '1V4' then gs.`offline_classes_salary_` else 0 end) vip4, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        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(pgs.main_teacher_salary_) practice, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.main_teacher_30min_salary_ ELSE 0 END) single2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.main_teacher_30min_salary_ ELSE 0 END) mix2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.main_teacher_30min_salary_ ELSE 0 END) comprehensive2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'TRAINING_SINGLE' then mgs.main_teacher_30min_salary_ ELSE 0 END) training_single2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'TRAINING_MIX' then mgs.main_teacher_30min_salary_ ELSE 0 END) training_mix2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.main_teacher_30min_salary_ ELSE 0 END) high2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.main_teacher_30min_salary_ ELSE 0 END) classroom2, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'SINGLE' then mgs.main_teacher_90min_salary_ ELSE 0 END) single, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'MIX' then mgs.main_teacher_90min_salary_ ELSE 0 END) mix, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'COMPREHENSIVE' then mgs.main_teacher_90min_salary_ ELSE 0 END) comprehensive, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'TRAINING_SINGLE' then mgs.main_teacher_90min_salary_ ELSE 0 END) training_single, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'TRAINING_MIX' then mgs.main_teacher_90min_salary_ ELSE 0 END) training_mix, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'HIGH' then mgs.main_teacher_90min_salary_ ELSE 0 END) high, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        MAX(case when mgs.course_schedule_type_ = 'CLASSROOM' then mgs.main_teacher_90min_salary_ ELSE 0 END) 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 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        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_` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        LEFT JOIN `vip_group_category` gc on gc.`id_` = gs.`vip_group_category_id_` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        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> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <if test="organIdList != null"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 AND find_in_set(t.organ_id_,#{organIdList}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </if> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		</where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		GROUP BY t.`id_`  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </where> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        GROUP BY t.`id_` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </select> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <select id="findUserByPhone" resultMap="com.ym.mec.biz.dal.dao.MusicGroupDao.BasicUserDto"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SELECT username_,id_ user_id_,avatar_ head_url_, 
			 |