wit-park-backend/hbt-safety-supervision/hbt-safety-supervision-biz/src/main/resources/mapper/RiskMapper.xml

121 lines
6.4 KiB
XML

<?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.hbt.safety.supervision.mapper.RiskMapper">
<resultMap type="com.hbt.safety.supervision.pojo.Risk" id="RiskResult">
<result property="id" column="id" />
<result property="name" column="name" />
<result property="riskProbability" column="risk_probability" />
<result property="riskFactor" column="risk_factor" />
<result property="affectConsequences" column="affect_consequences" />
<result property="level" column="level" />
<result property="enterpriseId" column="enterprise_id" />
<result property="responsiblePersonId" column="responsible_person_id" />
<result property="riskControlMeasures" column="risk_control_measures" />
<result property="lastReviewDate" column="last_review_date" />
<result property="majorHazardSourcesId" column="major_hazard_sources_id" />
</resultMap>
<sql id="selectRiskVo">
select id, name, risk_probability, risk_factor, affect_consequences, level, enterprise_id, responsible_person_id, risk_control_measures, DATE_FORMAT(last_review_date,'%Y-%m-%d %H:%i:%S') lastReviewDate, major_hazard_sources_id from risk
</sql>
<select id="selectRiskList" parameterType="com.hbt.safety.supervision.pojo.Risk" resultMap="RiskResult">
<include refid="selectRiskVo"/>
<where>
</where>
</select>
<sql id="selectRisk">
select distinct(a.id) id, a.name name, a.risk_probability riskProbability, a.risk_factor riskFactor, a.affect_consequences affectConsequences, a.level level, a.enterprise_id enterpriseId, a.responsible_person_id responsiblePersonId, a.risk_control_measures riskControlMeasures, DATE_FORMAT(a.last_review_date,'%Y-%m-%d %H:%i:%S') lastReviewDate, a.major_hazard_sources_id majorHazardSourcesId,
b.name as enterprise,
p.name as responsiblePerson,
m.name as majorHazardSourcesName,
a.major_hazard_sources_id as majorHazardSourcesId
from risk as a
left join enterprise_information as b on a.enterprise_id = b.id
left join person as p on a.responsible_person_id = p.id
left join major_hazard_sources as m on m.id = a.major_hazard_sources_id
</sql>
<select id="selectRiskById" parameterType="String" resultType="Risk">
<include refid="selectRisk"/>
where a.id = #{id}
</select>
<insert id="insertRisk" parameterType="com.hbt.safety.supervision.pojo.Risk">
insert into risk
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="name != null">name,</if>
<if test="riskProbability != null">risk_probability,</if>
<if test="riskFactor != null">risk_factor,</if>
<if test="affectConsequences != null">affect_consequences,</if>
<if test="level != null">level,</if>
<if test="enterpriseId != null">enterprise_id,</if>
<if test="responsiblePersonId != null">responsible_person_id,</if>
<if test="riskControlMeasures != null">risk_control_measures,</if>
<if test="lastReviewDate != null">last_review_date,</if>
<if test="majorHazardSourcesId != null">major_hazard_sources_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="name != null">#{name},</if>
<if test="riskProbability != null">#{riskProbability},</if>
<if test="riskFactor != null">#{riskFactor},</if>
<if test="affectConsequences != null">#{affectConsequences},</if>
<if test="level != null">#{level},</if>
<if test="enterpriseId != null">#{enterpriseId},</if>
<if test="responsiblePersonId != null">#{responsiblePersonId},</if>
<if test="riskControlMeasures != null">#{riskControlMeasures},</if>
<if test="lastReviewDate != null">#{lastReviewDate},</if>
<if test="majorHazardSourcesId != null">#{majorHazardSourcesId},</if>
</trim>
</insert>
<update id="updateRisk" parameterType="com.hbt.safety.supervision.pojo.Risk">
update risk
<trim prefix="SET" suffixOverrides=",">
<if test="name != null">name = #{name},</if>
<if test="riskProbability != null">risk_probability = #{riskProbability},</if>
<if test="riskFactor != null">risk_factor = #{riskFactor},</if>
<if test="affectConsequences != null">affect_consequences = #{affectConsequences},</if>
<if test="level != null">level = #{level},</if>
<if test="enterpriseId != null">enterprise_id = #{enterpriseId},</if>
<if test="responsiblePersonId != null">responsible_person_id = #{responsiblePersonId},</if>
<if test="riskControlMeasures != null">risk_control_measures = #{riskControlMeasures},</if>
<if test="lastReviewDate != null">last_review_date = #{lastReviewDate},</if>
<if test="majorHazardSourcesId != null">major_hazard_sources_id = #{majorHazardSourcesId},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteRiskById" parameterType="Integer">
delete from risk where id = #{id}
</delete>
<delete id="deleteRiskByIds" parameterType="String">
delete from risk where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<select id="riskStatistics" resultType="java.util.Map">
select level as level, count(id) as num from risk group by level
</select>
<select id="selectRisks" resultType="com.hbt.safety.supervision.pojo.Risk">
select id, name, level from risk
</select>
<select id="selectRiskSubmitDats" resultType="String">
select DATE_FORMAT(submit_date,'%Y-%m-%d %H:%i:%S') as submit_date from risk where DATE_FORMAT(submit_date,'%Y-%m-%d') >= DATE_FORMAT(#{yearAgo},'%Y-%m-%d')
</select>
<select id="selectRiskSubmitDat" resultType="String">
select DATE_FORMAT(submit_date,'%Y-%m-%d') as submit_date from risk where DATE_FORMAT(submit_date,'%Y-%m-%d') >= #{startTime} and DATE_FORMAT(submit_date,'%Y-%m-%d') &lt;= #{endTime}
</select>
</mapper>