ZhiYeJianKang/职业健康平台后端/bin/mappings/modules/assessment/planMapper.xml
2025-02-20 15:25:59 +08:00

140 lines
3.7 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.hx.slj.modules.assessment.dao.PlanDao">
<resultMap id="planPOJO" type="com.hx.slj.modules.assessment.entity.Plan">
<id property="id" column="id"/>
<result property="year" column="year"/>
<result property="cycle" column="cycle"/>
<result property="title" column="title"/>
<result property="enable" column="enable"/>
<result property="sort" column="sort"/>
<result property="assessmentSystemId" column="assessment_System_Id"/>
<result property="assessmentStartDate" column="assessment_Start_Date"/>
<result property="assessmentEndDate" column="assessment_End_Date"/>
</resultMap>
<sql id="planColumns">
a.id,
a.year,
a.cycle,
a.title,
a.enable,
a.sort,
a.create_by AS "createBy.id",
a.create_date,
a.update_by AS "updateBy.id",
a.update_date,
a.remarks,
a.del_flag,
a.assessment_system_id AS "assessmentSystemId",
a.assessment_start_date AS "assessmentStartDate",
a.assessment_end_date AS "assessmentEndDate",
s.name AS "assessmentSystem.name"
</sql>
<sql id="planJoins">
LEFT JOIN assessment_system s ON s.id = a.assessment_system_id
</sql>
<select id="get" resultType="com.hx.slj.modules.assessment.entity.Plan">
SELECT
<include refid="planColumns"/>
FROM standard_plan a
<include refid="planJoins"/>
WHERE a.id = #{id}
</select>
<select id="findList" resultType="com.hx.slj.modules.assessment.entity.Plan">
SELECT
<include refid="planColumns"/>
FROM standard_plan a
<include refid="planJoins"/>
WHERE a.del_flag = #{DEL_FLAG_NORMAL}
/*是否启用*/
<if test="enable != null and enable != ''">
AND a.enable = #{enable}
</if>
/*体系id*/
<if test="assessmentSystemId != null and assessmentSystemId != ''">
AND a.assessment_system_id = #{assessmentSystemId}
</if>
/*根据年份查询*/
<if test="year != null and year != ''">
AND a.year = #{year}
</if>
/*根据名称模糊查询*/
<if test="title != null and title != ''">
AND a.title like
<if test="dbName == 'oracle'">'%'||#{title}||'%'</if>
<if test="dbName == 'mysql'">CONCAT('%', #{title}, '%')</if>
</if>
<choose>
<when test="page !=null and page.orderBy != null and page.orderBy != ''">
ORDER BY ${page.orderBy}
</when>
<otherwise>
ORDER BY a.create_date DESC
</otherwise>
</choose>
</select>
<insert id="insert">
INSERT INTO standard_plan(
id,
year,
cycle,
title,
enable,
sort,
create_by,
create_date,
update_by,
update_date,
remarks,
del_flag,
assessment_system_id,
assessment_start_date,
assessment_end_date
) VALUES (
#{id},
#{year},
#{cycle},
#{title},
#{enable},
#{sort},
#{createBy.id},
#{createDate},
#{updateBy.id},
#{updateDate},
#{remarks},
#{delFlag},
#{assessmentSystemId},
#{assessmentStartDate},
#{assessmentEndDate}
)
</insert>
<update id="update">
UPDATE standard_plan SET
year = #{year},
cycle = #{cycle},
title = #{title},
enable = #{enable},
sort = #{sort},
create_by = #{createBy.id},
create_date = #{createDate},
update_by = #{updateBy.id},
update_date = #{updateDate},
remarks = #{remarks},
del_flag = #{delFlag},
assessment_system_id = #{assessmentSystemId},
assessment_start_date = #{assessmentStartDate},
assessment_end_date =#{assessmentEndDate}
WHERE id = #{id}
</update>
<update id="delete">
UPDATE standard_plan SET
del_flag = #{DEL_FLAG_DELETE}
WHERE id = #{id}
</update>
</mapper>