From 1deac6bb49bda26029a213a210a5ca2e07a516f6 Mon Sep 17 00:00:00 2001 From: wangbing Date: Mon, 8 Feb 2021 17:32:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nginx-admin.db3 | Bin 36864 -> 36864 bytes .../admin/{ConfigAjax.java => RulesAjax.java} | 60 +-- .../xyz/wbsite/module/admin/ent/Config.java | 89 ---- .../wbsite/module/admin/ent/ConfigData.java | 26 +- .../wbsite/module/admin/ent/Locations.java | 2 +- .../xyz/wbsite/module/admin/ent/Rules.java | 117 ++++++ .../xyz/wbsite/module/admin/ent/Services.java | 2 +- .../module/admin/mgr/ConfigDataManager.java | 2 +- .../admin/mgr/ConfigDataManagerImpl.java | 2 +- .../module/admin/mgr/ConfigManager.java | 57 --- .../module/admin/mgr/LocationsManager.java | 2 +- .../admin/mgr/LocationsManagerImpl.java | 2 +- .../wbsite/module/admin/mgr/RulesManager.java | 57 +++ ...ManagerImpl.java => RulesManagerImpl.java} | 83 ++-- .../module/admin/mgr/ServicesManager.java | 2 +- .../module/admin/mgr/ServicesManagerImpl.java | 29 +- .../module/admin/mpr/ConfigDataMapper.java | 2 +- .../module/admin/mpr/ConfigDataMapper.xml | 16 +- .../wbsite/module/admin/mpr/ConfigMapper.xml | 196 --------- .../module/admin/mpr/LocationsMapper.java | 2 +- .../{ConfigMapper.java => RulesMapper.java} | 22 +- .../wbsite/module/admin/mpr/RulesMapper.xml | 216 ++++++++++ .../module/admin/mpr/ServicesMapper.java | 2 +- .../module/admin/req/ConfigCreateRequest.java | 94 ----- .../admin/req/ConfigDataCreateRequest.java | 38 +- .../admin/req/ConfigDataDeleteRequest.java | 2 +- .../admin/req/ConfigDataFindRequest.java | 20 +- .../admin/req/ConfigDataUpdateRequest.java | 38 +- .../module/admin/req/ConfigFindRequest.java | 149 ------- .../module/admin/req/ConfigUpdateRequest.java | 109 ----- .../admin/req/LocationsCreateRequest.java | 2 +- .../admin/req/LocationsDeleteRequest.java | 2 +- .../admin/req/LocationsFindRequest.java | 2 +- .../admin/req/LocationsUpdateRequest.java | 2 +- .../module/admin/req/RulesCreateRequest.java | 118 ++++++ ...teRequest.java => RulesDeleteRequest.java} | 6 +- .../module/admin/req/RulesFindRequest.java | 175 ++++++++ .../module/admin/req/RulesUpdateRequest.java | 133 ++++++ .../admin/req/ServicesCreateRequest.java | 3 +- .../admin/req/ServicesDeleteRequest.java | 2 +- .../module/admin/req/ServicesFindRequest.java | 2 +- .../admin/req/ServicesUpdateRequest.java | 2 +- .../admin/rsp/ConfigDataCreateResponse.java | 2 +- .../admin/rsp/ConfigDataDeleteResponse.java | 2 +- .../admin/rsp/ConfigDataFindResponse.java | 2 +- .../admin/rsp/ConfigDataUpdateResponse.java | 2 +- .../module/admin/rsp/ConfigFindResponse.java | 14 - .../admin/rsp/LocationsCreateResponse.java | 2 +- .../admin/rsp/LocationsDeleteResponse.java | 2 +- .../admin/rsp/LocationsFindResponse.java | 2 +- .../admin/rsp/LocationsUpdateResponse.java | 2 +- ...Response.java => RulesCreateResponse.java} | 6 +- ...Response.java => RulesDeleteResponse.java} | 6 +- .../module/admin/rsp/RulesFindResponse.java | 14 + ...Response.java => RulesUpdateResponse.java} | 6 +- .../admin/rsp/ServicesCreateResponse.java | 2 +- .../admin/rsp/ServicesDeleteResponse.java | 2 +- .../admin/rsp/ServicesFindResponse.java | 2 +- .../admin/rsp/ServicesUpdateResponse.java | 2 +- src/main/resources/nginx-admin.db3 | Bin 36864 -> 36864 bytes .../pt/admin_table/SQLite_ALL_TABLE.sql | 29 +- .../pt/admin_table/SQLite_CONFIG_DATA.sql | 7 +- .../{SQLite_CONFIG.sql => SQLite_RULES.sql} | 16 +- src/main/resources/pt/nginx-admin.xml | 47 +-- .../templates/screen/admin/config.ftl | 319 --------------- .../templates/screen/admin/rules.ftl | 381 ++++++++++++++++++ src/main/resources/templates/screen/index.ftl | 108 ++--- src/test/java/xyz/wbsite/DataInit.java | 15 - .../java/xyz/wbsite/admin/ConfigDataTest.java | 11 +- .../java/xyz/wbsite/admin/ConfigTest.java | 111 ----- src/test/java/xyz/wbsite/admin/RulesTest.java | 127 ++++++ 71 files changed, 1646 insertions(+), 1482 deletions(-) rename src/main/java/xyz/wbsite/action/ajax/admin/{ConfigAjax.java => RulesAjax.java} (57%) delete mode 100644 src/main/java/xyz/wbsite/module/admin/ent/Config.java create mode 100644 src/main/java/xyz/wbsite/module/admin/ent/Rules.java delete mode 100644 src/main/java/xyz/wbsite/module/admin/mgr/ConfigManager.java create mode 100644 src/main/java/xyz/wbsite/module/admin/mgr/RulesManager.java rename src/main/java/xyz/wbsite/module/admin/mgr/{ConfigManagerImpl.java => RulesManagerImpl.java} (54%) delete mode 100644 src/main/java/xyz/wbsite/module/admin/mpr/ConfigMapper.xml rename src/main/java/xyz/wbsite/module/admin/mpr/{ConfigMapper.java => RulesMapper.java} (68%) create mode 100644 src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.xml delete mode 100644 src/main/java/xyz/wbsite/module/admin/req/ConfigCreateRequest.java delete mode 100644 src/main/java/xyz/wbsite/module/admin/req/ConfigFindRequest.java delete mode 100644 src/main/java/xyz/wbsite/module/admin/req/ConfigUpdateRequest.java create mode 100644 src/main/java/xyz/wbsite/module/admin/req/RulesCreateRequest.java rename src/main/java/xyz/wbsite/module/admin/req/{ConfigDeleteRequest.java => RulesDeleteRequest.java} (76%) create mode 100644 src/main/java/xyz/wbsite/module/admin/req/RulesFindRequest.java create mode 100644 src/main/java/xyz/wbsite/module/admin/req/RulesUpdateRequest.java delete mode 100644 src/main/java/xyz/wbsite/module/admin/rsp/ConfigFindResponse.java rename src/main/java/xyz/wbsite/module/admin/rsp/{ConfigCreateResponse.java => RulesCreateResponse.java} (71%) rename src/main/java/xyz/wbsite/module/admin/rsp/{ConfigDeleteResponse.java => RulesDeleteResponse.java} (74%) create mode 100644 src/main/java/xyz/wbsite/module/admin/rsp/RulesFindResponse.java rename src/main/java/xyz/wbsite/module/admin/rsp/{ConfigUpdateResponse.java => RulesUpdateResponse.java} (74%) rename src/main/resources/pt/admin_table/{SQLite_CONFIG.sql => SQLite_RULES.sql} (55%) delete mode 100644 src/main/resources/templates/screen/admin/config.ftl create mode 100644 src/main/resources/templates/screen/admin/rules.ftl delete mode 100644 src/test/java/xyz/wbsite/admin/ConfigTest.java create mode 100644 src/test/java/xyz/wbsite/admin/RulesTest.java diff --git a/nginx-admin.db3 b/nginx-admin.db3 index 9490943458e1aaa155efd6b0d85e190e559566ad..91a42916482c9f0d8792c2cfd9b1a8c6ffea6f29 100644 GIT binary patch delta 430 zcmZozz|^pSX+oCJ1qR*={JXgmc&BqJaO<;O;CQ)NP#}bD^G>!vCKDc3c5zu*#`f%z z#H5^5Kgal>P#@P|7|rG!*=JAwI4MX+r}vc|S*Ae9~c#KA|||fl^+fuJJCeZjPZoA=s?|YmX0d zb$5-xt^n*tKmQQd$sgGtvgxz2i95?qp3f^S3=V;KLzr*bTTGZI^Khy#vTQcw6kuXy zVH5XO1u2}I$Suyz+ML12F0QG`*v>tJt@yT0xo&r_R=C#`Vou9J-09dtbA^-pY delta 285 zcmZozz|^pSX+oCJP6pm<{71Pfd1rERayzi?x?0v;%$iyb@Di8FK5|<&|w9Vi7IU4|0 CF;j~G diff --git a/src/main/java/xyz/wbsite/action/ajax/admin/ConfigAjax.java b/src/main/java/xyz/wbsite/action/ajax/admin/RulesAjax.java similarity index 57% rename from src/main/java/xyz/wbsite/action/ajax/admin/ConfigAjax.java rename to src/main/java/xyz/wbsite/action/ajax/admin/RulesAjax.java index 1b20de7..e768e93 100644 --- a/src/main/java/xyz/wbsite/action/ajax/admin/ConfigAjax.java +++ b/src/main/java/xyz/wbsite/action/ajax/admin/RulesAjax.java @@ -13,54 +13,54 @@ import xyz.wbsite.frame.base.BaseResponse; import xyz.wbsite.frame.utils.ResponseUtil; import xyz.wbsite.frame.utils.ValidationUtil; import xyz.wbsite.frame.excel.exception.TemplateNotMatchException; -import xyz.wbsite.module.admin.ent.Config; -import xyz.wbsite.module.admin.mgr.ConfigManager; -import xyz.wbsite.module.admin.req.ConfigCreateRequest; -import xyz.wbsite.module.admin.req.ConfigDeleteRequest; -import xyz.wbsite.module.admin.req.ConfigFindRequest; -import xyz.wbsite.module.admin.req.ConfigUpdateRequest; -import xyz.wbsite.module.admin.rsp.ConfigCreateResponse; -import xyz.wbsite.module.admin.rsp.ConfigDeleteResponse; -import xyz.wbsite.module.admin.rsp.ConfigFindResponse; -import xyz.wbsite.module.admin.rsp.ConfigUpdateResponse; +import xyz.wbsite.module.admin.ent.Rules; +import xyz.wbsite.module.admin.mgr.RulesManager; +import xyz.wbsite.module.admin.req.RulesCreateRequest; +import xyz.wbsite.module.admin.req.RulesDeleteRequest; +import xyz.wbsite.module.admin.req.RulesFindRequest; +import xyz.wbsite.module.admin.req.RulesUpdateRequest; +import xyz.wbsite.module.admin.rsp.RulesCreateResponse; +import xyz.wbsite.module.admin.rsp.RulesDeleteResponse; +import xyz.wbsite.module.admin.rsp.RulesFindResponse; +import xyz.wbsite.module.admin.rsp.RulesUpdateResponse; import java.io.IOException; import java.util.List; -public class ConfigAjax{ +public class RulesAjax{ @Autowired - private ConfigManager configManager; + private RulesManager rulesManager; - public ConfigCreateResponse create(ConfigCreateRequest request) { - return configManager.create(request, LocalData.getToken()); + public RulesCreateResponse create(RulesCreateRequest request) { + return rulesManager.create(request, LocalData.getToken()); } - public ConfigDeleteResponse delete(ConfigDeleteRequest request) { - return configManager.delete(request, LocalData.getToken()); + public RulesDeleteResponse delete(RulesDeleteRequest request) { + return rulesManager.delete(request, LocalData.getToken()); } - public ConfigUpdateResponse update(ConfigUpdateRequest request) { - return configManager.update(request, LocalData.getToken()); + public RulesUpdateResponse update(RulesUpdateRequest request) { + return rulesManager.update(request, LocalData.getToken()); } - public ConfigFindResponse find(ConfigFindRequest request) { - return configManager.find(request, LocalData.getToken()); + public RulesFindResponse find(RulesFindRequest request) { + return rulesManager.find(request, LocalData.getToken()); } public Object template(){ - return ResponseUtil.apply(new WExcel<>(Config.class)); + return ResponseUtil.apply(new WExcel<>(Rules.class)); } - public Object exports(ConfigFindRequest request) { - ConfigFindResponse response = configManager.find(request, LocalData.getToken()); + public Object exports(RulesFindRequest request) { + RulesFindResponse response = rulesManager.find(request, LocalData.getToken()); if (response.hasError()) { return response; } else if (response.getTotalCount() == 0) { response.addError(ErrorType.BUSINESS_ERROR, "导出数据为空"); return response; } - return ResponseUtil.apply(new WExcel<>(Config.class).addDatas(response.getResult())); + return ResponseUtil.apply(new WExcel<>(Rules.class).addDatas(response.getResult())); } public Object imports(MultipartFile file) { @@ -74,15 +74,15 @@ public class ConfigAjax{ } // 兼容2003以前老版本.xls ExcelTypeEnum excelTypeEnum = originalFilename.matches(".+(.xlsx|.XLSX)$") ? ExcelTypeEnum.XLSX : ExcelTypeEnum.XLS; - WExcel sheet = new WExcel<>(Config.class).read(file.getBytes(), excelTypeEnum, new WExcel.Processor() { + WExcel sheet = new WExcel<>(Rules.class).read(file.getBytes(), excelTypeEnum, new WExcel.Processor() { @Override - public List exec(Config o, int index) { - ConfigCreateRequest request = MapperUtil.map(o, ConfigCreateRequest.class); + public List exec(Rules o, int index) { + RulesCreateRequest request = MapperUtil.map(o, RulesCreateRequest.class); List validate = ValidationUtil.validate(request); if (validate == null || validate.size() == 0) { - ConfigCreateResponse configCreateResponse = configManager.create(request, LocalData.getToken()); - if (configCreateResponse.hasError()) { - for (Error error : configCreateResponse.getErrors()) { + RulesCreateResponse rulesCreateResponse = rulesManager.create(request, LocalData.getToken()); + if (rulesCreateResponse.hasError()) { + for (Error error : rulesCreateResponse.getErrors()) { validate.add(error.getMessage()); } } diff --git a/src/main/java/xyz/wbsite/module/admin/ent/Config.java b/src/main/java/xyz/wbsite/module/admin/ent/Config.java deleted file mode 100644 index f5139be..0000000 --- a/src/main/java/xyz/wbsite/module/admin/ent/Config.java +++ /dev/null @@ -1,89 +0,0 @@ -package xyz.wbsite.module.admin.ent; - -import xyz.wbsite.frame.excel.annotation.ExcelNote; -import xyz.wbsite.frame.excel.annotation.ExcelSelect; -import com.alibaba.excel.annotation.ExcelProperty; -import xyz.wbsite.frame.excel.annotation.ExcelSheet; -import xyz.wbsite.frame.base.BaseEntity; - -/** - * CONFIG - 配置预设 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-08 - */ -@ExcelSheet("配置预设") -public class Config extends BaseEntity { - - /** - * CONF_NAME - 配置名称 - */ - @ExcelProperty("配置名称") - @ExcelNote("") - private String confName; - /** - * CONF_TYPE - 配置类型 - */ - @ExcelProperty("配置类型") - @ExcelNote("") - private String confType; - /** - * CONF_KEY - 配置属名 - */ - @ExcelProperty("配置属名") - @ExcelNote("") - private String confKey; - /** - * CONF_VALUE - 配置属值 - */ - @ExcelProperty("配置属值") - @ExcelNote("") - private String confValue; - /** - * CONF_NOTE - 配置备注 - */ - @ExcelProperty("配置备注") - @ExcelNote("") - private String confNote; - - public String getConfName() { - return this.confName; - } - - public void setConfName(String confName) { - this.confName = confName; - } - - public String getConfType() { - return this.confType; - } - - public void setConfType(String confType) { - this.confType = confType; - } - - public String getConfKey() { - return this.confKey; - } - - public void setConfKey(String confKey) { - this.confKey = confKey; - } - - public String getConfValue() { - return this.confValue; - } - - public void setConfValue(String confValue) { - this.confValue = confValue; - } - - public String getConfNote() { - return this.confNote; - } - - public void setConfNote(String confNote) { - this.confNote = confNote; - } -} \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/ent/ConfigData.java b/src/main/java/xyz/wbsite/module/admin/ent/ConfigData.java index 289fcbb..772b071 100644 --- a/src/main/java/xyz/wbsite/module/admin/ent/ConfigData.java +++ b/src/main/java/xyz/wbsite/module/admin/ent/ConfigData.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseEntity; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigData extends BaseEntity { @@ -16,13 +16,13 @@ public class ConfigData extends BaseEntity { */ private Long targetId; /** - * CONF_NAME - 配置名称 + * RULE_ID - 规则主键 */ - private String confName; + private Long ruleId; /** - * CONF_TYPE - 配置类型 + * CONF_NAME - 配置名称 */ - private String confType; + private String confName; /** * CONF_VALUE - 配置属值 */ @@ -40,20 +40,20 @@ public class ConfigData extends BaseEntity { this.targetId = targetId; } - public String getConfName() { - return this.confName; + public Long getRuleId() { + return this.ruleId; } - public void setConfName(String confName) { - this.confName = confName; + public void setRuleId(Long ruleId) { + this.ruleId = ruleId; } - public String getConfType() { - return this.confType; + public String getConfName() { + return this.confName; } - public void setConfType(String confType) { - this.confType = confType; + public void setConfName(String confName) { + this.confName = confName; } public String getConfValue() { diff --git a/src/main/java/xyz/wbsite/module/admin/ent/Locations.java b/src/main/java/xyz/wbsite/module/admin/ent/Locations.java index 15c20fa..f9aa25b 100644 --- a/src/main/java/xyz/wbsite/module/admin/ent/Locations.java +++ b/src/main/java/xyz/wbsite/module/admin/ent/Locations.java @@ -11,7 +11,7 @@ import xyz.wbsite.frame.base.BaseEntity; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ @ExcelSheet("路径配置") public class Locations extends BaseEntity { diff --git a/src/main/java/xyz/wbsite/module/admin/ent/Rules.java b/src/main/java/xyz/wbsite/module/admin/ent/Rules.java new file mode 100644 index 0000000..c354161 --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/ent/Rules.java @@ -0,0 +1,117 @@ +package xyz.wbsite.module.admin.ent; + +import xyz.wbsite.frame.excel.annotation.ExcelNote; +import xyz.wbsite.frame.excel.annotation.ExcelSelect; +import com.alibaba.excel.annotation.ExcelProperty; +import xyz.wbsite.frame.excel.annotation.ExcelSheet; +import xyz.wbsite.frame.base.BaseEntity; + +/** + * RULES - 配置规则 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +@ExcelSheet("配置规则") +public class Rules extends BaseEntity { + + /** + * RULE_FOR - 规则目标 + */ + @ExcelProperty("规则目标") + @ExcelNote("") + private String ruleFor; + /** + * RULE_TITLE - 规则标题 + */ + @ExcelProperty("规则标题") + @ExcelNote("") + private String ruleTitle; + /** + * RULE_NAME - 规则名称 + */ + @ExcelProperty("规则名称") + @ExcelNote("") + private String ruleName; + /** + * RULE_VALUE - 规则属值 + */ + @ExcelProperty("规则属值") + @ExcelNote("") + private String ruleValue; + /** + * VALUE_DEFAULT - 默认属值 + */ + @ExcelProperty("默认属值") + @ExcelNote("") + private String valueDefault; + /** + * VALUE_REGEX - 属值正则 + */ + @ExcelProperty("属值正则") + @ExcelNote("") + private String valueRegex; + /** + * RULE_NOTE - 规则描述 + */ + @ExcelProperty("规则描述") + @ExcelNote("") + private String ruleNote; + + public String getRuleFor() { + return this.ruleFor; + } + + public void setRuleFor(String ruleFor) { + this.ruleFor = ruleFor; + } + + public String getRuleTitle() { + return this.ruleTitle; + } + + public void setRuleTitle(String ruleTitle) { + this.ruleTitle = ruleTitle; + } + + public String getRuleName() { + return this.ruleName; + } + + public void setRuleName(String ruleName) { + this.ruleName = ruleName; + } + + public String getRuleValue() { + return this.ruleValue; + } + + public void setRuleValue(String ruleValue) { + this.ruleValue = ruleValue; + } + + public String getValueDefault() { + return this.valueDefault; + } + + public void setValueDefault(String valueDefault) { + this.valueDefault = valueDefault; + } + + public String getValueRegex() { + return this.valueRegex; + } + + public void setValueRegex(String valueRegex) { + this.valueRegex = valueRegex; + } + + public String getRuleNote() { + return this.ruleNote; + } + + public void setRuleNote(String ruleNote) { + this.ruleNote = ruleNote; + } +} \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/ent/Services.java b/src/main/java/xyz/wbsite/module/admin/ent/Services.java index 1a61873..d779f7f 100644 --- a/src/main/java/xyz/wbsite/module/admin/ent/Services.java +++ b/src/main/java/xyz/wbsite/module/admin/ent/Services.java @@ -11,7 +11,7 @@ import xyz.wbsite.frame.base.BaseEntity; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ @ExcelSheet("虚拟主机") public class Services extends BaseEntity { diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManager.java b/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManager.java index 4eaab07..a51a352 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManager.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManager.java @@ -15,7 +15,7 @@ import xyz.wbsite.frame.base.Token; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public interface ConfigDataManager { diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManagerImpl.java b/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManagerImpl.java index 0464c28..a3f687b 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManagerImpl.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/ConfigDataManagerImpl.java @@ -28,7 +28,7 @@ import org.springframework.transaction.annotation.Transactional; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ @Transactional @Service diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigManager.java b/src/main/java/xyz/wbsite/module/admin/mgr/ConfigManager.java deleted file mode 100644 index 31f9614..0000000 --- a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigManager.java +++ /dev/null @@ -1,57 +0,0 @@ -package xyz.wbsite.module.admin.mgr; - -import xyz.wbsite.module.admin.req.ConfigCreateRequest; -import xyz.wbsite.module.admin.req.ConfigDeleteRequest; -import xyz.wbsite.module.admin.req.ConfigFindRequest; -import xyz.wbsite.module.admin.req.ConfigUpdateRequest; -import xyz.wbsite.module.admin.rsp.ConfigCreateResponse; -import xyz.wbsite.module.admin.rsp.ConfigDeleteResponse; -import xyz.wbsite.module.admin.rsp.ConfigFindResponse; -import xyz.wbsite.module.admin.rsp.ConfigUpdateResponse; -import xyz.wbsite.frame.base.Token; - -/** - * 配置预设 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-08 - */ -public interface ConfigManager { - - /** - * 插入 - * - * @param request 请求对象 - * @param token 令牌 - * @return - */ - ConfigCreateResponse create(ConfigCreateRequest request, Token token); - - /** - * 逻辑删除 - * - * @param request 请求对象 - * @param token 令牌 - * @return - */ - ConfigDeleteResponse delete(ConfigDeleteRequest request, Token token); - - /** - * 更新 - * - * @param request 请求对象 - * @param token 令牌 - * @return - */ - ConfigUpdateResponse update(ConfigUpdateRequest request, Token token); - - /** - * 查询 - * - * @param request 请求对象 - * @param token 令牌 - * @return - */ - ConfigFindResponse find(ConfigFindRequest request, Token token); -} diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManager.java b/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManager.java index 05b31c2..f7d0bf8 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManager.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManager.java @@ -15,7 +15,7 @@ import xyz.wbsite.frame.base.Token; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public interface LocationsManager { diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManagerImpl.java b/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManagerImpl.java index 18c3712..77782bc 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManagerImpl.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/LocationsManagerImpl.java @@ -28,7 +28,7 @@ import org.springframework.transaction.annotation.Transactional; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ @Transactional @Service diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/RulesManager.java b/src/main/java/xyz/wbsite/module/admin/mgr/RulesManager.java new file mode 100644 index 0000000..49e46f4 --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/mgr/RulesManager.java @@ -0,0 +1,57 @@ +package xyz.wbsite.module.admin.mgr; + +import xyz.wbsite.module.admin.req.RulesCreateRequest; +import xyz.wbsite.module.admin.req.RulesDeleteRequest; +import xyz.wbsite.module.admin.req.RulesFindRequest; +import xyz.wbsite.module.admin.req.RulesUpdateRequest; +import xyz.wbsite.module.admin.rsp.RulesCreateResponse; +import xyz.wbsite.module.admin.rsp.RulesDeleteResponse; +import xyz.wbsite.module.admin.rsp.RulesFindResponse; +import xyz.wbsite.module.admin.rsp.RulesUpdateResponse; +import xyz.wbsite.frame.base.Token; + +/** + * 配置规则 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +public interface RulesManager { + + /** + * 插入 + * + * @param request 请求对象 + * @param token 令牌 + * @return + */ + RulesCreateResponse create(RulesCreateRequest request, Token token); + + /** + * 逻辑删除 + * + * @param request 请求对象 + * @param token 令牌 + * @return + */ + RulesDeleteResponse delete(RulesDeleteRequest request, Token token); + + /** + * 更新 + * + * @param request 请求对象 + * @param token 令牌 + * @return + */ + RulesUpdateResponse update(RulesUpdateRequest request, Token token); + + /** + * 查询 + * + * @param request 请求对象 + * @param token 令牌 + * @return + */ + RulesFindResponse find(RulesFindRequest request, Token token); +} diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigManagerImpl.java b/src/main/java/xyz/wbsite/module/admin/mgr/RulesManagerImpl.java similarity index 54% rename from src/main/java/xyz/wbsite/module/admin/mgr/ConfigManagerImpl.java rename to src/main/java/xyz/wbsite/module/admin/mgr/RulesManagerImpl.java index 9de2d55..d47cc9f 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/ConfigManagerImpl.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/RulesManagerImpl.java @@ -6,16 +6,16 @@ import xyz.wbsite.frame.base.ErrorType; import xyz.wbsite.frame.base.Token; import xyz.wbsite.frame.utils.MapperUtil; import xyz.wbsite.frame.utils.ValidationUtil; -import xyz.wbsite.module.admin.ent.Config; -import xyz.wbsite.module.admin.mpr.ConfigMapper; -import xyz.wbsite.module.admin.req.ConfigCreateRequest; -import xyz.wbsite.module.admin.req.ConfigDeleteRequest; -import xyz.wbsite.module.admin.req.ConfigFindRequest; -import xyz.wbsite.module.admin.req.ConfigUpdateRequest; -import xyz.wbsite.module.admin.rsp.ConfigCreateResponse; -import xyz.wbsite.module.admin.rsp.ConfigDeleteResponse; -import xyz.wbsite.module.admin.rsp.ConfigFindResponse; -import xyz.wbsite.module.admin.rsp.ConfigUpdateResponse; +import xyz.wbsite.module.admin.ent.Rules; +import xyz.wbsite.module.admin.mpr.RulesMapper; +import xyz.wbsite.module.admin.req.RulesCreateRequest; +import xyz.wbsite.module.admin.req.RulesDeleteRequest; +import xyz.wbsite.module.admin.req.RulesFindRequest; +import xyz.wbsite.module.admin.req.RulesUpdateRequest; +import xyz.wbsite.module.admin.rsp.RulesCreateResponse; +import xyz.wbsite.module.admin.rsp.RulesDeleteResponse; +import xyz.wbsite.module.admin.rsp.RulesFindResponse; +import xyz.wbsite.module.admin.rsp.RulesUpdateResponse; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.github.pagehelper.util.StringUtil; @@ -24,7 +24,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; /** - * CONFIG - 配置预设 + * RULES - 配置规则 * * @author wangbing * @version 0.0.1 @@ -32,10 +32,10 @@ import org.springframework.transaction.annotation.Transactional; */ @Transactional @Service -public class ConfigManagerImpl implements ConfigManager { +public class RulesManagerImpl implements RulesManager { @Autowired - private ConfigMapper configMapper; + private RulesMapper rulesMapper; /** * 插入 @@ -44,32 +44,45 @@ public class ConfigManagerImpl implements ConfigManager { * @param token 令牌 * @return 响应 */ - public ConfigCreateResponse create(ConfigCreateRequest request, Token token) { - ConfigCreateResponse response = new ConfigCreateResponse(); + public RulesCreateResponse create(RulesCreateRequest request, Token token) { + RulesCreateResponse response = new RulesCreateResponse(); ValidationUtil.validate(request, response); if (response.hasError()) { return response; } - {// 配置名称唯一检查 - ConfigFindRequest configFindRequest = new ConfigFindRequest(); - configFindRequest.setConfName(request.getConfName()); - ConfigFindResponse configFindResponse = this.find(configFindRequest, token); - if (configFindResponse.hasError()) { - response.addErrors(configFindResponse.getErrors()); + {// 规则目标唯一检查 + RulesFindRequest rulesFindRequest = new RulesFindRequest(); + rulesFindRequest.setRuleFor(request.getRuleFor()); + RulesFindResponse rulesFindResponse = this.find(rulesFindRequest, token); + if (rulesFindResponse.hasError()) { + response.addErrors(rulesFindResponse.getErrors()); return response; - } else if (configFindResponse.getTotalCount() > 0) { - response.addError(ErrorType.UNIQUENESS_ERROR, "[confName]配置名称已存在,请检查!"); + } else if (rulesFindResponse.getTotalCount() > 0) { + response.addError(ErrorType.UNIQUENESS_ERROR, "[ruleFor]规则目标已存在,请检查!"); + return response; + } + } + + {// 规则名称唯一检查 + RulesFindRequest rulesFindRequest = new RulesFindRequest(); + rulesFindRequest.setRuleName(request.getRuleName()); + RulesFindResponse rulesFindResponse = this.find(rulesFindRequest, token); + if (rulesFindResponse.hasError()) { + response.addErrors(rulesFindResponse.getErrors()); + return response; + } else if (rulesFindResponse.getTotalCount() > 0) { + response.addError(ErrorType.UNIQUENESS_ERROR, "[ruleName]规则名称已存在,请检查!"); return response; } } long id = IDgenerator.nextId(); - Config entity = MapperUtil.map(request, Config.class); + Rules entity = MapperUtil.map(request, Rules.class); entity.setId(id); - long result = configMapper.insert(entity, token); + long result = rulesMapper.insert(entity, token); if (1L != result) { response.addError(ErrorType.BUSINESS_ERROR, Message.CREATE_FAILURE); return response; @@ -86,15 +99,15 @@ public class ConfigManagerImpl implements ConfigManager { * @param token 令牌 * @return 响应 */ - public ConfigDeleteResponse delete(ConfigDeleteRequest request, Token token) { - ConfigDeleteResponse response = new ConfigDeleteResponse(); + public RulesDeleteResponse delete(RulesDeleteRequest request, Token token) { + RulesDeleteResponse response = new RulesDeleteResponse(); ValidationUtil.validate(request, response); if (response.hasError()) { return response; } - long result = configMapper.delete(request.getId(), token); + long result = rulesMapper.delete(request.getId(), token); if (1L != result) { response.addError(ErrorType.BUSINESS_ERROR, Message.DELETE_FAILURE); return response; @@ -111,22 +124,22 @@ public class ConfigManagerImpl implements ConfigManager { * @param token 令牌 * @return 响应 */ - public ConfigUpdateResponse update(ConfigUpdateRequest request, Token token) { - ConfigUpdateResponse response = new ConfigUpdateResponse(); + public RulesUpdateResponse update(RulesUpdateRequest request, Token token) { + RulesUpdateResponse response = new RulesUpdateResponse(); ValidationUtil.validate(request, response); if (response.hasError()) { return response; } - Config entity = configMapper.getById(request.getId(), token); + Rules entity = rulesMapper.getById(request.getId(), token); if (entity == null) { response.addError(ErrorType.BUSINESS_ERROR, Message.GET_FAILURE); return response; } MapperUtil.map(request, entity); - long result = configMapper.update(entity, token); + long result = rulesMapper.update(entity, token); if (1L != result) { response.addError(ErrorType.BUSINESS_ERROR, Message.UPDATE_FAILURE); return response; @@ -144,8 +157,8 @@ public class ConfigManagerImpl implements ConfigManager { * @return 响应 */ @Transactional(readOnly = true) - public ConfigFindResponse find(ConfigFindRequest request, Token token) { - ConfigFindResponse response = new ConfigFindResponse(); + public RulesFindResponse find(RulesFindRequest request, Token token) { + RulesFindResponse response = new RulesFindResponse(); ValidationUtil.validate(request, response); if (response.hasError()) { @@ -158,7 +171,7 @@ public class ConfigManagerImpl implements ConfigManager { if (StringUtil.isNotEmpty(request.getSortKey())) { PageHelper.orderBy(request.getSortKey() + " " + request.getSortType()); } - PageInfo pageInfo = new PageInfo<>(configMapper.find(request, token)); + PageInfo pageInfo = new PageInfo<>(rulesMapper.find(request, token)); response.setResult(pageInfo.getList()); response.setTotalCount(pageInfo.getTotal()); diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManager.java b/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManager.java index 7c5576c..ca3a376 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManager.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManager.java @@ -15,7 +15,7 @@ import xyz.wbsite.frame.base.Token; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public interface ServicesManager { diff --git a/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManagerImpl.java b/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManagerImpl.java index 8545099..a94a461 100644 --- a/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManagerImpl.java +++ b/src/main/java/xyz/wbsite/module/admin/mgr/ServicesManagerImpl.java @@ -28,7 +28,7 @@ import org.springframework.transaction.annotation.Transactional; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ @Transactional @Service @@ -52,16 +52,41 @@ public class ServicesManagerImpl implements ServicesManager { return response; } + {// 主机标题唯一检查 + ServicesFindRequest servicesFindRequest = new ServicesFindRequest(); + servicesFindRequest.setTitle(request.getTitle()); + ServicesFindResponse servicesFindResponse = this.find(servicesFindRequest, token); + if (servicesFindResponse.hasError()) { + response.addErrors(servicesFindResponse.getErrors()); + return response; + } else if (servicesFindResponse.getTotalCount() > 0) { + response.addError(ErrorType.UNIQUENESS_ERROR, "[title]主机标题已存在,请检查!"); + return response; + } + } + {// 主机域名唯一检查 ServicesFindRequest servicesFindRequest = new ServicesFindRequest(); servicesFindRequest.setDomain(request.getDomain()); + ServicesFindResponse servicesFindResponse = this.find(servicesFindRequest, token); + if (servicesFindResponse.hasError()) { + response.addErrors(servicesFindResponse.getErrors()); + return response; + } else if (servicesFindResponse.getTotalCount() > 0) { + response.addError(ErrorType.UNIQUENESS_ERROR, "[domain]主机域名已存在,请检查!"); + return response; + } + } + + {// 服务端口唯一检查 + ServicesFindRequest servicesFindRequest = new ServicesFindRequest(); servicesFindRequest.setPort(request.getPort()); ServicesFindResponse servicesFindResponse = this.find(servicesFindRequest, token); if (servicesFindResponse.hasError()) { response.addErrors(servicesFindResponse.getErrors()); return response; } else if (servicesFindResponse.getTotalCount() > 0) { - response.addError(ErrorType.UNIQUENESS_ERROR, "虚拟主机已存在,请检查!"); + response.addError(ErrorType.UNIQUENESS_ERROR, "[port]服务端口已存在,请检查!"); return response; } } diff --git a/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.java b/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.java index 66f958f..3016614 100644 --- a/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.java +++ b/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.java @@ -12,7 +12,7 @@ import java.util.List; * CONFIG_DATA - 配置数据 * * @author wangbing - * @since 2021-02-07 + * @since 2021-02-08 */ @Mapper public interface ConfigDataMapper { diff --git a/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.xml b/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.xml index 9883532..af16cdb 100644 --- a/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.xml +++ b/src/main/java/xyz/wbsite/module/admin/mpr/ConfigDataMapper.xml @@ -7,14 +7,14 @@ "NA_CONFIG_DATA" - "ID","TARGET_ID","CONF_NAME","CONF_TYPE","CONF_VALUE","CONF_NOTE","ROW_VERSION","IS_DELETED","CREATE_BY","CREATE_TIME","LAST_UPDATE_BY","LAST_UPDATE_TIME" + "ID","TARGET_ID","RULE_ID","CONF_NAME","CONF_VALUE","CONF_NOTE","ROW_VERSION","IS_DELETED","CREATE_BY","CREATE_TIME","LAST_UPDATE_BY","LAST_UPDATE_TIME" + - @@ -35,8 +35,8 @@ ( #{request.id}, #{request.targetId,jdbcType=BIGINT}, + #{request.ruleId,jdbcType=BIGINT}, #{request.confName,jdbcType=VARCHAR}, - #{request.confType,jdbcType=VARCHAR}, #{request.confValue,jdbcType=VARCHAR}, #{request.confNote,jdbcType=VARCHAR}, 0, @@ -58,8 +58,8 @@ #{item.id}, #{item.targetId,jdbcType=BIGINT}, + #{item.ruleId,jdbcType=BIGINT}, #{item.confName,jdbcType=VARCHAR}, - #{item.confType,jdbcType=VARCHAR}, #{item.confValue,jdbcType=VARCHAR}, #{item.confNote,jdbcType=VARCHAR}, 0, @@ -95,8 +95,8 @@ SET TARGET_ID = #{request.targetId,jdbcType=BIGINT}, + RULE_ID = #{request.ruleId,jdbcType=BIGINT}, CONF_NAME = #{request.confName,jdbcType=VARCHAR}, - CONF_TYPE = #{request.confType,jdbcType=VARCHAR}, CONF_VALUE = #{request.confValue,jdbcType=VARCHAR}, CONF_NOTE = #{request.confNote,jdbcType=VARCHAR}, "ROW_VERSION" = "ROW_VERSION" + 1, @@ -119,9 +119,6 @@ AND "CONF_NAME" = #{request.confName} - - AND "CONF_TYPE" = #{request.confType} - - SELECT - - FROM - - WHERE "IS_DELETED" = 0 - - AND "CONF_NAME" = #{request.confName} - - - AND "CONF_TYPE" = #{request.confType} - - - AND "CONF_KEY" = #{request.confKey} - - - AND "CONF_VALUE" = #{request.confValue} - - - - - - - - - - - \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/mpr/LocationsMapper.java b/src/main/java/xyz/wbsite/module/admin/mpr/LocationsMapper.java index 9a9a6e6..dc92d80 100644 --- a/src/main/java/xyz/wbsite/module/admin/mpr/LocationsMapper.java +++ b/src/main/java/xyz/wbsite/module/admin/mpr/LocationsMapper.java @@ -12,7 +12,7 @@ import java.util.List; * LOCATIONS - 路径配置 * * @author wangbing - * @since 2021-02-07 + * @since 2021-02-08 */ @Mapper public interface LocationsMapper { diff --git a/src/main/java/xyz/wbsite/module/admin/mpr/ConfigMapper.java b/src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.java similarity index 68% rename from src/main/java/xyz/wbsite/module/admin/mpr/ConfigMapper.java rename to src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.java index ea30b84..bcd8080 100644 --- a/src/main/java/xyz/wbsite/module/admin/mpr/ConfigMapper.java +++ b/src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.java @@ -3,19 +3,19 @@ package xyz.wbsite.module.admin.mpr; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import xyz.wbsite.frame.base.Token; -import xyz.wbsite.module.admin.ent.Config; -import xyz.wbsite.module.admin.req.ConfigFindRequest; +import xyz.wbsite.module.admin.ent.Rules; +import xyz.wbsite.module.admin.req.RulesFindRequest; import java.util.List; /** - * CONFIG - 配置预设 + * RULES - 配置规则 * * @author wangbing * @since 2021-02-08 */ @Mapper -public interface ConfigMapper { +public interface RulesMapper { /** * 插入 @@ -24,7 +24,7 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回数量 */ - long insert(@Param("request") Config request, @Param("token") Token token); + long insert(@Param("request") Rules request, @Param("token") Token token); /** * 批量插入 @@ -33,7 +33,7 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回数量 */ - long insertBatch(@Param("list") List list, @Param("token") Token token); + long insertBatch(@Param("list") List list, @Param("token") Token token); /** * 逻辑删除 @@ -60,7 +60,7 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回数量 */ - long update(@Param("request") Config request, @Param("token") Token token); + long update(@Param("request") Rules request, @Param("token") Token token); /** * 普通查询 @@ -69,7 +69,7 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回对象 */ - List select(@Param("request") Config request, @Param("token") Token token); + List select(@Param("request") Rules request, @Param("token") Token token); /** * 高级查询 @@ -78,7 +78,7 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回对象 */ - List find(@Param("request") ConfigFindRequest request, @Param("token") Token token); + List find(@Param("request") RulesFindRequest request, @Param("token") Token token); /** * 获得对象 @@ -87,7 +87,7 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回对象 */ - Config getById(@Param("id") Long id, @Param("token") Token token); + Rules getById(@Param("id") Long id, @Param("token") Token token); /** * 获得对象 @@ -96,5 +96,5 @@ public interface ConfigMapper { * @param token 令牌 * @return 返回对象 */ - List getByIds(@Param("ids") Long[] ids, @Param("token") Token token); + List getByIds(@Param("ids") Long[] ids, @Param("token") Token token); } diff --git a/src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.xml b/src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.xml new file mode 100644 index 0000000..ff3ad6f --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/mpr/RulesMapper.xml @@ -0,0 +1,216 @@ + + + + + "NA_RULES" + + + "ID","RULE_FOR","RULE_TITLE","RULE_NAME","RULE_VALUE","VALUE_DEFAULT","VALUE_REGEX","RULE_NOTE","ROW_VERSION","IS_DELETED","CREATE_BY","CREATE_TIME","LAST_UPDATE_BY","LAST_UPDATE_TIME" + + + + + + + + + + + + + + + + + + + + + INSERT INTO + + ( + + ) + VALUES + ( + #{request.id}, + #{request.ruleFor,jdbcType=VARCHAR}, + #{request.ruleTitle,jdbcType=VARCHAR}, + #{request.ruleName,jdbcType=VARCHAR}, + #{request.ruleValue,jdbcType=VARCHAR}, + #{request.valueDefault,jdbcType=VARCHAR}, + #{request.valueRegex,jdbcType=VARCHAR}, + #{request.ruleNote,jdbcType=VARCHAR}, + 0, + 0, + #{token.userId,jdbcType=NUMERIC}, + datetime('now','localtime'), + NULL, + NULL + ) + + + + INSERT INTO + + ( + + ) + VALUES + + #{item.id}, + #{item.ruleFor,jdbcType=VARCHAR}, + #{item.ruleTitle,jdbcType=VARCHAR}, + #{item.ruleName,jdbcType=VARCHAR}, + #{item.ruleValue,jdbcType=VARCHAR}, + #{item.valueDefault,jdbcType=VARCHAR}, + #{item.valueRegex,jdbcType=VARCHAR}, + #{item.ruleNote,jdbcType=VARCHAR}, + 0, + 0, + #{token.userId,jdbcType=NUMERIC}, + datetime('now','localtime'), + NULL, + NULL + + + + + UPDATE + + SET "IS_DELETED" = 1 + WHERE "IS_DELETED" = 0 + AND "ID" = #{id} + + + + UPDATE + + SET "IS_DELETED" = 1 + WHERE "IS_DELETED" = 0 + AND "ID" IN + + #{item} + + + + + UPDATE + + SET + RULE_FOR = #{request.ruleFor,jdbcType=VARCHAR}, + RULE_TITLE = #{request.ruleTitle,jdbcType=VARCHAR}, + RULE_NAME = #{request.ruleName,jdbcType=VARCHAR}, + RULE_VALUE = #{request.ruleValue,jdbcType=VARCHAR}, + VALUE_DEFAULT = #{request.valueDefault,jdbcType=VARCHAR}, + VALUE_REGEX = #{request.valueRegex,jdbcType=VARCHAR}, + RULE_NOTE = #{request.ruleNote,jdbcType=VARCHAR}, + "ROW_VERSION" = "ROW_VERSION" + 1, + "LAST_UPDATE_BY" = #{token.userId}, + "LAST_UPDATE_TIME" = datetime('now','localtime') + WHERE "IS_DELETED" = 0 + AND "ID" = #{request.id} + AND "ROW_VERSION" = #{request.rowVersion} + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/mpr/ServicesMapper.java b/src/main/java/xyz/wbsite/module/admin/mpr/ServicesMapper.java index 71f993c..071e467 100644 --- a/src/main/java/xyz/wbsite/module/admin/mpr/ServicesMapper.java +++ b/src/main/java/xyz/wbsite/module/admin/mpr/ServicesMapper.java @@ -12,7 +12,7 @@ import java.util.List; * SERVICES - 虚拟主机 * * @author wangbing - * @since 2021-02-07 + * @since 2021-02-08 */ @Mapper public interface ServicesMapper { diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigCreateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigCreateRequest.java deleted file mode 100644 index e55b5db..0000000 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigCreateRequest.java +++ /dev/null @@ -1,94 +0,0 @@ -package xyz.wbsite.module.admin.req; - -import xyz.wbsite.frame.base.BaseRequest; -import javax.validation.constraints.NotNull; -import javax.validation.constraints.NotBlank; -import org.hibernate.validator.constraints.Length; -import xyz.wbsite.frame.validation.Select; - -/** - * ConfigCreateRequest - 配置预设新增 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-08 - */ -public class ConfigCreateRequest extends BaseRequest { - - /** - * 配置名称. - */ - @NotBlank(message = "[confName]配置名称不能为空") - @Length(min = 0, max = 50, message = "[confName]配置名称长度不合法(0-50)") - private String confName; - - /** - * 配置类型. - * HTTP:全局配置 - * SERVER:主机配置 - * LOCATION:路径配置 - */ - @NotNull(message = "[confType]配置类型不能为NULL") - @Select({"HTTP", "SERVER", "LOCATION"}) - private String confType; - - /** - * 配置属名. - */ - @NotBlank(message = "[confKey]配置属名不能为空") - @Length(min = 0, max = 50, message = "[confKey]配置属名长度不合法(0-50)") - private String confKey; - - /** - * 配置属值. - */ - @NotBlank(message = "[confValue]配置属值不能为空") - @Length(min = 0, max = 255, message = "[confValue]配置属值长度不合法(0-255)") - private String confValue; - - /** - * 配置备注. - */ - @Length(min = 0, max = 255, message = "[confNote]配置备注长度不合法(0-255)") - private String confNote; - - public String getConfName() { - return this.confName; - } - - public void setConfName(String confName) { - this.confName = confName; - } - - public String getConfType() { - return this.confType; - } - - public void setConfType(String confType) { - this.confType = confType; - } - - public String getConfKey() { - return this.confKey; - } - - public void setConfKey(String confKey) { - this.confKey = confKey; - } - - public String getConfValue() { - return this.confValue; - } - - public void setConfValue(String confValue) { - this.confValue = confValue; - } - - public String getConfNote() { - return this.confNote; - } - - public void setConfNote(String confNote) { - this.confNote = confNote; - } -} diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataCreateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataCreateRequest.java index 195e349..7c57b7c 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataCreateRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataCreateRequest.java @@ -4,14 +4,13 @@ import xyz.wbsite.frame.base.BaseRequest; import javax.validation.constraints.NotNull; import javax.validation.constraints.NotBlank; import org.hibernate.validator.constraints.Length; -import xyz.wbsite.frame.validation.Select; /** * ConfigDataCreateRequest - 配置数据新增 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataCreateRequest extends BaseRequest { @@ -22,27 +21,22 @@ public class ConfigDataCreateRequest extends BaseRequest { private Long targetId; /** - * 配置名称. + * 规则主键. */ - @NotBlank(message = "[confName]配置名称不能为空") - @Length(min = 0, max = 50, message = "[confName]配置名称长度不合法(0-50)") - private String confName; + private Long ruleId; /** - * 配置类型. - * HTTP:全局配置 - * SERVER:主机配置 - * LOCATION:路径配置 + * 配置名称. */ - @NotNull(message = "[confType]配置类型不能为NULL") - @Select({"HTTP", "SERVER", "LOCATION"}) - private String confType; + @NotBlank(message = "[confName]配置名称不能为空") + @Length(min = 0, max = 100, message = "[confName]配置名称长度不合法(0-100)") + private String confName; /** * 配置属值. */ @NotBlank(message = "[confValue]配置属值不能为空") - @Length(min = 0, max = 255, message = "[confValue]配置属值长度不合法(0-255)") + @Length(min = 0, max = 100, message = "[confValue]配置属值长度不合法(0-100)") private String confValue; /** @@ -59,20 +53,20 @@ public class ConfigDataCreateRequest extends BaseRequest { this.targetId = targetId; } - public String getConfName() { - return this.confName; + public Long getRuleId() { + return this.ruleId; } - public void setConfName(String confName) { - this.confName = confName; + public void setRuleId(Long ruleId) { + this.ruleId = ruleId; } - public String getConfType() { - return this.confType; + public String getConfName() { + return this.confName; } - public void setConfType(String confType) { - this.confType = confType; + public void setConfName(String confName) { + this.confName = confName; } public String getConfValue() { diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataDeleteRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataDeleteRequest.java index 36ae703..a47d754 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataDeleteRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataDeleteRequest.java @@ -10,7 +10,7 @@ import javax.validation.constraints.NotNull; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataDeleteRequest extends BaseRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataFindRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataFindRequest.java index a0ee4db..480e854 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataFindRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataFindRequest.java @@ -2,14 +2,13 @@ package xyz.wbsite.module.admin.req; import xyz.wbsite.frame.base.BaseFindRequest; import java.util.Date; -import xyz.wbsite.frame.validation.Select; /** * ConfigDataFindRequest - 配置数据查询 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataFindRequest extends BaseFindRequest { @@ -28,15 +27,6 @@ public class ConfigDataFindRequest extends BaseFindRequest { */ private String confNameLike; - /** - * 配置类型. - * HTTP:全局配置 - * SERVER:主机配置 - * LOCATION:路径配置 - */ - @Select({"HTTP", "SERVER", "LOCATION"}) - private String confType; - /** * 配置属值模糊查询. */ @@ -81,14 +71,6 @@ public class ConfigDataFindRequest extends BaseFindRequest { this.confNameLike = confNameLike; } - public String getConfType() { - return this.confType; - } - - public void setConfType(String confType) { - this.confType = confType; - } - public String getConfValueLike() { return this.confValueLike; } diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataUpdateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataUpdateRequest.java index 8a6765d..b775495 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigDataUpdateRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ConfigDataUpdateRequest.java @@ -5,14 +5,13 @@ import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.NotEmpty; -import xyz.wbsite.frame.validation.Select; /** * ConfigDataUpdateRequest - 配置数据更新 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataUpdateRequest extends BaseUpdateRequest { @@ -29,27 +28,22 @@ public class ConfigDataUpdateRequest extends BaseUpdateRequest { private Long targetId; /** - * 配置名称. + * 规则主键. */ - @NotBlank(message = "[confName]配置名称不能为空") - @Length(min = 0, max = 50, message = "[confName]配置名称长度不合法(0-50)") - private String confName; + private Long ruleId; /** - * 配置类型. - * HTTP:全局配置 - * SERVER:主机配置 - * LOCATION:路径配置 + * 配置名称. */ - @NotNull(message = "[confType]配置类型不能为NULL") - @Select({"HTTP", "SERVER", "LOCATION"}) - private String confType; + @NotBlank(message = "[confName]配置名称不能为空") + @Length(min = 0, max = 100, message = "[confName]配置名称长度不合法(0-100)") + private String confName; /** * 配置属值. */ @NotBlank(message = "[confValue]配置属值不能为空") - @Length(min = 0, max = 255, message = "[confValue]配置属值长度不合法(0-255)") + @Length(min = 0, max = 100, message = "[confValue]配置属值长度不合法(0-100)") private String confValue; /** @@ -74,20 +68,20 @@ public class ConfigDataUpdateRequest extends BaseUpdateRequest { this.targetId = targetId; } - public String getConfName() { - return this.confName; + public Long getRuleId() { + return this.ruleId; } - public void setConfName(String confName) { - this.confName = confName; + public void setRuleId(Long ruleId) { + this.ruleId = ruleId; } - public String getConfType() { - return this.confType; + public String getConfName() { + return this.confName; } - public void setConfType(String confType) { - this.confType = confType; + public void setConfName(String confName) { + this.confName = confName; } public String getConfValue() { diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigFindRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigFindRequest.java deleted file mode 100644 index b1eb28d..0000000 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigFindRequest.java +++ /dev/null @@ -1,149 +0,0 @@ -package xyz.wbsite.module.admin.req; - -import xyz.wbsite.frame.base.BaseFindRequest; -import java.util.Date; -import xyz.wbsite.frame.validation.Select; - -/** - * ConfigFindRequest - 配置预设查询 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-08 - */ -public class ConfigFindRequest extends BaseFindRequest { - - /** - * 配置名称. - */ - private String confName; - - /** - * 配置名称模糊查询. - */ - private String confNameLike; - - /** - * 配置类型. - * HTTP:全局配置 - * SERVER:主机配置 - * LOCATION:路径配置 - */ - @Select({"HTTP", "SERVER", "LOCATION"}) - private String confType; - - /** - * 配置属名. - */ - private String confKey; - - /** - * 配置属名模糊查询. - */ - private String confKeyLike; - - /** - * 配置属值. - */ - private String confValue; - - /** - * 配置属值模糊查询. - */ - private String confValueLike; - - /** - * 配置备注模糊查询. - */ - private String confNoteLike; - - /** - * 开始日期. - */ - private Date startDate; - - /** - * 结束日期. - */ - private Date endDate; - - public String getConfName() { - return this.confName; - } - - public void setConfName(String confName) { - this.confName = confName; - } - - public String getConfNameLike() { - return this.confNameLike; - } - - public void setConfNameLike(String confNameLike) { - this.confNameLike = confNameLike; - } - - public String getConfType() { - return this.confType; - } - - public void setConfType(String confType) { - this.confType = confType; - } - - public String getConfKey() { - return this.confKey; - } - - public void setConfKey(String confKey) { - this.confKey = confKey; - } - - public String getConfKeyLike() { - return this.confKeyLike; - } - - public void setConfKeyLike(String confKeyLike) { - this.confKeyLike = confKeyLike; - } - - public String getConfValue() { - return this.confValue; - } - - public void setConfValue(String confValue) { - this.confValue = confValue; - } - - public String getConfValueLike() { - return this.confValueLike; - } - - public void setConfValueLike(String confValueLike) { - this.confValueLike = confValueLike; - } - - public String getConfNoteLike() { - return this.confNoteLike; - } - - public void setConfNoteLike(String confNoteLike) { - this.confNoteLike = confNoteLike; - } - - public Date getStartDate() { - return startDate; - } - - public void setStartDate(Date startDate) { - this.startDate = startDate; - } - - public Date getEndDate() { - return endDate; - } - - public void setEndDate(Date endDate) { - this.endDate = endDate; - } -} diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigUpdateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ConfigUpdateRequest.java deleted file mode 100644 index e102202..0000000 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigUpdateRequest.java +++ /dev/null @@ -1,109 +0,0 @@ -package xyz.wbsite.module.admin.req; - -import xyz.wbsite.frame.base.BaseUpdateRequest; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; -import org.hibernate.validator.constraints.Length; -import javax.validation.constraints.NotEmpty; -import xyz.wbsite.frame.validation.Select; - -/** - * ConfigUpdateRequest - 配置预设更新 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-08 - */ -public class ConfigUpdateRequest extends BaseUpdateRequest { - - /** - * 主键. - */ - @NotNull(message = "[id]主键不能为NULL") - private Long id; - - /** - * 配置名称. - */ - @NotBlank(message = "[confName]配置名称不能为空") - @Length(min = 0, max = 50, message = "[confName]配置名称长度不合法(0-50)") - private String confName; - - /** - * 配置类型. - * HTTP:全局配置 - * SERVER:主机配置 - * LOCATION:路径配置 - */ - @NotNull(message = "[confType]配置类型不能为NULL") - @Select({"HTTP", "SERVER", "LOCATION"}) - private String confType; - - /** - * 配置属名. - */ - @NotBlank(message = "[confKey]配置属名不能为空") - @Length(min = 0, max = 50, message = "[confKey]配置属名长度不合法(0-50)") - private String confKey; - - /** - * 配置属值. - */ - @NotBlank(message = "[confValue]配置属值不能为空") - @Length(min = 0, max = 255, message = "[confValue]配置属值长度不合法(0-255)") - private String confValue; - - /** - * 配置备注. - */ - @Length(min = 0, max = 255, message = "[confNote]配置备注长度不合法(0-255)") - private String confNote; - - public Long getId() { - return this.id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getConfName() { - return this.confName; - } - - public void setConfName(String confName) { - this.confName = confName; - } - - public String getConfType() { - return this.confType; - } - - public void setConfType(String confType) { - this.confType = confType; - } - - public String getConfKey() { - return this.confKey; - } - - public void setConfKey(String confKey) { - this.confKey = confKey; - } - - public String getConfValue() { - return this.confValue; - } - - public void setConfValue(String confValue) { - this.confValue = confValue; - } - - public String getConfNote() { - return this.confNote; - } - - public void setConfNote(String confNote) { - this.confNote = confNote; - } -} diff --git a/src/main/java/xyz/wbsite/module/admin/req/LocationsCreateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/LocationsCreateRequest.java index f1fb030..2a93c46 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/LocationsCreateRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/LocationsCreateRequest.java @@ -10,7 +10,7 @@ import org.hibernate.validator.constraints.Length; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsCreateRequest extends BaseRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/LocationsDeleteRequest.java b/src/main/java/xyz/wbsite/module/admin/req/LocationsDeleteRequest.java index 3acd873..0a02cec 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/LocationsDeleteRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/LocationsDeleteRequest.java @@ -10,7 +10,7 @@ import javax.validation.constraints.NotNull; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsDeleteRequest extends BaseRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/LocationsFindRequest.java b/src/main/java/xyz/wbsite/module/admin/req/LocationsFindRequest.java index 30f22f9..1a07be2 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/LocationsFindRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/LocationsFindRequest.java @@ -8,7 +8,7 @@ import java.util.Date; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsFindRequest extends BaseFindRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/LocationsUpdateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/LocationsUpdateRequest.java index 604e880..11f9cbe 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/LocationsUpdateRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/LocationsUpdateRequest.java @@ -11,7 +11,7 @@ import javax.validation.constraints.NotEmpty; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsUpdateRequest extends BaseUpdateRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/RulesCreateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/RulesCreateRequest.java new file mode 100644 index 0000000..ce0ecc1 --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/req/RulesCreateRequest.java @@ -0,0 +1,118 @@ +package xyz.wbsite.module.admin.req; + +import xyz.wbsite.frame.base.BaseRequest; +import javax.validation.constraints.NotNull; +import javax.validation.constraints.NotBlank; +import org.hibernate.validator.constraints.Length; +import xyz.wbsite.frame.validation.Select; + +/** + * RulesCreateRequest - 配置规则新增 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +public class RulesCreateRequest extends BaseRequest { + + /** + * 规则目标. + * 全局:全局 + * 主机:主机 + * 路径:路径 + */ + @Select({"全局", "主机", "路径"}) + private String ruleFor; + + /** + * 规则标题. + */ + @Length(min = 0, max = 100, message = "[ruleTitle]规则标题长度不合法(0-100)") + private String ruleTitle; + + /** + * 规则名称. + */ + @Length(min = 0, max = 100, message = "[ruleName]规则名称长度不合法(0-100)") + private String ruleName; + + /** + * 规则属值. + */ + @Length(min = 0, max = 100, message = "[ruleValue]规则属值长度不合法(0-100)") + private String ruleValue; + + /** + * 默认属值. + */ + @Length(min = 0, max = 100, message = "[valueDefault]默认属值长度不合法(0-100)") + private String valueDefault; + + /** + * 属值正则. + */ + @Length(min = 0, max = 100, message = "[valueRegex]属值正则长度不合法(0-100)") + private String valueRegex; + + /** + * 规则描述. + */ + @Length(min = 0, max = 500, message = "[ruleNote]规则描述长度不合法(0-500)") + private String ruleNote; + + public String getRuleFor() { + return this.ruleFor; + } + + public void setRuleFor(String ruleFor) { + this.ruleFor = ruleFor; + } + + public String getRuleTitle() { + return this.ruleTitle; + } + + public void setRuleTitle(String ruleTitle) { + this.ruleTitle = ruleTitle; + } + + public String getRuleName() { + return this.ruleName; + } + + public void setRuleName(String ruleName) { + this.ruleName = ruleName; + } + + public String getRuleValue() { + return this.ruleValue; + } + + public void setRuleValue(String ruleValue) { + this.ruleValue = ruleValue; + } + + public String getValueDefault() { + return this.valueDefault; + } + + public void setValueDefault(String valueDefault) { + this.valueDefault = valueDefault; + } + + public String getValueRegex() { + return this.valueRegex; + } + + public void setValueRegex(String valueRegex) { + this.valueRegex = valueRegex; + } + + public String getRuleNote() { + return this.ruleNote; + } + + public void setRuleNote(String ruleNote) { + this.ruleNote = ruleNote; + } +} diff --git a/src/main/java/xyz/wbsite/module/admin/req/ConfigDeleteRequest.java b/src/main/java/xyz/wbsite/module/admin/req/RulesDeleteRequest.java similarity index 76% rename from src/main/java/xyz/wbsite/module/admin/req/ConfigDeleteRequest.java rename to src/main/java/xyz/wbsite/module/admin/req/RulesDeleteRequest.java index b680527..fc737a9 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ConfigDeleteRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/RulesDeleteRequest.java @@ -6,13 +6,13 @@ import javax.validation.constraints.NotNull; /** - * ConfigDeleteRequest - 配置预设删除 + * RulesDeleteRequest - 配置规则删除 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ -public class ConfigDeleteRequest extends BaseRequest { +public class RulesDeleteRequest extends BaseRequest { /** * 主键. diff --git a/src/main/java/xyz/wbsite/module/admin/req/RulesFindRequest.java b/src/main/java/xyz/wbsite/module/admin/req/RulesFindRequest.java new file mode 100644 index 0000000..228749a --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/req/RulesFindRequest.java @@ -0,0 +1,175 @@ +package xyz.wbsite.module.admin.req; + +import xyz.wbsite.frame.base.BaseFindRequest; +import java.util.Date; +import xyz.wbsite.frame.validation.Select; + +/** + * RulesFindRequest - 配置规则查询 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +public class RulesFindRequest extends BaseFindRequest { + + /** + * 规则目标. + * 全局:全局 + * 主机:主机 + * 路径:路径 + */ + @Select({"全局", "主机", "路径"}) + private String ruleFor; + + /** + * 规则标题. + */ + private String ruleTitle; + + /** + * 规则标题模糊查询. + */ + private String ruleTitleLike; + + /** + * 规则名称. + */ + private String ruleName; + + /** + * 规则名称模糊查询. + */ + private String ruleNameLike; + + /** + * 规则属值. + */ + private String ruleValue; + + /** + * 规则属值模糊查询. + */ + private String ruleValueLike; + + /** + * 默认属值. + */ + private String valueDefault; + + /** + * 属值正则. + */ + private String valueRegex; + + /** + * 规则描述模糊查询. + */ + private String ruleNoteLike; + + /** + * 开始日期. + */ + private Date startDate; + + /** + * 结束日期. + */ + private Date endDate; + + public String getRuleFor() { + return this.ruleFor; + } + + public void setRuleFor(String ruleFor) { + this.ruleFor = ruleFor; + } + + public String getRuleTitle() { + return this.ruleTitle; + } + + public void setRuleTitle(String ruleTitle) { + this.ruleTitle = ruleTitle; + } + + public String getRuleTitleLike() { + return this.ruleTitleLike; + } + + public void setRuleTitleLike(String ruleTitleLike) { + this.ruleTitleLike = ruleTitleLike; + } + + public String getRuleName() { + return this.ruleName; + } + + public void setRuleName(String ruleName) { + this.ruleName = ruleName; + } + + public String getRuleNameLike() { + return this.ruleNameLike; + } + + public void setRuleNameLike(String ruleNameLike) { + this.ruleNameLike = ruleNameLike; + } + + public String getRuleValue() { + return this.ruleValue; + } + + public void setRuleValue(String ruleValue) { + this.ruleValue = ruleValue; + } + + public String getRuleValueLike() { + return this.ruleValueLike; + } + + public void setRuleValueLike(String ruleValueLike) { + this.ruleValueLike = ruleValueLike; + } + + public String getValueDefault() { + return this.valueDefault; + } + + public void setValueDefault(String valueDefault) { + this.valueDefault = valueDefault; + } + + public String getValueRegex() { + return this.valueRegex; + } + + public void setValueRegex(String valueRegex) { + this.valueRegex = valueRegex; + } + + public String getRuleNoteLike() { + return this.ruleNoteLike; + } + + public void setRuleNoteLike(String ruleNoteLike) { + this.ruleNoteLike = ruleNoteLike; + } + + public Date getStartDate() { + return startDate; + } + + public void setStartDate(Date startDate) { + this.startDate = startDate; + } + + public Date getEndDate() { + return endDate; + } + + public void setEndDate(Date endDate) { + this.endDate = endDate; + } +} diff --git a/src/main/java/xyz/wbsite/module/admin/req/RulesUpdateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/RulesUpdateRequest.java new file mode 100644 index 0000000..e79737d --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/req/RulesUpdateRequest.java @@ -0,0 +1,133 @@ +package xyz.wbsite.module.admin.req; + +import xyz.wbsite.frame.base.BaseUpdateRequest; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import org.hibernate.validator.constraints.Length; +import javax.validation.constraints.NotEmpty; +import xyz.wbsite.frame.validation.Select; + +/** + * RulesUpdateRequest - 配置规则更新 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +public class RulesUpdateRequest extends BaseUpdateRequest { + + /** + * 主键. + */ + @NotNull(message = "[id]主键不能为NULL") + private Long id; + + /** + * 规则目标. + * 全局:全局 + * 主机:主机 + * 路径:路径 + */ + @Select({"全局", "主机", "路径"}) + private String ruleFor; + + /** + * 规则标题. + */ + @Length(min = 0, max = 100, message = "[ruleTitle]规则标题长度不合法(0-100)") + private String ruleTitle; + + /** + * 规则名称. + */ + @Length(min = 0, max = 100, message = "[ruleName]规则名称长度不合法(0-100)") + private String ruleName; + + /** + * 规则属值. + */ + @Length(min = 0, max = 100, message = "[ruleValue]规则属值长度不合法(0-100)") + private String ruleValue; + + /** + * 默认属值. + */ + @Length(min = 0, max = 100, message = "[valueDefault]默认属值长度不合法(0-100)") + private String valueDefault; + + /** + * 属值正则. + */ + @Length(min = 0, max = 100, message = "[valueRegex]属值正则长度不合法(0-100)") + private String valueRegex; + + /** + * 规则描述. + */ + @Length(min = 0, max = 500, message = "[ruleNote]规则描述长度不合法(0-500)") + private String ruleNote; + + public Long getId() { + return this.id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getRuleFor() { + return this.ruleFor; + } + + public void setRuleFor(String ruleFor) { + this.ruleFor = ruleFor; + } + + public String getRuleTitle() { + return this.ruleTitle; + } + + public void setRuleTitle(String ruleTitle) { + this.ruleTitle = ruleTitle; + } + + public String getRuleName() { + return this.ruleName; + } + + public void setRuleName(String ruleName) { + this.ruleName = ruleName; + } + + public String getRuleValue() { + return this.ruleValue; + } + + public void setRuleValue(String ruleValue) { + this.ruleValue = ruleValue; + } + + public String getValueDefault() { + return this.valueDefault; + } + + public void setValueDefault(String valueDefault) { + this.valueDefault = valueDefault; + } + + public String getValueRegex() { + return this.valueRegex; + } + + public void setValueRegex(String valueRegex) { + this.valueRegex = valueRegex; + } + + public String getRuleNote() { + return this.ruleNote; + } + + public void setRuleNote(String ruleNote) { + this.ruleNote = ruleNote; + } +} diff --git a/src/main/java/xyz/wbsite/module/admin/req/ServicesCreateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ServicesCreateRequest.java index 7c30178..66432cc 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ServicesCreateRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ServicesCreateRequest.java @@ -11,7 +11,7 @@ import xyz.wbsite.frame.validation.Select; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesCreateRequest extends BaseRequest { @@ -50,7 +50,6 @@ public class ServicesCreateRequest extends BaseRequest { /** * 是否启用. */ - @NotNull(message = "[valid]是否启用不能为NULL") private Boolean valid; /** diff --git a/src/main/java/xyz/wbsite/module/admin/req/ServicesDeleteRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ServicesDeleteRequest.java index aaeb00a..06305a3 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ServicesDeleteRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ServicesDeleteRequest.java @@ -10,7 +10,7 @@ import javax.validation.constraints.NotNull; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesDeleteRequest extends BaseRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/ServicesFindRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ServicesFindRequest.java index b3ac8d9..56d8861 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ServicesFindRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ServicesFindRequest.java @@ -9,7 +9,7 @@ import xyz.wbsite.frame.validation.Select; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesFindRequest extends BaseFindRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/req/ServicesUpdateRequest.java b/src/main/java/xyz/wbsite/module/admin/req/ServicesUpdateRequest.java index 1808818..897797f 100644 --- a/src/main/java/xyz/wbsite/module/admin/req/ServicesUpdateRequest.java +++ b/src/main/java/xyz/wbsite/module/admin/req/ServicesUpdateRequest.java @@ -12,7 +12,7 @@ import xyz.wbsite.frame.validation.Select; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesUpdateRequest extends BaseUpdateRequest { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataCreateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataCreateResponse.java index 394bf41..2d36c63 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataCreateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataCreateResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataCreateResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataDeleteResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataDeleteResponse.java index ebf7cf3..4f8bda2 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataDeleteResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataDeleteResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataDeleteResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataFindResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataFindResponse.java index 719e9aa..e12083e 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataFindResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataFindResponse.java @@ -8,7 +8,7 @@ import xyz.wbsite.module.admin.ent.ConfigData; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataFindResponse extends BaseFindResponse { } \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataUpdateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataUpdateResponse.java index fa9d822..20e7f3c 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataUpdateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDataUpdateResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ConfigDataUpdateResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigFindResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ConfigFindResponse.java deleted file mode 100644 index d4c8945..0000000 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigFindResponse.java +++ /dev/null @@ -1,14 +0,0 @@ -package xyz.wbsite.module.admin.rsp; - -import xyz.wbsite.frame.base.BaseFindResponse; -import xyz.wbsite.module.admin.ent.Config; - -/** - * ConfigFindResponse - 配置预设 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-07 - */ -public class ConfigFindResponse extends BaseFindResponse { -} \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsCreateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsCreateResponse.java index f7f3917..75b8c31 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsCreateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsCreateResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsCreateResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsDeleteResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsDeleteResponse.java index cc52cad..3fe144c 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsDeleteResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsDeleteResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsDeleteResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsFindResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsFindResponse.java index 5374778..c375691 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsFindResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsFindResponse.java @@ -8,7 +8,7 @@ import xyz.wbsite.module.admin.ent.Locations; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsFindResponse extends BaseFindResponse { } \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsUpdateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsUpdateResponse.java index 3eab766..e662281 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/LocationsUpdateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/LocationsUpdateResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class LocationsUpdateResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigCreateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/RulesCreateResponse.java similarity index 71% rename from src/main/java/xyz/wbsite/module/admin/rsp/ConfigCreateResponse.java rename to src/main/java/xyz/wbsite/module/admin/rsp/RulesCreateResponse.java index facbd21..cd5fc2e 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigCreateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/RulesCreateResponse.java @@ -3,13 +3,13 @@ package xyz.wbsite.module.admin.rsp; import xyz.wbsite.frame.base.BaseResponse; /** - * ConfigCreateResponse - 配置预设 + * RulesCreateResponse - 配置规则 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ -public class ConfigCreateResponse extends BaseResponse { +public class RulesCreateResponse extends BaseResponse { /** * 主键 diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDeleteResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/RulesDeleteResponse.java similarity index 74% rename from src/main/java/xyz/wbsite/module/admin/rsp/ConfigDeleteResponse.java rename to src/main/java/xyz/wbsite/module/admin/rsp/RulesDeleteResponse.java index 3a54b11..a2a30bc 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigDeleteResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/RulesDeleteResponse.java @@ -3,13 +3,13 @@ package xyz.wbsite.module.admin.rsp; import xyz.wbsite.frame.base.BaseResponse; /** - * ConfigDeleteResponse - 配置预设 + * RulesDeleteResponse - 配置规则 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ -public class ConfigDeleteResponse extends BaseResponse { +public class RulesDeleteResponse extends BaseResponse { /** * 删除数目 diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/RulesFindResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/RulesFindResponse.java new file mode 100644 index 0000000..a42374b --- /dev/null +++ b/src/main/java/xyz/wbsite/module/admin/rsp/RulesFindResponse.java @@ -0,0 +1,14 @@ +package xyz.wbsite.module.admin.rsp; + +import xyz.wbsite.frame.base.BaseFindResponse; +import xyz.wbsite.module.admin.ent.Rules; + +/** + * RulesFindResponse - 配置规则 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +public class RulesFindResponse extends BaseFindResponse { +} \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigUpdateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/RulesUpdateResponse.java similarity index 74% rename from src/main/java/xyz/wbsite/module/admin/rsp/ConfigUpdateResponse.java rename to src/main/java/xyz/wbsite/module/admin/rsp/RulesUpdateResponse.java index ba5413c..220cb33 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ConfigUpdateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/RulesUpdateResponse.java @@ -3,13 +3,13 @@ package xyz.wbsite.module.admin.rsp; import xyz.wbsite.frame.base.BaseResponse; /** - * ConfigUpdateResponse - 配置预设 + * RulesUpdateResponse - 配置规则 * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ -public class ConfigUpdateResponse extends BaseResponse { +public class RulesUpdateResponse extends BaseResponse { /** * 更新数目 diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesCreateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesCreateResponse.java index e693303..6abbe92 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesCreateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesCreateResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesCreateResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesDeleteResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesDeleteResponse.java index ca5651a..3b0d4dd 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesDeleteResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesDeleteResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesDeleteResponse extends BaseResponse { diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesFindResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesFindResponse.java index 2b108f5..54f8895 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesFindResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesFindResponse.java @@ -8,7 +8,7 @@ import xyz.wbsite.module.admin.ent.Services; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesFindResponse extends BaseFindResponse { } \ No newline at end of file diff --git a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesUpdateResponse.java b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesUpdateResponse.java index 009b344..85c48e0 100644 --- a/src/main/java/xyz/wbsite/module/admin/rsp/ServicesUpdateResponse.java +++ b/src/main/java/xyz/wbsite/module/admin/rsp/ServicesUpdateResponse.java @@ -7,7 +7,7 @@ import xyz.wbsite.frame.base.BaseResponse; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ public class ServicesUpdateResponse extends BaseResponse { diff --git a/src/main/resources/nginx-admin.db3 b/src/main/resources/nginx-admin.db3 index 9490943458e1aaa155efd6b0d85e190e559566ad..91a42916482c9f0d8792c2cfd9b1a8c6ffea6f29 100644 GIT binary patch delta 430 zcmZozz|^pSX+oCJ1qR*={JXgmc&BqJaO<;O;CQ)NP#}bD^G>!vCKDc3c5zu*#`f%z z#H5^5Kgal>P#@P|7|rG!*=JAwI4MX+r}vc|S*Ae9~c#KA|||fl^+fuJJCeZjPZoA=s?|YmX0d zb$5-xt^n*tKmQQd$sgGtvgxz2i95?qp3f^S3=V;KLzr*bTTGZI^Khy#vTQcw6kuXy zVH5XO1u2}I$Suyz+ML12F0QG`*v>tJt@yT0xo&r_R=C#`Vou9J-09dtbA^-pY delta 285 zcmZozz|^pSX+oCJP6pm<{71Pfd1rERayzi?x?0v;%$iyb@Di8FK5|<&|w9Vi7IU4|0 CF;j~G diff --git a/src/main/resources/pt/admin_table/SQLite_ALL_TABLE.sql b/src/main/resources/pt/admin_table/SQLite_ALL_TABLE.sql index 1c143b7..c10f188 100644 --- a/src/main/resources/pt/admin_table/SQLite_ALL_TABLE.sql +++ b/src/main/resources/pt/admin_table/SQLite_ALL_TABLE.sql @@ -45,17 +45,17 @@ CREATE TABLE IF NOT EXISTS NA_LOCATIONS ( ); -- ---------------------------- --- Table structure for CONFIG - 配置预设 +-- Table structure for CONFIG_DATA - 配置数据 -- Target : SQLite -- Author : wangbing -- Date: : 2021-02-08 -- ---------------------------- -CREATE TABLE IF NOT EXISTS NA_CONFIG ( +CREATE TABLE IF NOT EXISTS NA_CONFIG_DATA ( "ID" BIGINT PRIMARY KEY NOT NULL, - "CONF_NAME" VARCHAR(50) NOT NULL, - "CONF_TYPE" VARCHAR(50) NOT NULL, - "CONF_KEY" VARCHAR(50) NOT NULL, - "CONF_VALUE" VARCHAR(250) NOT NULL, + "TARGET_ID" BIGINT NOT NULL, + "RULE_ID" BIGINT, + "CONF_NAME" VARCHAR(100) NOT NULL, + "CONF_VALUE" VARCHAR(100) NOT NULL, "CONF_NOTE" VARCHAR(250), "ROW_VERSION" BIGINT NOT NULL, "IS_DELETED" BOOLEAN NOT NULL, @@ -66,19 +66,20 @@ CREATE TABLE IF NOT EXISTS NA_CONFIG ( ); -- ---------------------------- --- Table structure for CONFIG_DATA - 配置数据 +-- Table structure for RULES - 配置规则 -- Target : SQLite -- Author : wangbing -- Date: : 2021-02-08 -- ---------------------------- -CREATE TABLE IF NOT EXISTS NA_CONFIG_DATA ( +CREATE TABLE IF NOT EXISTS NA_RULES ( "ID" BIGINT PRIMARY KEY NOT NULL, - "TARGET_ID" BIGINT NOT NULL, - "CONF_NAME" VARCHAR(50) NOT NULL, - "CONF_TYPE" VARCHAR(50) NOT NULL, - "CONF_KEY" VARCHAR(50) NOT NULL, - "CONF_VALUE" VARCHAR(250) NOT NULL, - "CONF_NOTE" VARCHAR(250), + "RULE_FOR" VARCHAR(20), + "RULE_TITLE" VARCHAR(100), + "RULE_NAME" VARCHAR(100), + "RULE_VALUE" VARCHAR(100), + "VALUE_DEFAULT" VARCHAR(100), + "VALUE_REGEX" VARCHAR(100), + "RULE_NOTE" VARCHAR(500), "ROW_VERSION" BIGINT NOT NULL, "IS_DELETED" BOOLEAN NOT NULL, "CREATE_BY" BIGINT NOT NULL, diff --git a/src/main/resources/pt/admin_table/SQLite_CONFIG_DATA.sql b/src/main/resources/pt/admin_table/SQLite_CONFIG_DATA.sql index 7b1474d..edb2703 100644 --- a/src/main/resources/pt/admin_table/SQLite_CONFIG_DATA.sql +++ b/src/main/resources/pt/admin_table/SQLite_CONFIG_DATA.sql @@ -7,10 +7,9 @@ CREATE TABLE IF NOT EXISTS NA_CONFIG_DATA ( "ID" BIGINT PRIMARY KEY NOT NULL, "TARGET_ID" BIGINT NOT NULL, - "CONF_NAME" VARCHAR(50) NOT NULL, - "CONF_TYPE" VARCHAR(50) NOT NULL, - "CONF_KEY" VARCHAR(50) NOT NULL, - "CONF_VALUE" VARCHAR(250) NOT NULL, + "RULE_ID" BIGINT, + "CONF_NAME" VARCHAR(100) NOT NULL, + "CONF_VALUE" VARCHAR(100) NOT NULL, "CONF_NOTE" VARCHAR(250), "ROW_VERSION" BIGINT NOT NULL, "IS_DELETED" BOOLEAN NOT NULL, diff --git a/src/main/resources/pt/admin_table/SQLite_CONFIG.sql b/src/main/resources/pt/admin_table/SQLite_RULES.sql similarity index 55% rename from src/main/resources/pt/admin_table/SQLite_CONFIG.sql rename to src/main/resources/pt/admin_table/SQLite_RULES.sql index d9a6983..f118bd7 100644 --- a/src/main/resources/pt/admin_table/SQLite_CONFIG.sql +++ b/src/main/resources/pt/admin_table/SQLite_RULES.sql @@ -1,16 +1,18 @@ -- ---------------------------- --- Table structure for CONFIG - 配置预设 +-- Table structure for RULES - 配置规则 -- Target : SQLite -- Author : wangbing -- Date: : 2021-02-08 -- ---------------------------- -CREATE TABLE IF NOT EXISTS NA_CONFIG ( +CREATE TABLE IF NOT EXISTS NA_RULES ( "ID" BIGINT PRIMARY KEY NOT NULL, - "CONF_NAME" VARCHAR(50) NOT NULL, - "CONF_TYPE" VARCHAR(50) NOT NULL, - "CONF_KEY" VARCHAR(50) NOT NULL, - "CONF_VALUE" VARCHAR(250) NOT NULL, - "CONF_NOTE" VARCHAR(250), + "RULE_FOR" VARCHAR(20), + "RULE_TITLE" VARCHAR(100), + "RULE_NAME" VARCHAR(100), + "RULE_VALUE" VARCHAR(100), + "VALUE_DEFAULT" VARCHAR(100), + "VALUE_REGEX" VARCHAR(100), + "RULE_NOTE" VARCHAR(500), "ROW_VERSION" BIGINT NOT NULL, "IS_DELETED" BOOLEAN NOT NULL, "CREATE_BY" BIGINT NOT NULL, diff --git a/src/main/resources/pt/nginx-admin.xml b/src/main/resources/pt/nginx-admin.xml index 3578f65..2fb964f 100644 --- a/src/main/resources/pt/nginx-admin.xml +++ b/src/main/resources/pt/nginx-admin.xml @@ -3,7 +3,7 @@ - + @@ -17,11 +17,11 @@ - - - + + + - +
@@ -37,19 +37,15 @@ - +
- +
- - - - - - - - + + + + @@ -58,18 +54,19 @@
- +
- - - - - - + + + + - - - + + + + + + diff --git a/src/main/resources/templates/screen/admin/config.ftl b/src/main/resources/templates/screen/admin/config.ftl deleted file mode 100644 index b538890..0000000 --- a/src/main/resources/templates/screen/admin/config.ftl +++ /dev/null @@ -1,319 +0,0 @@ -
- - -
- - - <#if token.hasRes("/ajax/admin/config/create")> - 新增 - - <#if token.hasRes("/ajax/admin/config/delete")> - 删除 - - - - - <#if token.hasRes("/ajax/admin/config/template")> - - - - - - <#if token.hasRes("/ajax/admin/config/imports")> - - - - - - <#if token.hasRes("/ajax/admin/config/exports")> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - 取消 - 保存 - - -
- diff --git a/src/main/resources/templates/screen/admin/rules.ftl b/src/main/resources/templates/screen/admin/rules.ftl new file mode 100644 index 0000000..d8e6bdd --- /dev/null +++ b/src/main/resources/templates/screen/admin/rules.ftl @@ -0,0 +1,381 @@ +
+ + +
+ + + <#if token.hasRes("/ajax/admin/rules/create")> + 新增 + + <#if token.hasRes("/ajax/admin/rules/delete")> + 删除 + + + + + <#if token.hasRes("/ajax/admin/rules/template")> + + + + + + <#if token.hasRes("/ajax/admin/rules/imports")> + + + + + + <#if token.hasRes("/ajax/admin/rules/exports")> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 取消 + 保存 + + +
+ diff --git a/src/main/resources/templates/screen/index.ftl b/src/main/resources/templates/screen/index.ftl index 93b3da9..e6321b4 100644 --- a/src/main/resources/templates/screen/index.ftl +++ b/src/main/resources/templates/screen/index.ftl @@ -17,28 +17,19 @@ :collapse="prop.coll" :collapse-transition="prop.tran"> <#if token.hasRes("ADMIN")> - + <#if token.hasRes("ADMIN_SERVICES")> - - 虚拟主机 - + 虚拟主机 <#if token.hasRes("ADMIN_LOCATIONS")> - - 路径配置 - + 路径配置 - <#if token.hasRes("ADMIN_CONFIG")> - - 配置预设 - + <#if token.hasRes("ADMIN_RULES")> + 配置规则 @@ -69,14 +60,8 @@ 关于 - - 开发指导 - - - 使用指导 - + 开发指导 + 使用指导 @@ -109,16 +94,13 @@ :visible.sync="form.formShow"> - + - + - + @@ -163,18 +145,18 @@ z-index: 99; } - #loadingBar div[role=progressbar] .el-progress-bar__outer { + #loadingBar div[role=progressbar] .el-progress-bar__outer{ background-color: transparent; } - #devMarker { + #devMarker{ position: absolute; bottom: 50px; right: 50px; } - #devMarker:after { - pointer-events: none; + #devMarker:after{ + pointer-events:none; content: attr(marker-value); font-size: 100px; color: rgba(188, 188, 188, 0.5); @@ -275,18 +257,18 @@ line-height: 20px; } - #content, #content .el-tabs__content { + #content,#content .el-tabs__content { padding: 0; height: calc(100% - 40px); } - #content > div, #content .el-tab-pane { + #content > div,#content .el-tab-pane { padding: 0; border: 0; height: 100%; } - #content div[role=tab] { + #content div[role=tab]{ padding: 0 10px; } @@ -305,14 +287,14 @@ tran: <#if prop.tran>true<#else>false, full: <#if prop.full>true<#else>false }, - barStatus: null, + barStatus:null, barPercent: 0, barInterval: null, - form: { - formShow: false, - password: '', - newPassword: '', - newPassword_: '' + form:{ + formShow:false, + password:'', + newPassword:'', + newPassword_:'' }, formRules: { password: [ @@ -324,27 +306,25 @@ ], newPassword_: [ {required: true, message: '密码确认不能为空', trigger: 'blur'}, - { - validator: function (rule, value, callback) { - if (value === '') { - callback(new Error('请再次输入密码')); - } else if (value !== index.form.newPassword) { - callback(new Error('两次输入密码不一致!')); - } else { - callback(); - } - }, trigger: 'blur' - } + { validator: function (rule, value, callback) { + if (value === '') { + callback(new Error('请再次输入密码')); + } else if (value !== index.form.newPassword) { + callback(new Error('两次输入密码不一致!')); + } else { + callback(); + } + }, trigger: 'blur' } ] }, - resultUnRead: [] + resultUnRead:[] }, methods: { onHome: function () { this.openTab({ title: '首页', name: 'home', - url: this.context + '/home.htm' + url: '/home.htm' }) }, barStart: function () { @@ -389,7 +369,7 @@ //不存在则添加 if (tempTabs.length <= 0) { this.tabs.push(tab) - } + }; this.prop.tabName = tab.name; this.onSaveState(); }, @@ -411,7 +391,7 @@ return tab.name !== tabName }) }, - onChangePwd: function () { + onChangePwd:function () { this.$refs['form'].validate(function (valid) { if (valid) { new Ajax("wadmin", "user", "changePwd").post(this.form, function (response) { @@ -424,9 +404,9 @@ } }.bind(this)) }, - onLogout: function () { - nav.boxYesNo("退出提示", "是否退出当前登录账户?", function (result) { - if (result) { + onLogout: function() { + nav.boxYesNo("退出提示", "是否退出当前登录账户?" ,function (result) { + if (result){ new Ajax("wframe", "auth", "logout").post({}, function (response) { if (response.errors.length > 0) { nav.e(response.errors[0].message); @@ -439,7 +419,7 @@ }.bind(this)) }, onLogoutForChangePwd: function () { - nav.boxYes("退出提示", "密码修改成功立即重新登录?", function (result) { + nav.boxYes("退出提示", "密码修改成功立即重新登录?" ,function (result) { new Ajax("wadmin", "user").method("logout").post({}, function (response) { if (response.errors.length > 0) { nav.e(response.errors[0].message); @@ -450,7 +430,7 @@ }.bind(this)); }.bind(this)) }, - switchFullScreen: function () { + switchFullScreen:function(){ this.prop.full = !this.prop.full; if (this.prop.full) { nav.screenFull() @@ -479,10 +459,10 @@ var tabs = $.getSessionStorage("tabs"); if (tabs) { this.tabs = JSON.parse(tabs); - } else { + }else { this.onHome(); // 开发模式,默认打开指导页 - if (this.active === 'dev') { + if (this.active === 'dev') { this.openTab({ title: '开发指导', name: 'helpDev', @@ -503,7 +483,7 @@ }.bind(this)); }, watch: { - "prop.tabName": function () { + "prop.tabName":function () { this.onSaveState(); } } diff --git a/src/test/java/xyz/wbsite/DataInit.java b/src/test/java/xyz/wbsite/DataInit.java index c05fb5b..709bb9d 100644 --- a/src/test/java/xyz/wbsite/DataInit.java +++ b/src/test/java/xyz/wbsite/DataInit.java @@ -9,13 +9,10 @@ import org.springframework.test.annotation.Rollback; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import xyz.wbsite.frame.base.Token; -import xyz.wbsite.module.admin.mgr.ConfigManager; import xyz.wbsite.module.admin.mgr.LocationsManager; import xyz.wbsite.module.admin.mgr.ServicesManager; -import xyz.wbsite.module.admin.req.ConfigCreateRequest; import xyz.wbsite.module.admin.req.LocationsCreateRequest; import xyz.wbsite.module.admin.req.ServicesCreateRequest; -import xyz.wbsite.module.admin.rsp.ConfigCreateResponse; import xyz.wbsite.module.admin.rsp.LocationsCreateResponse; import xyz.wbsite.module.admin.rsp.ServicesCreateResponse; @@ -26,8 +23,6 @@ public class DataInit { @Autowired private Token token; @Autowired - private ConfigManager configManager; - @Autowired private ServicesManager servicesManager; @Autowired private LocationsManager locationsManager; @@ -57,14 +52,4 @@ public class DataInit { } } } - - private void create(String... data) { - ConfigCreateRequest request = new ConfigCreateRequest(); - request.setConfName(data[0]); - request.setConfType(data[1]); - request.setConfKey(data[2]); - request.setConfValue(data[3]); - request.setConfNote(data[4]); - ConfigCreateResponse configCreateResponse = configManager.create(request, token); - } } diff --git a/src/test/java/xyz/wbsite/admin/ConfigDataTest.java b/src/test/java/xyz/wbsite/admin/ConfigDataTest.java index 2eae83e..36976d5 100644 --- a/src/test/java/xyz/wbsite/admin/ConfigDataTest.java +++ b/src/test/java/xyz/wbsite/admin/ConfigDataTest.java @@ -24,7 +24,7 @@ import static junit.framework.TestCase.assertTrue; * * @author wangbing * @version 0.0.1 - * @since 2021-02-07 + * @since 2021-02-08 */ @RunWith(SpringRunner.class) @SpringBootTest @@ -41,8 +41,8 @@ public class ConfigDataTest { public void testCreate() { ConfigDataCreateRequest request = new ConfigDataCreateRequest(); request.setTargetId(1L); + request.setRuleId(1L); request.setConfName("配置名称"); - request.setConfType("value"); request.setConfValue("配置属值"); request.setConfNote("配置备注"); @@ -57,8 +57,8 @@ public class ConfigDataTest { //创建数据 ConfigDataCreateRequest createRequest = new ConfigDataCreateRequest(); createRequest.setTargetId(1L); + createRequest.setRuleId(1L); createRequest.setConfName("配置名称"); - createRequest.setConfType("value"); createRequest.setConfValue("配置属值"); createRequest.setConfNote("配置备注"); @@ -79,8 +79,8 @@ public class ConfigDataTest { //创建数据 ConfigDataCreateRequest createRequest = new ConfigDataCreateRequest(); createRequest.setTargetId(1L); + createRequest.setRuleId(1L); createRequest.setConfName("配置名称"); - createRequest.setConfType("value"); createRequest.setConfValue("配置属值"); createRequest.setConfNote("配置备注"); @@ -92,8 +92,8 @@ public class ConfigDataTest { ConfigDataUpdateRequest request = new ConfigDataUpdateRequest(); request.setId(createResponse.getId()); request.setTargetId(1L); + request.setRuleId(1L); request.setConfName("配置名称"); - request.setConfType("value"); request.setConfValue("配置属值"); request.setConfNote("配置备注"); @@ -107,7 +107,6 @@ public class ConfigDataTest { ConfigDataFindRequest request = new ConfigDataFindRequest(); request.setTargetId(1L); request.setConfName("配置名称"); - request.setConfType("value"); ConfigDataFindResponse response = configDataManager.find(request,token); diff --git a/src/test/java/xyz/wbsite/admin/ConfigTest.java b/src/test/java/xyz/wbsite/admin/ConfigTest.java deleted file mode 100644 index c2cd94d..0000000 --- a/src/test/java/xyz/wbsite/admin/ConfigTest.java +++ /dev/null @@ -1,111 +0,0 @@ -package xyz.wbsite.admin; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; -import org.springframework.transaction.annotation.Transactional; -import xyz.wbsite.frame.base.Token; -import xyz.wbsite.module.admin.mgr.ConfigManager; -import xyz.wbsite.module.admin.req.ConfigCreateRequest; -import xyz.wbsite.module.admin.req.ConfigDeleteRequest; -import xyz.wbsite.module.admin.req.ConfigFindRequest; -import xyz.wbsite.module.admin.req.ConfigUpdateRequest; -import xyz.wbsite.module.admin.rsp.ConfigCreateResponse; -import xyz.wbsite.module.admin.rsp.ConfigDeleteResponse; -import xyz.wbsite.module.admin.rsp.ConfigFindResponse; -import xyz.wbsite.module.admin.rsp.ConfigUpdateResponse; - -import static junit.framework.TestCase.assertTrue; - -/** - * ConfigTest - - 配置预设测试用例 - * - * @author wangbing - * @version 0.0.1 - * @since 2021-02-07 - */ -@RunWith(SpringRunner.class) -@SpringBootTest -@Transactional -public class ConfigTest { - - @Autowired - private Token token; - - @Autowired - private ConfigManager configManager; - - @Test - public void testCreate() { - ConfigCreateRequest request = new ConfigCreateRequest(); - request.setConfName("配置名称"); - request.setConfType("value"); - request.setConfValue("配置属值"); - request.setConfNote("配置备注"); - - ConfigCreateResponse response = configManager.create(request,token); - - assertTrue(!response.hasError()); - } - - @Test - public void testDelete() { - - //创建数据 - ConfigCreateRequest createRequest = new ConfigCreateRequest(); - createRequest.setConfName("配置名称"); - createRequest.setConfType("value"); - createRequest.setConfValue("配置属值"); - createRequest.setConfNote("配置备注"); - - ConfigCreateResponse createResponse = configManager.create(createRequest,token); - - assertTrue(!createResponse.hasError() && createResponse.getId() > 0); - //删除数据 - ConfigDeleteRequest request = new ConfigDeleteRequest(); - request.setId(createResponse.getId()); - - ConfigDeleteResponse response = configManager.delete(request,token); - - assertTrue(!response.hasError() && response.getResult() == 1L); - } - - @Test - public void testUpdate() { - //创建数据 - ConfigCreateRequest createRequest = new ConfigCreateRequest(); - createRequest.setConfName("配置名称"); - createRequest.setConfType("value"); - createRequest.setConfValue("配置属值"); - createRequest.setConfNote("配置备注"); - - ConfigCreateResponse createResponse = configManager.create(createRequest, token); - - assertTrue(!createResponse.hasError()); - - //更新数据 - ConfigUpdateRequest request = new ConfigUpdateRequest(); - request.setId(createResponse.getId()); - request.setConfName("配置名称"); - request.setConfType("value"); - request.setConfValue("配置属值"); - request.setConfNote("配置备注"); - - ConfigUpdateResponse response = configManager.update(request,token); - - assertTrue(!response.hasError() && response.getResult() == 1L); - } - - @Test - public void testFind() { - ConfigFindRequest request = new ConfigFindRequest(); - request.setConfName("配置名称"); - request.setConfType("value"); - - ConfigFindResponse response = configManager.find(request,token); - - assertTrue(!response.hasError()); - } -} diff --git a/src/test/java/xyz/wbsite/admin/RulesTest.java b/src/test/java/xyz/wbsite/admin/RulesTest.java new file mode 100644 index 0000000..bc1f8eb --- /dev/null +++ b/src/test/java/xyz/wbsite/admin/RulesTest.java @@ -0,0 +1,127 @@ +package xyz.wbsite.admin; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.transaction.annotation.Transactional; +import xyz.wbsite.frame.base.Token; +import xyz.wbsite.module.admin.mgr.RulesManager; +import xyz.wbsite.module.admin.req.RulesCreateRequest; +import xyz.wbsite.module.admin.req.RulesDeleteRequest; +import xyz.wbsite.module.admin.req.RulesFindRequest; +import xyz.wbsite.module.admin.req.RulesUpdateRequest; +import xyz.wbsite.module.admin.rsp.RulesCreateResponse; +import xyz.wbsite.module.admin.rsp.RulesDeleteResponse; +import xyz.wbsite.module.admin.rsp.RulesFindResponse; +import xyz.wbsite.module.admin.rsp.RulesUpdateResponse; + +import static junit.framework.TestCase.assertTrue; + +/** + * RulesTest - - 配置规则测试用例 + * + * @author wangbing + * @version 0.0.1 + * @since 2021-02-08 + */ +@RunWith(SpringRunner.class) +@SpringBootTest +@Transactional +public class RulesTest { + + @Autowired + private Token token; + + @Autowired + private RulesManager rulesManager; + + @Test + public void testCreate() { + RulesCreateRequest request = new RulesCreateRequest(); + request.setRuleFor("value"); + request.setRuleTitle("规则标题"); + request.setRuleName("规则名称"); + request.setRuleValue("规则属值"); + request.setValueDefault("默认属值"); + request.setValueRegex("属值正则"); + request.setRuleNote("规则描述"); + + RulesCreateResponse response = rulesManager.create(request,token); + + assertTrue(!response.hasError()); + } + + @Test + public void testDelete() { + + //创建数据 + RulesCreateRequest createRequest = new RulesCreateRequest(); + createRequest.setRuleFor("value"); + createRequest.setRuleTitle("规则标题"); + createRequest.setRuleName("规则名称"); + createRequest.setRuleValue("规则属值"); + createRequest.setValueDefault("默认属值"); + createRequest.setValueRegex("属值正则"); + createRequest.setRuleNote("规则描述"); + + RulesCreateResponse createResponse = rulesManager.create(createRequest,token); + + assertTrue(!createResponse.hasError() && createResponse.getId() > 0); + //删除数据 + RulesDeleteRequest request = new RulesDeleteRequest(); + request.setId(createResponse.getId()); + + RulesDeleteResponse response = rulesManager.delete(request,token); + + assertTrue(!response.hasError() && response.getResult() == 1L); + } + + @Test + public void testUpdate() { + //创建数据 + RulesCreateRequest createRequest = new RulesCreateRequest(); + createRequest.setRuleFor("value"); + createRequest.setRuleTitle("规则标题"); + createRequest.setRuleName("规则名称"); + createRequest.setRuleValue("规则属值"); + createRequest.setValueDefault("默认属值"); + createRequest.setValueRegex("属值正则"); + createRequest.setRuleNote("规则描述"); + + RulesCreateResponse createResponse = rulesManager.create(createRequest, token); + + assertTrue(!createResponse.hasError()); + + //更新数据 + RulesUpdateRequest request = new RulesUpdateRequest(); + request.setId(createResponse.getId()); + request.setRuleFor("value"); + request.setRuleTitle("规则标题"); + request.setRuleName("规则名称"); + request.setRuleValue("规则属值"); + request.setValueDefault("默认属值"); + request.setValueRegex("属值正则"); + request.setRuleNote("规则描述"); + + RulesUpdateResponse response = rulesManager.update(request,token); + + assertTrue(!response.hasError() && response.getResult() == 1L); + } + + @Test + public void testFind() { + RulesFindRequest request = new RulesFindRequest(); + request.setRuleFor("value"); + request.setRuleTitle("规则标题"); + request.setRuleName("规则名称"); + request.setRuleValue("规则属值"); + request.setValueDefault("默认属值"); + request.setValueRegex("属值正则"); + + RulesFindResponse response = rulesManager.find(request,token); + + assertTrue(!response.hasError()); + } +}