McIgnitionMapper.xml 17.2 KB
<?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.chinagas.modules.schsf.mapper.McIgnitionMapper">

    <resultMap type="com.chinagas.modules.schsf.domain.McIgnition" id="McIgnitionResult">
        <result property="id"    column="id"    />
        <result property="visitId"    column="visit_id"    />
        <result property="regionName"    column="region_name"    />
        <result property="groupName"    column="group_name"    />
        <result property="companyName"    column="company_name"    />
        <result property="companyCode"    column="company_code"    />
        <result property="userProvince"    column="user_province"    />
        <result property="userCity"    column="user_city"    />
        <result property="userDistrict"    column="user_district"    />
        <result property="userStreet"    column="user_street"    />
        <result property="vlgOrCmty"    column="vlg_or_cmty"    />
        <result property="urbRurCls"    column="urb_rur_cls"    />
        <result property="userDetailedAddress"    column="user_detailed_address"    />
        <result property="userCode"    column="user_code"    />
        <result property="userName"    column="user_name"    />
        <result property="userPhone"    column="user_phone"    />
        <result property="ignCnfStatusCode"    column="ign_cnf_status_code"    />
        <result property="ignTime"    column="ign_time"    />
        <result property="nIgnRsn"    column="n_ign_rsn"    />
        <result property="cnfPersonId"    column="cnf_person_id"    />
        <result property="cnfPersonName"    column="cnf_person_name"    />
        <result property="cnfPersonAccount"    column="cnf_person_account"    />
        <result property="remark"    column="remark"    />
        <result property="createTime"    column="create_time"    />
        <result property="createBy"    column="create_by"    />
        <result property="updateTime"    column="update_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="defFlag"    column="def_flag"    />
        <result property="userIdCard"    column="user_id_card"    />
    </resultMap>

    <sql id="selectMcIgnitionVo">
        select t.id, t.visit_id, t.region_name, t.group_name, t.company_name, t.company_code, t.user_province, t.user_city,
               t.user_district, t.user_street, t.vlg_or_cmty, t.urb_rur_cls, t.user_detailed_address,
               t.user_code, t.user_name, t.user_phone, t.ign_cnf_status_code, t.ign_time, t.n_ign_rsn, t.cnf_person_id,
               t.cnf_person_name, t.cnf_person_account, t.remark, t.create_time, t.create_by, t.update_time,
               t.update_by, t.def_flag,t.status_code,t.status_name,t.user_id_card
        from mc_ignition t
     left join sys_user u on u.user_id = t.create_by
     left join sys_dept d on d.dept_id = t.company_code
    </sql>

    <select id="selectMcIgnitionList" parameterType="com.chinagas.modules.schsf.domain.McIgnition" resultMap="McIgnitionResult">
        <include refid="selectMcIgnitionVo"/>
        <where>
            <if test="visitId != null "> and t.visit_id = #{visitId}</if>
            <if test="regionName != null  and regionName != ''"> and t.region_name like concat('%', #{regionName}, '%')</if>
            <if test="groupName != null  and groupName != ''"> and t.group_name like concat('%', #{groupName}, '%')</if>
            <if test="companyName != null  and companyName != ''"> and t.company_name like concat('%', #{companyName}, '%')</if>
            <if test="companyCode != null  and companyCode != ''"> and t.company_code = #{companyCode}</if>
            <if test="userProvince != null  and userProvince != ''"> and t.user_province = #{userProvince}</if>
            <if test="userCity != null  and userCity != ''"> and t.user_city = #{userCity}</if>
            <if test="userDistrict != null  and userDistrict != ''"> and t.user_district = #{userDistrict}</if>
            <if test="userStreet != null  and userStreet != ''"> and t.user_street = #{userStreet}</if>
            <if test="vlgOrCmty != null  and vlgOrCmty != ''"> and t.vlg_or_cmty = #{vlgOrCmty}</if>
            <if test="urbRurCls != null  and urbRurCls != ''"> and t.urb_rur_cls = #{urbRurCls}</if>
            <if test="userDetailedAddress != null  and userDetailedAddress != ''"> and t.user_detailed_address = #{userDetailedAddress}</if>
            <if test="userCode != null  and userCode != ''"> and t.user_code = #{userCode}</if>
            <if test="userName != null  and userName != ''"> and t.user_name like concat('%', #{userName}, '%')</if>
            <if test="userPhone != null  and userPhone != ''"> and t.user_phone = #{userPhone}</if>
            <if test="ignCnfStatusCode != null  and ignCnfStatusCode != ''"> and t.ign_cnf_status_code = #{ignCnfStatusCode}</if>
            <if test="ignTime != null "> and t.ign_time = #{ignTime}</if>
            <if test="nIgnRsn != null  and nIgnRsn != ''"> and t.n_ign_rsn = #{nIgnRsn}</if>
            <if test="cnfPersonId != null "> and t.cnf_person_id = #{cnfPersonId}</if>
            <if test="cnfPersonName != null  and cnfPersonName != ''"> and t.cnf_person_name like concat('%', #{cnfPersonName}, '%')</if>
            <if test="cnfPersonAccount != null  and cnfPersonAccount != ''"> and t.cnf_person_account = #{cnfPersonAccount}</if>
            <if test="defFlag != null  and defFlag != ''"> and t.def_flag = #{defFlag}</if>
            <if test="statusCode != null  and statusCode != ''"> and t.status_code = #{statusCode}</if>
            <if test="statusName != null  and statusName != ''"> and t.status_name = #{statusName}</if>
            <!-- 数据范围过滤 -->
            ${params.dataScope}
        </where>
        order by t.update_time desc
    </select>

    <select id="selectMcIgnitionById" parameterType="Long" resultMap="McIgnitionResult">
        <include refid="selectMcIgnitionVo"/>
        where id = #{id}
    </select>

    <insert id="insertMcIgnition" parameterType="com.chinagas.modules.schsf.domain.McIgnition"   useGeneratedKeys="true" keyProperty="id">
        insert into mc_ignition
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="visitId != null">visit_id,</if>
            <if test="regionName != null and regionName != ''">region_name,</if>
            <if test="groupName != null and groupName != ''">group_name,</if>
            <if test="companyName != null and companyName != ''">company_name,</if>
            <if test="companyCode != null and companyCode != ''">company_code,</if>
            <if test="userProvince != null">user_province,</if>
            <if test="userCity != null">user_city,</if>
            <if test="userDistrict != null">user_district,</if>
            <if test="userStreet != null">user_street,</if>
            <if test="vlgOrCmty != null">vlg_or_cmty,</if>
            <if test="urbRurCls != null">urb_rur_cls,</if>
            <if test="userDetailedAddress != null">user_detailed_address,</if>
            <if test="userCode != null">user_code,</if>
            <if test="userName != null and userName != ''">user_name,</if>
            <if test="userPhone != null and userPhone != ''">user_phone,</if>
            <if test="ignCnfStatusCode != null and ignCnfStatusCode != ''">ign_cnf_status_code,</if>
            <if test="ignTime != null">ign_time,</if>
            <if test="nIgnRsn != null">n_ign_rsn,</if>
            <if test="cnfPersonId != null">cnf_person_id,</if>
            <if test="cnfPersonName != null">cnf_person_name,</if>
            <if test="cnfPersonAccount != null">cnf_person_account,</if>
            <if test="remark != null">remark,</if>
            <if test="createTime != null">create_time,</if>
            <if test="createBy != null and createBy != ''">create_by,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="updateBy != null and updateBy != ''">update_by,</if>
            <if test="defFlag != null and defFlag != ''">def_flag,</if>
            <if test="statusCode != null">status_code,</if>
            <if test="statusName != null">status_name,</if>
            <if test="userIdCard != null">user_id_card,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id},</if>
            <if test="visitId != null">#{visitId},</if>
            <if test="regionName != null and regionName != ''">#{regionName},</if>
            <if test="groupName != null and groupName != ''">#{groupName},</if>
            <if test="companyName != null and companyName != ''">#{companyName},</if>
            <if test="companyCode != null and companyCode != ''">#{companyCode},</if>
            <if test="userProvince != null">#{userProvince},</if>
            <if test="userCity != null">#{userCity},</if>
            <if test="userDistrict != null">#{userDistrict},</if>
            <if test="userStreet != null">#{userStreet},</if>
            <if test="vlgOrCmty != null">#{vlgOrCmty},</if>
            <if test="urbRurCls != null">#{urbRurCls},</if>
            <if test="userDetailedAddress != null">#{userDetailedAddress},</if>
            <if test="userCode != null">#{userCode},</if>
            <if test="userName != null and userName != ''">#{userName},</if>
            <if test="userPhone != null and userPhone != ''">#{userPhone},</if>
            <if test="ignCnfStatusCode != null and ignCnfStatusCode != ''">#{ignCnfStatusCode},</if>
            <if test="ignTime != null">#{ignTime},</if>
            <if test="nIgnRsn != null">#{nIgnRsn},</if>
            <if test="cnfPersonId != null">#{cnfPersonId},</if>
            <if test="cnfPersonName != null">#{cnfPersonName},</if>
            <if test="cnfPersonAccount != null">#{cnfPersonAccount},</if>
            <if test="remark != null">#{remark},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="createBy != null and createBy != ''">#{createBy},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="updateBy != null and updateBy != ''">#{updateBy},</if>
            <if test="defFlag != null and defFlag != ''">#{defFlag},</if>
            <if test="statusCode != null">#{statusCode},</if>
            <if test="statusName != null">#{statusName},</if>
            <if test="userIdCard != null">#{userIdCard},</if>
         </trim>
    </insert>

    <update id="updateMcIgnition" parameterType="com.chinagas.modules.schsf.domain.McIgnition">
        update mc_ignition
        <trim prefix="SET" suffixOverrides=",">
            <if test="visitId != null">visit_id = #{visitId},</if>
            <if test="regionName != null and regionName != ''">region_name = #{regionName},</if>
            <if test="groupName != null and groupName != ''">group_name = #{groupName},</if>
            <if test="companyName != null and companyName != ''">company_name = #{companyName},</if>
            <if test="companyCode != null and companyCode != ''">company_code = #{companyCode},</if>
            <if test="userProvince != null">user_province = #{userProvince},</if>
            <if test="userCity != null">user_city = #{userCity},</if>
            <if test="userDistrict != null">user_district = #{userDistrict},</if>
            <if test="userStreet != null">user_street = #{userStreet},</if>
            <if test="vlgOrCmty != null">vlg_or_cmty = #{vlgOrCmty},</if>
            <if test="urbRurCls != null">urb_rur_cls = #{urbRurCls},</if>
            <if test="userDetailedAddress != null">user_detailed_address = #{userDetailedAddress},</if>
            <if test="userCode != null">user_code = #{userCode},</if>
            <if test="userName != null and userName != ''">user_name = #{userName},</if>
            <if test="userPhone != null and userPhone != ''">user_phone = #{userPhone},</if>
            <if test="ignCnfStatusCode != null and ignCnfStatusCode != ''">ign_cnf_status_code = #{ignCnfStatusCode},</if>
            <if test="ignTime != null">ign_time = #{ignTime},</if>
            <if test="nIgnRsn != null">n_ign_rsn = #{nIgnRsn},</if>
            <if test="cnfPersonId != null">cnf_person_id = #{cnfPersonId},</if>
            <if test="cnfPersonName != null">cnf_person_name = #{cnfPersonName},</if>
            <if test="cnfPersonAccount != null">cnf_person_account = #{cnfPersonAccount},</if>
            <if test="remark != null">remark = #{remark},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="createBy != null and createBy != ''">create_by = #{createBy},</if>
            <if test="updateTime != null">update_time = #{updateTime},</if>
            <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
            <if test="defFlag != null and defFlag != ''">def_flag = #{defFlag},</if>
            <if test="statusCode != null">status_code = #{statusCode},</if>
            <if test="statusName != null">status_name = #{statusName},</if>
            <if test="userIdCard != null">user_id_card = #{userIdCard},</if>
        </trim>
        where id = #{id}
    </update>

    <delete id="deleteMcIgnitionById" parameterType="Long">
        delete from mc_ignition where id = #{id}
    </delete>

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


    <select id="selectMcIgnitionParamList" parameterType="com.chinagas.modules.schsf.domain.McIgnition" resultMap="McIgnitionResult">
        <include refid="selectMcIgnitionVo"/>
        where 1=1
            and t.status_code !='MAINTENANCE'
            and t.def_flag ='0'
            and t.region_name  = #{regionName}
            and t.group_name = #{groupName}
            and t.company_name = #{companyName}
            and t.company_code = #{companyCode}
            and t.user_province = #{userProvince}
            and t.user_city = #{userCity}
            and t.user_district = #{userDistrict}
            and t.user_street = #{userStreet}
            and t.vlg_or_cmty = #{vlgOrCmty}
    </select>

    <select id="selectMcIgnitionNodeUserList" resultType="com.chinagas.modules.schsf.domain.dto.NodeUsersDto" parameterType="String">
        SELECT DISTINCT us.user_name,us.nick_name,un.user_id,un.ding_talk_union_id,un.ding_talk_user_id
        FROM sys_menu menu
        INNER JOIN sys_role_menu roleMenu on roleMenu.menu_id=menu.menu_id
        INNER JOIN sys_role role on role.role_id= roleMenu.role_id
        INNER JOIN sys_user_role userRole on userRole.role_id = role.role_id
        INNER JOIN sys_user us on us.user_id = userRole.user_id
        LEFT JOIN  sys_user_unite un on un.user_id=us.user_id
        WHERE menu.perms=#{nodeType,jdbcType=VARCHAR}
        and role.data_scope='1'
        UNION
        SELECT DISTINCT us.user_name,us.nick_name,un.user_id,un.ding_talk_union_id,un.ding_talk_user_id
        FROM sys_menu menu
        INNER JOIN sys_role_menu roleMenu on roleMenu.menu_id=menu.menu_id
        INNER JOIN sys_role role on role.role_id= roleMenu.role_id
        INNER JOIN sys_user_role userRole on userRole.role_id = role.role_id
        INNER JOIN sys_user us on us.user_id = userRole.user_id
        INNER JOIN sys_user_dept userDept  on userDept.user_id=us.user_id and userDept.dept_id in ( SELECT ignition.company_code FROM mc_ignition ignition WHERE ignition.id= #{id})
        LEFT JOIN  sys_user_unite un on un.user_id=us.user_id
        WHERE menu.perms=#{nodeType,jdbcType=VARCHAR}
        and role.data_scope='3'
        UNION
        SELECT DISTINCT us.user_name,us.nick_name,un.user_id,un.ding_talk_union_id,un.ding_talk_user_id
        FROM sys_menu menu
        INNER JOIN sys_role_menu roleMenu on roleMenu.menu_id=menu.menu_id
        INNER JOIN sys_role role on role.role_id= roleMenu.role_id
        INNER JOIN sys_user_role userRole on userRole.role_id = role.role_id
        INNER JOIN sys_user us on us.user_id = userRole.user_id
        INNER JOIN sys_user_dept userDept  on userDept.user_id=us.user_id
        INNER JOIN sys_dept dept on dept.dept_id =userDept.dept_id
        INNER JOIN sys_dept dept2 on dept2.dept_id in (SELECT a.dept_id FROM sys_dept a WHERE a.dept_id = dept.dept_id or find_in_set(  dept.parent_id , ancestors ) )
        and dept2.dept_id  = (SELECT ignition.company_code FROM mc_ignition ignition  WHERE ignition.id= #{id} )
        LEFT JOIN  sys_user_unite un on un.user_id=us.user_id
        WHERE menu.perms= #{nodeType,jdbcType=VARCHAR}
        and role.data_scope='4'
        UNION
        SELECT DISTINCT us.user_name,us.nick_name,un.user_id,un.ding_talk_union_id,un.ding_talk_user_id
        FROM sys_menu menu
        INNER JOIN sys_role_menu roleMenu on roleMenu.menu_id=menu.menu_id
        INNER JOIN sys_role role on role.role_id= roleMenu.role_id
        INNER JOIN sys_user_role userRole on userRole.role_id = role.role_id and userRole.user_id = (SELECT ignition.create_by FROM mc_ignition ignition WHERE ignition.id= #{id} )
        INNER JOIN sys_user us on us.user_id = userRole.user_id
        LEFT JOIN  sys_user_unite un on un.user_id=us.user_id
        WHERE menu.perms=#{nodeType,jdbcType=VARCHAR}
        and role.data_scope='5'
    </select>
</mapper>