瀏覽代碼

Merge remote-tracking branch 'origin/master'

1018653686@qq.com 1 年之前
父節點
當前提交
a68e405a93

文件差異過大導致無法顯示
+ 0 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/a-json/HomeSettingApi.json


+ 90 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/controller/home/HomeSettingController.java

@@ -0,0 +1,90 @@
+package com.fjhx.xmhjc.controller.home;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingVo;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingSelectDto;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingDto;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.fjhx.xmhjc.service.home.HomeSettingService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * <p>
+ * 首页配置 前端控制器
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@RestController
+@RequestMapping("/homeSetting")
+public class HomeSettingController {
+
+    @Autowired
+    private HomeSettingService homeSettingService;
+
+    /**
+     * 首页配置列表
+     */
+    @PostMapping("/list")
+    public List<HomeSettingVo> list() {
+
+
+        List<HomeSettingVo> list = homeSettingService.getList(new HomeSettingSelectDto());
+
+        homeSettingService.initHomeSetting(list);
+
+        homeSettingService.handHomeSetting(list);
+
+        return list;
+    }
+
+
+
+    /**
+     * 首页配置分页
+     */
+    @PostMapping("/page")
+    public Page<HomeSettingVo> page(@RequestBody HomeSettingSelectDto dto) {
+        return homeSettingService.getPage(dto);
+    }
+
+    /**
+     * 首页配置明细
+     */
+    @PostMapping("/detail")
+    public HomeSettingVo detail(@RequestBody BaseSelectDto dto) {
+        return homeSettingService.detail(dto.getId());
+    }
+
+    /**
+     * 首页配置新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody HomeSettingDto homeSettingDto) {
+        homeSettingService.add(homeSettingDto);
+    }
+
+    /**
+     * 首页配置编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody HomeSettingDto homeSettingDto) {
+        homeSettingService.edit(homeSettingDto);
+    }
+
+    /**
+     * 首页配置删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        homeSettingService.delete(dto.getId());
+    }
+
+}

+ 48 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/controller/open/OpenHomeSettingController.java

@@ -0,0 +1,48 @@
+package com.fjhx.xmhjc.controller.open;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingDto;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingSelectDto;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingByOpenVo;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingVo;
+import com.fjhx.xmhjc.service.home.HomeSettingService;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 首页配置 前端控制器
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@RestController
+@RequestMapping("/open/homeSetting")
+public class OpenHomeSettingController {
+
+    @Autowired
+    private HomeSettingService homeSettingService;
+
+    /**
+     * 首页配置列表
+     */
+    @PostMapping("/listByOpen")
+    public List<HomeSettingByOpenVo> list() {
+
+        List<HomeSettingVo> list = homeSettingService.getList(new HomeSettingSelectDto());
+        List<HomeSettingByOpenVo> homeSettingByOpenVos = list.stream().map(x -> BeanUtil.toBean(x, HomeSettingByOpenVo.class)).collect(Collectors.toList());
+
+
+        homeSettingService.handHomeSettingByOpen(homeSettingByOpenVos);
+
+        return homeSettingByOpenVos;
+    }
+
+}

+ 17 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/home/dto/HomeSettingDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.xmhjc.entity.home.dto;
+
+import com.fjhx.xmhjc.entity.home.po.HomeSetting;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 首页配置新增编辑入参实体
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@Getter
+@Setter
+public class HomeSettingDto extends HomeSetting {
+
+}

+ 17 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/home/dto/HomeSettingSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.xmhjc.entity.home.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 首页配置列表查询入参实体
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@Getter
+@Setter
+public class HomeSettingSelectDto extends BaseSelectDto {
+
+}

+ 52 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/home/po/HomeSetting.java

@@ -0,0 +1,52 @@
+package com.fjhx.xmhjc.entity.home.po;
+
+import com.ruoyi.common.core.domain.BasePo;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 首页配置
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@Getter
+@Setter
+@TableName("home_setting")
+public class HomeSetting extends BasePo {
+
+    /**
+     * 标题名称
+     */
+    private Long menuId;
+
+    /**
+     * 标题英文
+     */
+    private String titleEn;
+
+    /**
+     * 文章1-
+     */
+    private Long article1;
+
+    /**
+     * 文章2
+     */
+    private Long article2;
+
+    /**
+     * 文章3
+     */
+    private Long article3;
+
+    /**
+     * 文章4
+     */
+    private Long article4;
+
+}

