mirror of https://gitee.com/stylefeng/roses
【7.6.0】【sys】【theme】更新主题管理的包依赖
parent
32a7d63233
commit
24243e7e02
|
@ -26,8 +26,8 @@ package cn.stylefeng.roses.kernel.sys.modular.theme.cache;
|
|||
|
||||
import cn.hutool.cache.impl.TimedCache;
|
||||
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.constants.ThemeConstants;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.DefaultTheme;
|
||||
import cn.stylefeng.roses.kernel.system.api.constants.SystemCachesConstants;
|
||||
|
||||
/**
|
||||
* 系统主题缓存
|
||||
|
@ -43,7 +43,7 @@ public class ThemeMemoryCache extends AbstractMemoryCacheOperator<DefaultTheme>
|
|||
|
||||
@Override
|
||||
public String getCommonKeyPrefix() {
|
||||
return SystemCachesConstants.SYSTEM_THEME_CACHE_PREFIX;
|
||||
return ThemeConstants.SYSTEM_THEME_CACHE_PREFIX;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -25,8 +25,8 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.cache;
|
||||
|
||||
import cn.stylefeng.roses.kernel.cache.redis.AbstractRedisCacheOperator;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.constants.ThemeConstants;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.DefaultTheme;
|
||||
import cn.stylefeng.roses.kernel.system.api.constants.SystemCachesConstants;
|
||||
import org.springframework.data.redis.core.RedisTemplate;
|
||||
|
||||
/**
|
||||
|
@ -43,7 +43,7 @@ public class ThemeRedisCache extends AbstractRedisCacheOperator<DefaultTheme> {
|
|||
|
||||
@Override
|
||||
public String getCommonKeyPrefix() {
|
||||
return SystemCachesConstants.SYSTEM_THEME_CACHE_PREFIX;
|
||||
return ThemeConstants.SYSTEM_THEME_CACHE_PREFIX;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@ package cn.stylefeng.roses.kernel.sys.modular.theme.clean;
|
|||
|
||||
import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi;
|
||||
import cn.stylefeng.roses.kernel.config.api.ConfigInitCallbackApi;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.constants.ThemeConstants;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.DefaultTheme;
|
||||
import cn.stylefeng.roses.kernel.system.api.constants.SystemConstants;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
@ -27,7 +27,7 @@ public class ThemeConfigRefresh implements ConfigInitCallbackApi {
|
|||
|
||||
@Override
|
||||
public void initAfter() {
|
||||
themeCacheApi.remove(SystemConstants.THEME_GUNS_PLATFORM);
|
||||
themeCacheApi.remove(ThemeConstants.THEME_GUNS_PLATFORM);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.constants;
|
||||
|
||||
/**
|
||||
* 主题相关的常量
|
||||
*
|
||||
* @author fengshuonan
|
||||
* @since 2023/6/18 9:29
|
||||
*/
|
||||
public interface ThemeConstants {
|
||||
|
||||
/**
|
||||
* 系统主题的缓存
|
||||
*/
|
||||
String SYSTEM_THEME_CACHE_PREFIX = "system_cache";
|
||||
|
||||
/**
|
||||
* 系统内置主题模板的编码
|
||||
*/
|
||||
String THEME_GUNS_PLATFORM = "GUNS_PLATFORM";
|
||||
|
||||
/**
|
||||
* 主题编码相关的系统变量前缀
|
||||
*/
|
||||
String THEME_CODE_SYSTEM_PREFIX = "GUNS";
|
||||
|
||||
}
|
|
@ -6,8 +6,8 @@ import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
|
|||
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.DefaultTheme;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeRequest;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
@ -31,7 +31,8 @@ public class SysThemeApiController {
|
|||
* @author fengshuonan
|
||||
* @since 2022/1/10 18:29
|
||||
*/
|
||||
@GetResource(name = "获取当前Guns管理系统的主题数据", path = "/theme/currentThemeInfo", requiredPermission = false, requiredLogin = false)
|
||||
@GetResource(name = "获取当前Guns管理系统的主题数据", path = "/theme/currentThemeInfo", requiredPermission = false,
|
||||
requiredLogin = false)
|
||||
public ResponseData<DefaultTheme> currentThemeInfo(SysThemeRequest sysThemeParam) {
|
||||
DefaultTheme defaultTheme = sysThemeService.currentThemeInfo(sysThemeParam);
|
||||
return new SuccessResponseData<>(defaultTheme);
|
||||
|
|
|
@ -9,9 +9,9 @@ import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
|||
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysTheme;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeRequest;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
|
|
@ -9,9 +9,9 @@ import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
|||
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplate;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateRequest;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
|
|
@ -9,8 +9,8 @@ import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
|||
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateField;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateFieldRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateFieldService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateFieldRequest;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
@ -39,7 +39,8 @@ public class SysThemeTemplateFieldController {
|
|||
*/
|
||||
@PostResource(name = "增加系统主题模板属性", path = "/sysThemeTemplateField/add")
|
||||
@BusinessLog
|
||||
public ResponseData<?> add(@RequestBody @Validated(SysThemeTemplateFieldRequest.add.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
public ResponseData<?> add(
|
||||
@RequestBody @Validated(SysThemeTemplateFieldRequest.add.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
sysThemeTemplateFieldService.add(sysThemeTemplateFieldParam);
|
||||
return new SuccessResponseData<>();
|
||||
}
|
||||
|
@ -52,7 +53,8 @@ public class SysThemeTemplateFieldController {
|
|||
*/
|
||||
@PostResource(name = "删除系统主题模板属性", path = "/sysThemeTemplateField/del")
|
||||
@BusinessLog
|
||||
public ResponseData<?> del(@RequestBody @Validated(SysThemeTemplateFieldRequest.delete.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
public ResponseData<?> del(
|
||||
@RequestBody @Validated(SysThemeTemplateFieldRequest.delete.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
sysThemeTemplateFieldService.del(sysThemeTemplateFieldParam);
|
||||
return new SuccessResponseData<>();
|
||||
}
|
||||
|
@ -65,7 +67,8 @@ public class SysThemeTemplateFieldController {
|
|||
*/
|
||||
@PostResource(name = "修改系统模板属性", path = "/sysThemeTemplateField/edit")
|
||||
@BusinessLog
|
||||
public ResponseData<?> edit(@RequestBody @Validated(SysThemeTemplateFieldRequest.edit.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
public ResponseData<?> edit(
|
||||
@RequestBody @Validated(SysThemeTemplateFieldRequest.edit.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
sysThemeTemplateFieldService.edit(sysThemeTemplateFieldParam);
|
||||
return new SuccessResponseData<>();
|
||||
}
|
||||
|
@ -77,7 +80,8 @@ public class SysThemeTemplateFieldController {
|
|||
* @since 2021/12/17 11:49
|
||||
*/
|
||||
@GetResource(name = "查询系统主题模板属性详情", path = "/sysThemeTemplateField/detail")
|
||||
public ResponseData<SysThemeTemplateField> detail(@Validated(SysThemeTemplateFieldRequest.detail.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
public ResponseData<SysThemeTemplateField> detail(
|
||||
@Validated(SysThemeTemplateFieldRequest.detail.class) SysThemeTemplateFieldRequest sysThemeTemplateFieldParam) {
|
||||
return new SuccessResponseData<>(sysThemeTemplateFieldService.detail(sysThemeTemplateFieldParam));
|
||||
}
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@ import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
|
|||
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateRelRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateRelService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateRelRequest;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.exceptions;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
|
||||
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.constants.SysConstants;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 系统主题异常类
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/23 17:00
|
||||
*/
|
||||
@Getter
|
||||
public enum SysThemeExceptionEnum implements AbstractExceptionEnum {
|
||||
|
||||
/**
|
||||
* 系统主题不存在
|
||||
*/
|
||||
THEME_NOT_EXIST(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "121", "系统主题不存在"),
|
||||
|
||||
/**
|
||||
* 已启用的系统主题不允许删除
|
||||
*/
|
||||
THEME_NOT_ALLOW_DELETE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "122",
|
||||
"已启用的系统主题不允许删除"),
|
||||
|
||||
/**
|
||||
* 禁用的系统主题模板不允许使用
|
||||
*/
|
||||
THEME_TEMPLATE_IS_DISABLE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "123",
|
||||
"禁用的系统主题模板不允许使用"),
|
||||
|
||||
/**
|
||||
* 唯一启用的系统主题不允许禁用
|
||||
*/
|
||||
UNIQUE_ENABLE_NOT_DISABLE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "124",
|
||||
"唯一启用的系统主题不允许禁用"),
|
||||
|
||||
/**
|
||||
* 编码前缀为GUNS的是系统内置属性,不能删除
|
||||
*/
|
||||
THEME_IS_SYSTEM(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "125",
|
||||
"编码前缀为GUNS的是系统内置属性,不能删除");
|
||||
|
||||
/**
|
||||
* 错误编码
|
||||
*/
|
||||
private final String errorCode;
|
||||
|
||||
/**
|
||||
* 提示用户信息
|
||||
*/
|
||||
private final String userTip;
|
||||
|
||||
SysThemeExceptionEnum(String errorCode, String userTip) {
|
||||
this.errorCode = errorCode;
|
||||
this.userTip = userTip;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.exceptions;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
|
||||
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.constants.SysConstants;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 系统主题模板异常类
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/23 17:01
|
||||
*/
|
||||
@Getter
|
||||
public enum SysThemeTemplateExceptionEnum implements AbstractExceptionEnum {
|
||||
|
||||
/**
|
||||
* 系统主题模板不存在
|
||||
*/
|
||||
TEMPLATE_NOT_EXIT(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "111", "系统主题模板不存在"),
|
||||
|
||||
/**
|
||||
* 已启用的系统主题模板不允许删除
|
||||
*/
|
||||
TEMPLATE_IS_ENABLE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "112",
|
||||
"已启用的系统主题模板不允许删除"),
|
||||
|
||||
/**
|
||||
* 系统主题模板正在被使用,不允许操作
|
||||
*/
|
||||
TEMPLATE_IS_USED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "113",
|
||||
"系统主题模板正在被使用,不允许操作"),
|
||||
|
||||
/**
|
||||
* 系统主题模板没有属性,不允许启用
|
||||
*/
|
||||
TEMPLATE_NOT_ATTRIBUTE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "114",
|
||||
"系统主题模板没有属性,不允许启用");
|
||||
|
||||
/**
|
||||
* 错误编码
|
||||
*/
|
||||
private final String errorCode;
|
||||
|
||||
/**
|
||||
* 提示用户信息
|
||||
*/
|
||||
private final String userTip;
|
||||
|
||||
SysThemeTemplateExceptionEnum(String errorCode, String userTip) {
|
||||
this.errorCode = errorCode;
|
||||
this.userTip = userTip;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.exceptions;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
|
||||
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.constants.SysConstants;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 系统主题模板属性异常类
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/23 17:01
|
||||
*/
|
||||
@Getter
|
||||
public enum SysThemeTemplateFieldExceptionEnum implements AbstractExceptionEnum {
|
||||
|
||||
/**
|
||||
* 系统主题模板属性不存在
|
||||
*/
|
||||
FIELD_NOT_EXIST(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "101", "系统主题模板属性不存在"),
|
||||
|
||||
/**
|
||||
* 系统主题模板属性被使用
|
||||
*/
|
||||
FIELD_IS_USED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "102",
|
||||
"系统主题模板属性正在被使用,不允许操作");
|
||||
|
||||
/**
|
||||
* 错误编码
|
||||
*/
|
||||
private final String errorCode;
|
||||
|
||||
/**
|
||||
* 提示用户信息
|
||||
*/
|
||||
private final String userTip;
|
||||
|
||||
SysThemeTemplateFieldExceptionEnum(String errorCode, String userTip) {
|
||||
this.errorCode = errorCode;
|
||||
this.userTip = userTip;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.exceptions;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
|
||||
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.constants.SysConstants;
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum SysThemeTemplateRelExceptionEnum implements AbstractExceptionEnum {
|
||||
|
||||
/**
|
||||
* 系统主题模板属性关系不存在
|
||||
*/
|
||||
RELATION_NOT_EXIST(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "131",
|
||||
"系统主题模板属性关系不存在");
|
||||
|
||||
/**
|
||||
* 错误编码
|
||||
*/
|
||||
private final String errorCode;
|
||||
|
||||
/**
|
||||
* 提示用户信息
|
||||
*/
|
||||
private final String userTip;
|
||||
|
||||
SysThemeTemplateRelExceptionEnum(String errorCode, String userTip) {
|
||||
this.errorCode = errorCode;
|
||||
this.userTip = userTip;
|
||||
}
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.mapper;
|
||||
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplate;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateDataDTO;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?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="cn.stylefeng.roses.kernel.system.modular.theme.mapper.SysThemeMapper">
|
||||
<mapper namespace="cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeMapper">
|
||||
|
||||
</mapper>
|
|
@ -1,5 +1,5 @@
|
|||
<?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="cn.stylefeng.roses.kernel.system.modular.theme.mapper.SysThemeTemplateFieldMapper">
|
||||
<mapper namespace="cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeTemplateFieldMapper">
|
||||
|
||||
</mapper>
|
|
@ -1,8 +1,8 @@
|
|||
<?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="cn.stylefeng.roses.kernel.system.modular.theme.mapper.SysThemeTemplateMapper">
|
||||
<mapper namespace="cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeTemplateMapper">
|
||||
|
||||
<resultMap id="sysThemeTemplateResult" type="cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateDataDTO">
|
||||
<resultMap id="sysThemeTemplateResult" type="cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateDataDTO">
|
||||
<result property="templateId" column="template_id"/>
|
||||
<result property="templateCode" column="template_code"/>
|
||||
<result property="templateName" column="template_name"/>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?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="cn.stylefeng.roses.kernel.system.modular.theme.mapper.SysThemeTemplateRelMapper">
|
||||
<mapper namespace="cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeTemplateRelMapper">
|
||||
|
||||
</mapper>
|
|
@ -0,0 +1,58 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 用于前端数据渲染
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/31 10:01
|
||||
*/
|
||||
@Data
|
||||
public class SysThemeDTO {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@ChineseDescription("主键id")
|
||||
private Long themeId;
|
||||
|
||||
/**
|
||||
* 主题名称
|
||||
*/
|
||||
@ChineseDescription("主题名称")
|
||||
private String themeName;
|
||||
|
||||
/**
|
||||
* 主题属性(JSON格式)
|
||||
*/
|
||||
@ChineseDescription("主题属性(JSON格式)")
|
||||
private String themeValue;
|
||||
|
||||
/**
|
||||
* 主题模板ID
|
||||
*/
|
||||
@ChineseDescription("主题模板id")
|
||||
private Long templateId;
|
||||
|
||||
/**
|
||||
* 启用状态:Y-启用,N-禁用
|
||||
*/
|
||||
@ChineseDescription("启用状态:Y-启用,N-禁用")
|
||||
private Character statusFlag;
|
||||
|
||||
/**
|
||||
* 模板名称,用于前端数据渲染
|
||||
*/
|
||||
@ChineseDescription("模板名称,用于前端数据渲染")
|
||||
private String templateName;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ChineseDescription("创建时间")
|
||||
private Date createTime;
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 系统主题参数
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/17 16:20
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SysThemeRequest extends BaseRequest {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@NotNull(message = "主键ID不能为空", groups = {edit.class, delete.class, detail.class, updateStatus.class})
|
||||
@ChineseDescription("主键ID")
|
||||
private Long themeId;
|
||||
|
||||
/**
|
||||
* 主题名称
|
||||
*/
|
||||
@NotBlank(message = "主题名称不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("主题名称")
|
||||
private String themeName;
|
||||
|
||||
/**
|
||||
* 主题属性(JSON格式)
|
||||
*/
|
||||
@NotBlank(message = "主题属性不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("主题属性")
|
||||
private String themeValue;
|
||||
|
||||
/**
|
||||
* 主题模板ID
|
||||
*/
|
||||
@NotNull(message = "主题模板ID不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("主题模板ID")
|
||||
private Long templateId;
|
||||
}
|
|
@ -0,0 +1,74 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 系统主题模板详细查询返回的数据封装
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/17 15:20
|
||||
*/
|
||||
@Data
|
||||
public class SysThemeTemplateDataDTO {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@ChineseDescription("主键id")
|
||||
private Long templateId;
|
||||
|
||||
/**
|
||||
* 主题模板名称
|
||||
*/
|
||||
@ChineseDescription("主题模板名称")
|
||||
private String templateName;
|
||||
|
||||
/**
|
||||
* 主题模板编码
|
||||
*/
|
||||
@ChineseDescription("主题模板编码")
|
||||
private String templateCode;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@ChineseDescription("属性字段id")
|
||||
private Long fieldId;
|
||||
|
||||
/**
|
||||
* 属性名称
|
||||
*/
|
||||
@ChineseDescription("属性名称")
|
||||
private String fieldName;
|
||||
|
||||
/**
|
||||
* 属性编码
|
||||
*/
|
||||
@ChineseDescription("想属性编码")
|
||||
private String fieldCode;
|
||||
|
||||
/**
|
||||
* 属性展示类型
|
||||
*/
|
||||
@ChineseDescription("属性展示类型")
|
||||
private String fieldType;
|
||||
|
||||
/**
|
||||
* 是否必填:Y-必填,N-非必填
|
||||
*/
|
||||
@ChineseDescription("是否必填:Y-必填,N-非必填")
|
||||
private Character fieldRequired;
|
||||
|
||||
/**
|
||||
* 属性长度
|
||||
*/
|
||||
@ChineseDescription("属性长度")
|
||||
private Integer fieldLength;
|
||||
|
||||
/**
|
||||
* 属性描述
|
||||
*/
|
||||
@ChineseDescription("属性描述")
|
||||
private String fieldDescription;
|
||||
}
|
|
@ -0,0 +1,69 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 系统主题模板属性参数
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/17 10:42
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SysThemeTemplateFieldRequest extends BaseRequest {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@NotNull(message = "主键ID不能为空", groups = {edit.class, delete.class, detail.class})
|
||||
@ChineseDescription("主键ID")
|
||||
private Long fieldId;
|
||||
|
||||
/**
|
||||
* 模板ID
|
||||
*/
|
||||
@ChineseDescription("模板ID")
|
||||
private Long templateId;
|
||||
|
||||
/**
|
||||
* 属性名称
|
||||
*/
|
||||
@NotBlank(message = "属性名称不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("属性名称")
|
||||
private String fieldName;
|
||||
|
||||
@NotNull(message = "属性编码不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("属性编码")
|
||||
private String fieldCode;
|
||||
|
||||
/**
|
||||
* 属性展示类型(字典维护)
|
||||
*/
|
||||
@NotBlank(message = "属性展示类型不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("属性展示类型")
|
||||
private String fieldType;
|
||||
|
||||
/**
|
||||
* 是否必填:Y-必填,N-非必填
|
||||
*/
|
||||
@ChineseDescription("是否必填")
|
||||
private Character fieldRequired;
|
||||
|
||||
/**
|
||||
* 属性长度
|
||||
*/
|
||||
@ChineseDescription("属性长度")
|
||||
private Integer fieldLength;
|
||||
|
||||
/**
|
||||
* 属性描述
|
||||
*/
|
||||
@ChineseDescription("属性描述")
|
||||
private String fieldDescription;
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 系统主题模板属性关系参数
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/24 10:42
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SysThemeTemplateRelRequest extends BaseRequest {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@ChineseDescription("主键ID")
|
||||
private Long relationId;
|
||||
|
||||
/**
|
||||
* 模板ID
|
||||
*/
|
||||
@NotNull(message = "模板ID不能为空", groups = {add.class})
|
||||
@ChineseDescription("模板ID")
|
||||
private Long templateId;
|
||||
|
||||
/**
|
||||
* 属性编码集合
|
||||
*/
|
||||
@NotEmpty(message = "属性编码集合不能为空", groups = {add.class, delete.class})
|
||||
@ChineseDescription("属性编码集合")
|
||||
private String[] fieldCodes;
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 系统主题模板参数
|
||||
*
|
||||
* @author xixiaowei
|
||||
* @since 2021/12/17 16:19
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SysThemeTemplateRequest extends BaseRequest {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@NotNull(message = "主键ID不能为空", groups = {edit.class, delete.class, detail.class, updateStatus.class})
|
||||
@ChineseDescription("主键ID")
|
||||
private Long templateId;
|
||||
|
||||
/**
|
||||
* 主题模板名称
|
||||
*/
|
||||
@NotBlank(message = "主题模板名称不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("主题模板名称")
|
||||
private String templateName;
|
||||
|
||||
/**
|
||||
* 主题模板编码
|
||||
*/
|
||||
@NotNull(message = "主题模板编码不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("主题模板编码")
|
||||
private String templateCode;
|
||||
|
||||
/**
|
||||
* 主题模板类型:1-系统类型,2-业务类型
|
||||
*/
|
||||
@NotNull(message = "主题模板类型不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("主题模板类型")
|
||||
private Short templateType;
|
||||
|
||||
/**
|
||||
* 主题模板启用状态:Y-启用,N-禁用
|
||||
*/
|
||||
@ChineseDescription("主题模板启用状态")
|
||||
private Character statusFlag;
|
||||
}
|
|
@ -3,8 +3,8 @@ package cn.stylefeng.roses.kernel.sys.modular.theme.service;
|
|||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysTheme;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.DefaultTheme;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeRequest;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
|
|
|
@ -2,7 +2,7 @@ package cn.stylefeng.roses.kernel.sys.modular.theme.service;
|
|||
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateField;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateFieldRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateFieldRequest;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.service;
|
||||
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateRel;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateRelRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateRelRequest;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
/**
|
||||
|
|
|
@ -2,8 +2,8 @@ package cn.stylefeng.roses.kernel.sys.modular.theme.service;
|
|||
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplate;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateRequest;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
|
|
@ -14,24 +14,23 @@ import cn.stylefeng.roses.kernel.file.api.pojo.AntdvFileInfo;
|
|||
import cn.stylefeng.roses.kernel.file.api.pojo.request.SysFileInfoRequest;
|
||||
import cn.stylefeng.roses.kernel.rule.callback.ConfigUpdateCallback;
|
||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.exception.SysException;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.constants.ThemeConstants;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysTheme;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplate;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateField;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateRel;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.enums.ThemeFieldTypeEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.exceptions.SysThemeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.factory.DefaultThemeFactory;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeMapper;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.DefaultTheme;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateFieldService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateRelService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateService;
|
||||
import cn.stylefeng.roses.kernel.system.api.ThemeServiceApi;
|
||||
import cn.stylefeng.roses.kernel.system.api.constants.SystemConstants;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.theme.SysThemeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeRequest;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.alibaba.fastjson2.TypeReference;
|
||||
|
@ -58,7 +57,7 @@ import java.util.stream.Collectors;
|
|||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> implements SysThemeService, ThemeServiceApi, ConfigUpdateCallback {
|
||||
public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> implements SysThemeService, ConfigUpdateCallback {
|
||||
|
||||
@Resource
|
||||
private SysThemeTemplateService sysThemeTemplateService;
|
||||
|
@ -82,7 +81,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
|
||||
// 判断模板启用状态:如果为禁用状态不允许使用
|
||||
if (YesOrNotEnum.N.getCode().equals(sysThemeTemplate.getStatusFlag().toString())) {
|
||||
throw new SystemModularException(SysThemeExceptionEnum.THEME_TEMPLATE_IS_DISABLE);
|
||||
throw new SysException(SysThemeExceptionEnum.THEME_TEMPLATE_IS_DISABLE);
|
||||
}
|
||||
|
||||
SysTheme sysTheme = new SysTheme();
|
||||
|
@ -102,7 +101,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
|
||||
// 已启用的主题不允许删除
|
||||
if (YesOrNotEnum.Y.getCode().equals(sysTheme.getStatusFlag().toString())) {
|
||||
throw new SystemModularException(SysThemeExceptionEnum.THEME_NOT_ALLOW_DELETE);
|
||||
throw new SysException(SysThemeExceptionEnum.THEME_NOT_ALLOW_DELETE);
|
||||
}
|
||||
|
||||
// 删除保存的图片
|
||||
|
@ -117,8 +116,8 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
List<String> fileNames = new ArrayList<>();
|
||||
if (themeKeys.size() > 0) {
|
||||
LambdaQueryWrapper<SysThemeTemplateField> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.in(SysThemeTemplateField::getFieldCode, themeKeys).eq(SysThemeTemplateField::getFieldType, ThemeFieldTypeEnum.FILE.getCode())
|
||||
.select(SysThemeTemplateField::getFieldCode);
|
||||
queryWrapper.in(SysThemeTemplateField::getFieldCode, themeKeys)
|
||||
.eq(SysThemeTemplateField::getFieldType, ThemeFieldTypeEnum.FILE.getCode()).select(SysThemeTemplateField::getFieldCode);
|
||||
List<SysThemeTemplateField> sysThemeTemplateFields = sysThemeTemplateFieldService.list(queryWrapper);
|
||||
fileNames = sysThemeTemplateFields.stream().map(SysThemeTemplateField::getFieldCode).collect(Collectors.toList());
|
||||
}
|
||||
|
@ -174,7 +173,8 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
sysThemeDTOList.add(sysThemeDTO);
|
||||
}
|
||||
|
||||
return PageResultFactory.createPageResult(sysThemeDTOList, page.getTotal(), Integer.valueOf(String.valueOf(page.getSize())), Integer.valueOf(String.valueOf(page.getCurrent())));
|
||||
return PageResultFactory.createPageResult(sysThemeDTOList, page.getTotal(), Integer.valueOf(String.valueOf(page.getSize())),
|
||||
Integer.valueOf(String.valueOf(page.getCurrent())));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -211,7 +211,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
|
||||
// 已经启用系统主题不允许禁用
|
||||
if (YesOrNotEnum.Y.getCode().equals(sysTheme.getStatusFlag().toString())) {
|
||||
throw new SystemModularException(SysThemeExceptionEnum.UNIQUE_ENABLE_NOT_DISABLE);
|
||||
throw new SysException(SysThemeExceptionEnum.UNIQUE_ENABLE_NOT_DISABLE);
|
||||
} else {
|
||||
// 如果当前系统禁用,启用该系统主题,同时禁用已启用的系统主题
|
||||
sysTheme.setStatusFlag(YesOrNotEnum.Y.getCode().charAt(0));
|
||||
|
@ -235,7 +235,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
public DefaultTheme currentThemeInfo(SysThemeRequest sysThemeParam) {
|
||||
|
||||
// 获取缓存中是否有默认主题
|
||||
DefaultTheme defaultTheme = themeCacheApi.get(SystemConstants.THEME_GUNS_PLATFORM);
|
||||
DefaultTheme defaultTheme = themeCacheApi.get(ThemeConstants.THEME_GUNS_PLATFORM);
|
||||
if (defaultTheme != null) {
|
||||
return defaultTheme;
|
||||
}
|
||||
|
@ -247,7 +247,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
this.parseFileUrls(result);
|
||||
|
||||
// 缓存系统中激活的主题
|
||||
themeCacheApi.put(SystemConstants.THEME_GUNS_PLATFORM, result);
|
||||
themeCacheApi.put(ThemeConstants.THEME_GUNS_PLATFORM, result);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
@ -269,7 +269,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
private SysTheme querySysThemeById(SysThemeRequest sysThemeRequest) {
|
||||
SysTheme sysTheme = this.getById(sysThemeRequest.getThemeId());
|
||||
if (ObjectUtil.isNull(sysTheme)) {
|
||||
throw new SystemModularException(SysThemeExceptionEnum.THEME_NOT_EXIST);
|
||||
throw new SysException(SysThemeExceptionEnum.THEME_NOT_EXIST);
|
||||
}
|
||||
return sysTheme;
|
||||
}
|
||||
|
@ -345,7 +345,8 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
}
|
||||
|
||||
// 所有文件类型的字段名
|
||||
List<String> needToParse = fieldInfoList.stream().map(SysThemeTemplateField::getFieldCode).map(StrUtil::toCamelCase).collect(Collectors.toList());
|
||||
List<String> needToParse = fieldInfoList.stream().map(SysThemeTemplateField::getFieldCode).map(StrUtil::toCamelCase)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// 其他属性
|
||||
Map<String, String> otherConfigs = theme.getOtherConfigs();
|
||||
|
@ -389,7 +390,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
private Long getDefaultTemplateId() {
|
||||
// 查询编码为GUNS_PLATFORM的主题模板id
|
||||
LambdaQueryWrapper<SysThemeTemplate> sysThemeTemplateLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
sysThemeTemplateLambdaQueryWrapper.eq(SysThemeTemplate::getTemplateCode, SystemConstants.THEME_GUNS_PLATFORM);
|
||||
sysThemeTemplateLambdaQueryWrapper.eq(SysThemeTemplate::getTemplateCode, ThemeConstants.THEME_GUNS_PLATFORM);
|
||||
SysThemeTemplate sysThemeTemplate = this.sysThemeTemplateService.getOne(sysThemeTemplateLambdaQueryWrapper, false);
|
||||
if (sysThemeTemplate == null) {
|
||||
log.error("当前系统主题模板编码GUNS_PLATFORM不存在,请检查数据库数据是否正常!");
|
||||
|
@ -405,7 +406,7 @@ public class SysThemeServiceImpl extends ServiceImpl<SysThemeMapper, SysTheme> i
|
|||
* @since 2022/1/12 12:49
|
||||
*/
|
||||
private void clearThemeCache() {
|
||||
themeCacheApi.remove(SystemConstants.THEME_GUNS_PLATFORM);
|
||||
themeCacheApi.remove(ThemeConstants.THEME_GUNS_PLATFORM);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -7,17 +7,17 @@ import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
|
|||
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.exception.SysException;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.constants.ThemeConstants;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateField;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateRel;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.enums.ThemeFieldTypeEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.exceptions.SysThemeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.exceptions.SysThemeTemplateFieldExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeTemplateFieldMapper;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateFieldRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateFieldService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateRelService;
|
||||
import cn.stylefeng.roses.kernel.system.api.constants.SystemConstants;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.theme.SysThemeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.theme.SysThemeTemplateFieldExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateFieldRequest;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
|
@ -36,7 +36,8 @@ import java.util.stream.Collectors;
|
|||
* @since 2021/12/17 10:34
|
||||
*/
|
||||
@Service
|
||||
public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTemplateFieldMapper, SysThemeTemplateField> implements SysThemeTemplateFieldService {
|
||||
public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTemplateFieldMapper, SysThemeTemplateField> implements
|
||||
SysThemeTemplateFieldService {
|
||||
|
||||
@Resource
|
||||
private SysThemeTemplateRelService sysThemeTemplateRelService;
|
||||
|
@ -49,7 +50,8 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
|||
BeanUtil.copyProperties(sysThemeTemplateFieldRequest, sysThemeTemplateField);
|
||||
|
||||
// 设置是否必填:如果请求参数为空,默认设置为非必填
|
||||
sysThemeTemplateField.setFieldRequired(StringUtils.isBlank(sysThemeTemplateFieldRequest.getFieldType()) ? YesOrNotEnum.N.getCode().charAt(0) : sysThemeTemplateFieldRequest.getFieldRequired());
|
||||
sysThemeTemplateField.setFieldRequired(StringUtils.isBlank(sysThemeTemplateFieldRequest.getFieldType()) ? YesOrNotEnum.N.getCode()
|
||||
.charAt(0) : sysThemeTemplateFieldRequest.getFieldRequired());
|
||||
|
||||
this.save(sysThemeTemplateField);
|
||||
}
|
||||
|
@ -59,8 +61,8 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
|||
SysThemeTemplateField sysThemeTemplateField = this.queryThemeTemplateFieldById(sysThemeTemplateFieldRequest);
|
||||
|
||||
// Guns开头的模板字段不能删除,系统内置
|
||||
if (sysThemeTemplateField.getFieldCode().toUpperCase(Locale.ROOT).startsWith(SystemConstants.THEME_CODE_SYSTEM_PREFIX)) {
|
||||
throw new SystemModularException(SysThemeExceptionEnum.THEME_IS_SYSTEM);
|
||||
if (sysThemeTemplateField.getFieldCode().toUpperCase(Locale.ROOT).startsWith(ThemeConstants.THEME_CODE_SYSTEM_PREFIX)) {
|
||||
throw new SysException(SysThemeExceptionEnum.THEME_IS_SYSTEM);
|
||||
}
|
||||
|
||||
// 校验系统主题模板属性使用
|
||||
|
@ -84,7 +86,7 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
|||
|
||||
// 被使用,抛出异常
|
||||
if (themeTemplateRels.size() > 0) {
|
||||
throw new SystemModularException(SysThemeTemplateFieldExceptionEnum.FIELD_IS_USED);
|
||||
throw new SysException(SysThemeTemplateFieldExceptionEnum.FIELD_IS_USED);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -110,7 +112,8 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
|||
public PageResult<SysThemeTemplateField> findPage(SysThemeTemplateFieldRequest sysThemeTemplateFieldRequest) {
|
||||
LambdaQueryWrapper<SysThemeTemplateField> queryWrapper = new LambdaQueryWrapper<>();
|
||||
// 根据属性名称模糊查询
|
||||
queryWrapper.like(StrUtil.isNotBlank(sysThemeTemplateFieldRequest.getFieldName()), SysThemeTemplateField::getFieldName, sysThemeTemplateFieldRequest.getFieldName());
|
||||
queryWrapper.like(StrUtil.isNotBlank(sysThemeTemplateFieldRequest.getFieldName()), SysThemeTemplateField::getFieldName,
|
||||
sysThemeTemplateFieldRequest.getFieldName());
|
||||
|
||||
Page<SysThemeTemplateField> page = page(PageFactory.defaultPage(), queryWrapper);
|
||||
|
||||
|
@ -140,7 +143,8 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
|||
* @author xixiaowei
|
||||
* @since 2021/12/24 14:38
|
||||
*/
|
||||
private List<String> getFieldCodes(SysThemeTemplateFieldRequest sysThemeTemplateFieldRequest, SysThemeTemplateRelService sysThemeTemplateRelService) {
|
||||
private List<String> getFieldCodes(SysThemeTemplateFieldRequest sysThemeTemplateFieldRequest,
|
||||
SysThemeTemplateRelService sysThemeTemplateRelService) {
|
||||
// 查询有关联的属性
|
||||
LambdaQueryWrapper<SysThemeTemplateRel> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SysThemeTemplateRel::getTemplateId, sysThemeTemplateFieldRequest.getTemplateId());
|
||||
|
@ -197,7 +201,7 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
|||
private SysThemeTemplateField queryThemeTemplateFieldById(SysThemeTemplateFieldRequest sysThemeTemplateFieldRequest) {
|
||||
SysThemeTemplateField sysThemeTemplateField = this.getById(sysThemeTemplateFieldRequest.getFieldId());
|
||||
if (ObjectUtil.isNull(sysThemeTemplateField)) {
|
||||
throw new SystemModularException(SysThemeTemplateFieldExceptionEnum.FIELD_NOT_EXIST);
|
||||
throw new SysException(SysThemeTemplateFieldExceptionEnum.FIELD_NOT_EXIST);
|
||||
}
|
||||
return sysThemeTemplateField;
|
||||
}
|
||||
|
|
|
@ -1,14 +1,14 @@
|
|||
package cn.stylefeng.roses.kernel.sys.modular.theme.service.impl;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.exception.SysException;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplate;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateRel;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.exceptions.SysThemeTemplateExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeTemplateRelMapper;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateRelRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateRelService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateService;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.theme.SysThemeTemplateExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateRelRequest;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
@ -66,7 +66,7 @@ public class SysThemeTemplateRelServiceImpl extends ServiceImpl<SysThemeTemplate
|
|||
SysThemeTemplate sysThemeTemplate = sysThemeTemplateService.getOne(queryWrapper, true);
|
||||
// 判断状态,如果是启用则禁止操作
|
||||
if (YesOrNotEnum.Y.getCode().equals(sysThemeTemplate.getStatusFlag().toString())) {
|
||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_USED);
|
||||
throw new SysException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_USED);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -7,19 +7,19 @@ import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
|
|||
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.exception.SysException;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.constants.ThemeConstants;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysTheme;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplate;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.entity.SysThemeTemplateRel;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.exceptions.SysThemeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.exceptions.SysThemeTemplateExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.mapper.SysThemeTemplateMapper;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.pojo.SysThemeTemplateRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateRelService;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.theme.service.SysThemeTemplateService;
|
||||
import cn.stylefeng.roses.kernel.system.api.constants.SystemConstants;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.theme.SysThemeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.theme.SysThemeTemplateExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateDataDTO;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateRequest;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
@ -66,7 +66,7 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
|||
SysThemeTemplate sysThemeTemplate = this.querySysThemeTemplateById(sysThemeTemplateRequest);
|
||||
|
||||
if (YesOrNotEnum.Y.getCode().equals(sysThemeTemplate.getStatusFlag().toString())) {
|
||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_USED);
|
||||
throw new SysException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_USED);
|
||||
}
|
||||
|
||||
// 拷贝属性
|
||||
|
@ -81,13 +81,13 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
|||
SysThemeTemplate sysThemeTemplate = this.querySysThemeTemplateById(sysThemeTemplateRequest);
|
||||
|
||||
// Guns开头的模板字段不能删除,系统内置
|
||||
if (sysThemeTemplate.getTemplateCode().toUpperCase(Locale.ROOT).startsWith(SystemConstants.THEME_CODE_SYSTEM_PREFIX)) {
|
||||
throw new SystemModularException(SysThemeExceptionEnum.THEME_IS_SYSTEM);
|
||||
if (sysThemeTemplate.getTemplateCode().toUpperCase(Locale.ROOT).startsWith(ThemeConstants.THEME_CODE_SYSTEM_PREFIX)) {
|
||||
throw new SysException(SysThemeExceptionEnum.THEME_IS_SYSTEM);
|
||||
}
|
||||
|
||||
// 启动的主题模板不能删除
|
||||
if (YesOrNotEnum.Y.getCode().equals(sysThemeTemplate.getStatusFlag().toString())) {
|
||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_ENABLE);
|
||||
throw new SysException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_ENABLE);
|
||||
}
|
||||
|
||||
// 删除关联关系条件
|
||||
|
@ -105,7 +105,8 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
|||
public PageResult<SysThemeTemplate> findPage(SysThemeTemplateRequest sysThemeTemplateRequest) {
|
||||
LambdaQueryWrapper<SysThemeTemplate> queryWrapper = new LambdaQueryWrapper<>();
|
||||
// 根据系统主题模板名称模糊查询
|
||||
queryWrapper.like(StrUtil.isNotBlank(sysThemeTemplateRequest.getTemplateName()), SysThemeTemplate::getTemplateName, sysThemeTemplateRequest.getTemplateName());
|
||||
queryWrapper.like(StrUtil.isNotBlank(sysThemeTemplateRequest.getTemplateName()), SysThemeTemplate::getTemplateName,
|
||||
sysThemeTemplateRequest.getTemplateName());
|
||||
|
||||
Page<SysThemeTemplate> page = page(PageFactory.defaultPage(), queryWrapper);
|
||||
|
||||
|
@ -126,7 +127,7 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
|||
queryWrapper.eq(SysTheme::getTemplateId, sysThemeTemplate.getTemplateId());
|
||||
long sysThemeNum = sysThemeService.count(queryWrapper);
|
||||
if (sysThemeNum > 0) {
|
||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_USED);
|
||||
throw new SysException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_USED);
|
||||
}
|
||||
|
||||
// 修改状态
|
||||
|
@ -140,7 +141,7 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
|||
List<SysThemeTemplateRel> sysThemeTemplateRels = sysThemeTemplateRelService.list(wrapper);
|
||||
|
||||
if (sysThemeTemplateRels.size() <= 0) {
|
||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_NOT_ATTRIBUTE);
|
||||
throw new SysException(SysThemeTemplateExceptionEnum.TEMPLATE_NOT_ATTRIBUTE);
|
||||
}
|
||||
|
||||
sysThemeTemplate.setStatusFlag(YesOrNotEnum.Y.getCode().charAt(0));
|
||||
|
@ -164,7 +165,7 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
|||
private SysThemeTemplate querySysThemeTemplateById(SysThemeTemplateRequest sysThemeTemplateRequest) {
|
||||
SysThemeTemplate sysThemeTemplate = this.getById(sysThemeTemplateRequest.getTemplateId());
|
||||
if (ObjectUtil.isNull(sysThemeTemplate)) {
|
||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_NOT_EXIT);
|
||||
throw new SysException(SysThemeTemplateExceptionEnum.TEMPLATE_NOT_EXIT);
|
||||
}
|
||||
return sysThemeTemplate;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue