郑永安
2023-09-04 3c8f3a7b74f62a9053cd9d860d8f1d37454712eb
src/main/java/com/gk/hotwork/Mapper/mybatis/SafetySelfInspectionMapper.xml
@@ -14,7 +14,7 @@
    <result column="inspection_name" property="inspectionName" jdbcType="BIGINT" />
    <result column="inspection_time" property="inspectionTime" jdbcType="BIGINT" />
    <result column="inspector" property="inspector" jdbcType="VARCHAR" />
    <result column="inspector" property="inspector" jdbcType="BIGINT" />
    <result column="status" property="status" jdbcType="VARCHAR" />
    <result column="inspector_name" property="inspectorName" jdbcType="VARCHAR" />
@@ -25,15 +25,19 @@
    from safety_self_inspection as a
    left join user as b on a.inspector = b.id and b.isdel = 0
    LEFT JOIN userroles as c on b.id = c.userid
    left join company as co on a.checked_company_id = co.id
    where a.valid_flag = 1
    <if test="params.flag != null and params.flag != '' ">
      and a.flag = #{params.flag}
    </if>
    <if test="params.inspectionName != null  and params.inspectionName != ''">
      and a.inspection_name like concat("%",#{params.inspectionName},"%")
    </if>
    <if test="params.companyid != null  and params.companyid != ''">
      and b.companyid = #{params.companyid}
    </if>
    <if test="params.checkedCompanyId != null">
      and b.checkedCompanyId = #{params.checkedCompanyId}
      and a.checked_company_id = #{params.checkedCompanyId}
    </if>
    <if test="params.checkedCompanyName != null and params.checkedCompanyName != ''">
      and a.checked_company_name like concat("%",#{params.checkedCompanyName},"%")
    </if>
    <if test="params.roleid != null ">
      and c.roleid = #{params.roleid}
@@ -47,7 +51,72 @@
    <if test="params.inspectionEndTime != null and params.inspectionEndTime != ''" >
      and a.inspection_time <![CDATA[ <= ]]> #{params.inspectionEndTime}
    </if>
    <if test="params.province != null and params.province != ''" >
      and co.province = #{params.province}
    </if>
    <if test="params.city != null and params.city != ''" >
      and co.city = #{params.city}
    </if>
    <if test="params.area != null and params.area != ''" >
      and co.area = #{params.area}
    </if>
    order by a.create_time desc
  </select>
  <select id="companyStatisticInspection" resultType="com.gk.hotwork.Domain.Do.CompanyStatisticInspectionDO">
    SELECT
      count( 1 ) checkCompanyCount,
      sum( l.endCount ) endTotal,
      sum( l.toDoCount ) toDoTotal,
      sum( l.checkCount ) checkTotal,
      sum( l.unRectifyCount ) unRectifyTotal,
      sum( l.rectifyCount ) rectifyTotal,
      sum( l.hdCount ) AS hdTotal
    FROM
      (
        SELECT
          s.checked_company_id,
          count( s.`status` = 2 OR NULL ) endCount,
          count( s.`status` = 1 OR NULL ) toDoCount,
          count( 1 ) AS checkCount,
          sum( t.unRectify ) AS unRectifyCount,
          sum( t.rectify ) AS rectifyCount,
          sum( t.hd ) AS hdCount
        FROM
          safety_self_inspection s
            INNER JOIN company c ON c.id = s.checked_company_id
            LEFT JOIN (
            SELECT
              h.self_Inspection_id,
              count( h.`status` = - 1 OR NULL ) unRectify,
              count( h.`status` = 1 OR NULL ) rectify,
              count( 1 ) hd
            FROM
              inspection_hidden_danger h
            WHERE
              h.valid_flag = 1
            GROUP BY
              h.self_Inspection_id
          ) t ON t.self_Inspection_id = s.id
        WHERE
          s.valid_flag = 1
          AND s.flag = 2
          <if test="params.startTime != null" >
            and s.inspection_time <![CDATA[ >= ]]> #{params.startTime}
          </if>
          <if test="params.endTime != null " >
            and s.inspection_time <![CDATA[ <= ]]> #{params.endTime}
          </if>
          <if test="params.province != null and params.province != ''" >
            and c.province = #{params.province}
          </if>
          <if test="params.city != null and params.city != ''" >
            and c.city = #{params.city}
          </if>
          <if test="params.area != null and params.area != ''" >
            and c.area = #{params.area}
          </if>
        GROUP BY
          s.checked_company_id
      ) l
  </select>
</mapper>