郑永安
2023-06-19 59e91a4e9ddaf23cebb12993c774aa899ab22d16
src/main/java/com/gk/firework/Mapper/mybatis/EnterpriseMapper.xml
对比新文件
@@ -0,0 +1,768 @@
<?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.gk.firework.Mapper.EnterpriseMapper">
    <resultMap id="BaseResultMap" type="com.gk.firework.Domain.Enterprise">
        <!--          -->
        <id column="id" jdbcType="BIGINT" property="id" />
        <result column="safetysupervision" jdbcType="VARCHAR" property="safetysupervision" />
        <result column="economicindustry" jdbcType="VARCHAR" property="economicindustry" />
        <result column="enterprisenumber" jdbcType="VARCHAR" property="enterprisenumber" />
        <result column="enterprisename" jdbcType="VARCHAR" property="enterprisename" />
        <result column="enterpriseemail" jdbcType="VARCHAR" property="enterpriseemail" />
        <result column="enterprisesize" jdbcType="VARCHAR" property="enterprisesize" />
        <result column="enterprisestatus" jdbcType="VARCHAR" property="enterprisestatus" />
        <result column="department" jdbcType="VARCHAR" property="department" />
        <result column="devicenumber" jdbcType="VARCHAR" property="devicenumber" />
        <result column="officeaddress" jdbcType="VARCHAR" property="officeaddress" />
        <result column="province" jdbcType="VARCHAR" property="province" />
        <result column="city" jdbcType="VARCHAR" property="city" />
        <result column="district" jdbcType="VARCHAR" property="district" />
        <result column="street" jdbcType="VARCHAR" property="street" />
        <result column="committee" jdbcType="VARCHAR" property="committee" />
        <result column="securitysupervisory" jdbcType="VARCHAR" property="securitysupervisory" />
        <result column="officephone" jdbcType="VARCHAR" property="officephone" />
        <result column="faxphone" jdbcType="VARCHAR" property="faxphone" />
        <result column="registeraddress" jdbcType="VARCHAR" property="registeraddress" />
        <result column="registertype" jdbcType="VARCHAR" property="registertype" />
        <result column="establishtime" jdbcType="TIMESTAMP" property="establishtime" />
        <result column="qqnumber" jdbcType="VARCHAR" property="qqnumber" />
        <result column="postcode" jdbcType="VARCHAR" property="postcode" />
        <result column="roomnumber" jdbcType="INTEGER" property="roomnumber" />
        <result column="personnumber" jdbcType="INTEGER" property="personnumber" />
        <result column="economictype" jdbcType="VARCHAR" property="economictype" />
        <result column="productioncontent" jdbcType="VARCHAR" property="productioncontent" />
        <result column="businessregisternumber" jdbcType="VARCHAR" property="businessregisternumber" />
        <result column="organizationstructurecode" jdbcType="VARCHAR" property="organizationstructurecode" />
        <result column="validstarttime" jdbcType="TIMESTAMP" property="validstarttime" />
        <result column="validendtime" jdbcType="TIMESTAMP" property="validendtime" />
        <result column="employeenumber" jdbcType="INTEGER" property="employeenumber" />
        <result column="ispaysafetyinsurance" jdbcType="BIT" property="ispaysafetyinsurance" />
        <result column="insurancecontractnumber" jdbcType="VARCHAR" property="insurancecontractnumber" />
        <result column="insurancecompany" jdbcType="VARCHAR" property="insurancecompany" />
        <result column="insureamount" jdbcType="DECIMAL" property="insureamount" />
        <result column="insurestarttime" jdbcType="TIMESTAMP" property="insurestarttime" />
        <result column="insureendtime" jdbcType="TIMESTAMP" property="insureendtime" />
        <result column="ismajorhazard" jdbcType="BIT" property="ismajorhazard" />
        <result column="isspecialequipment" jdbcType="BIT" property="isspecialequipment" />
        <result column="isoccupationalhealthinfo" jdbcType="BIT" property="isoccupationalhealthinfo" />
        <result column="isspecialpersonnel" jdbcType="BIT" property="isspecialpersonnel" />
        <result column="selfrecordingcycle" jdbcType="BIT" property="selfrecordingcycle" />
        <result column="isparententerprise" jdbcType="BIT" property="isparententerprise" />
        <result column="parententerpriseid" jdbcType="BIGINT" property="parententerpriseid" />
        <result column="parententerprisename" jdbcType="VARCHAR" property="parententerprisename" />
        <result column="infocreatetime" jdbcType="TIMESTAMP" property="infocreatetime" />
        <result column="infoupdatetime" jdbcType="TIMESTAMP" property="infoupdatetime" />
        <result column="infoupdateby" jdbcType="BIGINT" property="infoupdateby" />
        <result column="infocreateby" jdbcType="BIGINT" property="infocreateby" />
        <result column="validflag" jdbcType="BIT" property="validflag" />
        <result column="longitude" jdbcType="VARCHAR" property="longitude" />
        <result column="latitude" jdbcType="VARCHAR" property="latitude" />
        <result column="infocreatebyname" jdbcType="VARCHAR" property="infocreatebyname" />
        <result column="infoupdatebyname" jdbcType="VARCHAR" property="infoupdatebyname" />
        <result column="divideflag" jdbcType="TINYINT" property="divideflag" />
        <result column="twobitcode" jdbcType="VARCHAR" property="twobitcode" />
        <association property="legalrepresentative"
                    javaType="com.gk.firework.Domain.EnterpriseStaff"
                    column="{eid=id,type = legalrepresentative}"
                    select="select1">
        </association>
        <association property="mainprincipal"
                     javaType="com.gk.firework.Domain.EnterpriseStaff"
                     column="{eid=id,type = mainprincipal }"
                     select="select1">
        </association>
        <association property="securityofficer"
                     javaType="com.gk.firework.Domain.EnterpriseStaff"
                     column="{eid=id, type =  securityofficer }"
                     select="select1">
        </association>
        <association property="informationofficer"
                     javaType="com.gk.firework.Domain.EnterpriseStaff"
                     column="{eid=id,type = informationofficer }"
                     select="select1">
        </association>
    </resultMap>
    <update id="updateCompanyCodeAndSetDeviceIdNull" parameterType="com.gk.firework.Domain.Enterprise">
        update
            enterprise
        set
            dlcompanycode = #{dlcompanycode},
            infoupdatebyname = #{infoupdatebyname},
            infoupdateby = #{infoupdateby},
            infoupdatetime = #{infoupdatetime},
            deviceid = null
        where id = #{id}
    </update>
    <update id="updateLoginValidFlag" >
        update enterprise
        set loginvalidflag = #{flag}
        where id = #{id}
    </update>
    <delete id="deleteOne" parameterType="java.lang.Long">
        update enterprise
        set validflag = 0
        where id = #{id}
    </delete>
    <select id="selectPages" resultMap="BaseResultMap">
        select e.*,
        #{params.leagalrepresentative} legalrepresentative,
        #{params.informationofficer} informationofficer,
        #{params.mainprincipal} mainprincipal,
        #{params.securityofficer} securityofficer
        from enterprise e
        where  e.validflag = 1
        <choose>
            <when test="params.enterprisenumber != null and params.enterprisenumber != ''">
                and e.enterprisenumber = #{params.enterprisenumber}
            </when>
            <otherwise>
                <if test="params.province != null and params.province != ''">
                    and e.province = #{params.province}
                </if>
                <if test="params.city != null and params.city != ''">
                    and e.city = #{params.city}
                </if>
                <if test="params.district != null and params.district != ''">
                    and e.district = #{params.district}
                </if>
                <if test="params.street != null and params.street != ''">
                    and e.street = #{params.street}
                </if>
                <if test="params.committee != null and params.committee != ''">
                    and e.committee = #{params.committee}
                </if>
            </otherwise>
        </choose>
        <if test="params.safetySupervision != null and params.safetySupervision != ''">
            and e.safetysupervision = #{params.safetySupervision}
        </if>
        <if test="params.economicIndustry != null and params.economicIndustry != ''">
            and e.economicIndustry = #{params.economicIndustry}
        </if>
        <if test="params.valid != null and params.valid != ''">
           <if test="params.valid == 1">
               and e.validendtime &gt; now()
           </if>
            <if test="params.valid == 2">
                and e.validendtime &lt;= now()
            </if>
        </if>
        <if test="params.loginValid != null and params.loginValid != ''">
            <if test="params.loginValid > 0">
                and e.loginvalidflag = 1
                or e.loginvalidflag is null
            </if>
            <if  test="params.loginValid &lt; 0">
                and e.loginvalidflag = 0
            </if>
        </if>
        <if test="params.filterProvince != null and params.filterProvince  != ''">
            and e.province = #{params.filterProvince}
        </if>
        <if test="params.filterCity != null and  params.filterCity  != ''">
            and e.city = #{params.filterCity}
        </if>
        <if test="params.filterDistrict != null and params.filterDistrict  != ''">
            and e.district = #{params.filterDistrict}
        </if>
        <if test="params.filterStreet != null and params.filterStreet  != ''">
            and e.street = #{params.filterStreet}
        </if>
        <if test="params.filterCommittee != null and params.filterCommittee  != ''">
            and e.committee = #{params.filterCommittee}
        </if>
        <if test="params.enterprisename != null and params.enterprisename  != ''">
            and e.enterprisename like concat("%",#{params.enterprisename},"%")
        </if>
    </select>
    <select id="select1" parameterType="java.util.Map" resultType="com.gk.firework.Domain.EnterpriseStaff">
    select es.*
    from enterprisestaff es
    where belongid = #{eid}
    and type =#{type}
    </select>
    <select id="selectParentPage" resultType="com.gk.firework.Domain.Enterprise">
        select id,
        enterprisename,
        enterprisenumber,
        province,
        city,
        district,
        street,
        committee
        from enterprise
        where  validflag = 1
        <if test="params.enterprisename != null and params.enterprisename  != ''">
            and enterprisename like concat("%",#{params.enterprisename},"%")
        </if>
        <if test="params.safetysupervision != null and params.safetysupervision != ''">
            and safetysupervision = #{params.safetysupervision}
        </if>
        <if test="params.province != null and params.province  != ''">
            and province = #{params.province}
        </if>
        <if test="params.city != null and  params.city  != ''">
            and city = #{params.city}
        </if>
        <if test="params.district != null and params.district  != ''">
            and district = #{params.district}
        </if>
        <if test="params.street != null and params.street  != ''">
            and street = #{params.street}
        </if>
    </select>
    <select id="selctSimpleByNumber" resultType="com.gk.firework.Domain.Vo.EnterpriseVo">
        SELECT
       enterprise.id,
       enterprise.safetysupervision,
        enterprise.enterprisenumber,
        enterprise.enterprisename,
        enterprise.officeaddress,
       enterprise.securitysupervisory,
       enterprise.officephone,
        mainprincipal.`name` as mainperson,
        safety.`name` as safety
        FROM
       enterprise
        LEFT JOIN enterprisestaff as mainprincipal ON enterprise.id = mainprincipal.belongid and mainprincipal.type = '主要负责人'
        LEFT JOIN enterprisestaff as safety ON enterprise.id = safety.belongid and safety.type = '安全负责人'
        WHERE
        enterprise.validflag = '1'
        and enterprise.enterprisenumber = #{enterprisenumber}
        LIMIT 1
    </select>
    <select id="selectInAndOut" resultType="java.util.Map">
        SELECT IFNULL(a.salenum,0) salenum,IFNULL(b.storagenum,0) storagenum
        from
        (
        SELECT count(0) salenum,so.companynumber
        from
        saleorder  as so
        left join saleorderdetail as  sod  on sod.ordercode = so.code
        where so.companynumber= #{enterprisenumber}
        and so.createdat > #{starttime}
        ) as   a
        LEFT JOIN
        (SELECT sum(eo.num) storagenum,eo.companynumber
        from entryorder as eo
        where eo.companynumber= #{enterprisenumber}
        and eo.entrydate > #{starttime}
        )  as b
        on a.companynumber = b.companynumber
    </select>
    <select id="getAllLocation" resultType="java.util.Map">
        select
        e.enterprisename,
        e.enterprisenumber,
        e.safetysupervision,
        IFNULL(e.economicindustry,'')  economicindustry,
        IFNULL(e.officeaddress,'')  officeaddress,
        IFNULL(e.officephone,'')  officephone,
        IFNULL(e.latitude,'') latitude,
        IFNULL(e.longitude,'') longitude
        from enterprise as e
        <where>
            e.validflag = 1
            <if test="city != null and city !=''">
                and e.city = #{city}
            </if>
        </where>
    </select>
    <select id="getRetailStatisticsByArea" resultType="java.util.Map">
        select
        e.city,
        count(0) num
        from enterprise as e
        where e.province =  #{province}
        GROUP BY  e.city
    </select>
    <select id="selectExportEnterprise" resultType="com.gk.firework.Domain.Vo.EnterpriseExportVo">
        select
        e.enterprisename,
        e.enterprisenumber,
        e.securitysupervisory,
        e.safetysupervision,
        ifnull(e.province,'') province,
        ifnull(e.city,'') city,
        ifnull(e.district,'') district,
        ifnull(e.street,'') street,
        ifnull(e.committee,'') committee,
        date_format(e.validstarttime,'%Y-%m-%d') validstarttime,
        date_format(e.validendtime,'%Y-%m-%d')  validendtime,
        e.insurancecontractnumber,
        e.insureamount,
        date_format(e.insurestarttime,'%Y-%m-%d') insurestarttime,
        date_format(e.insureendtime,'%Y-%m-%d') insureendtime ,
        e.insurancecompany,
        e.personnumber,
        e.employeenumber,
        case e.ispaysafetyinsurance when null then '' when 1 then '是' when 0  then '否' end ispaysafetyinsurance,
        case e.ismajorhazard  when null then '' when 1 then '有' when 0 then '无' end ismajorhazard,
        ifnull(standardization.level,'') level
        from enterprise as e
        left join enterprisestandardization as standardization on standardization.enterpriseid = e.id and standardization.validflag = 1
        where  e.validflag = 1
        <choose>
            <when test="params.enterprisenumber != null and params.enterprisenumber != ''">
                and e.enterprisenumber = #{params.enterprisenumber}
            </when>
            <otherwise>
                <if test="params.province != null and params.province != ''">
                    and e.province = #{params.province}
                </if>
                <if test="params.city != null and params.city != ''">
                    and e.city = #{params.city}
                </if>
                <if test="params.district != null and params.district != ''">
                    and e.district = #{params.district}
                </if>
                <if test="params.street != null and params.street != ''">
                    and e.street = #{params.street}
                </if>
                <if test="params.committee != null and params.committee != ''">
                    and e.committee = #{params.committee}
                </if>
            </otherwise>
        </choose>
        <if test="params.safetySupervision != null and params.safetySupervision != ''">
            and e.safetysupervision = #{params.safetySupervision}
        </if>
        <if test="params.economicIndustry != null and params.economicIndustry != ''">
            and e.economicIndustry = #{params.economicIndustry}
        </if>
        <if test="params.valid != null and params.valid != ''">
            <if test="params.valid == 1">
                and e.validendtime &gt; now()
            </if>
            <if test="params.valid == 2">
                and e.validendtime &lt; now()
            </if>
        </if>
        <if test="params.filterProvince != null and params.filterProvince  != ''">
            and e.province = #{params.filterProvince}
        </if>
        <if test="params.filterCity != null and  params.filterCity  != ''">
            and e.city = #{params.filterCity}
        </if>
        <if test="params.filterDistrict != null and params.filterDistrict  != ''">
            and e.district = #{params.filterDistrict}
        </if>
        <if test="params.filterStreet != null and params.filterStreet  != ''">
            and e.street = #{params.filterStreet}
        </if>
        <if test="params.filterCommittee != null and params.filterCommittee  != ''">
            and e.committee = #{params.filterCommittee}
        </if>
        <if test="params.enterprisename != null and params.enterprisename  != ''">
            and e.enterprisename like concat("%",#{params.enterprisename},"%")
        </if>
        group by e.id
    </select>
    <select id="getSaleNum" resultType="java.lang.Integer">
        select count(0)
        from enterprise as e
        where e.safetysupervision != #{safetysupervision}
        and validflag = 1
    </select>
    <select id="selectSaleEnterprise" resultType="com.gk.firework.Domain.Enterprise">
        select
        e.id,
        e.enterprisename,
        e.enterprisenumber
        from enterprise as e
        <where>
            e.enterprisestatus = "ON"
            and e.validflag = 1
            <if test="params.enterprisenumber != null and params.enterprisenumber  != ''">
                and (e.enterprisenumber = #{params.enterprisenumber}
                <if test="params.subList != null and params.subList.size() > 0">
                    <foreach collection="params.subList" item="item" index="index" >
                        or  e.enterprisenumber = #{item}
                    </foreach>
                </if>
                )
            </if>
            <if test="params.enterprisename != null and params.enterprisename  != ''">
                and e.enterprisename like concat("%",#{params.enterprisename},"%")
            </if>
            <if test="params.parententerprisename != null and params.parententerprisename  != ''">
                and e.parententerprisename like concat("%",#{params.parententerprisename},"%")
            </if>
            <if test="params.safetysupervision != null and params.safetysupervision != ''">
                and e.safetysupervision = #{params.safetysupervision}
            </if>
            <if test="params.filterProvince != null and params.filterProvince  != ''">
                and e.province = #{params.filterProvince}
            </if>
            <if test="params.filterCity != null and  params.filterCity  != ''">
                and e.city = #{params.filterCity}
            </if>
            <if test="params.filterDistrict != null and params.filterDistrict  != ''">
                and e.district = #{params.filterDistrict}
            </if>
            <if test="params.filterStreet != null and params.filterStreet  != ''">
                and e.street = #{params.filterStreet}
            </if>
            <if test="params.filterCommittee != null and params.filterCommittee  != ''">
                and e.committee = #{params.filterCommittee}
            </if>
        </where>
    </select>
    <select id="countAllUndoneEnterprise" resultType="java.lang.Integer">
        select count(0)
        from enterprise as e
        <where>
            e.validflag = 1
            and e.officeaddress is  null
            and (e.enterprisestatus = 'ON'  or e.enterprisestatus is  null)
            <if test="params.province != null and params.province != ''">
                and e.province = #{params.province}
            </if>
            <if test="params.city != null and params.city != ''">
                and e.city = #{params.city}
            </if>
            <if test="params.district != null and params.district != ''">
                and e.district = #{params.district}
            </if>
            <if test="params.street != null and params.street != ''">
                and e.street = #{params.street}
            </if>
            <if test="params.committee != null and params.committee != ''">
                and e.committee = #{params.committee}
            </if>
        </where>
    </select>
    <select id="selectListUnderSupervision" resultType="com.gk.firework.Domain.Enterprise">
        select
        e.enterprisename,
        e.enterprisenumber
        from enterprise as e
        where e.validflag = 1
        <if test="params.province != null and params.province != ''">
            and e.province = #{params.province}
        </if>
        <if test="params.city != null and params.city != ''">
            and e.city = #{params.city}
        </if>
        <if test="params.district != null and params.district != ''">
            and e.district = #{params.district}
        </if>
        <if test="params.street != null and params.street != ''">
            and e.street = #{params.street}
        </if>
        <if test="params.committee != null and params.committee != ''">
            and e.committee = #{params.committee}
        </if>
        <if test="params.type == 1">
            and e.safetysupervision = #{params.safetysupervision}
        </if>
        <if test="params.type == 2">
            and e.safetysupervision != #{params.safetysupervision}
        </if>
    </select>
    <select id="selectUndoneList" resultType="com.gk.firework.Domain.Enterprise">
        select
        e.id,
        e.enterprisename,
        e.enterprisenumber,
        e.province,
        e.city,
        e.district,
        e.street,
        e.committee
        from enterprise as e
        <where>
            e.validflag = 1
            and (e.enterprisestatus = 'ON'  or e.enterprisestatus is  null)
            and e.officeaddress is  null
            <if test="params.province != null and params.province != ''">
                and e.province = #{params.province}
            </if>
            <if test="params.city != null and params.city != ''">
                and e.city = #{params.city}
            </if>
            <if test="params.district != null and params.district != ''">
                and e.district = #{params.district}
            </if>
            <if test="params.street != null and params.street != ''">
                and e.street = #{params.street}
            </if>
            <if test="params.committee != null and params.committee != ''">
                and e.committee = #{params.committee}
            </if>
            <if test="params.filterProvince != null and params.filterProvince != ''">
                and e.province = #{params.filterProvince}
            </if>
            <if test="params.filterCity != null and params.filterCity != ''">
                and e.city = #{params.filterCity}
            </if>
            <if test="params.filterDistrict != null and params.filterDistrict != ''">
                and e.district = #{params.filterDistrict}
            </if>
            <if test="params.filterStreet != null and params.filterStreet != ''">
                and e.street = #{params.filterStreet}
            </if>
            <if test="params.filterCommittee != null and params.filterCommittee != ''">
                and e.committee = #{params.filterCommittee}
            </if>
            <if test="params.enterprisename != null and params.enterprisename != ''">
                and e.enterprisename like concat("%",#{params.enterprisename},"%")
            </if>
        </where>
    </select>
    <select id="countAllEnterpriseExpired" resultType="java.lang.Integer">
        select count(0)
        from enterprise as e
        <where>
            e.validflag = 1
            and (e.enterprisestatus = 'ON'  or e.enterprisestatus is  null)
            and (e.validendtime &lt; now() or e.validendtime is null)
            <if test="params.province != null and params.province != ''">
                and e.province = #{params.province}
            </if>
            <if test="params.city != null and params.city != ''">
                and e.city = #{params.city}
            </if>
            <if test="params.district != null and params.district != ''">
                and e.district = #{params.district}
            </if>
            <if test="params.street != null and params.street != ''">
                and e.street = #{params.street}
            </if>
            <if test="params.committee != null and params.committee != ''">
                and e.committee = #{params.committee}
            </if>
        </where>
    </select>
    <select id="selectExpiredList" resultType="com.gk.firework.Domain.Enterprise">
        select
        e.id,
        e.enterprisename,
        e.enterprisenumber,
        e.province,
        e.city,
        e.district,
        e.street,
        e.committee,
        e.validstarttime,
        e.validendtime
        from enterprise as e
        <where>
            e.validflag = 1
            and (e.enterprisestatus = 'ON'  or e.enterprisestatus is  null)
            and (e.validendtime &lt; now() or e.validendtime is null)
            <if test="params.province != null and params.province != ''">
                and e.province = #{params.province}
            </if>
            <if test="params.city != null and params.city != ''">
                and e.city = #{params.city}
            </if>
            <if test="params.district != null and params.district != ''">
                and e.district = #{params.district}
            </if>
            <if test="params.street != null and params.street != ''">
                and e.street = #{params.street}
            </if>
            <if test="params.committee != null and params.committee != ''">
                and e.committee = #{params.committee}
            </if>
            <if test="params.filterProvince != null and params.filterProvince != ''">
                and e.province = #{params.filterProvince}
            </if>
            <if test="params.filterCity != null and params.filterCity != ''">
                and e.city = #{params.filterCity}
            </if>
            <if test="params.filterDistrict != null and params.filterDistrict != ''">
                and e.district = #{params.filterDistrict}
            </if>
            <if test="params.filterStreet != null and params.filterStreet != ''">
                and e.street = #{params.filterStreet}
            </if>
            <if test="params.filterCommittee != null and params.filterCommittee != ''">
                and e.committee = #{params.filterCommittee}
            </if>
            <if test="params.enterprisename != null and params.enterprisename != ''">
                and e.enterprisename like concat("%",#{params.enterprisename},"%")
            </if>
        </where>
        order by e.validendtime desc
    </select>
    <select id="getEnterpriseByLimit" resultType="com.gk.firework.Domain.Enterprise">
        select
            enterprise.id,
            enterprise.enterprisename,
            enterprise.enterprisenumber,
            enterprise.province,
            enterprise.city,
            enterprise.district
            from enterprise
        <where>
            1=1
            and enterprise.validflag = 1
            and enterprise.enterprisestatus = 'ON'
            <if test="condition.name != null and condition.name != ''">
                and enterprise.enterprisename like CONCAT('%',#{condition.name},'%')
            </if>
            <if test="condition.operator != null and condition.operator != ''">
                and (enterprise.enterprisenumber =#{condition.operator}
                <if test="condition.subList != null and condition.subList.size() > 0">
                    <foreach collection="condition.subList" item="item" index="index" >
                        or  enterprise.enterprisenumber = #{item}
                    </foreach>
                </if>
                )
            </if>
            <if test="condition.type != null and condition.type != ''">
                and enterprise.safetysupervision = #{condition.type}
            </if>
            <if test="condition.province != null and condition.province != ''">
                and enterprise.province = #{condition.province}
            </if>
            <if test="condition.city != null and condition.city != ''">
                and enterprise.city = #{condition.city}
            </if>
            <if test="condition.district != null and condition.district != ''">
                and enterprise.district = #{condition.district}
            </if>
            <if test="condition.street != null and condition.street != ''">
                and enterprise.street = #{condition.street}
            </if>
            <if test="condition.community != null and condition.community != ''">
                and enterprise.committee = #{condition.community}
            </if>
        </where>
    </select>
    <select id="getEnterpriseByLimitCount" resultType="integer">
        select
        count(*)
        from (
        select
        enterprise.id,
        enterprise.enterprisename,
        enterprise.enterprisenumber,
        enterprise.province,
        enterprise.city,
        enterprise.district
        from enterprise
        <where>
            1=1
            and enterprise.validflag = 1
            and enterprise.enterprisestatus = 'ON'
            <if test="condition.name != null and condition.name != ''">
                and enterprise.enterprisename like CONCAT('%',#{condition.name},'%')
            </if>
            <if test="condition.operator != null and condition.operator != ''">
                and (enterprise.enterprisenumber =#{condition.operator}
                <if test="condition.subList != null and condition.subList.size() > 0">
                    <foreach collection="condition.subList" item="item" index="index">
                        or enterprise.enterprisenumber = #{item}
                    </foreach>
                </if>
                )
            </if>
            <if test="condition.type != null and condition.type != ''">
                and enterprise.safetysupervision = #{condition.type}
            </if>
            <if test="condition.province != null and condition.province != ''">
                and enterprise.province = #{condition.province}
            </if>
            <if test="condition.city != null and condition.city != ''">
                and enterprise.city = #{condition.city}
            </if>
            <if test="condition.district != null and condition.district != ''">
                and enterprise.district = #{condition.district}
            </if>
            <if test="condition.street != null and condition.street != ''">
                and enterprise.street = #{condition.street}
            </if>
            <if test="condition.community != null and condition.community != ''">
                and enterprise.committee = #{condition.community}
            </if>
        </where>
        )temp
    </select>
    <select id="selectEnterpriseIdsByLocation" resultType="java.lang.Long">
        select e.id from enterprise e
        <where>
            1=1
            <if test="province != null and province != ''">
                and province = #{province}
            </if>
            <if test="city != null and city != ''">
                and city = #{city}
            </if>
            <if test="district != null and district != ''">
                and district = #{district}
            </if>
            <if test="street != null and street != ''">
                and street = #{street}
            </if>
            <if test="committee != null and committee != ''">
                and committee = #{committee}
            </if>
        </where>
    </select>
    <select id="selectEnterpriseListByLocation" resultType="com.gk.firework.Domain.Enterprise">
        select
        e.id,
        e.enterprisename,
        e.enterprisenumber,
        e.province,
        e.city,
        e.district,
        e.street,
        e.committee,
        e.validstarttime,
        e.validendtime
        from enterprise as e
        <where>
            1=1
            <if test="province != null and province != ''">
                and e.province like #{province}
            </if>
            <if test="city != null and city != ''">
                and e.city like #{city}
            </if>
            <if test="district != null and district != ''">
                and e.district like #{district}
            </if>
            <if test="street != null and street != ''">
                and e.street like #{street}
            </if>
            <if test="committee != null and committee != ''">
                and e.committee like #{committee}
            </if>
        </where>
    </select>
    <select id="selectEnterpriseListByNameLike" parameterType="string" resultType="com.gk.firework.Domain.Enterprise">
        <bind name="partten" value="'%' + name + '%'"/>
        select
        e.id,
        e.enterprisename,
        e.enterprisenumber,
        e.province,
        e.city,
        e.district,
        e.street,
        e.committee,
        e.validstarttime,
        e.validendtime
        from enterprise as e
        where e.enterprisename like #{partten}
    </select>
</mapper>