diff --git a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/constants/SystemConstants.java b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/constants/SystemConstants.java index cec2c3d5e..fa034d148 100644 --- a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/constants/SystemConstants.java +++ b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/constants/SystemConstants.java @@ -67,6 +67,16 @@ public interface SystemConstants { */ Integer SUPER_ADMIN_INIT_LISTENER_SORT = 400; + /** + * 主题编码相关的系统变量前缀 + */ + String THEME_CODE_SYSTEM_PREFIX = "GUNS"; + + /** + * 系统内置主题模板的编码 + */ + String THEME_GUNS_PLATFORM = "GUNS_PLATFORM"; + /** * FieldMetadata类全路径 */ diff --git a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/exception/enums/theme/SysThemeExceptionEnum.java b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/exception/enums/theme/SysThemeExceptionEnum.java index 2f66878f4..d327ac957 100644 --- a/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/exception/enums/theme/SysThemeExceptionEnum.java +++ b/kernel-s-system/system-api/src/main/java/cn/stylefeng/roses/kernel/system/api/exception/enums/theme/SysThemeExceptionEnum.java @@ -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的是系统内置属性,不能删除"); /** * 错误编码 diff --git a/kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/service/impl/SysThemeTemplateFieldServiceImpl.java b/kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/service/impl/SysThemeTemplateFieldServiceImpl.java index 21fd4e54a..78a23d25e 100644 --- a/kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/service/impl/SysThemeTemplateFieldServiceImpl.java +++ b/kernel-s-system/system-business-theme/src/main/java/cn/stylefeng/roses/kernel/system/modular/theme/service/impl/SysThemeTemplateFieldServiceImpl.java @@ -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.pojo.page.PageResult; 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.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 cn.stylefeng.roses.kernel.system.modular.theme.entity.SysThemeTemplateField; @@ -24,6 +26,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; +import java.util.Locale; import java.util.stream.Collectors; /** @@ -55,6 +58,11 @@ public class SysThemeTemplateFieldServiceImpl extends ServiceImpl