zf
2023-08-30 9ca0dc6e7833715b875cc9b6b91d5c497b2bae8b
src/main/java/com/gk/hotwork/Mapper/mybatis/CompanyInfoMapper.xml
@@ -28,6 +28,7 @@
    id,code,company, contactname, contactphone, ismain, province, city, area, town, community, isdel,
    createdby,createddate, lastmodifiedby, lastmodifieddate, longitude, latitude, isbanned
  </sql>
<!--
  <select id="selectDataGrid" resultType="com.gk.hotwork.Domain.CompanyInfo">
    select *
    from company
@@ -37,14 +38,17 @@
      <if test="condition.company != null and condition.company !=''">
        and company like concat('%',#{condition.company},'%')
      </if>
      <if test="condition.companyid != null ">
        and id = #{condition.companyid}
      </if>
      <if test="condition.province != null and condition.province !=''">
        and province like concat('%',#{condition.province},'%')
        and province = #{condition.province}
      </if>
      <if test="condition.city != null and condition.city !=''">
        and city like concat('%',#{condition.city},'%')
        and city = #{condition.city}
      </if>
      <if test="condition.area != null and condition.area !=''">
        and area like concat('%',#{condition.area},'%')
        and area = #{condition.area}
      </if>
      <if test="condition.town != null and condition.town !=''">
        and town like concat('%',#{condition.town},'%')
@@ -57,6 +61,45 @@
      </if>
    </where>
  </select>
-->
  <select id="selectDataGrid" resultType="com.gk.hotwork.Domain.CompanyInfo">
    select c.*
    from
    (select *
    from company
    <where>
      1=1
      and isdel = 0
      <if test="condition.province != null and condition.province !=''">
        and province = #{condition.province}
      </if>
      <if test="condition.city != null and condition.city !=''">
        and city = #{condition.city}
      </if>
      <if test="condition.area != null and condition.area !=''">
        and area = #{condition.area}
      </if>
    </where>
    union
    select *
    from company
    <where>1=1
      and
      isdel = 0
      and province in(null,'')
    </where>) c
    <where>
        1=1
      <if test="condition.company != null and condition.company !=''">
        and c.company like concat('%',#{condition.company},'%')
      </if>
      <if test="condition.companyid != null ">
        and c.id = #{condition.companyid}
      </if>
    </where>
  </select>
  <select id="selectExistByName" resultType="com.gk.hotwork.Domain.CompanyInfo">
    select *
    from company
@@ -84,4 +127,85 @@
    </if>
    limit 1
  </select>
  <select id="selectCompanyList" resultType="com.gk.hotwork.Domain.CompanyInfo">
    select *
    from company
    <where>
      1=1
      and isdel = 0
      <if test="query.companyid != null and query.companyid !=''">
        and id = #{query.companyid}
      </if>
      <if test="query.company != null and query.company !=''">
        and company like concat('%',#{query.company},'%')
      </if>
      <if test="query.province != null and query.province !=''">
        and province = #{query.province}
      </if>
      <if test="query.city != null and query.city !=''">
        and city = #{query.city}
      </if>
      <if test="query.area != null and query.area !=''">
        and area = #{query.area}
      </if>
    </where>
  </select>
  <select id="getCountByArea" resultType="java.lang.Integer">
    SELECT count(*) FROM company
    where isdel = 0
    <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.area != null and params.area !=''">
      and area = #{params.area}
    </if>
  </select>
  <select id="getUncheckCompanyByArea"  resultType="com.gk.hotwork.Domain.CompanyInfo">
    SELECT
      c1.*
    FROM
      company c1
    WHERE
      c1.isdel = 0
      <if test="query.province != null and query.province !=''">
        and c1.province = #{query.province}
      </if>
      <if test="query.city != null and query.city !=''">
        and c1.city = #{query.city}
      </if>
      <if test="query.area != null and query.area !=''">
        and c1.area = #{query.area}
      </if>
      AND c1.id NOT IN (
      SELECT
        s.checked_company_id
      FROM
        safety_self_inspection s
          INNER JOIN company c ON c.id = s.checked_company_id
      WHERE
        s.valid_flag = 1
        AND s.flag = 2
        <if test="query.province != null and query.province !=''">
          and c.province = #{query.province}
        </if>
        <if test="query.city != null and query.city !=''">
          and c.city = #{query.city}
        </if>
        <if test="query.area != null and query.area !=''">
          and c.area = #{query.area}
        </if>
        <if test="query.startTime != null" >
          and s.inspection_time <![CDATA[ >= ]]> #{query.startTime}
        </if>
        <if test="query.endTime != null" >
          and s.inspection_time <![CDATA[ <= ]]> #{query.endTime}
        </if>
      GROUP BY
        s.checked_company_id
    )
  </select>
</mapper>