Files
huayang/backend/ruoyi-system/target/classes/mapper/system/HuayangNewsMapper.xml
T
2026-05-07 18:24:22 +08:00

151 lines
7.0 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.ruoyi.system.mapper.HuayangNewsMapper">
<resultMap type="com.ruoyi.system.domain.HuayangNews" id="HuayangNewsResult">
<result property="newsId" column="news_id" />
<result property="newsTitle" column="news_title" />
<result property="newsContent" column="news_content" />
<result property="newsType" column="news_type" />
<result property="newsCover" column="news_cover" />
<result property="newsAuthor" column="news_author" />
<result property="publishTime" column="publish_time" />
<result property="readCount" column="read_count" />
<result property="sortOrder" column="sort_order" />
<result property="status" column="status" />
<result property="isHome" column="is_home" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
<result property="remark" column="remark" />
</resultMap>
<sql id="selectHuayangNewsVo">
SELECT news_id, news_title, news_content, news_type, news_cover,
news_author, publish_time, read_count, sort_order, status, is_home,
create_by, create_time, update_by, update_time, remark
FROM huayang_news
</sql>
<select id="selectHuayangNewsList" parameterType="com.ruoyi.system.domain.HuayangNews" resultMap="HuayangNewsResult">
<include refid="selectHuayangNewsVo"/>
<where>
<if test="newsTitle != null and newsTitle != ''">
AND news_title LIKE CONCAT('%', #{newsTitle}, '%')
</if>
<if test="newsType != null and newsType != ''">
AND news_type = #{newsType}
</if>
<if test="status != null and status != ''">
AND status = #{status}
</if>
<if test="isHome != null and isHome != ''">
AND is_home = #{isHome}
</if>
</where>
ORDER BY sort_order ASC, news_id DESC
</select>
<select id="selectHuayangNewsById" parameterType="Long" resultMap="HuayangNewsResult">
<include refid="selectHuayangNewsVo"/>
WHERE news_id = #{newsId}
</select>
<select id="selectNewsForHome" resultMap="HuayangNewsResult">
<include refid="selectHuayangNewsVo"/>
WHERE status = '0'
<if test="newsType != null and newsType != ''">
AND news_type = #{newsType}
</if>
ORDER BY sort_order ASC, publish_time DESC
<choose>
<when test="offset != null and limit != null and limit > 0">
LIMIT #{offset}, #{limit}
</when>
<when test="limit != null and limit > 0">
LIMIT #{limit}
</when>
</choose>
</select>
<select id="countNewsPublic" resultType="long">
SELECT COUNT(*) FROM huayang_news
WHERE status = '0'
<if test="newsType != null and newsType != ''">
AND news_type = #{newsType}
</if>
</select>
<insert id="insertHuayangNews" parameterType="com.ruoyi.system.domain.HuayangNews" useGeneratedKeys="true" keyProperty="newsId">
INSERT INTO huayang_news
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="newsTitle != null and newsTitle != ''">news_title,</if>
<if test="newsContent != null">news_content,</if>
<if test="newsType != null and newsType != ''">news_type,</if>
<if test="newsCover != null">news_cover,</if>
<if test="newsAuthor != null">news_author,</if>
<if test="publishTime != null">publish_time,</if>
<if test="readCount != null">read_count,</if>
<if test="sortOrder != null">sort_order,</if>
<if test="status != null">status,</if>
<if test="isHome != null">is_home,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="remark != null">remark,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="newsTitle != null and newsTitle != ''">#{newsTitle},</if>
<if test="newsContent != null">#{newsContent},</if>
<if test="newsType != null and newsType != ''">#{newsType},</if>
<if test="newsCover != null">#{newsCover},</if>
<if test="newsAuthor != null">#{newsAuthor},</if>
<if test="publishTime != null">#{publishTime},</if>
<if test="readCount != null">#{readCount},</if>
<if test="sortOrder != null">#{sortOrder},</if>
<if test="status != null">#{status},</if>
<if test="isHome != null">#{isHome},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="remark != null">#{remark},</if>
</trim>
</insert>
<update id="updateHuayangNews" parameterType="com.ruoyi.system.domain.HuayangNews">
UPDATE huayang_news
<trim prefix="SET" suffixOverrides=",">
<if test="newsTitle != null and newsTitle != ''">news_title = #{newsTitle},</if>
<if test="newsContent != null">news_content = #{newsContent},</if>
<if test="newsType != null and newsType != ''">news_type = #{newsType},</if>
<if test="newsCover != null">news_cover = #{newsCover},</if>
<if test="newsAuthor != null">news_author = #{newsAuthor},</if>
<if test="publishTime != null">publish_time = #{publishTime},</if>
<if test="readCount != null">read_count = #{readCount},</if>
<if test="sortOrder != null">sort_order = #{sortOrder},</if>
<if test="status != null">status = #{status},</if>
<if test="isHome != null">is_home = #{isHome},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
<if test="remark != null">remark = #{remark},</if>
</trim>
WHERE news_id = #{newsId}
</update>
<delete id="deleteHuayangNewsById" parameterType="Long">
DELETE FROM huayang_news WHERE news_id = #{newsId}
</delete>
<delete id="deleteHuayangNewsByIds" parameterType="Long">
DELETE FROM huayang_news WHERE news_id IN
<foreach item="newsId" collection="array" open="(" separator="," close=")">
#{newsId}
</foreach>
</delete>
<update id="incrementReadCount" parameterType="Long">
UPDATE huayang_news SET read_count = read_count + 1 WHERE news_id = #{newsId}
</update>
</mapper>