<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.srs.teacher.mapper.SysTeacherKpiFillingMapper">
    <!--填报信息头表的映射 -->
    <resultMap type="SysTeacherKpiFilling" id="SysTeacherKpiFillingResult">
        <result property="id" column="id"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
        <result property="completionStatus" column="completion_status"/>
        <result property="commitStatus" column="commit_status"/>
        <result property="auditStatus" column="audit_status"/>
        <result property="departmentName" column="departmentName"/>
        <result property="selfScoring" column="self_scoring"/>
        <result property="finalRating" column="final_rating"/>
        <result property="roleAudit" column="role_audit"/>
        <result property="xwOpinion" column="xw_opinion"/>
        <result property="dzzsjOpinion" column="dzzsj_opinion"/>
        <result property="ksOpinion" column="ks_opinion"/>
        <result property="xgczOpinion" column="xgcz_opinion"/>
        <result property="auditProgress" column="audit_progress"/>
        <result property="jobNumber" column="job_number"/>
        <result property="classType" column="class_type"/>
        <!--个人填报-学生管理子表的集合 -->
        <collection property="kpiFillingStuMgtList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingStuMgtById"/>
        <!--个人填报-业务工作子表的集合 -->
        <collection property="kpiFillingBusinessWorksList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingBusinessWorksById"/>
        <!--个人填报-考勤管理子表的集合 -->
        <collection property="kpiFillingAMgtList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingAMgtById"/>
        <!--个人填报-负面清单子表的集合 -->
        <collection property="kpiFillingNegativeLists"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="KpiFillingNegativeListById"/>
        <!--个人填报-超工作量奖励绩效子表的集合 -->
        <collection property="kpiFillingRewardsKpiList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingRewardsKpiById"/>
        <!--个人填报-处理学生突发事件子表的集合 -->
        <collection property="kpiFillingStuEmergencyList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingStuEmergencyById"/>
        <!--个人填报-加分项子表的集合 -->
        <collection property="kpiFillingBonusPointsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingBonusPointsById"/>
        <!--个人填报-加分项佐证材料子表的集合 -->
        <collection property="kpiFillingBonusPointsMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingBonusPointsMaterialsById"/>
        <!--个人填报-就业指导工作子表的集合 -->
        <collection property="kpiFillingGraduationGuidanceList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month, classType = class_type}"
                    javaType="java.util.ArrayList" select="selectKpiFillingGraduationGuidanceById"/>
    </resultMap>

    <!--个人填报-学生管理子表的映射 -->
    <resultMap type="SysTeacherKpiFillingStuMgt" id="SysTeacherKpiFillingStuMgtResult">
        <result property="id" column="id"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="departmentName" column="departmentName"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
        <result property="classScoring" column="class_scoring"/>
        <result property="cadreScoring" column="cadre_scoring"/>
        <result property="stuActivityScoring" column="stu_activity_scoring"/>
        <result property="stuTalkScoring" column="stu_talk_scoring"/>
        <result property="visitDormitoryScoring" column="visit_dormitory_scoring"/>
        <!--干部会议佐证材料子子表的集合 （多条件查询column里传入了多条件【{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}】javaType里面写了list表明你有多条件 fdyName属性 fdy_name字段）-->
        <collection property="cadreMeetingMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectCadreMeetingMaterialsById"/>
        <!--班会会议佐证材料子子表的集合 -->
        <collection property="classMeetingMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectClassMeetingMaterialsById"/>
        <!--学生开展活动佐佐证材料子子表的集合 -->
        <collection property="stuActivityMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectStuActivityMaterialsById"/>
        <!--与带班学生谈心谈话佐证材料子子表的集合 -->
        <collection property="stuTalkMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectStuTalkMaterialsById"/>
        <!--每周深入学生宿舍佐证材料子子表的集合 -->
        <collection property="visitDormitoryMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectVisitDormitoryMaterialsById"/>
        <!--职业测评/就业育人佐证材料子表的集合 -->
        <collection property="edgMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectEdgMaterialsById"/>
        <!--通知任务佐证材料子表的集合 -->
        <collection property="noticeMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectNoticeMaterialsById"/>
    </resultMap>

    <!--个人填报-业务工作子表的映射 -->
    <resultMap type="SysTeacherKpiFillingBusinessWork" id="SysTeacherKpiFillingBusinessWorkResult">
        <result property="id" column="id"/>
        <result property="stuLeaveMaterialsScoring" column="stu_leave_materials_scoring"/>
        <result property="stuFillingMaterialsScoring" column="stu_filling_materials_scoring"/>
        <result property="stuBasicDataScoring" column="stu_basic_data_scoring"/>
        <result property="stuDisciplinaryViolationScoring" column="stu_disciplinary_violation_scoring"/>
        <result property="handleEventsScoring" column="handle_events_scoring"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--个人填报-考勤管理子表的映射 -->
    <resultMap type="SysTeacherKpiFillingAMgt" id="SysTeacherKpiFillingAMgtResult">
        <result property="id" column="id"/>
        <result property="dutyWorkScoring" column="duty_work_scoring"/>
        <result property="conferenceScoring" column="conference_scoring"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
        <!--每周深入学生宿舍佐证材料子子表的集合 -->
        <collection property="conferenceMeetingMaterialsList"
                    column="{fdyName = fdy_name, fillingYear = filling_year, fillingMonth = filling_month}"
                    javaType="java.util.ArrayList" select="selectConferenceMeetingMaterialsById"/>
    </resultMap>

    <!--个人填报-负面清单子表的映射 -->
    <resultMap type="SysTeacherKpiFillingNegativeList" id="SysTeacherKpiFillingNegativeListResult">
        <result property="id" column="id"/>
        <result property="moralityAndBehavior" column="morality_and_behavior"/>
        <result property="speech" column="speech"/>
        <result property="complaint" column="complaint"/>
        <result property="offense" column="offense"/>
        <result property="emergency" column="emergency"/>
        <result property="punishment" column="punishment"/>
        <result property="practiceFraud" column="practice_fraud"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--个人填报-超工作量奖励绩效子表的映射 -->
    <resultMap type="SysTeacherKpiFillingRewardsKpi" id="SysTeacherKpiFillingRewardsKpiResult">
        <result property="id" column="id"/>
        <result property="dutyDescription" column="duty_description"/>
        <result property="dutyTime" column="duty_time"/>
        <result property="dutyUserName" column="duty_user_name"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--个人填报-处理学生突发事件子表的映射 -->
    <resultMap type="SysTeacherKpiFillingStuEmergency" id="SysTeacherKpiFillingStuEmergencyResult">
        <result property="id" column="id"/>
        <result property="eventDescription" column="event_description"/>
        <result property="startTime" column="start_time"/>
        <result property="endTime" column="end_time"/>
        <result property="eventLevel" column="event_level"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--个人填报-加分项子表的映射 -->
    <resultMap type="SysTeacherKpiFillingBonusPoints" id="SysTeacherKpiFillingBonusPointsResult">
        <result property="id" column="id"/>
        <result property="bonusType" column="bonus_type"/>
        <result property="bonusScoring" column="bonus_scoring"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--个人填报-加分项佐证材料子表的映射 -->
    <resultMap type="SysTeacherKpiFillingBonusPointsMaterials" id="SysTeacherKpiFillingBonusPointsMaterialsResult">
        <result property="id" column="id"/>
        <result property="bonusType" column="bonus_type"/>
        <result property="bonusScoring" column="bonus_scoring"/>
        <result property="mainContent" column="main_content"/>
        <result property="developmentTime" column="development_time"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
        <result property="classType" column="class_type"/>
    </resultMap>

    <!--个人填报-就业指导工作子表的映射 -->
    <resultMap type="SysTeacherKpiFillingGraduationGuidance" id="SysTeacherKpiFillingGraduationGuidanceResult">
        <result property="id" column="id"/>
        <result property="gradFormAuditScoring" column="grad_form_audit_scoring"/>
        <result property="stuCareerConsultScoring" column="stu_career_consult_scoring"/>
        <result property="gradFormGuidanceScoring" column="grad_form_guidance_scoring"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--个人填报-学生管理子表的数据-->
    <select id="selectKpiFillingStuMgtById" resultMap="SysTeacherKpiFillingStuMgtResult">
        select *
        from sys_teacher_kpi_filling_stu_mgt
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>
    <!--个人填报-业务工作子表的数据-->
    <select id="selectKpiFillingBusinessWorksById" resultMap="SysTeacherKpiFillingBusinessWorkResult">
        select *
        from sys_teacher_kpi_filling_business_work
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-考勤管理子表的数据-->
    <select id="selectKpiFillingAMgtById" resultMap="SysTeacherKpiFillingAMgtResult">
        select *
        from sys_teacher_kpi_filling_a_mgt
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-负面清单子表的数据-->
    <select id="KpiFillingNegativeListById" resultMap="SysTeacherKpiFillingNegativeListResult">
        select *
        from sys_teacher_kpi_filling_negative_list
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-超工作量奖励绩效子表的数据-->
    <select id="selectKpiFillingRewardsKpiById" resultMap="SysTeacherKpiFillingRewardsKpiResult">
        select *
        from sys_teacher_kpi_filling_rewards_kpi
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
        order by id desc
    </select>

    <!--个人填报-处理学生突发事件子表的数据-->
    <select id="selectKpiFillingStuEmergencyById" resultMap="SysTeacherKpiFillingStuEmergencyResult">
        select *
        from sys_teacher_kpi_filling_stu_emergency
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-加分项子表的数据-->
    <select id="selectKpiFillingBonusPointsById" resultMap="SysTeacherKpiFillingBonusPointsResult">
        select *
        from sys_teacher_kpi_filling_bonus_points
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-加分项佐证材料子表的数据-->
    <select id="selectKpiFillingBonusPointsMaterialsById" resultMap="SysTeacherKpiFillingBonusPointsMaterialsResult">
        select *
        from sys_teacher_kpi_filling_bonus_points_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-就业指导工作子表的数据-->
    <select id="selectKpiFillingGraduationGuidanceById" resultMap="SysTeacherKpiFillingGraduationGuidanceResult">
        select *
        from sys_teacher_kpi_filling_graduation_guidance
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
            <if test="classType != null and classType != ''">
                and class_type = #{classType}
            </if>
        </where>
    </select>

    <!--个人填报-学生管理-干部会议佐证材料子子表的映射 -->
    <resultMap type="SysTeacherCadreMeetingMaterials" id="SysTeacherCadreMeetingMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="place" column="place"/>
        <result property="className" column="class_name"/>
        <result property="numberOfStudents" column="number_of_students"/>
        <result property="mainContent" column="main_content"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-学生管理-班会会议佐证材料子子表的映射 -->
    <resultMap type="SysTeacherClassMeetingMaterials" id="SysTeacherClassMeetingMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="place" column="place"/>
        <result property="className" column="class_name"/>
        <result property="numberOfStudents" column="number_of_students"/>
        <result property="mainContent" column="main_content"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-学生管理-学生开展活动佐证材料子子表的映射 -->
    <resultMap type="SysTeacherStuActivityMaterials" id="SysTeacherStuActivityMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="place" column="place"/>
        <result property="className" column="class_name"/>
        <result property="numberOfStudents" column="number_of_students"/>
        <result property="mainContent" column="main_content"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-学生管理-与带班学生谈心谈话佐证材料子子表的映射 -->
    <resultMap type="SysTeacherStuTalkMaterials" id="SysTeacherStuTalkMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="place" column="place"/>
        <result property="className" column="class_name"/>
        <result property="stuName" column="stu_name"/>
        <result property="mainContent" column="main_content"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-学生管理-每周深入学生宿舍佐证材料子子表的映射 -->
    <resultMap type="SysTeacherVisitDormitoryMaterials" id="SysTeacherVisitDormitoryMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="visitClassName" column="visit_class_name"/>
        <result property="visitDormitoryNum" column="visit_dormitory_num"/>
        <result property="numberOfStudents" column="number_of_students"/>
        <result property="mainContent" column="main_content"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-学生管理-职业测评材料子表的映射 -->
    <resultMap type="SysTeacherStuTestMaterials" id="SysTeacherEdgMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="place" column="place"/>
        <result property="className" column="class_name"/>
        <result property="numberOfStudents" column="number_of_students"/>
        <result property="mainContent" column="main_content"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-学生管理-通知任务材料子表的映射 -->
    <resultMap type="SysTeacherStuNoticeMaterials" id="SysTeacherStuNoticeMaterialsResult">
        <result property="id" column="id"/>
        <result property="developmentTime" column="development_time"/>
        <result property="place" column="place"/>
        <result property="className" column="class_name"/>
        <result property="numberOfStudents" column="number_of_students"/>
        <result property="mainContent" column="main_content"/>
        <result property="photo" column="photo"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>
    <!--个人填报-考勤管理-会议培训佐证材料子子表的映射 -->
    <resultMap type="SysTeacherConferenceMeetingMaterials" id="SysTeacherConferenceMeetingMaterialsResult">
        <result property="id" column="id"/>
        <result property="subject" column="subject"/>
        <result property="organizationalUnit" column="organizational_unit"/>
        <result property="startTime" column="start_time"/>
        <result property="place" column="place"/>
        <result property="fdyName" column="fdy_name"/>
        <result property="fillingYear" column="filling_year"/>
        <result property="fillingMonth" column="filling_month"/>
    </resultMap>

    <!--查询个人填报-学生管理-干部会议佐证材料子子表的数据-->
    <select id="selectCadreMeetingMaterialsById" resultMap="SysTeacherCadreMeetingMaterialsResult">
        select *
        from sys_teacher_cadre_meeting_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
    </select>
    <!--查询个人填报-学生管理-班会会议佐证材料子子表的数据-->
    <select id="selectClassMeetingMaterialsById" resultMap="SysTeacherClassMeetingMaterialsResult">
        select *
        from sys_teacher_class_meeting_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>
    <!--查询个人填报-学生管理-学生开展活动佐证材料子子表的数据-->
    <select id="selectStuActivityMaterialsById" resultMap="SysTeacherStuActivityMaterialsResult">
        select *
        from sys_teacher_stu_activity_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>
    <!--查询个人填报-学生管理-学生开展活动佐证材料子子表的数据-->
    <select id="selectStuTalkMaterialsById" resultMap="SysTeacherStuTalkMaterialsResult">
        select *
        from sys_teacher_stu_talk_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>
    <!--查询个人填报-学生管理-每周深入学生宿舍佐证材料子子表的数据-->
    <select id="selectVisitDormitoryMaterialsById" resultMap="SysTeacherVisitDormitoryMaterialsResult">
        select *
        from sys_teacher_visit_dormitory_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>
    <!--查询个人填报-学生管理-职业测评材料子表的数据-->
    <select id="selectEdgMaterialsById" resultMap="SysTeacherEdgMaterialsResult">
        select *
        from sys_teacher_stu_test_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>
    <!--查询个人填报-学生管理-通知任务材料子表的数据-->
    <select id="selectNoticeMaterialsById" resultMap="SysTeacherStuNoticeMaterialsResult">
        select *
        from sys_teacher_stu_notice_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>
    <!--个人填报-考勤管理-会议培训佐证材料子子表的数据-->
    <select id="selectConferenceMeetingMaterialsById" resultMap="SysTeacherConferenceMeetingMaterialsResult">
        select *
        from sys_teacher_conference_meeting_materials
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>

    <select id="selectSysTeacherKpiFillingByFdyName" parameterType="String" resultMap="SysTeacherKpiFillingResult">
        <include refid="selectSysTeacherKpiFillingVo"/>
        <where>
            <if test="fdyName != null and fdyName != ''">
                and fdy_name = #{fdyName}
            </if>
            <if test="fillingYear != null and fillingYear != ''">
                and filling_year = #{fillingYear}
            </if>
            <if test="fillingMonth != null and fillingMonth != ''">
                and filling_month = #{fillingMonth}
            </if>
        </where>
        order by id desc
    </select>

    <sql id="selectSysTeacherKpiFillingVo">
        select id,
               fdy_name,
               filling_year,
               filling_month,
               completion_status,
               commit_status,
               audit_status,
               departmentName,
               self_scoring,
               final_rating,
               role_audit,
               xw_opinion,
               dzzsj_opinion,
               ks_opinion,
               xgcz_opinion,
               audit_progress,
               job_number,
               class_type
        from sys_teacher_kpi_filling
    </sql>

    <select id="selectSysTeacherKpiFillingList" parameterType="SysTeacherKpiFilling"
            resultMap="SysTeacherKpiFillingResult">
        <include refid="selectSysTeacherKpiFillingVo"/>
        <where>
            <if test="fdyName != null  and fdyName != ''">and fdy_name like concat('%', #{fdyName}, '%')</if>
            <if test="fillingYear != null  and fillingYear != ''">and filling_year = #{fillingYear}</if>
            <if test="fillingMonth != null  and fillingMonth != ''">and filling_month = #{fillingMonth}</if>
            <if test="completionStatus != null  and completionStatus != ''">and completion_status =
                #{completionStatus}
            </if>
            <if test="commitStatus != null ">and commit_status = #{commitStatus}</if>
            <if test="auditStatus != null ">and audit_status = #{auditStatus}</if>
            <if test="departmentName != null  and departmentName != ''">and departmentName like concat('%',
                #{departmentName}, '%')
            </if>
            <if test="selfScoring != null  and selfScoring != ''">and self_scoring = #{selfScoring}</if>
            <if test="finalRating != null  and finalRating != ''">and final_rating = #{finalRating}</if>
            <if test="roleAudit != null ">and role_audit = #{roleAudit}</if>
            <if test="xwOpinion != null  and xwOpinion != ''">and xw_opinion = #{xwOpinion}</if>
            <if test="dzzsjOpinion != null  and dzzsjOpinion != ''">and dzzsj_opinion = #{dzzsjOpinion}</if>
            <if test="ksOpinion != null  and ksOpinion != ''">and ks_opinion = #{ksOpinion}</if>
            <if test="xgczOpinion != null  and xgczOpinion != ''">and xgcz_opinion = #{xgczOpinion}</if>
            <if test="auditProgress != null ">and audit_progress = #{auditProgress}</if>
            <if test="jobNumber != null  and jobNumber != ''"> and job_number = #{jobNumber}</if>
        </where>
        order by id desc
    </select>

    <select id="selectSysTeacherKpiFillingById" parameterType="Long" resultMap="SysTeacherKpiFillingResult">
        <include refid="selectSysTeacherKpiFillingVo"/>
        where id = #{id}
    </select>

    <select id="selectListKpiFilling" parameterType="SysTeacherKpiFilling" resultMap="SysTeacherKpiFillingResult">
        <include refid="selectSysTeacherKpiFillingVo"/>
    </select>

    <insert id="insertSysTeacherKpiFilling" parameterType="SysTeacherKpiFilling" useGeneratedKeys="true"
            keyProperty="id">
        insert into sys_teacher_kpi_filling
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="fdyName != null and fdyName != ''">fdy_name,</if>
            <if test="fillingYear != null and fillingYear != ''">filling_year,</if>
            <if test="fillingMonth != null and fillingMonth != ''">filling_month,</if>
            <if test="completionStatus != null">completion_status,</if>
            <if test="commitStatus != null">commit_status,</if>
            <if test="auditStatus != null">audit_status,</if>
            <if test="departmentName != null and departmentName != ''">departmentName,</if>
            <if test="selfScoring != null">self_scoring,</if>
            <if test="finalRating != null">final_rating,</if>
            <if test="roleAudit != null">role_audit,</if>
            <if test="xwOpinion != null">xw_opinion,</if>
            <if test="dzzsjOpinion != null">dzzsj_opinion,</if>
            <if test="ksOpinion != null">ks_opinion,</if>
            <if test="xgczOpinion != null">xgcz_opinion,</if>
            <if test="auditProgress != null">audit_progress,</if>
            <if test="jobNumber != null">job_number,</if>
            <if test="classType != null and classType != ''">class_type,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="fdyName != null and fdyName != ''">#{fdyName},</if>
            <if test="fillingYear != null and fillingYear != ''">#{fillingYear},</if>
            <if test="fillingMonth != null and fillingMonth != ''">#{fillingMonth},</if>
            <if test="completionStatus != null">#{completionStatus},</if>
            <if test="commitStatus != null">#{commitStatus},</if>
            <if test="auditStatus != null">#{auditStatus},</if>
            <if test="departmentName != null and departmentName != ''">#{departmentName},</if>
            <if test="selfScoring != null">#{selfScoring},</if>
            <if test="finalRating != null">#{finalRating},</if>
            <if test="roleAudit != null">#{roleAudit},</if>
            <if test="xwOpinion != null">#{xwOpinion},</if>
            <if test="dzzsjOpinion != null">#{dzzsjOpinion},</if>
            <if test="ksOpinion != null">#{ksOpinion},</if>
            <if test="xgczOpinion != null">#{xgczOpinion},</if>
            <if test="auditProgress != null">#{auditProgress},</if>
            <if test="jobNumber != null">#{jobNumber},</if>
            <if test="classType != null and classType != ''">#{classType},</if>
        </trim>
    </insert>

    <update id="updateSysTeacherKpiFilling" parameterType="SysTeacherKpiFilling">
        update sys_teacher_kpi_filling
        <trim prefix="SET" suffixOverrides=",">
            <if test="fdyName != null and fdyName != ''">fdy_name = #{fdyName},</if>
            <if test="fillingYear != null and fillingYear != ''">filling_year = #{fillingYear},</if>
            <if test="fillingMonth != null and fillingMonth != ''">filling_month = #{fillingMonth},</if>
            <if test="completionStatus != null">completion_status = #{completionStatus},</if>
            <if test="commitStatus != null">commit_status = #{commitStatus},</if>
            <if test="auditStatus != null">audit_status = #{auditStatus},</if>
            <if test="departmentName != null and departmentName != ''">departmentName = #{departmentName},</if>
            <if test="selfScoring != null">self_scoring = #{selfScoring},</if>
            <if test="finalRating != null">final_rating = #{finalRating},</if>
            <if test="roleAudit != null">role_audit = #{roleAudit},</if>
            <if test="xwOpinion != null">xw_opinion = #{xwOpinion},</if>
            <if test="dzzsjOpinion != null">dzzsj_opinion = #{dzzsjOpinion},</if>
            <if test="ksOpinion != null">ks_opinion = #{ksOpinion},</if>
            <if test="xgczOpinion != null">xgcz_opinion = #{xgczOpinion},</if>
            <if test="auditProgress != null">audit_progress = #{auditProgress},</if>
            <if test="jobNumber != null">job_number = #{jobNumber},</if>
            <if test="classType != null and classType != ''">class_type = #{classType},</if>
        </trim>
        where id = #{id}
    </update>

    <!--批量修改-->
    <update id="batchUpdateSysTeacherKpiFilling" parameterType="SysTeacherKpiFilling">
        <foreach collection="list" item="item" index="index" open="" close="" separator=";">
            update sys_teacher_kpi_filling
            <trim prefix="SET" suffixOverrides=",">
                <if test="item.fdyName != null and item.fdyName != ''">fdy_name = #{item.fdyName},</if>
                <if test="item.fillingYear != null and item.fillingYear != ''">filling_year = #{item.fillingYear},</if>
                <if test="item.fillingMonth != null and item.fillingMonth != ''">filling_month = #{item.fillingMonth},
                </if>
                <if test="item.completionStatus != null">completion_status = #{item.completionStatus},</if>
                <if test="item.commitStatus != null">commit_status = #{item.commitStatus},</if>
                <if test="item.auditStatus != null">audit_status = #{item.auditStatus},</if>
                <if test="item.departmentName != null and item.departmentName != ''">departmentName =
                    #{item.departmentName},
                </if>
                <if test="item.selfScoring != null">self_scoring = #{item.selfScoring},</if>
                <if test="item.finalRating != null">final_rating = #{item.finalRating},</if>
                <if test="item.roleAudit != null">role_audit = #{item.roleAudit},</if>
                <if test="item.xwOpinion != null">xw_opinion = #{item.xwOpinion},</if>
                <if test="item.dzzsjOpinion != null">dzzsj_opinion = #{item.dzzsjOpinion},</if>
                <if test="item.ksOpinion != null">ks_opinion = #{item.ksOpinion},</if>
                <if test="item.xgczOpinion != null">xgcz_opinion = #{item.xgczOpinion},</if>
                <if test="item.auditProgress != null">audit_progress = #{item.auditProgress},</if>
                <if test="item.jobNumber != null">job_number = #{item.jobNumber},</if>
            </trim>
            where id = #{item.id}
        </foreach>
    </update>

    <delete id="deleteSysTeacherKpiFillingById" parameterType="Long">
        delete
        from sys_teacher_kpi_filling
        where id = #{id}
    </delete>

    <delete id="deleteSysTeacherKpiFillingByIds" parameterType="String">
        delete from sys_teacher_kpi_filling where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
</mapper>