Forráskód Böngészése

1、厦门海嘉成-栏目菜单

41235 1 éve
szülő
commit
683b8aba90

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 0 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/a-json/ColumnArticleApi.json


+ 77 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/controller/column/ColumnArticleController.java

@@ -0,0 +1,77 @@
+package com.fjhx.xmhjc.controller.column;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo;
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleSelectDto;
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleDto;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.fjhx.xmhjc.service.column.ColumnArticleService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 栏目文章表 前端控制器
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+@RestController
+@RequestMapping("/columnArticle")
+public class ColumnArticleController {
+
+    @Autowired
+    private ColumnArticleService columnArticleService;
+
+    /**
+     * 栏目文章表列表
+     */
+    @PostMapping("/list")
+    public List<ColumnArticleVo> list(@RequestBody ColumnArticleSelectDto dto) {
+        return columnArticleService.getList(dto);
+    }
+
+    /**
+     * 栏目文章表分页
+     */
+    @PostMapping("/page")
+    public Page<ColumnArticleVo> page(@RequestBody ColumnArticleSelectDto dto) {
+        return columnArticleService.getPage(dto);
+    }
+
+    /**
+     * 栏目文章表明细
+     */
+    @PostMapping("/detail")
+    public ColumnArticleVo detail(@RequestBody BaseSelectDto dto) {
+        return columnArticleService.detail(dto.getId());
+    }
+
+    /**
+     * 栏目文章表新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody ColumnArticleDto columnArticleDto) {
+        columnArticleService.add(columnArticleDto);
+    }
+
+    /**
+     * 栏目文章表编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody ColumnArticleDto columnArticleDto) {
+        columnArticleService.edit(columnArticleDto);
+    }
+
+    /**
+     * 栏目文章表删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        columnArticleService.delete(dto.getId());
+    }
+
+}

+ 29 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/column/dto/ColumnArticleDto.java

@@ -0,0 +1,29 @@
+package com.fjhx.xmhjc.entity.column.dto;
+
+import com.fjhx.file.entity.ObsFile;
+import com.fjhx.xmhjc.entity.column.po.ColumnArticle;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 栏目文章表新增编辑入参实体
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+@Getter
+@Setter
+public class ColumnArticleDto extends ColumnArticle {
+
+    /**
+     * 封面
+     */
+    List<ObsFile> coverList;
+    /**
+     * 视频
+     */
+    List<ObsFile> videoList;
+
+}

+ 17 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/column/dto/ColumnArticleSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.xmhjc.entity.column.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 栏目文章表列表查询入参实体
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+@Getter
+@Setter
+public class ColumnArticleSelectDto extends BaseSelectDto {
+
+}

+ 82 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/column/po/ColumnArticle.java

@@ -0,0 +1,82 @@
+package com.fjhx.xmhjc.entity.column.po;
+
+import com.ruoyi.common.core.domain.BaseIdPo;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 栏目文章表
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+@Getter
+@Setter
+@TableName("column_article")
+public class ColumnArticle extends BaseIdPo {
+
+    /**
+     * 菜单栏目id
+     */
+    private Long columnId;
+
+    /**
+     * 子栏目id
+     */
+    private Long subId;
+
+    /**
+     * 标题
+     */
+    private String title;
+
+    /**
+     * 副标题
+     */
+    private String subTitle;
+
+    /**
+     * 简述
+     */
+    private String briefly;
+
+    /**
+     * 封面
+     */
+    private String cover;
+
+    /**
+     * 发表时间
+     */
+    private Date time;
+
+    /**
+     * 排序
+     */
+    private Integer sort;
+
+    /**
+     * 状态
+     */
+    private String status;
+
+    /**
+     * 正文类型1=富文本;2=视频;3=xxx
+     */
+    private String bodyType;
+
+    /**
+     * 富文本内容
+     */
+    private String content;
+
+    /**
+     * 视频地址
+     */
+    private String videoUrl;
+
+}

+ 1 - 1
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/column/po/ColumnMenu.java

@@ -38,7 +38,7 @@ public class ColumnMenu extends BaseIdPo {
     /**
      * 排序
      */
-    private String sort;
+    private int sort;
 
     /**
      * 状态

+ 26 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/column/vo/ColumnArticleVo.java

@@ -0,0 +1,26 @@
+package com.fjhx.xmhjc.entity.column.vo;
+
+import com.fjhx.file.entity.FileInfoVo;
+import com.fjhx.file.entity.ObsFile;
+import com.fjhx.xmhjc.entity.column.po.ColumnArticle;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 栏目文章表列表查询返回值实体
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+@Getter
+@Setter
+public class ColumnArticleVo extends ColumnArticle {
+
+
+    /**
+     * 封面
+     */
+    List<FileInfoVo> coverList;
+}

+ 32 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/mapper/column/ColumnArticleMapper.java

@@ -0,0 +1,32 @@
+package com.fjhx.xmhjc.mapper.column;
+
+import com.fjhx.xmhjc.entity.column.po.ColumnArticle;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 栏目文章表 Mapper 接口
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+public interface ColumnArticleMapper extends BaseMapper<ColumnArticle> {
+
+    /**
+     * 栏目文章表列表
+     */
+    List<ColumnArticleVo> getList(@Param("ew") IWrapper<ColumnArticle> wrapper);
+
+    /**
+     * 栏目文章表分页
+     */
+    Page<ColumnArticleVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<ColumnArticle> wrapper);
+
+}

+ 52 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/service/column/ColumnArticleService.java

@@ -0,0 +1,52 @@
+package com.fjhx.xmhjc.service.column;
+
+import com.fjhx.xmhjc.entity.column.po.ColumnArticle;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo;
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleSelectDto;
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleDto;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 栏目文章表 服务类
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+public interface ColumnArticleService extends BaseService<ColumnArticle> {
+
+    /**
+     * 栏目文章表列表
+     */
+    List<ColumnArticleVo> getList(ColumnArticleSelectDto dto);
+
+    /**
+     * 栏目文章表分页
+     */
+    Page<ColumnArticleVo> getPage(ColumnArticleSelectDto dto);
+
+    /**
+     * 栏目文章表明细
+     */
+    ColumnArticleVo detail(Long id);
+
+    /**
+     * 栏目文章表新增
+     */
+    void add(ColumnArticleDto columnArticleDto);
+
+    /**
+     * 栏目文章表编辑
+     */
+    void edit(ColumnArticleDto columnArticleDto);
+
+    /**
+     * 栏目文章表删除
+     */
+    void delete(Long id);
+
+}

+ 78 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/service/column/impl/ColumnArticleServiceImpl.java

