From c09e9401bb56f652347312617ae45e4ae31ee045 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Mon, 11 Jul 2022 19:14:02 +0800 Subject: [PATCH] fix web_setting --- src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSettingService.java | 12 ++ src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeWebSetInfoVo.java | 24 +++- src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminWebSetController.java | 18 ++- /dev/null | 79 ------------- src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSettingServiceImpl.java | 44 +++++++ src/main/java/com/xcong/farmer/cms/conversion/WebSettingConversion.java | 20 +++ src/main/resources/mapper/WebSetMapper.xml | 9 + src/main/java/com/xcong/farmer/cms/modules/system/dto/SetWebSettingDto.java | 40 ++++++ src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSettingEntity.java | 60 ++++++++++ src/main/java/com/xcong/farmer/cms/modules/system/mapper/WebSetMapper.java | 7 10 files changed, 220 insertions(+), 93 deletions(-) diff --git a/src/main/java/com/xcong/farmer/cms/conversion/WebSettingConversion.java b/src/main/java/com/xcong/farmer/cms/conversion/WebSettingConversion.java new file mode 100644 index 0000000..b358a51 --- /dev/null +++ b/src/main/java/com/xcong/farmer/cms/conversion/WebSettingConversion.java @@ -0,0 +1,20 @@ +package com.xcong.farmer.cms.conversion; + +import com.xcong.farmer.cms.modules.system.dto.SetWebSettingDto; +import com.xcong.farmer.cms.modules.system.entity.WebSettingEntity; +import com.xcong.farmer.cms.modules.system.vo.AdminSeeWebSetInfoVo; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +/** + * @author wzy + * @date 2022-07-11 + **/ +@Mapper +public abstract class WebSettingConversion { + public static WebSettingConversion INSTANCE = Mappers.getMapper(WebSettingConversion.class); + + public abstract WebSettingEntity dtoToEntity(SetWebSettingDto setWebSettingDto); + + public abstract AdminSeeWebSetInfoVo entityToVo(WebSettingEntity webSettingEntity); +} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminWebSetController.java b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminWebSetController.java index a0e5293..9016746 100644 --- a/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminWebSetController.java +++ b/src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminWebSetController.java @@ -1,12 +1,15 @@ package com.xcong.farmer.cms.modules.system.controller; import com.xcong.farmer.cms.common.response.Result; -import com.xcong.farmer.cms.modules.system.dto.AdminUpdateWebSetDto; +import com.xcong.farmer.cms.modules.system.dto.SetWebSettingDto; import com.xcong.farmer.cms.modules.system.service.IReleaseService; -import com.xcong.farmer.cms.modules.system.service.IWebSetService; +import com.xcong.farmer.cms.modules.system.service.IWebSettingService; import com.xcong.farmer.cms.modules.system.util.LoginUserUtil; +import com.xcong.farmer.cms.modules.system.vo.AdminSeeWebSetInfoVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiResponse; +import io.swagger.annotations.ApiResponses; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; @@ -20,21 +23,24 @@ public class AdminWebSetController { @Resource - private IWebSetService iWebSetService; + private IWebSettingService iWebSetService; @Resource private IReleaseService releaseService; @ApiOperation(value = "查看网页设置", notes = "查看网页设置") + @ApiResponses({ + @ApiResponse(code = 200, message = "success", response = AdminSeeWebSetInfoVo.class) + }) @GetMapping(value = "/seeWebSetInfo") public Result seeWebSetInfo() { - return iWebSetService.seeWebSetInfo(); + return iWebSetService.getWebSetting(); } @ApiOperation(value = "更新网页设置", notes = "更新网页设置") @PostMapping(value = "/updateWebSet") - public Result updateWebSet(@RequestBody @Valid AdminUpdateWebSetDto adminUpdateWebSetDto) { - return iWebSetService.updateWebSet(adminUpdateWebSetDto); + public Result updateWebSet(@RequestBody @Valid SetWebSettingDto setWebSettingDto) { + return iWebSetService.setWebSetting(setWebSettingDto); } @ApiOperation(value = "发布全站", notes = "发布全站") diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminUpdateWebSetDto.java b/src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminUpdateWebSetDto.java deleted file mode 100644 index d22e9a0..0000000 --- a/src/main/java/com/xcong/farmer/cms/modules/system/dto/AdminUpdateWebSetDto.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.xcong.farmer.cms.modules.system.dto; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import javax.validation.constraints.NotBlank; - -@Data -@ApiModel(value = "AdminUpdateWebSetDto", description = "参数接收类") -public class AdminUpdateWebSetDto { - - @ApiModelProperty(value = "ID") - private Long id; - - @ApiModelProperty(value = "网页标题") - @NotBlank(message = "请输入网页标题") - private String webTitle; - - @ApiModelProperty(value = "网页关键字") - @NotBlank(message = "请输入网页关键字") - private String webKeyword; - - @ApiModelProperty(value = "网页描述") - private String webRemark; - - @ApiModelProperty(value = "网页LOGO") - private String webPic; -} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/dto/SetWebSettingDto.java b/src/main/java/com/xcong/farmer/cms/modules/system/dto/SetWebSettingDto.java new file mode 100644 index 0000000..e339339 --- /dev/null +++ b/src/main/java/com/xcong/farmer/cms/modules/system/dto/SetWebSettingDto.java @@ -0,0 +1,40 @@ +package com.xcong.farmer.cms.modules.system.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +@ApiModel(value = "AdminUpdateWebSetDto", description = "参数接收类") +public class SetWebSettingDto { + + @ApiModelProperty(value = "ID") + private Long id; + + @ApiModelProperty(value = "网页标题") + @NotBlank(message = "请输入网页标题") + private String title; + + @ApiModelProperty(value = "网页关键字") + private String seoTitle; + + @ApiModelProperty(value = "网页描述") + private String seoDescription; + + @ApiModelProperty(value = "网页描述") + private String seoKeyword; + + @ApiModelProperty(value = "网页LOGO") + private String logoUrl; + + @ApiModelProperty(value = "首页模板") + private String indexTemplate; + + @ApiModelProperty(value = "搜索模板") + private String searchTemplate; + + @ApiModelProperty(value = "在线留言模板") + private String msgTemplate; +} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSetEntity.java b/src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSetEntity.java deleted file mode 100644 index 451d831..0000000 --- a/src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSetEntity.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.xcong.farmer.cms.modules.system.entity; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; - -/** - * 网页配置表 - */ -@Data -@TableName("t_web_set") -public class WebSetEntity { - //ID - - @TableId(value = "id",type = IdType.AUTO) - private Long id; - //网页标题 - private String webTitle; - //网页关键字 - private String webKeyword; - //网页描述 - private String webRemark; - //网页LOGO - private String webPic; - //所属ID - private Long companyId; -} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSettingEntity.java b/src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSettingEntity.java new file mode 100644 index 0000000..c3f6407 --- /dev/null +++ b/src/main/java/com/xcong/farmer/cms/modules/system/entity/WebSettingEntity.java @@ -0,0 +1,60 @@ +package com.xcong.farmer.cms.modules.system.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * 网页配置表 + */ +@Data +@TableName("t_web_setting") +public class WebSettingEntity { + //ID + + @TableId(value = "id",type = IdType.AUTO) + private Long id; + + /** + * 网站标题 + */ + private String title; + + /** + * seo标题 + */ + private String seoTitle; + + /** + * seo关键词 + */ + private String seoKeyword; + + /** + * seo描述 + */ + private String seoDescription; + + /** + * logo地址 + */ + private String logoUrl; + + /** + * 首页模板 + */ + private String indexTemplate; + + /** + * 搜索模板 + */ + private String searchTemplate; + + /** + * 在线留言模板 + */ + private String msgTemplate; + + private Long companyId; +} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/WebSetMapper.java b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/WebSetMapper.java index a927324..2a0a7db 100644 --- a/src/main/java/com/xcong/farmer/cms/modules/system/mapper/WebSetMapper.java +++ b/src/main/java/com/xcong/farmer/cms/modules/system/mapper/WebSetMapper.java @@ -1,7 +1,10 @@ package com.xcong.farmer.cms.modules.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.xcong.farmer.cms.modules.system.entity.WebSetEntity; +import com.xcong.farmer.cms.modules.system.entity.WebSettingEntity; +import org.apache.ibatis.annotations.Param; -public interface WebSetMapper extends BaseMapper<WebSetEntity> { +public interface WebSetMapper extends BaseMapper<WebSettingEntity> { + + WebSettingEntity selectByCompanyId(@Param("companyId") Long companyId); } diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSetService.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSetService.java deleted file mode 100644 index cc4e59f..0000000 --- a/src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSetService.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.xcong.farmer.cms.modules.system.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.xcong.farmer.cms.common.response.Result; -import com.xcong.farmer.cms.modules.system.dto.AdminUpdateWebSetDto; -import com.xcong.farmer.cms.modules.system.entity.WebSetEntity; - -public interface IWebSetService extends IService<WebSetEntity> { - Result seeWebSetInfo(); - - Result updateWebSet(AdminUpdateWebSetDto adminUpdateWebSetDto); -} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSettingService.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSettingService.java new file mode 100644 index 0000000..081cac9 --- /dev/null +++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/IWebSettingService.java @@ -0,0 +1,12 @@ +package com.xcong.farmer.cms.modules.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.xcong.farmer.cms.common.response.Result; +import com.xcong.farmer.cms.modules.system.dto.SetWebSettingDto; +import com.xcong.farmer.cms.modules.system.entity.WebSettingEntity; + +public interface IWebSettingService extends IService<WebSettingEntity> { + Result getWebSetting(); + + Result setWebSetting(SetWebSettingDto adminUpdateWebSetDto); +} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSetServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSetServiceImpl.java deleted file mode 100644 index ed8d8bc..0000000 --- a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSetServiceImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.xcong.farmer.cms.modules.system.service.Impl; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.xcong.farmer.cms.common.response.Result; -import com.xcong.farmer.cms.modules.system.dto.AdminUpdateWebSetDto; -import com.xcong.farmer.cms.modules.system.entity.UserEntity; -import com.xcong.farmer.cms.modules.system.entity.WebSetEntity; -import com.xcong.farmer.cms.modules.system.mapper.WebSetMapper; -import com.xcong.farmer.cms.modules.system.service.IWebSetService; -import com.xcong.farmer.cms.modules.system.util.LoginUserUtil; -import com.xcong.farmer.cms.modules.system.vo.AdminSeeWebSetInfoVo; -import lombok.extern.slf4j.Slf4j; -import org.springframework.stereotype.Service; - -import java.util.List; - -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import cn.hutool.core.collection.CollUtil; - -@Service -@Slf4j -public class WebSetServiceImpl extends ServiceImpl<WebSetMapper, WebSetEntity> implements IWebSetService { - @Override - public Result seeWebSetInfo() { - UserEntity userlogin = LoginUserUtil.getLoginUser(); - long companyId = userlogin.getCompanyId() == null ? UserEntity.USER_BELONG_TOP : userlogin.getCompanyId(); - AdminSeeWebSetInfoVo adminSeeWebSetInfoVo = new AdminSeeWebSetInfoVo(); - QueryWrapper<WebSetEntity> objectQueryWrapper = new QueryWrapper<>(); - objectQueryWrapper.eq("company_id",companyId); - List<WebSetEntity> webSetEntities = this.baseMapper.selectList(objectQueryWrapper); - if(CollUtil.isNotEmpty(webSetEntities)){ - WebSetEntity webSetEntity = webSetEntities.get(0); - adminSeeWebSetInfoVo.setId(webSetEntity.getId()); - adminSeeWebSetInfoVo.setWebTitle(webSetEntity.getWebTitle()); - adminSeeWebSetInfoVo.setWebKeyword(webSetEntity.getWebKeyword()); - adminSeeWebSetInfoVo.setWebRemark(webSetEntity.getWebRemark()); - adminSeeWebSetInfoVo.setWebPic(webSetEntity.getWebPic()); - } - return Result.ok(adminSeeWebSetInfoVo); - } - - @Override - public Result updateWebSet(AdminUpdateWebSetDto adminUpdateWebSetDto) { - UserEntity userlogin = LoginUserUtil.getLoginUser(); - long companyId = userlogin.getCompanyId() == null ? UserEntity.USER_BELONG_TOP : userlogin.getCompanyId(); - String webTitle = adminUpdateWebSetDto.getWebTitle(); - String webKeyword = adminUpdateWebSetDto.getWebKeyword(); - Long id = adminUpdateWebSetDto.getId() == null ? 0L : adminUpdateWebSetDto.getId(); - QueryWrapper<WebSetEntity> objectQueryWrapper = new QueryWrapper<>(); - objectQueryWrapper.eq("company_id",companyId); - WebSetEntity webSetEntity = this.baseMapper.selectOne(objectQueryWrapper); - if(ObjectUtil.isEmpty(webSetEntity)){ - WebSetEntity webSetEntityAdd = new WebSetEntity(); - webSetEntityAdd.setWebTitle(webTitle); - webSetEntityAdd.setWebKeyword(webKeyword); - String webRemark = adminUpdateWebSetDto.getWebRemark(); - if(StrUtil.isNotEmpty(webRemark)){ - webSetEntityAdd.setWebRemark(webRemark); - } - String webPic = adminUpdateWebSetDto.getWebPic(); - if(StrUtil.isNotEmpty(webPic)){ - webSetEntityAdd.setWebPic(webPic); - } - webSetEntityAdd.setCompanyId(companyId); - this.baseMapper.insert(webSetEntityAdd); - return Result.ok("保存成功"); - } - webSetEntity.setWebTitle(webTitle); - webSetEntity.setWebKeyword(webKeyword); - String webRemark = adminUpdateWebSetDto.getWebRemark(); - webSetEntity.setWebRemark(webRemark); - String webPic = adminUpdateWebSetDto.getWebPic(); - webSetEntity.setWebPic(webPic); - this.baseMapper.updateById(webSetEntity); - return Result.ok("保存成功"); - } -} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSettingServiceImpl.java b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSettingServiceImpl.java new file mode 100644 index 0000000..1ac322f --- /dev/null +++ b/src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/WebSettingServiceImpl.java @@ -0,0 +1,44 @@ +package com.xcong.farmer.cms.modules.system.service.Impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.xcong.farmer.cms.common.response.Result; +import com.xcong.farmer.cms.conversion.WebSettingConversion; +import com.xcong.farmer.cms.modules.system.dto.SetWebSettingDto; +import com.xcong.farmer.cms.modules.system.entity.UserEntity; +import com.xcong.farmer.cms.modules.system.entity.WebSettingEntity; +import com.xcong.farmer.cms.modules.system.mapper.WebSetMapper; +import com.xcong.farmer.cms.modules.system.service.IWebSettingService; +import com.xcong.farmer.cms.modules.system.util.LoginUserUtil; +import com.xcong.farmer.cms.modules.system.vo.AdminSeeWebSetInfoVo; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@Slf4j +public class WebSettingServiceImpl extends ServiceImpl<WebSetMapper, WebSettingEntity> implements IWebSettingService { + @Override + public Result getWebSetting() { + Long companyId = LoginUserUtil.getCompanyId(); + WebSettingEntity webSetting = this.baseMapper.selectByCompanyId(companyId); + if (webSetting == null) { + webSetting = new WebSettingEntity(); + } + + AdminSeeWebSetInfoVo adminSeeWebSetInfoVo = WebSettingConversion.INSTANCE.entityToVo(webSetting); + return Result.ok(adminSeeWebSetInfoVo); + } + + @Override + public Result setWebSetting(SetWebSettingDto setWebSettingDto) { + Long companyId = LoginUserUtil.getCompanyId(); + + WebSettingEntity webSetting = WebSettingConversion.INSTANCE.dtoToEntity(setWebSettingDto); + webSetting.setCompanyId(companyId); + if (setWebSettingDto.getId() == null) { + this.baseMapper.insert(webSetting); + } else { + this.baseMapper.updateById(webSetting); + } + return Result.ok("保存成功"); + } +} diff --git a/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeWebSetInfoVo.java b/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeWebSetInfoVo.java index 3073ff3..614a369 100644 --- a/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeWebSetInfoVo.java +++ b/src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminSeeWebSetInfoVo.java @@ -12,14 +12,26 @@ private Long id; @ApiModelProperty(value = "网页标题") - private String webTitle; + private String title; - @ApiModelProperty(value = "网页关键字") - private String webKeyword; + @ApiModelProperty(value = "seo关键字") + private String seoKeyword; - @ApiModelProperty(value = "网页描述") - private String webRemark; + @ApiModelProperty(value = "seo描述") + private String seoRemark; + + @ApiModelProperty(value = "seo描述") + private String seoDescription; @ApiModelProperty(value = "网页LOGO") - private String webPic; + private String logoUrl; + + @ApiModelProperty(value = "首页模板") + private String indexTemplate; + + @ApiModelProperty(value = "搜索模板") + private String searchTemplate; + + @ApiModelProperty(value = "在线留言模板") + private String msgTemplate; } diff --git a/src/main/resources/mapper/WebSetMapper.xml b/src/main/resources/mapper/WebSetMapper.xml new file mode 100644 index 0000000..32bfe7e --- /dev/null +++ b/src/main/resources/mapper/WebSetMapper.xml @@ -0,0 +1,9 @@ +<?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.xcong.farmer.cms.modules.system.mapper.WebSetMapper"> + + <select id="selectByCompanyId" resultType="com.xcong.farmer.cms.modules.system.entity.WebSettingEntity"> + select * from t_web_setting where company_id=#{companyId} + </select> + +</mapper> \ No newline at end of file -- Gitblit v1.9.1