+ 50 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/home/vo/HomeSettingByOpenVo.java

@@ -0,0 +1,50 @@
+package com.fjhx.xmhjc.entity.home.vo;
+
+import com.fjhx.xmhjc.entity.column.po.ColumnArticle;
+import com.fjhx.xmhjc.entity.home.po.HomeSetting;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 首页配置列表查询返回值实体
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@Getter
+@Setter
+public class HomeSettingByOpenVo extends HomeSetting {
+
+
+
+    /**
+     * 标题名称
+     */
+    private String menuIdName;
+
+    /**
+     * 标题英文
+     */
+    private String titleEn;
+
+    /**
+     * 文章1
+     */
+    private ColumnArticle articleObj1;
+
+    /**
+     * 文章2
+     */
+    private ColumnArticle articleObj2;
+
+    /**
+     * 文章3
+     */
+    private ColumnArticle articleObj3;
+
+    /**
+     * 文章4
+     */
+    private ColumnArticle articleObj4;
+
+}

+ 49 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/entity/home/vo/HomeSettingVo.java

@@ -0,0 +1,49 @@
+package com.fjhx.xmhjc.entity.home.vo;
+
+import com.fjhx.xmhjc.entity.home.po.HomeSetting;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 首页配置列表查询返回值实体
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@Getter
+@Setter
+public class HomeSettingVo extends HomeSetting {
+
+
+
+    /**
+     * 标题名称
+     */
+    private String menuIdName;
+
+    /**
+     * 标题英文
+     */
+    private String titleEn;
+
+    /**
+     * 文章1
+     */
+    private String articleTitle1;
+
+    /**
+     * 文章2
+     */
+    private String articleTitle2;
+
+    /**
+     * 文章3
+     */
+    private String articleTitle3;
+
+    /**
+     * 文章4
+     */
+    private String articleTitle4;
+
+}

+ 32 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/mapper/home/HomeSettingMapper.java

@@ -0,0 +1,32 @@
+package com.fjhx.xmhjc.mapper.home;
+
+import com.fjhx.xmhjc.entity.home.po.HomeSetting;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingVo;
+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-22
+ */
+public interface HomeSettingMapper extends BaseMapper<HomeSetting> {
+
+    /**
+     * 首页配置列表
+     */
+    List<HomeSettingVo> getList(@Param("ew") IWrapper<HomeSetting> wrapper);
+
+    /**
+     * 首页配置分页
+     */
+    Page<HomeSettingVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<HomeSetting> wrapper);
+
+}

+ 3 - 4
hx-xmhjc/src/main/java/com/fjhx/xmhjc/service/column/impl/ColumnArticleServiceImpl.java