@@ -0,0 +1,78 @@
+package com.fjhx.xmhjc.service.column.impl;
+
+import com.fjhx.file.utils.ObsFileUtil;
+import com.fjhx.xmhjc.entity.about.po.AboutUsCulture;
+import com.fjhx.xmhjc.entity.column.po.ColumnArticle;
+import com.fjhx.xmhjc.mapper.column.ColumnArticleMapper;
+import com.fjhx.xmhjc.service.column.ColumnArticleService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.wrapper.SqlField;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo;
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleDto;
+import cn.hutool.core.bean.BeanUtil;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 栏目文章表 服务实现类
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-16
+ */
+@Service
+public class ColumnArticleServiceImpl extends ServiceImpl<ColumnArticleMapper, ColumnArticle> implements ColumnArticleService {
+
+    @Override
+    public List<ColumnArticleVo> getList(ColumnArticleSelectDto dto) {
+        IWrapper<ColumnArticle> wrapper = getWrapper();
+        wrapper.keyword(dto, new SqlField("ca", ColumnArticle::getSort));
+        wrapper.orderByAsc("ca", ColumnArticle::getSort);
+        List<ColumnArticleVo> list = this.baseMapper.getList(wrapper);
+        return list;
+    }
+
+    @Override
+    public Page<ColumnArticleVo> getPage(ColumnArticleSelectDto dto) {
+        IWrapper<ColumnArticle> wrapper = getWrapper();
+        wrapper.orderByDesc("ca", ColumnArticle::getId);
+        Page<ColumnArticleVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public ColumnArticleVo detail(Long id) {
+        ColumnArticle ColumnArticle = this.getById(id);
+        ColumnArticleVo result = BeanUtil.toBean(ColumnArticle, ColumnArticleVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(ColumnArticleDto columnArticleDto) {
+        this.save(columnArticleDto);
+
+        // 封面
+        ObsFileUtil.saveFile(columnArticleDto.getCoverList(), columnArticleDto.getId(), 1);
+        ObsFileUtil.saveFile(columnArticleDto.getVideoList(), columnArticleDto.getId(), 2);
+    }
+
+    @Override
+    public void edit(ColumnArticleDto columnArticleDto) {
+        this.updateById(columnArticleDto);
+
+        // 封面
+        ObsFileUtil.editFile(columnArticleDto.getCoverList(), columnArticleDto.getId(), 1);
+        ObsFileUtil.editFile(columnArticleDto.getVideoList(), columnArticleDto.getId(), 2);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 4 - 1
hx-xmhjc/src/main/java/com/fjhx/xmhjc/service/column/impl/ColumnMenuServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fjhx.xmhjc.service.column.impl;
 
+import com.fjhx.xmhjc.entity.about.po.AboutUsCulture;
 import com.fjhx.xmhjc.entity.column.dto.ColumnMenuSubSelectDto;
 import com.fjhx.xmhjc.entity.column.po.ColumnMenu;
 import com.fjhx.xmhjc.entity.column.vo.ColumnMenuSubVo;
@@ -7,6 +8,7 @@ import com.fjhx.xmhjc.mapper.column.ColumnMenuMapper;
 import com.fjhx.xmhjc.service.column.ColumnMenuService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.utils.DictUtils;
+import com.ruoyi.common.utils.wrapper.SqlField;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.xmhjc.entity.column.vo.ColumnMenuVo;
@@ -38,7 +40,8 @@ public class ColumnMenuServiceImpl extends ServiceImpl<ColumnMenuMapper, ColumnM
     @Override
     public Page<ColumnMenuVo> getPage(ColumnMenuSelectDto dto) {
         IWrapper<ColumnMenu> wrapper = getWrapper();
-        wrapper.orderByDesc("cm", ColumnMenu::getId);
+        wrapper.keyword(dto,new SqlField("cm", ColumnMenu::getName));
+        wrapper.orderByAsc("cm", ColumnMenu::getSort);
         Page<ColumnMenuVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
         return page;
     }

+ 42 - 0
hx-xmhjc/src/main/resources/mapper/column/ColumnArticleMapper.xml

@@ -0,0 +1,42 @@
+<?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.fjhx.xmhjc.mapper.column.ColumnArticleMapper">
+    <select id="getList" resultType="com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo">
+        select
+            ca.id,
+            ca.column_id,
+            ca.sub_id,
+            ca.title,
+            ca.sub_title,
+            ca.briefly,
+            ca.cover,
+            ca.time,
+            ca.sort,
+            ca.status,
+            ca.body_type,
+            ca.content,
+            ca.video_url
+        from column_article ca
+            ${ew.customSqlSegment}
+    </select>
+
+    <select id="getPage" resultType="com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo">
+        select
+            ca.id,
+            ca.column_id,
+            ca.sub_id,
+            ca.title,
+            ca.sub_title,
+            ca.briefly,
+            ca.cover,
+            ca.time,
+            ca.sort,
+            ca.status,
+            ca.body_type,
+            ca.content,
+            ca.video_url
+        from column_article ca
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott