2022-09-16 15:07:17 +08:00
<?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.rzyc.mapper.RkSourcesMapper" >
<!-- 通用查询映射结果 -->
<resultMap id= "BaseResultMap" type= "com.rzyc.model.RkSources" >
<id column= "source_id" property= "sourceId" />
<result column= "enterprise_id" property= "enterpriseId" />
<result column= "ent_name" property= "entName" />
<result column= "orgcode" property= "orgcode" />
<result column= "street_code" property= "streetCode" />
<result column= "community_code" property= "communityCode" />
<result column= "lon" property= "lon" />
<result column= "lat" property= "lat" />
<result column= "xindex" property= "xindex" />
<result column= "yindex" property= "yindex" />
<result column= "document_id" property= "documentId" />
<result column= "base_inclass_id" property= "baseInclassId" />
<result column= "palce" property= "palce" />
<result column= "rk_source_id" property= "rkSourceId" />
<result column= "type_id" property= "typeId" />
<result column= "hurt_type_id" property= "hurtTypeId" />
<result column= "is_harmful_gas" property= "isHarmfulGas" />
<result column= "is_influential" property= "isInfluential" />
<result column= "details" property= "details" />
<result column= "personnel_num" property= "personnelNum" />
<result column= "price" property= "price" />
<result column= "possibility" property= "possibility" />
<result column= "seriousness" property= "seriousness" />
<result column= "risk_grade" property= "riskGrade" />
<result column= "engineering" property= "engineering" />
<result column= "measures" property= "measures" />
<result column= "created" property= "created" />
<result column= "modified" property= "modified" />
<result column= "modify_time" property= "modifyTime" />
<result column= "create_time" property= "createTime" />
<result column= "controlled" property= "controlled" />
<result column= "status" property= "status" />
<result column= "infrastructure" property= "infrastructure" />
<result column= "sourceName" property= "sourceName" />
<result column= "typeName" property= "typeName" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id= "Base_Column_List" >
source_id, enterprise_id, EntName, orgcode, street_code, community_code, lon, lat, xindex, yindex,document_id, BaseInClassId, palce, rk_source_id, type_id, hurt_type_id, is_harmful_gas, is_influential, details, personnel_num, price, possibility, seriousness, risk_grade, engineering, measures, created, modified, modify_time, create_time, controlled, status, infrastructure
</sql>
<!-- 风险源列表 -->
<select id= "sourcesList" resultMap= "BaseResultMap" >
SELECT rt.name sourceName, ty.`name` typeName, rs.* FROM `rk_sources` rs
LEFT JOIN `rk_risk_type` rt ON rs.rk_source_id = rt.`type_id`
LEFT JOIN `rk_risk_type` ty ON rs.type_id = rt.`type_id`
WHERE (rs.palce like #{condition} or rs.details like #{condition})
<if test= "null != enterpriseId and '' != enterpriseId" >
and rs.`enterprise_id` = #{enterpriseId}
</if>
<if test= "null != riskGrade" >
and rs.risk_grade = #{riskGrade}
</if>
AND rs.del_state = 1
ORDER BY rs.`modify_time` DESC
</select>
<!-- 需要标记的危险源列表 -->
<select id= "findByIndex" resultMap= "BaseResultMap" >
SELECT rt.name sourceName, ty.`name` typeName, rs.*
FROM `rk_sources` rs
LEFT JOIN `rk_risk_type` rt ON rs.rk_source_id = rt.`type_id`
LEFT JOIN `rk_risk_type` ty ON rs.type_id = rt.`type_id`
WHERE rs.`enterprise_id` = #{enterpriseId}
AND rs.`xindex` = ''
AND rs.del_state = 1
ORDER BY rs.`modify_time` DESC
</select>
<!-- 已经标记的危险源列表 -->
<select id= "signedSource" resultMap= "BaseResultMap" >
SELECT rt.name sourceName, ty.`name` typeName, rs.*
FROM `rk_sources` rs
LEFT JOIN `rk_risk_type` rt ON rs.rk_source_id = rt.`type_id`
LEFT JOIN `rk_risk_type` ty ON rs.type_id = rt.`type_id`
WHERE rs.`enterprise_id` = #{enterpriseId}
and rs.document_id = #{documentId}
AND rs.`xindex` != ''
AND rs.del_state = 1
ORDER BY rs.`modify_time` DESC
</select>
2023-03-20 09:25:09 +08:00
<select id= "sourcesEntStatistic" resultType= "com.rzyc.model.RkSourceStatistic" >
select count(distinct risk_grade) riskTypeCount ,count(se.SysEnterpriseId) entCount,bil.IndustryClassName
,sum(case when risk_grade = 1 then 1 else 0 end)as lowRisk,sum(case when risk_grade = 2 then 1 else 0 end) as generalRisk,
sum(case when risk_grade = 3 then 1 else 0 end)as greaterRisk,sum(case when risk_grade = 4 then 1 else 0 end)as majorRisk
from rk_sources rs
left join sysenterprise se on rs.enterprise_id = se.SysEnterpriseId
left join baseinclass bil on rs.base_inclass_id = bil.BaseInClassId
where rs.del_state= 1
<if test= "null != industryId and '' != industryId" >
and rs.base_inclass_id = #{industryId}
</if>
group by rs.base_inclass_id
</select>
2022-09-16 15:07:17 +08:00
<!-- 取消危险源标记 -->
<update id= "changeIndex" >
update rk_sources set xindex = '',yindex = ''
where source_id = #{sourceId}
</update>
2023-03-14 16:54:21 +08:00
<!-- 风险源分页查询 -->
<select id= "selectPageRkSources" parameterType= "com.rzyc.bean.risk.RkSourcesDto" resultMap= "BaseResultMap" >
SELECT rks.`name` as rk_source_id, rt.`name` as type_id, rs.palce,rs.possibility,rs.seriousness,rs.controlled,rs.source_id,
rs.enterprise_id,rs.status,rs.risk_grade,rs.infrastructure,rs.details,rs.engineering,rs.measures,rs.created,
(case rs.possibility WHEN '1' THEN '基本不可能' WHEN '2' THEN '较不可能' WHEN '3' THEN '可能' WHEN '4' THEN '较可能' WHEN '5' THEN '很可能' else '未知' END )possibilityName,
(case rs.seriousness WHEN '1' THEN '很小' WHEN '2' THEN '小' WHEN '3' THEN '一般' WHEN '4' THEN '大' WHEN '5' THEN '很大' else '未知' END )seriousnessName,
(case rs.risk_grade WHEN '1' THEN '低' WHEN '2' THEN '低' WHEN '3' THEN '一般' WHEN '4' THEN '较大' WHEN '5' THEN '重大' else '未知' END )riskgradeName
FROM rk_sources rs
LEFT JOIN rk_risk_type rt
on rs.type_id = rt.type_id
LEFT JOIN rk_risk_type rks
on rks.type_id = rs.rk_source_id
WHERE 1 = 1
and rs.enterprise_id = #{enterpriseId}
<if test= "sourceId != null and sourceId != ''" >
and rs.source_id = #{sourceId}
</if>
<if test= "codition != null and codition != ''" >
and (rs.palce like concat(concat("%",#{codition}),"%")
or rks.`name` like concat(concat("%",#{codition}),"%")
or rs.possibility like concat(concat("%",#{codition}),"%")
or rs.seriousness like concat(concat("%",#{codition}),"%"))
</if>
<if test= "typeId != null and typeId != '' " >
and rs.type_id = #{typeId}
</if>
<if test= "riskgrade != null" >
and rs.risk_grade = #{riskgrade}
</if>
<if test= "status != null " >
and rs.status = #{status}
</if>
ORDER BY rs.modify_time ASC
</select>
2022-09-16 15:07:17 +08:00
</mapper>