mirror of https://gitee.com/stylefeng/roses
【7.1.6】【theme】系统内置主题模板和主题字段不能删除
parent
a7002469a4
commit
d8520adff2
|
@ -67,6 +67,16 @@ public interface SystemConstants {
|
||||||
*/
|
*/
|
||||||
Integer SUPER_ADMIN_INIT_LISTENER_SORT = 400;
|
Integer SUPER_ADMIN_INIT_LISTENER_SORT = 400;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 主题编码相关的系统变量前缀
|
||||||
|
*/
|
||||||
|
String THEME_CODE_SYSTEM_PREFIX = "GUNS";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 系统内置主题模板的编码
|
||||||
|
*/
|
||||||
|
String THEME_GUNS_PLATFORM = "GUNS_PLATFORM";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* FieldMetadata类全路径
|
* FieldMetadata类全路径
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -32,7 +32,12 @@ public enum SysThemeExceptionEnum implements AbstractExceptionEnum {
|
||||||
/**
|
/**
|
||||||
* 唯一启用的系统主题不允许禁用
|
* 唯一启用的系统主题不允许禁用
|
||||||
*/
|
*/
|
||||||
UNIQUE_ENABLE_NOT_DISABLE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SystemConstants.SYSTEM_EXCEPTION_STEP_CODE + "124", "唯一启用的系统主题不允许禁用");
|
UNIQUE_ENABLE_NOT_DISABLE(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SystemConstants.SYSTEM_EXCEPTION_STEP_CODE + "124", "唯一启用的系统主题不允许禁用"),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编码前缀为GUNS的是系统内置属性,不能删除
|
||||||
|
*/
|
||||||
|
THEME_IS_SYSTEM(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SystemConstants.SYSTEM_EXCEPTION_STEP_CODE + "125", "编码前缀为GUNS的是系统内置属性,不能删除");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 错误编码
|
* 错误编码
|
||||||
|
|
|
@ -7,7 +7,9 @@ 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.factory.PageResultFactory;
|
||||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||||
|
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.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.exception.enums.theme.SysThemeTemplateFieldExceptionEnum;
|
||||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateFieldRequest;
|
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateFieldRequest;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.theme.entity.SysThemeTemplateField;
|
import cn.stylefeng.roses.kernel.system.modular.theme.entity.SysThemeTemplateField;
|
||||||
|
@ -24,6 +26,7 @@ import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -55,6 +58,11 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl<SysThemeTempla
|
||||||
public void del(SysThemeTemplateFieldRequest sysThemeTemplateFieldRequest) {
|
public void del(SysThemeTemplateFieldRequest sysThemeTemplateFieldRequest) {
|
||||||
SysThemeTemplateField sysThemeTemplateField = this.queryThemeTemplateFieldById(sysThemeTemplateFieldRequest);
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
// 校验系统主题模板属性使用
|
// 校验系统主题模板属性使用
|
||||||
this.verificationAttributeUsage(sysThemeTemplateField);
|
this.verificationAttributeUsage(sysThemeTemplateField);
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,9 @@ 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.factory.PageResultFactory;
|
||||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||||
|
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.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.exception.enums.theme.SysThemeTemplateExceptionEnum;
|
||||||
import cn.stylefeng.roses.kernel.system.api.pojo.theme.SysThemeTemplateDataDTO;
|
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.system.api.pojo.theme.SysThemeTemplateRequest;
|
||||||
|
@ -26,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统主题模板service接口实现类
|
* 系统主题模板service接口实现类
|
||||||
|
@ -77,6 +80,12 @@ public class SysThemeTemplateServiceImpl extends ServiceImpl<SysThemeTemplateMap
|
||||||
public void del(SysThemeTemplateRequest sysThemeTemplateRequest) {
|
public void del(SysThemeTemplateRequest sysThemeTemplateRequest) {
|
||||||
SysThemeTemplate sysThemeTemplate = this.querySysThemeTemplateById(sysThemeTemplateRequest);
|
SysThemeTemplate sysThemeTemplate = this.querySysThemeTemplateById(sysThemeTemplateRequest);
|
||||||
|
|
||||||
|
// Guns开头的模板字段不能删除,系统内置
|
||||||
|
if (sysThemeTemplateRequest.getTemplateCode().toUpperCase(Locale.ROOT).startsWith(SystemConstants.THEME_CODE_SYSTEM_PREFIX)) {
|
||||||
|
throw new SystemModularException(SysThemeExceptionEnum.THEME_IS_SYSTEM);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 启动的主题模板不能删除
|
||||||
if (YesOrNotEnum.Y.getCode().equals(sysThemeTemplate.getStatusFlag().toString())) {
|
if (YesOrNotEnum.Y.getCode().equals(sysThemeTemplate.getStatusFlag().toString())) {
|
||||||
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_ENABLE);
|
throw new SystemModularException(SysThemeTemplateExceptionEnum.TEMPLATE_IS_ENABLE);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue