|
|
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.chenhai.system.mapper.SysKnowledgeBaseMapper"> <resultMap type="SysKnowledgeBase" id="SysKnowledgeBaseResult"> <result property="id" column="id" /> <result property="title" column="title" /> <result property="category" column="category" /> <result property="keywords" column="keywords" /> <result property="possibleDiseases" column="possible_diseases" /> <result property="severityLevel" column="severity_level" /> <result property="suggestions" column="suggestions" /> <result property="content" column="content" /> <result property="suitableSpecies" column="suitable_species" /> <result property="viewCount" column="view_count" /> <result property="status" column="status" /> </resultMap>
<sql id="selectSysKnowledgeBaseVo"> select id, title, category, keywords, possible_diseases, severity_level, suggestions, content, suitable_species, view_count, status from sys_knowledge_base </sql>
<select id="selectSysKnowledgeBaseList" parameterType="SysKnowledgeBase" resultMap="SysKnowledgeBaseResult"> <include refid="selectSysKnowledgeBaseVo"/> <where> <if test="title != null and title != ''"> and title = #{title}</if> <if test="category != null and category != ''"> and category = #{category}</if> <if test="keywords != null and keywords != ''"> and keywords = #{keywords}</if> <if test="possibleDiseases != null and possibleDiseases != ''"> and possible_diseases = #{possibleDiseases}</if> <if test="severityLevel != null and severityLevel != ''"> and severity_level = #{severityLevel}</if> <if test="suggestions != null and suggestions != ''"> and suggestions = #{suggestions}</if> <if test="content != null and content != ''"> and content = #{content}</if> <if test="suitableSpecies != null and suitableSpecies != ''"> and suitable_species = #{suitableSpecies}</if> <if test="viewCount != null "> and view_count = #{viewCount}</if> <if test="status != null and status != ''"> and status = #{status}</if> </where> </select> <select id="selectSysKnowledgeBaseById" parameterType="Long" resultMap="SysKnowledgeBaseResult"> <include refid="selectSysKnowledgeBaseVo"/> where id = #{id} </select>
<insert id="insertSysKnowledgeBase" parameterType="SysKnowledgeBase" useGeneratedKeys="true" keyProperty="id"> insert into sys_knowledge_base <trim prefix="(" suffix=")" suffixOverrides=","> <if test="title != null and title != ''">title,</if> <if test="category != null and category != ''">category,</if> <if test="keywords != null">keywords,</if> <if test="possibleDiseases != null">possible_diseases,</if> <if test="severityLevel != null">severity_level,</if> <if test="suggestions != null">suggestions,</if> <if test="content != null and content != ''">content,</if> <if test="suitableSpecies != null">suitable_species,</if> <if test="viewCount != null">view_count,</if> <if test="status != null">status,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="title != null and title != ''">#{title},</if> <if test="category != null and category != ''">#{category},</if> <if test="keywords != null">#{keywords},</if> <if test="possibleDiseases != null">#{possibleDiseases},</if> <if test="severityLevel != null">#{severityLevel},</if> <if test="suggestions != null">#{suggestions},</if> <if test="content != null and content != ''">#{content},</if> <if test="suitableSpecies != null">#{suitableSpecies},</if> <if test="viewCount != null">#{viewCount},</if> <if test="status != null">#{status},</if> </trim> </insert>
<update id="updateSysKnowledgeBase" parameterType="SysKnowledgeBase"> update sys_knowledge_base <trim prefix="SET" suffixOverrides=","> <if test="title != null and title != ''">title = #{title},</if> <if test="category != null and category != ''">category = #{category},</if> <if test="keywords != null">keywords = #{keywords},</if> <if test="possibleDiseases != null">possible_diseases = #{possibleDiseases},</if> <if test="severityLevel != null">severity_level = #{severityLevel},</if> <if test="suggestions != null">suggestions = #{suggestions},</if> <if test="content != null and content != ''">content = #{content},</if> <if test="suitableSpecies != null">suitable_species = #{suitableSpecies},</if> <if test="viewCount != null">view_count = #{viewCount},</if> <if test="status != null">status = #{status},</if> </trim> where id = #{id} </update>
<delete id="deleteSysKnowledgeBaseById" parameterType="Long"> delete from sys_knowledge_base where id = #{id} </delete>
<delete id="deleteSysKnowledgeBaseByIds" parameterType="String"> delete from sys_knowledge_base where id in <foreach item="id" collection="array" open="(" separator="," close=")"> #{id} </foreach> </delete>
<!-- 新增:模糊搜索方法 --> <select id="searchSysKnowledgeBaseByKeyword" parameterType="String" resultMap="SysKnowledgeBaseResult"> <include refid="selectSysKnowledgeBaseVo"/> <where> <if test="keyword != null and keyword != ''"> title like concat('%', #{keyword}, '%') or category like concat('%', #{keyword}, '%') or keywords like concat('%', #{keyword}, '%') or possible_diseases like concat('%', #{keyword}, '%') or suggestions like concat('%', #{keyword}, '%') or content like concat('%', #{keyword}, '%') </if> </where> order by view_count desc, id desc </select>
<!-- 新增:多关键词搜索 --> <select id="searchByKeywords" parameterType="map" resultMap="SysKnowledgeBaseResult"> <include refid="selectSysKnowledgeBaseVo"/> <where> <foreach collection="keywords" item="kw" open="(" separator=" OR " close=")"> title like concat('%', #{kw}, '%') or category like concat('%', #{kw}, '%') or keywords like concat('%', #{kw}, '%') or possible_diseases like concat('%', #{kw}, '%') or suggestions like concat('%', #{kw}, '%') or content like concat('%', #{kw}, '%') </foreach> </where> order by view_count desc, id desc </select></mapper>
|