273 lines
11 KiB
XML
273 lines
11 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.xinelu.manage.mapper.propagandainfo.PropagandaInfoMapper">
|
|
|
|
<resultMap type="com.xinelu.manage.domain.propagandainfo.PropagandaInfo" id="PropagandaInfoResult">
|
|
<result property="id" column="id"/>
|
|
<result property="hospitalAgencyId" column="hospital_agency_id"/>
|
|
<result property="hospitalAgencyName" column="hospital_agency_name"/>
|
|
<result property="departmentId" column="department_id"/>
|
|
<result property="departmentName" column="department_name"/>
|
|
<result property="propagandaTitle" column="propaganda_title"/>
|
|
<result property="propagandaType" column="propaganda_type"/>
|
|
<result property="propagandaCode" column="propaganda_code"/>
|
|
<result property="propagandaStatus" column="propaganda_status"/>
|
|
<result property="propagandaContent" column="propaganda_content"/>
|
|
<result property="propagandaCoverPath" column="propaganda_cover_path"/>
|
|
<result property="articleSummary" column="article_summary"/>
|
|
<result property="voicebroadcast" column="voicebroadcast"/>
|
|
<result property="diseaseTypeId" column="disease_type_id"/>
|
|
<result property="diseaseTypeName" column="disease_type_name"/>
|
|
<result property="propagandaLink" column="propaganda_link"/>
|
|
<result property="propagandaBarcodePath" column="propaganda_barcode_path"/>
|
|
<result property="delFlag" column="del_flag"/>
|
|
<result property="createBy" column="create_by"/>
|
|
<result property="createTime" column="create_time"/>
|
|
<result property="updateBy" column="update_by"/>
|
|
<result property="updateTime" column="update_time"/>
|
|
</resultMap>
|
|
|
|
<sql id="selectPropagandaInfoVo">
|
|
select id, hospital_agency_id, hospital_agency_name, department_id, department_name, propaganda_title, propaganda_type, propaganda_code, propaganda_status, propaganda_content, propaganda_cover_path, article_summary, voicebroadcast, disease_type_id, disease_type_name, propaganda_link, propaganda_barcode_path,del_flag, create_by, create_time, update_by, update_time from propaganda_info
|
|
</sql>
|
|
|
|
<select id="selectPropagandaInfoList" parameterType="com.xinelu.manage.dto.propagandainfo.PropagandaInfoDto" resultMap="PropagandaInfoResult">
|
|
<include refid="selectPropagandaInfoVo"/>
|
|
<where>
|
|
del_flag = 0
|
|
<if test="hospitalAgencyId != null ">
|
|
and hospital_agency_id = #{hospitalAgencyId}
|
|
</if>
|
|
<if test="departmentId != null ">
|
|
and department_id = #{departmentId}
|
|
</if>
|
|
<if test="propagandaTitle != null and propagandaTitle != ''">
|
|
and propaganda_title like concat('%', #{propagandaTitle}, '%')
|
|
</if>
|
|
<if test="propagandaType != null and propagandaType != ''">
|
|
and propaganda_type = #{propagandaType}
|
|
</if>
|
|
<if test="propagandaCode != null and propagandaCode != ''">
|
|
and propaganda_code = #{propagandaCode}
|
|
</if>
|
|
<if test="propagandaStatus != null and propagandaStatus != ''">
|
|
and propaganda_status = #{propagandaStatus}
|
|
</if>
|
|
<if test="createBy != null and propagandaStatus != ''">
|
|
and create_by = #{createBy}
|
|
</if>
|
|
<if test="createTimeStart != null">
|
|
and date_format(create_time, '%y%m%d') >= date_format(#{createTimeStart}, '%y%m%d')
|
|
</if>
|
|
<if test="createTimeEnd != null">
|
|
and date_format(create_time, '%y%m%d') <= date_format(#{createTimeEnd}, '%y%m%d')
|
|
</if>
|
|
</where>
|
|
order by create_time desc
|
|
</select>
|
|
|
|
<select id="selectPropagandaInfoById" parameterType="Long"
|
|
resultMap="PropagandaInfoResult">
|
|
<include refid="selectPropagandaInfoVo"/>
|
|
where id = #{id}
|
|
</select>
|
|
|
|
<insert id="insertPropagandaInfo" parameterType="com.xinelu.manage.domain.propagandainfo.PropagandaInfo" useGeneratedKeys="true"
|
|
keyProperty="id">
|
|
insert into propaganda_info
|
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
|
<if test="hospitalAgencyId != null">hospital_agency_id,
|
|
</if>
|
|
<if test="hospitalAgencyName != null">hospital_agency_name,
|
|
</if>
|
|
<if test="departmentId != null">department_id,
|
|
</if>
|
|
<if test="departmentName != null">department_name,
|
|
</if>
|
|
<if test="propagandaTitle != null">propaganda_title,
|
|
</if>
|
|
<if test="propagandaType != null">propaganda_type,
|
|
</if>
|
|
<if test="propagandaCode != null">propaganda_code,
|
|
</if>
|
|
<if test="propagandaStatus != null">propaganda_status,
|
|
</if>
|
|
<if test="propagandaContent != null">propaganda_content,
|
|
</if>
|
|
<if test="propagandaCoverPath != null">propaganda_cover_path,
|
|
</if>
|
|
<if test="articleSummary != null">article_summary,
|
|
</if>
|
|
<if test="voicebroadcast != null">voicebroadcast,
|
|
</if>
|
|
<if test="diseaseTypeId != null">disease_type_id,
|
|
</if>
|
|
<if test="diseaseTypeName != null">disease_type_name,
|
|
</if>
|
|
<if test="propagandaLink != null">propaganda_link,
|
|
</if>
|
|
<if test="propagandaBarcodePath != null">propaganda_barcode_path,
|
|
</if>
|
|
<if test="delFlag != null">del_flag,
|
|
</if>
|
|
<if test="createBy != null">create_by,
|
|
</if>
|
|
<if test="createTime != null">create_time,
|
|
</if>
|
|
<if test="updateBy != null">update_by,
|
|
</if>
|
|
<if test="updateTime != null">update_time,
|
|
</if>
|
|
</trim>
|
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
<if test="hospitalAgencyId != null">#{hospitalAgencyId},
|
|
</if>
|
|
<if test="hospitalAgencyName != null">#{hospitalAgencyName},
|
|
</if>
|
|
<if test="departmentId != null">#{departmentId},
|
|
</if>
|
|
<if test="departmentName != null">#{departmentName},
|
|
</if>
|
|
<if test="propagandaTitle != null">#{propagandaTitle},
|
|
</if>
|
|
<if test="propagandaType != null">#{propagandaType},
|
|
</if>
|
|
<if test="propagandaCode != null">#{propagandaCode},
|
|
</if>
|
|
<if test="propagandaStatus != null">#{propagandaStatus},
|
|
</if>
|
|
<if test="propagandaContent != null">#{propagandaContent},
|
|
</if>
|
|
<if test="propagandaCoverPath != null">#{propagandaCoverPath},
|
|
</if>
|
|
<if test="articleSummary != null">#{articleSummary},
|
|
</if>
|
|
<if test="voicebroadcast != null">#{voicebroadcast},
|
|
</if>
|
|
<if test="diseaseTypeId != null">#{diseaseTypeId},
|
|
</if>
|
|
<if test="diseaseTypeName != null">#{diseaseTypeName},
|
|
</if>
|
|
<if test="propagandaLink != null">#{propagandaLink},
|
|
</if>
|
|
<if test="propagandaBarcodePath != null">#{propagandaBarcodePath},
|
|
</if>
|
|
<if test="delFlag != null">#{delFlag},
|
|
</if>
|
|
<if test="createBy != null">#{createBy},
|
|
</if>
|
|
<if test="createTime != null">#{createTime},
|
|
</if>
|
|
<if test="updateBy != null">#{updateBy},
|
|
</if>
|
|
<if test="updateTime != null">#{updateTime},
|
|
</if>
|
|
</trim>
|
|
</insert>
|
|
|
|
<update id="updatePropagandaInfo" parameterType="com.xinelu.manage.domain.propagandainfo.PropagandaInfo">
|
|
update propaganda_info
|
|
<trim prefix="SET" suffixOverrides=",">
|
|
<if test="hospitalAgencyId != null">hospital_agency_id =
|
|
#{hospitalAgencyId},
|
|
</if>
|
|
<if test="hospitalAgencyName != null">hospital_agency_name =
|
|
#{hospitalAgencyName},
|
|
</if>
|
|
<if test="departmentId != null">department_id =
|
|
#{departmentId},
|
|
</if>
|
|
<if test="departmentName != null">department_name =
|
|
#{departmentName},
|
|
</if>
|
|
<if test="propagandaTitle != null">propaganda_title =
|
|
#{propagandaTitle},
|
|
</if>
|
|
<if test="propagandaType != null">propaganda_type =
|
|
#{propagandaType},
|
|
</if>
|
|
<if test="propagandaCode != null">propaganda_code =
|
|
#{propagandaCode},
|
|
</if>
|
|
<if test="propagandaStatus != null">propaganda_status =
|
|
#{propagandaStatus},
|
|
</if>
|
|
<if test="propagandaContent != null">propaganda_content =
|
|
#{propagandaContent},
|
|
</if>
|
|
<if test="propagandaCoverPath != null">propaganda_cover_path =
|
|
#{propagandaCoverPath},
|
|
</if>
|
|
<if test="articleSummary != null">article_summary =
|
|
#{articleSummary},
|
|
</if>
|
|
<if test="voicebroadcast != null">voicebroadcast =
|
|
#{voicebroadcast},
|
|
</if>
|
|
<if test="diseaseTypeId != null">disease_type_id =
|
|
#{diseaseTypeId},
|
|
</if>
|
|
<if test="diseaseTypeName != null">disease_type_name =
|
|
#{diseaseTypeName},
|
|
</if>
|
|
<if test="propagandaLink != null">propaganda_link =
|
|
#{propagandaLink},
|
|
</if>
|
|
<if test="propagandaBarcodePath != null">propaganda_barcode_path =
|
|
#{propagandaBarcodePath},
|
|
</if>
|
|
<if test="delFlag != null">del_flag =
|
|
#{delFlag},
|
|
</if>
|
|
<if test="createBy != null">create_by =
|
|
#{createBy},
|
|
</if>
|
|
<if test="createTime != null">create_time =
|
|
#{createTime},
|
|
</if>
|
|
<if test="updateBy != null">update_by =
|
|
#{updateBy},
|
|
</if>
|
|
<if test="updateTime != null">update_time =
|
|
#{updateTime},
|
|
</if>
|
|
</trim>
|
|
where id = #{id}
|
|
</update>
|
|
|
|
<update id="deletePropagandaInfoById" parameterType="Long">
|
|
update propaganda_info set del_flag = 1 where id = #{id}
|
|
</update>
|
|
|
|
<update id="deletePropagandaInfoByIds" parameterType="String">
|
|
update propaganda_info set del_flag = 1 where id in
|
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
|
#{id}
|
|
</foreach>
|
|
</update>
|
|
<select id="selectNumByDept" resultType="com.xinelu.manage.vo.department.DepartmentVO">
|
|
select d.id,
|
|
d.department_name,
|
|
count(p.id) AS countNum
|
|
from department d left join
|
|
(select id, department_id, propaganda_status from propaganda_info
|
|
<where>
|
|
del_flag = 0
|
|
<if test="propagandaStatus != null and propagandaStatus != ''">
|
|
and propaganda_status = #{propagandaStatus}
|
|
</if>
|
|
</where>
|
|
) as p on d.id = p.department_id
|
|
<where>
|
|
<if test="departmentName != null and departmentName != ''">
|
|
and d.department_name like concat('%', #{departmentName}, '%')
|
|
</if>
|
|
</where>
|
|
GROUP BY d.id,
|
|
d.department_name,
|
|
d.department_code
|
|
order by countNum desc
|
|
</select>
|
|
</mapper> |