qinhouyu hace 1 año
padre
commit
e5c5ed623a

+ 107 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/information/InformationController.java

@@ -0,0 +1,107 @@
+package com.ruoyi.web.controller.information;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.sooka.jnb.information.domain.Information;
+import com.sooka.jnb.information.service.InformationService;
+import io.swagger.models.auth.In;
+import org.springframework.cglib.transform.impl.InterceptFieldFilter;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 资讯Controller
+ * 
+ * @author ruoyi
+ * @date 2024-03-01
+ */
+@RestController
+@RequestMapping("/jnb/information")
+public class InformationController extends BaseController
+{
+    @Autowired
+    private InformationService informationService;
+
+    /**
+     * 查询资讯列表
+     */
+    @PreAuthorize("@ss.hasPermi('jnb:information:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(Information information)
+    {
+        startPage();
+        List<Information> list = informationService.selectInformationList(information);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出资讯列表
+     */
+    @PreAuthorize("@ss.hasPermi('jnb:information:export')")
+    @Log(title = "资讯导出", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, Information information)
+    {
+        List<Information> list = informationService.selectInformationList(information);
+        ExcelUtil<Information> util = new ExcelUtil<Information>(Information.class);
+        util.exportExcel(response, list, "资讯数据");
+    }
+
+    /**
+     * 获取资讯详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('jnb:information:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(informationService.selectInformationById(id));
+    }
+
+    /**
+     * 新增资讯
+     */
+    @PreAuthorize("@ss.hasPermi('jnb:information:add')")
+    @Log(title = "新增资讯", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody Information information)
+    {
+        return toAjax(informationService.insertInformationServer(information));
+    }
+
+    /**
+     * 修改资讯
+     */
+    @PreAuthorize("@ss.hasPermi('jnb:information:edit')")
+    @Log(title = "修改资讯", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody Information information)
+    {
+        return toAjax(informationService.updateInformation(information));
+    }
+
+    /**
+     * 删除资讯
+     */
+    @PreAuthorize("@ss.hasPermi('jnb:information:remove')")
+    @Log(title = "删除资讯", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(informationService.deleteInformationByIds(ids));
+    }
+}

+ 2 - 2
ruoyi-admin/src/main/resources/application.yml

@@ -136,6 +136,6 @@ xss:
   # 过滤开关
   enabled: true
   # 排除链接(多个用逗号分隔)
-  excludes: /system/notice,/pm/project,/oa/meeting
+  excludes: /system/notice,/pm/project,/oa/meeting,/jnb/information
   # 匹配链接
-  urlPatterns: /system/*,/monitor/*,/tool/*,/oa/*,/pm/*
+  urlPatterns: /system/*,/monitor/*,/tool/*,/oa/*,/pm/*,/jnb/*

+ 50 - 0
sooka-jnb/src/main/java/com/sooka/jnb/information/domain/Information.java

@@ -0,0 +1,50 @@
+package com.sooka.jnb.information.domain;
+
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 资讯
+ * 
+ * @author ruoyi
+ * @date 2024-03-01
+ */
+@Data
+public class Information extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** id */
+    private Long id;
+
+    /** 标题 */
+    @Excel(name = "标题")
+    private String titleName;
+
+    /** 正文 */
+    @Excel(name = "正文",width = 200)
+    private String textDetails;
+
+    /** 是否政策推荐 */
+    @Excel(name = "是否政策推荐", readConverterExp = "1=是,0=否")
+    private String isGovernment;
+
+    /** 是否置顶 */
+    @Excel(name = "是否置顶", readConverterExp = "1=是,0=否")
+    private String isTop;
+
+    /** 点赞数 */
+    @Excel(name = "点赞数")
+    private Long likeNum;
+
+    /** 浏览数 */
+    @Excel(name = "浏览数")
+    private Long watchNum;
+
+    private Integer type;
+
+
+}

+ 63 - 0
sooka-jnb/src/main/java/com/sooka/jnb/information/mapper/InformationMapper.java

@@ -0,0 +1,63 @@
+package com.sooka.jnb.information.mapper;
+
+import com.sooka.jnb.information.domain.Information;
+import com.sooka.jnb.information.service.InformationService;
+
+import java.util.List;
+
+/**
+ * 资讯Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-03-01
+ */
+public interface InformationMapper
+{
+    /**
+     * 查询资讯
+     * 
+     * @param id 资讯主键
+     * @return 资讯
+     */
+    public Information selectInformationById(Long id);
+
+    /**
+     * 查询资讯列表
+     * 
+     * @param information 资讯
+     * @return 资讯集合
+     */
+    public List<Information> selectInformationList(Information information);
+
+    /**
+     * 新增资讯
+     * 
+     * @param information 资讯
+     * @return 结果
+     */
+    public int insertInformation(Information information);
+
+    /**
+     * 修改资讯
+     * 
+     * @param information 资讯
+     * @return 结果
+     */
+    public int updateInformation(Information information);
+
+    /**
+     * 删除资讯
+     * 
+     * @param id 资讯主键
+     * @return 结果
+     */
+    public int deleteInformationById(Long id);
+
+    /**
+     * 批量删除资讯
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteInformationByIds(Long[] ids);
+}

+ 57 - 0
sooka-jnb/src/main/java/com/sooka/jnb/information/service/InformationService.java

@@ -0,0 +1,57 @@
+package com.sooka.jnb.information.service;
+
+import com.sooka.jnb.information.domain.Information;
+
+import java.util.List;
+
+
+/**
+ * 资讯Service接口
+ * 
+ * @author ruoyi
+ * @date 2024-03-01
+ */
+public interface InformationService
+{
+    /**
+     * 查询资讯
+     * 
+     * @param id 资讯主键
+     * @return 资讯
+     */
+    public Information selectInformationById(Long id);
+
+    /**
+     * 查询资讯服务列表
+     * 
+     * @param information 资讯
+     * @return 高频服务集合
+     */
+    public List<Information> selectInformationList(Information information);
+
+    /**
+     * 新增资讯
+     * 
+     * @param information 资讯
+     * @return 结果
+     */
+    public int insertInformationServer(Information information);
+
+    /**
+     * 修改资讯
+     * 
+     * @param information 资讯
+     * @return 结果
+     */
+    public int updateInformation(Information information);
+
+    /**
+     * 批量删除资讯
+     * 
+     * @param ids 需要删除的资讯主键集合
+     * @return 结果
+     */
+    public int deleteInformationByIds(Long[] ids);
+
+    public int deleteInformationById(Long id);
+}

+ 64 - 0
sooka-jnb/src/main/java/com/sooka/jnb/information/service/impl/InformationServiceImpl.java

@@ -0,0 +1,64 @@
+package com.sooka.jnb.information.service.impl;
+
+import java.util.List;
+import com.ruoyi.common.utils.DateUtils;
+import com.sooka.jnb.information.domain.Information;
+import com.sooka.jnb.information.mapper.InformationMapper;
+import com.sooka.jnb.information.service.InformationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 高频服务Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2024-03-01
+ */
+@Service
+public class InformationServiceImpl implements InformationService
+{
+    @Autowired
+    private InformationMapper informationMapper;
+
+    @Override
+    public Information selectInformationById(Long id)
+    {
+        return informationMapper.selectInformationById(id);
+    }
+
+
+    @Override
+    public List<Information> selectInformationList(Information information)
+    {
+        return informationMapper.selectInformationList(information);
+    }
+
+
+    @Override
+    public int insertInformationServer(Information information)
+    {
+        information.setCreateTime(DateUtils.getNowDate());
+        return informationMapper.insertInformation(information);
+    }
+
+
+    @Override
+    public int updateInformation(Information information)
+    {
+        information.setUpdateTime(DateUtils.getNowDate());
+        return informationMapper.updateInformation(information);
+    }
+
+
+    @Override
+    public int deleteInformationByIds(Long[] ids)
+    {
+        return informationMapper.deleteInformationByIds(ids);
+    }
+
+    @Override
+    public int deleteInformationById(Long id)
+    {
+        return informationMapper.deleteInformationById(id);
+    }
+}

+ 123 - 0
sooka-jnb/src/main/resources/mapper/information/InformationMapper.xml

@@ -0,0 +1,123 @@
+<?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.sooka.jnb.information.mapper.InformationMapper">
+
+    <resultMap type="Information" id="InformationResult">
+        <result property="id" column="id"/>
+        <result property="titleName" column="title_name"/>
+        <result property="textDetails" column="text_details"/>
+        <result property="type" column="type"/>
+        <result property="isGovernment" column="is_government"/>
+        <result property="likeNum" column="like_num"/>
+        <result property="watchNum" column="watch_num"/>
+        <result property="isTop" column="is_top"/>
+        <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="delFlag" column="del_flag"/>
+    </resultMap>
+
+    <sql id="selectInformationVo">
+        select id,
+               title_name,
+               text_details,
+               type,
+               create_by,
+               create_time,
+               update_by,
+               update_time,
+               del_flag,
+               is_government,
+               is_top,
+               like_num,
+               watch_num
+        from jnb_high_server
+    </sql>
+
+    <select id="selectInformationList" parameterType="Information" resultMap="InformationResult">
+        <include refid="selectInformationVo"/>
+        <where>
+            <if test="titleName != null  and titleName != ''">and title_name like concat('%', #{titleName}, '%')</if>
+            <if test="type != null and type != ''">and type = #{type}</if>
+            <if test="isGovernment != null and isGovernment != ''">and is_government = #{isGovernment}</if>
+            <if test="isTop != null and isTop != ''">and is_top = #{isTop}</if>
+        </where>
+    </select>
+
+    <select id="selectInformationById" parameterType="Long" resultMap="InformationResult">
+        <include refid="selectInformationVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertInformation" parameterType="Information" useGeneratedKeys="true" keyProperty="id">
+        insert into jnb_high_server
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="titleName != null">title_name,</if>
+            <if test="textDetails != null">text_details,</if>
+            <if test="type != null">type,</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>
+
+            <if test="watchNum != null">watch_num,</if>
+            <if test="likeNum != null">like_time,</if>
+            <if test="isTop != null">is_top,</if>
+            <if test="isGovernment != null">is_government,</if>
+            <if test="delFlag != null">del_flag</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="titleName != null">#{titleName},</if>
+            <if test="textDetails != null">#{textDetails},</if>
+            <if test="type != null">#{type},</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>
+            <if test="watchNum != null">watch_num,</if>
+            <if test="likeNum != null">like_num,</if>
+            <if test="isTop != null">is_top,</if>
+            <if test="isGovernment != null">is_government,</if>
+            <if test="delFlag != null">del_flag</if>
+        </trim>
+    </insert>
+
+    <update id="updateInformation" parameterType="Information">
+        update jnb_high_server
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="titleName != null">title_name = #{titleName},</if>
+            <if test="textDetails != null">text_details = #{textDetails},</if>
+            <if test="type != null">type = #{type},</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>
+
+            <if test="watchNum != null">watch_num=#{watchNum},</if>
+            <if test="likeNum != null">like_num=#{likeNum},</if>
+            <if test="isTop != null">is_top=#{isTop},</if>
+            <if test="isGovernment != null">is_government=#{isGovernment},</if>
+            <if test="delFlag != null">del_flag=#{delFlag}</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <update id="deleteInformationById" parameterType="Long">
+        UPDATE jnb_high_server
+        SET del_flag = 2
+        WHERE id = #{id};
+    </update>
+
+    <delete id="deleteInformationByIds" parameterType="Long">
+        UPDATE jnb_high_server
+        SET del_flag = 2
+        WHERE id IN
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>;
+
+    </delete>
+</mapper>