@@ -25,10 +25,7 @@ import com.fjhx.xmhjc.entity.column.dto.ColumnArticleDto;
 import cn.hutool.core.bean.BeanUtil;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -104,6 +101,8 @@ public class ColumnArticleServiceImpl extends ServiceImpl<ColumnArticleMapper, C
 
     @Override
     public void add(ColumnArticleDto columnArticleDto) {
+        columnArticleDto.setTime(new Date());
+
         this.save(columnArticleDto);
 
         // 封面

+ 57 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/service/home/HomeSettingService.java

@@ -0,0 +1,57 @@
+package com.fjhx.xmhjc.service.home;
+
+import com.fjhx.xmhjc.entity.home.po.HomeSetting;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingByOpenVo;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingVo;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingSelectDto;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingDto;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 首页配置 服务类
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+public interface HomeSettingService extends BaseService<HomeSetting> {
+
+    /**
+     * 首页配置列表
+     */
+    List<HomeSettingVo> getList(HomeSettingSelectDto dto);
+
+    /**
+     * 首页配置分页
+     */
+    Page<HomeSettingVo> getPage(HomeSettingSelectDto dto);
+
+    /**
+     * 首页配置明细
+     */
+    HomeSettingVo detail(Long id);
+
+    /**
+     * 首页配置新增
+     */
+    void add(HomeSettingDto homeSettingDto);
+
+    /**
+     * 首页配置编辑
+     */
+    void edit(HomeSettingDto homeSettingDto);
+
+    /**
+     * 首页配置删除
+     */
+    void delete(Long id);
+
+    void initHomeSetting(List<HomeSettingVo> list);
+
+    void handHomeSetting(List<HomeSettingVo> list);
+    void handHomeSettingByOpen(List<HomeSettingByOpenVo> list);
+}

+ 139 - 0
hx-xmhjc/src/main/java/com/fjhx/xmhjc/service/home/impl/HomeSettingServiceImpl.java

@@ -0,0 +1,139 @@
+package com.fjhx.xmhjc.service.home.impl;
+
+import com.fjhx.xmhjc.entity.column.dto.ColumnArticleSelectDto;
+import com.fjhx.xmhjc.entity.column.dto.ColumnMenuSelectDto;
+import com.fjhx.xmhjc.entity.column.dto.ColumnMenuSubSelectDto;
+import com.fjhx.xmhjc.entity.column.vo.ColumnArticleVo;
+import com.fjhx.xmhjc.entity.column.vo.ColumnMenuSubVo;
+import com.fjhx.xmhjc.entity.column.vo.ColumnMenuVo;
+import com.fjhx.xmhjc.entity.home.po.HomeSetting;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingByOpenVo;
+import com.fjhx.xmhjc.mapper.home.HomeSettingMapper;
+import com.fjhx.xmhjc.service.column.ColumnArticleService;
+import com.fjhx.xmhjc.service.column.ColumnMenuService;
+import com.fjhx.xmhjc.service.home.HomeSettingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.StringUtils;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.xmhjc.entity.home.vo.HomeSettingVo;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.fjhx.xmhjc.entity.home.dto.HomeSettingDto;
+import cn.hutool.core.bean.BeanUtil;
+
+import javax.annotation.Resource;
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ * <p>
+ * 首页配置 服务实现类
+ * </p>
+ *
+ * @author lqh
+ * @since 2023-11-22
+ */
+@Service
+public class HomeSettingServiceImpl extends ServiceImpl<HomeSettingMapper, HomeSetting> implements HomeSettingService {
+
+    @Resource
+    private ColumnMenuService columnMenuService;
+    @Resource
+    private ColumnArticleService columnArticleService;
+
+
+    @Override
+    public List<HomeSettingVo> getList(HomeSettingSelectDto dto) {
+        IWrapper<HomeSetting> wrapper = getWrapper();
+        wrapper.orderByAsc("hs", HomeSetting::getId);
+        List<HomeSettingVo> list = this.baseMapper.getList(wrapper);
+        return list;
+    }
+
+    @Override
+    public Page<HomeSettingVo> getPage(HomeSettingSelectDto dto) {
+        IWrapper<HomeSetting> wrapper = getWrapper();
+        wrapper.orderByDesc("hs", HomeSetting::getId);
+        Page<HomeSettingVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public HomeSettingVo detail(Long id) {
+        HomeSetting HomeSetting = this.getById(id);
+        HomeSettingVo result = BeanUtil.toBean(HomeSetting, HomeSettingVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(HomeSettingDto homeSettingDto) {
+        this.save(homeSettingDto);
+    }
+
+    @Override
+    public void edit(HomeSettingDto homeSettingDto) {
+        this.updateById(homeSettingDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+    @Override
+    public void initHomeSetting(List<HomeSettingVo> list) {
+        //固定生成4个栏目模块
+        Set<Long> longSet = new HashSet<Long>(){{
+            add(1L);add(2L); add(3L);  add(4L);
+        }};
+
+        Set<Long> idSet = list.stream().map(HomeSettingVo::getId).collect(Collectors.toSet());
+
+        longSet.forEach(id ->{
+            if (!idSet.contains(id)){
+                HomeSettingVo homeSettingVo = new HomeSettingVo();
+                homeSettingVo.setId(id);
+                list.add(homeSettingVo);
+
+                HomeSettingDto homeSettingDto = BeanUtil.toBean(homeSettingVo, HomeSettingDto.class);
+                this.save(homeSettingDto);
+            }
+        });
+    }
+
+    @Override
+    public void handHomeSetting(List<HomeSettingVo> list) {
+
+
+        Map<Long, String> menuMap = columnMenuService.getList(new ColumnMenuSelectDto()).stream().collect(Collectors.toMap(ColumnMenuVo::getId, ColumnMenuVo::getName));
+        Map<Long, String> articleMap = columnArticleService.getList(new ColumnArticleSelectDto()).stream().collect(Collectors.toMap(ColumnArticleVo::getId, ColumnArticleVo::getTitle));
+
+        list.forEach(home ->{
+            home.setMenuIdName(Objects.nonNull(home.getMenuId()) ?menuMap.getOrDefault(home.getMenuId(),""):"");
+            home.setArticleTitle1(Objects.nonNull(home.getArticle1())?articleMap.getOrDefault(home.getArticle1(),""):"");
+            home.setArticleTitle2(Objects.nonNull(home.getArticle2())?articleMap.getOrDefault(home.getArticle2(),""):"");
+            home.setArticleTitle3(Objects.nonNull(home.getArticle3())?articleMap.getOrDefault(home.getArticle3(),""):"");
+            home.setArticleTitle4(Objects.nonNull(home.getArticle4())?articleMap.getOrDefault(home.getArticle4(),""):"");
+        } );
+
+    }
+
+    @Override
+    public void handHomeSettingByOpen(List<HomeSettingByOpenVo> list) {
+
+
+        Map<Long, String> menuMap = columnMenuService.getList(new ColumnMenuSelectDto()).stream().collect(Collectors.toMap(ColumnMenuVo::getId, ColumnMenuVo::getName));
+        Map<Long, ColumnArticleVo> articleMap = columnArticleService.getList(new ColumnArticleSelectDto()).stream().collect(Collectors.toMap(ColumnArticleVo::getId, Function.identity()));
+
+        list.forEach(home ->{
+            home.setMenuIdName(Objects.nonNull(home.getMenuId()) ?menuMap.getOrDefault(home.getMenuId(),""):"");
+            home.setArticleObj1(Objects.nonNull(home.getArticle1())?articleMap.getOrDefault(home.getArticle1(),new ColumnArticleVo()):new ColumnArticleVo());
+            home.setArticleObj2(Objects.nonNull(home.getArticle2())?articleMap.getOrDefault(home.getArticle2(),new ColumnArticleVo()):new ColumnArticleVo());
+            home.setArticleObj3(Objects.nonNull(home.getArticle3())?articleMap.getOrDefault(home.getArticle3(),new ColumnArticleVo()):new ColumnArticleVo());
+            home.setArticleObj4(Objects.nonNull(home.getArticle4())?articleMap.getOrDefault(home.getArticle4(),new ColumnArticleVo()):new ColumnArticleVo());
+        } );
+
+    }
+}

+ 38 - 0
hx-xmhjc/src/main/resources/mapper/home/HomeSettingMapper.xml

@@ -0,0 +1,38 @@
+<?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.home.HomeSettingMapper">
+    <select id="getList" resultType="com.fjhx.xmhjc.entity.home.vo.HomeSettingVo">
+        select
+            hs.id,
+            hs.menu_id,
+            hs.title_en,
+            hs.article1,
+            hs.article2,
+            hs.article3,
+            hs.article4,
+            hs.create_user,
+            hs.create_time,
+            hs.update_user,
+            hs.update_time
+        from home_setting hs
+            ${ew.customSqlSegment}
+    </select>
+
+    <select id="getPage" resultType="com.fjhx.xmhjc.entity.home.vo.HomeSettingVo">
+        select
+            hs.id,
+            hs.menu_id,
+            hs.title_en,
+            hs.article1,
+            hs.article2,
+            hs.article3,
+            hs.article4,
+            hs.create_user,
+            hs.create_time,
+            hs.update_user,
+            hs.update_time
+        from home_setting hs
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

部分文件因文件數量過多而無法顯示