<?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.zcloud.mapper.datasource.comprehensive.TrafficSecurityManagementStaffingMapper">
    <!--表名 -->
    <sql id="tableName">
        BUS_TRAFFIC_MANAGEMENT_STAFFING
    </sql>

    <!--数据字典表名 -->
    <sql id="dicTableName">
        SYS_DICTIONARIES
    </sql>
    <!-- 字段 -->
    <sql id="Field">
        f.STAFFING_ID,
        f.SYSTEMNAME,
        f.COMPLETIONSTATUS,
        f.VALIDSTATUS,
        f.OPERATINGCOMPANY,
        f.OPERATIONTYPE,
        f.EXPIRYDATE,
        f.ATTACHMENT_ROUTE,
        f.USER_ID,
        f.ISDELETE,
        f.DELETOR,
        f.DELETORNAME,
        f.DELETETIME,
        f.CREATOR,
        f.CREATORNAME,
        f.CREATETIME,
        f.OPERATOR,
        f.OPERATORNAME,
        f.OPERATTIME
    </sql>

    <!-- 字段用于新增 -->
    <sql id="Field2">
        STAFFING_ID,
        SYSTEMNAME,
        COMPLETIONSTATUS,
        VALIDSTATUS,
        OPERATINGCOMPANY,
        OPERATIONTYPE,
        EXPIRYDATE,
        ATTACHMENT_ROUTE,
        USER_ID,
        ISDELETE,
        DELETOR,
        DELETORNAME,
        DELETETIME,
        CREATOR,
        CREATORNAME,
        CREATETIME,
        OPERATOR,
        OPERATORNAME,
        OPERATTIME
    </sql>

    <!-- 字段值 -->
    <sql id="FieldValue">
        #{STAFFING_ID},
        #{SYSTEMNAME},
        #{COMPLETIONSTATUS},
        #{VALIDSTATUS},
        #{OPERATINGCOMPANY},
        #{OPERATIONTYPE},
        #{EXPIRYDATE},
        #{ATTACHMENT_ROUTE},
        #{USER_ID},
        #{ISDELETE},
        #{DELETOR},
        #{DELETORNAME},
        #{DELETETIME},
        #{CREATOR},
        #{CREATORNAME},
        #{CREATETIME},
        #{OPERATOR},
        #{OPERATORNAME},
        #{OPERATTIME}
    </sql>

    <!-- 新增-->
    <insert id="save" parameterType="pd">
        insert into
        <include refid="tableName"></include>
        (
        <include refid="Field2"></include>
        ) values (
        <include refid="FieldValue"></include>
        )
    </insert>

    <!-- 修改 -->
    <update id="edit" parameterType="pd">
        update
        <include refid="tableName"></include>
        set
        OPERATOR = #{OPERATOR},
        OPERATORNAME = #{OPERATORNAME},
        OPERATTIME = #{OPERATTIME},
        ATTACHMENT_ROUTE=#{ATTACHMENT_ROUTE}
        where
        STAFFING_ID = #{STAFFING_ID}
    </update>

    <!-- 删除-->
    <delete id="delete" parameterType="pd">
        update
        <include refid="tableName"></include>
        set
        ISDELETE = '1',
        DELETOR = #{DELETOR},
        DELETETIME = #{DELETETIME}
        where
        STAFFING_ID = #{STAFFING_ID}
    </delete>

    <!--列表-->
    <select id="datalistPage" parameterType="page" resultType="pd">
        select
        f.*,
        i.CORP_NAME
        from
        <include refid="tableName"></include> f
        left join bus_corp_info i on f.OPERATINGCOMPANY = i.CORPINFO_ID
        where f.ISDELETE = '0'
        <if test="pd.SYSTEMNAME != null and pd.SYSTEMNAME != ''"><!-- 关键词检索-制度名称 -->
            and f.SYSTEMNAME = #{pd.SYSTEMNAME}
        </if>
        <if test="pd.COMPLETIONSTATUS != null and pd.COMPLETIONSTATUS != ''"><!-- 关键词检索-完成状态 -->
            and f.COMPLETIONSTATUS = #{pd.COMPLETIONSTATUS}
        </if>
        <if test="pd.VALIDSTATUS != null and pd.VALIDSTATUS != ''"><!-- 关键词检索-有效状态 -->
            and f.VALIDSTATUS = #{pd.VALIDSTATUS}
        </if>
        <if test="pd.OPERATIONTYPE != null and pd.OPERATIONTYPE != ''"><!-- 关键词检索-经营类型 -->
            and f.OPERATIONTYPE = #{pd.OPERATIONTYPE}
        </if>
    </select>

    <select id="findById" resultType="com.zcloud.entity.PageData" parameterType="com.zcloud.entity.PageData">
        select
        <include refid="Field"></include>
        from
        <include refid="tableName"></include> f
        where
        f.STAFFING_ID = #{STAFFING_ID}
    </select>

</mapper>