This is an automated email from the ASF dual-hosted git repository.
hefengen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git
The following commit(s) were added to refs/heads/master by this push:
new 73a7129a97 [type:improve] Add dynamically scale admin page (#5706)
73a7129a97 is described below
commit 73a7129a97c3347f293e997d321c07d0853b3ac2
Author: VampireAchao <[email protected]>
AuthorDate: Wed Oct 16 20:37:29 2024 +0800
[type:improve] Add dynamically scale admin page (#5706)
* [type:improve] Add dynamically scale admin page
* [type:fix] fix ci
---------
Co-authored-by: aias00 <[email protected]>
---
db/init/ob/schema.sql | 2 +-
db/init/og/create-table.sql | 12 ++++++
db/init/oracle/schema.sql | 12 ++++++
db/init/pg/create-table.sql | 12 ++++++
.../admin/controller/ScaleRlueController.java | 19 ++++++--
.../shenyu/admin/model/dto/ScaleRuleDTO.java | 3 --
.../shenyu/admin/model/entity/ScalePolicyDO.java | 8 ++--
.../shenyu/admin/model/query/ScaleRuleQuery.java | 50 +++++++++++++++++++++-
.../main/resources/mappers/scale-policy-sqlmap.xml | 7 ++-
.../main/resources/mappers/scale-rule-sqlmap.xml | 13 ++++--
10 files changed, 117 insertions(+), 21 deletions(-)
diff --git a/db/init/ob/schema.sql b/db/init/ob/schema.sql
index 4b98bf35d1..6d8926494b 100644
--- a/db/init/ob/schema.sql
+++ b/db/init/ob/schema.sql
@@ -2380,4 +2380,4 @@ INSERT INTO `shenyu`.`permission` (`id`, `object_id`,
`resource_id`, `date_creat
INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`,
`date_created`, `date_updated`) VALUES ('1792779493541343264',
'1346358560427216896', '1792749362445840483', '2024-06-25 20:00:00.000',
'2024-06-25 20:00:00.000');
INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`,
`date_created`, `date_updated`) VALUES ('1792779493541343265',
'1346358560427216896', '1792749362445840484', '2024-06-25 20:00:00.000',
'2024-06-25 20:00:00.000');
INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`,
`date_created`, `date_updated`) VALUES ('1792779493541343266',
'1346358560427216896', '1792749362445840485', '2024-06-25 20:00:00.000',
'2024-06-25 20:00:00.000');
-INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`,
`date_created`, `date_updated`) VALUES ('1792779493541343267',
'1346358560427216896', '1792749362445840486', '2024-06-25 20:00:00.000',
'2024-06-25 20:00:00.000');
\ No newline at end of file
+INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`,
`date_created`, `date_updated`) VALUES ('1792779493541343267',
'1346358560427216896', '1792749362445840486', '2024-06-25 20:00:00.000',
'2024-06-25 20:00:00.000');
diff --git a/db/init/og/create-table.sql b/db/init/og/create-table.sql
index fc98ecc6e2..7f4c756403 100644
--- a/db/init/og/create-table.sql
+++ b/db/init/og/create-table.sql
@@ -912,6 +912,12 @@ INSERT INTO "public"."permission" VALUES
('1697146375754190848','134635856042721
INSERT INTO "public"."permission" VALUES
('1697146617543233536','1346358560427216896','1697146617513873408', '2023-08-31
15:17:39', '2023-08-31 07:17:39');
INSERT INTO "public"."permission" VALUES
('1697146860569595904','1346358560427216896','1697146860540235776', '2023-08-31
15:18:37', '2023-08-31 07:18:37');
+INSERT INTO "public"."permission" VALUES
('1697141926281381720','1346358560427216896','1844015648095666176', '2023-08-31
06:59:01', '2023-08-31 06:59:01');
+INSERT INTO "public"."permission" VALUES
('1697145808239621836','1346358560427216896','1844025735425183744', '2023-08-31
07:22:07', '2023-08-31 07:22:07');
+INSERT INTO "public"."permission" VALUES
('1697146375754129471','1346358560427216896','1844025850382667776', '2023-08-31
07:14:26', '2023-08-31 07:14:26');
+INSERT INTO "public"."permission" VALUES
('1697146617543248162','1346358560427216896','1844025989214130176', '2023-08-31
07:22:07', '2023-08-31 07:22:07');
+INSERT INTO "public"."permission" VALUES
('1697146860569542740','1346358560427216896','1844026099075534848', '2023-08-31
07:18:37', '2023-08-31 07:18:37');
+
-- ----------------------------
-- Table structure for plugin
-- ----------------------------
@@ -1843,6 +1849,12 @@ INSERT INTO "public"."resource" VALUES
('1697145808210333696','16971419262477639
INSERT INTO "public"."resource" VALUES
('1697146617513873408','1697141926247763968','SHENYU.BUTTON.SYSTEM.DELETE','','','',2,0,'delete',1,0,'system:alert:delete',1,'2023-08-31
15:17:39.731','2023-08-31 07:22:07.675');
INSERT INTO "public"."resource" VALUES
('1697146860540235776','1697141926247763968','SHENYU.BUTTON.SYSTEM.EDIT','','','',2,0,'edit',1,0,'system:alert:edit',1,'2023-08-31
15:18:37.673','2023-08-31 07:18:37.675');
+INSERT INTO "public"."resource" VALUES ('1844015648095666176',
'1346776175553376256', 'SHENYU.MENU.SYSTEM.MANAGMENT.SCALE', '',
'/system/scale', '', 1, 4, 'sliders', 0, 0, '', 1, '2024-10-09
22:02:45.317000', '2024-10-10 14:33:43.897017');
+INSERT INTO "public"."resource" VALUES ('1844025735425183744',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.LIST', '', '', '', 2, 0,
'unordered-list', 1, 0, 'system:scale:list', 1, '2024-10-09 22:42:50.322000',
'2024-10-09 22:42:50.325462');
+INSERT INTO "public"."resource" VALUES ('1844025850382667776',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.ADD', '', '', '', 2, 0, 'plus', 1,
0, 'system:scale:add', 1, '2024-10-09 22:43:17.731000', '2024-10-09
22:43:17.731661');
+INSERT INTO "public"."resource" VALUES ('1844025989214130176',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.DELETE', '', '', '', 2, 0,
'delete', 1, 0, 'system:scale:delete', 1, '2024-10-09 22:43:50.831000',
'2024-10-09 22:43:50.831705');
+INSERT INTO "public"."resource" VALUES ('1844026099075534848',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.EDIT', '', '', '', 2, 0, 'edit',
1, 0, 'system:scale:edit', 1, '2024-10-09 22:44:17.024000', '2024-10-09
22:44:17.024555');
+
-- ----------------------------
-- Table structure for role
-- ----------------------------
diff --git a/db/init/oracle/schema.sql b/db/init/oracle/schema.sql
index cd305ac06b..9daf4d0a0f 100644
--- a/db/init/oracle/schema.sql
+++ b/db/init/oracle/schema.sql
@@ -2324,6 +2324,12 @@ INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id))
*/ INTO "resource" (id,
INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES
('1697146617513873408','1697141926247763968','SHENYU.BUTTON.SYSTEM.DELETE','','','',2,0,'delete',1,0,'system:alert:delete',1);
INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES
('1697146860540235776','1697141926247763968','SHENYU.BUTTON.SYSTEM.EDIT','','','',2,0,'edit',1,0,'system:alert:edit',1);
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES ('1844015648095666176',
'1346776175553376256', 'SHENYU.MENU.SYSTEM.MANAGMENT.SCALE', '',
'/system/scale', '', 1, 4, 'sliders', 0, 0, '', 1);
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES ('1844025735425183744',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.LIST', '', '', '', 2, 0,
'unordered-list', 1, 0, 'system:scale:list', 1);
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES ('1844025850382667776',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.ADD', '', '', '', 2, 0, 'plus', 1,
0, 'system:scale:add', 1);
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES ('1844025989214130176',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.DELETE', '', '', '', 2, 0,
'delete', 1, 0, 'system:scale:delete', 1);
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX("resource" (id)) */ INTO "resource"
(id, parent_id, title, name, url, component, resource_type, sort, icon,
is_leaf, is_route, perms, status) VALUES ('1844026099075534848',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.EDIT', '', '', '', 2, 0, 'edit',
1, 0, 'system:scale:edit', 1);
+
/* default permission */
INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1351007708572688384', '1346358560427216896',
'1346775491550474240');
@@ -2394,6 +2400,12 @@ INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id))
*/ INTO permission (id, o
INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697146617543233536', '1346358560427216896',
'1697146617513873408');
INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697146860569595904', '1346358560427216896',
'1697146860540235776');
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697141926281381720', '1346358560427216896',
'1844015648095666176');
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697145808239621836', '1346358560427216896',
'1844025735425183744');
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697146375754129471', '1346358560427216896',
'1844025850382667776');
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697146617543248162', '1346358560427216896',
'1844025989214130176');
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ INTO permission (id,
object_id, resource_id) VALUES ('1697146860569542740', '1346358560427216896',
'1844026099075534848');
+
create table tag
(
id VARCHAR2(128) not null,
diff --git a/db/init/pg/create-table.sql b/db/init/pg/create-table.sql
index fc1dc341ec..e289adce14 100644
--- a/db/init/pg/create-table.sql
+++ b/db/init/pg/create-table.sql
@@ -912,6 +912,12 @@ INSERT INTO "public"."permission" VALUES
('1697146375754190848', '13463585604272
INSERT INTO "public"."permission" VALUES ('1697146617543233536',
'1346358560427216896', '1697146617513873408', '2023-08-31 15:17:39',
'2023-08-31 07:17:39');
INSERT INTO "public"."permission" VALUES ('1697146860569595904',
'1346358560427216896', '1697146860540235776', '2023-08-31 15:18:37',
'2023-08-31 07:18:37');
+INSERT INTO "public"."permission" VALUES ('1697141926281381720',
'1346358560427216896', '1844015648095666176', '2023-08-31 06:59:01',
'2023-08-31 06:59:01');
+INSERT INTO "public"."permission" VALUES ('1697145808239621836',
'1346358560427216896', '1844025735425183744', '2023-08-31 07:22:07',
'2023-08-31 07:22:07');
+INSERT INTO "public"."permission" VALUES ('1697146375754129471',
'1346358560427216896', '1844025850382667776', '2023-08-31 07:14:26',
'2023-08-31 07:14:26');
+INSERT INTO "public"."permission" VALUES ('1697146617543248162',
'1346358560427216896', '1844025989214130176', '2023-08-31 07:22:07',
'2023-08-31 07:22:07');
+INSERT INTO "public"."permission" VALUES ('1697146860569542740',
'1346358560427216896', '1844026099075534848', '2023-08-31 07:18:37',
'2023-08-31 07:18:37');
+
INSERT INTO "public"."permission" VALUES ('1792793304205819904',
'1346358560427216896','1792749362361954340', '2022-05-25 18:02:58', '2022-05-25
18:02:58');
INSERT INTO "public"."permission" VALUES ('1792793304205819905',
'1346358560427216896','1792749362445840411', '2022-05-25 18:02:58',
'2022-05-25 18:02:58');
INSERT INTO "public"."permission" VALUES ('1792793304205819906',
'1346358560427216896','1792749362445840412', '2022-05-25 18:02:58',
'2022-05-25 18:02:58');
@@ -1903,6 +1909,12 @@ INSERT INTO "public"."resource" VALUES
('1697145808210333696','16971419262477639
INSERT INTO "public"."resource" VALUES
('1697146617513873408','1697141926247763968','SHENYU.BUTTON.SYSTEM.DELETE','','','',2,0,'delete',1,0,'system:alert:delete',1,'2023-08-31
15:17:39','2023-08-31 07:22:07');
INSERT INTO "public"."resource" VALUES
('1697146860540235776','1697141926247763968','SHENYU.BUTTON.SYSTEM.EDIT','','','',2,0,'edit',1,0,'system:alert:edit',1,'2023-08-31
15:18:37','2023-08-31 07:18:37');
+INSERT INTO "public"."resource" VALUES ('1844015648095666176',
'1346776175553376256', 'SHENYU.MENU.SYSTEM.MANAGMENT.SCALE', '',
'/system/scale', '', 1, 4, 'sliders', 0, 0, '', 1, '2024-10-09
22:02:45.317000', '2024-10-10 14:33:43.897017');
+INSERT INTO "public"."resource" VALUES ('1844025735425183744',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.LIST', '', '', '', 2, 0,
'unordered-list', 1, 0, 'system:scale:list', 1, '2024-10-09 22:42:50.322000',
'2024-10-09 22:42:50.325462');
+INSERT INTO "public"."resource" VALUES ('1844025850382667776',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.ADD', '', '', '', 2, 0, 'plus', 1,
0, 'system:scale:add', 1, '2024-10-09 22:43:17.731000', '2024-10-09
22:43:17.731661');
+INSERT INTO "public"."resource" VALUES ('1844025989214130176',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.DELETE', '', '', '', 2, 0,
'delete', 1, 0, 'system:scale:delete', 1, '2024-10-09 22:43:50.831000',
'2024-10-09 22:43:50.831705');
+INSERT INTO "public"."resource" VALUES ('1844026099075534848',
'1844015648095666176', 'SHENYU.BUTTON.SYSTEM.EDIT', '', '', '', 2, 0, 'edit',
1, 0, 'system:scale:edit', 1, '2024-10-09 22:44:17.024000', '2024-10-09
22:44:17.024555');
+
INSERT INTO "public"."resource" VALUES ('1792749362361954340',
'1346775491550474240', 'casdoor', 'casdoor', '/plug/casdoor', 'casdoor', 1, 0,
'safety', 0, 0, '', 1, '2022-05-25 18:02:58', '2022-05-25 18:02:58');
INSERT INTO "public"."resource" VALUES ('1792749362445840411',
'1792749362361954340', 'SHENYU.BUTTON.PLUGIN.SELECTOR.ADD', '', '', '', 2, 0,
'', 1, 0, 'plugin:casdoorSelector:add', 1, '2022-05-25 18:02:58', '2022-05-25
18:02:58');
INSERT INTO "public"."resource" VALUES ('1792749362445840412',
'1792749362361954340', 'SHENYU.BUTTON.PLUGIN.SELECTOR.QUERY', '', '', '', 2, 0,
'', 1, 0, 'plugin:casdoorSelector:query', 1, '2022-05-25 18:02:58', '2022-05-25
18:02:58');
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/ScaleRlueController.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/ScaleRlueController.java
index 338585508a..6ff48a840d 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/ScaleRlueController.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/controller/ScaleRlueController.java
@@ -22,6 +22,7 @@ import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import org.apache.shenyu.admin.aspect.annotation.RestApi;
+import org.apache.shenyu.admin.exception.ShenyuAdminException;
import org.apache.shenyu.admin.mapper.ScaleRuleMapper;
import org.apache.shenyu.admin.model.dto.ScaleRuleDTO;
import org.apache.shenyu.admin.model.page.CommonPager;
@@ -32,13 +33,13 @@ import org.apache.shenyu.admin.model.vo.ScaleRuleVO;
import org.apache.shenyu.admin.service.ScaleRuleService;
import org.apache.shenyu.admin.utils.ShenyuResultMessage;
import org.apache.shenyu.admin.validation.annotation.Existed;
+import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Optional;
@@ -51,8 +52,11 @@ public class ScaleRlueController {
private final ScaleRuleService scaleRuleService;
- public ScaleRlueController(final ScaleRuleService scaleRuleService) {
+ private final ScaleRuleMapper scaleRuleMapper;
+
+ public ScaleRlueController(final ScaleRuleService scaleRuleService, final
ScaleRuleMapper scaleRuleMapper) {
this.scaleRuleService = scaleRuleService;
+ this.scaleRuleMapper = scaleRuleMapper;
}
/**
@@ -69,16 +73,20 @@ public class ScaleRlueController {
* query scale rule.
*
* @param metricName metricName
+ * @param type type
+ * @param status status
* @param currentPage currentPage
* @param pageSize pageSize
* @return org.apache.shenyu.admin.model.result.ShenyuAdminResult
*/
@GetMapping
public ShenyuAdminResult queryRule(final String metricName,
+ final Integer type,
+ final Integer status,
@RequestParam @NotNull final Integer
currentPage,
@RequestParam @NotNull final Integer
pageSize) {
CommonPager<ScaleRuleVO> commonPager =
- scaleRuleService.listByPage(new ScaleRuleQuery(metricName, new
PageParameter(currentPage, pageSize)));
+ scaleRuleService.listByPage(new ScaleRuleQuery(metricName,
type, status, new PageParameter(currentPage, pageSize)));
return ShenyuAdminResult.success(ShenyuResultMessage.QUERY_SUCCESS,
commonPager);
}
@@ -118,6 +126,9 @@ public class ScaleRlueController {
*/
@PutMapping
public ShenyuAdminResult updateRule(@Valid @RequestBody final ScaleRuleDTO
scaleRuleDTO) {
+ if (!scaleRuleMapper.existed(scaleRuleDTO.getId())) {
+ throw new ShenyuAdminException("scale rule is not existed");
+ }
return ShenyuAdminResult.success(ShenyuResultMessage.UPDATE_SUCCESS,
scaleRuleService.createOrUpdate(scaleRuleDTO));
}
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/ScaleRuleDTO.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/ScaleRuleDTO.java
index 27a48d6b61..6360d50192 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/ScaleRuleDTO.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/dto/ScaleRuleDTO.java
@@ -19,8 +19,6 @@ package org.apache.shenyu.admin.model.dto;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
-import org.apache.shenyu.admin.mapper.ScaleRuleMapper;
-import org.apache.shenyu.admin.validation.annotation.Existed;
import java.io.Serializable;
import java.util.Objects;
@@ -35,7 +33,6 @@ public class ScaleRuleDTO implements Serializable {
/**
* primary key id.
*/
- @Existed(provider = ScaleRuleMapper.class, nullOfIgnore = true, message =
"scale rule is not existed")
private String id;
/**
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/entity/ScalePolicyDO.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/entity/ScalePolicyDO.java
index 5ddfdbf6cb..2e6d02b21b 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/entity/ScalePolicyDO.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/entity/ScalePolicyDO.java
@@ -236,10 +236,10 @@ public final class ScalePolicyDO extends BaseDO {
.sort(item.getSort())
.status(item.getStatus())
.num(item.getNum())
-
.beginTime(DateUtils.isValidDate(DateUtils.localDateTimeToString(item.getBeginTime()))
- ? new
SimpleDateFormat("yyyy-MM-dd").parse(DateUtils.localDateTimeToString(item.getBeginTime()))
: null)
-
.endTime(DateUtils.isValidDate(DateUtils.localDateTimeToString(item.getEndTime()))
- ? new
SimpleDateFormat("yyyy-MM-dd").parse(DateUtils.localDateTimeToString(item.getEndTime()))
: null)
+ .beginTime(item.getBeginTime() != null &&
DateUtils.isValidDate(DateUtils.localDateTimeToString(item.getBeginTime()))
+ ? new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss").parse(DateUtils.localDateTimeToString(item.getBeginTime())) : null)
+ .endTime(item.getEndTime() != null &&
DateUtils.isValidDate(DateUtils.localDateTimeToString(item.getEndTime()))
+ ? new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss").parse(DateUtils.localDateTimeToString(item.getEndTime())) : null)
.dateUpdated(currentTime)
.build();
if (StringUtils.isEmpty(item.getId())) {
diff --git
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/query/ScaleRuleQuery.java
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/query/ScaleRuleQuery.java
index b15e5d04a0..5ba935599b 100644
---
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/query/ScaleRuleQuery.java
+++
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/model/query/ScaleRuleQuery.java
@@ -34,6 +34,16 @@ public class ScaleRuleQuery implements Serializable {
*/
private String metricName;
+ /**
+ * type 0:shenyu 1:k8s 2:others.
+ */
+ private Integer type;
+
+ /**
+ * status 1:enable 0:disable.
+ */
+ private Integer status;
+
/**
* page parameter.
*/
@@ -42,9 +52,11 @@ public class ScaleRuleQuery implements Serializable {
public ScaleRuleQuery() {
}
- public ScaleRuleQuery(final String metricName, final PageParameter
pageParameter) {
+ public ScaleRuleQuery(final String metricName, final Integer type, final
Integer status, final PageParameter pageParameter) {
this.metricName = metricName;
this.pageParameter = pageParameter;
+ this.type = type;
+ this.status = status;
}
/**
@@ -65,6 +77,42 @@ public class ScaleRuleQuery implements Serializable {
this.metricName = metricName;
}
+ /**
+ * Gets the value of type.
+ *
+ * @return the value of type
+ */
+ public Integer getType() {
+ return type;
+ }
+
+ /**
+ * Sets the type.
+ *
+ * @param type type
+ */
+ public void setType(final Integer type) {
+ this.type = type;
+ }
+
+ /**
+ * Gets the value of status.
+ *
+ * @return the value of status
+ */
+ public Integer getStatus() {
+ return status;
+ }
+
+ /**
+ * Sets the status.
+ *
+ * @param status status
+ */
+ public void setStatus(final Integer status) {
+ this.status = status;
+ }
+
/**
* Gets the value of pageParameter.
*
diff --git a/shenyu-admin/src/main/resources/mappers/scale-policy-sqlmap.xml
b/shenyu-admin/src/main/resources/mappers/scale-policy-sqlmap.xml
index 6ef188059c..78013f86eb 100644
--- a/shenyu-admin/src/main/resources/mappers/scale-policy-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/scale-policy-sqlmap.xml
@@ -49,10 +49,10 @@
</delete>
<insert id="insert"
parameterType="org.apache.shenyu.admin.model.entity.ScalePolicyDO">
insert into scale_policy (id, sort, `status`, num,
- begin_time, end_time, date_created,
+ begin_time, end_time, date_created,
date_updated)
values (#{id,jdbcType=VARCHAR}, #{sort,jdbcType=INTEGER},
#{status,jdbcType=INTEGER}, #{num,jdbcType=INTEGER},
- #{beginTime,jdbcType=TIMESTAMP}, #{endTime,jdbcType=TIMESTAMP},
#{dateCreated,jdbcType=TIMESTAMP},
+ #{beginTime,jdbcType=TIMESTAMP}, #{endTime,jdbcType=TIMESTAMP},
#{dateCreated,jdbcType=TIMESTAMP},
#{dateUpdated,jdbcType=TIMESTAMP})
</insert>
<insert id="insertSelective"
parameterType="org.apache.shenyu.admin.model.entity.ScalePolicyDO">
@@ -140,7 +140,6 @@
num = #{num,jdbcType=INTEGER},
begin_time = #{beginTime,jdbcType=TIMESTAMP},
end_time = #{endTime,jdbcType=TIMESTAMP},
- date_created = #{dateCreated,jdbcType=TIMESTAMP},
date_updated = #{dateUpdated,jdbcType=TIMESTAMP}
where id = #{id,jdbcType=VARCHAR}
</update>
@@ -149,4 +148,4 @@
<include refid="Base_Column_List"/>
FROM scale_policy
</select>
-</mapper>
\ No newline at end of file
+</mapper>
diff --git a/shenyu-admin/src/main/resources/mappers/scale-rule-sqlmap.xml
b/shenyu-admin/src/main/resources/mappers/scale-rule-sqlmap.xml
index 9937a5b85f..5123b367f8 100644
--- a/shenyu-admin/src/main/resources/mappers/scale-rule-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/scale-rule-sqlmap.xml
@@ -70,6 +70,12 @@
<bind name="nameLike" value="('%' + metricName + '%')"/>
and metric_name like #{nameLike, jdbcType=VARCHAR}
</if>
+ <if test="type != null">
+ and type = #{type, jdbcType=INTEGER}
+ </if>
+ <if test="status != null">
+ and status = #{status, jdbcType=INTEGER}
+ </if>
</where>
order by sort, date_created
</select>
@@ -85,10 +91,10 @@
</delete>
<insert id="insert"
parameterType="org.apache.shenyu.admin.model.entity.ScaleRuleDO">
insert into scale_rule (id, metric_name, `type`, sort,
- `status`, minimum, maximum,
+ `status`, minimum, maximum,
date_created, date_updated)
values (#{id,jdbcType=VARCHAR}, #{metricName,jdbcType=VARCHAR},
#{type,jdbcType=INTEGER}, #{sort,jdbcType=INTEGER},
- #{status,jdbcType=INTEGER}, #{minimum,jdbcType=VARCHAR},
#{maximum,jdbcType=VARCHAR},
+ #{status,jdbcType=INTEGER}, #{minimum,jdbcType=VARCHAR},
#{maximum,jdbcType=VARCHAR},
#{dateCreated,jdbcType=TIMESTAMP}, #{dateUpdated,jdbcType=TIMESTAMP})
</insert>
<insert id="insertSelective"
parameterType="org.apache.shenyu.admin.model.entity.ScaleRuleDO">
@@ -192,7 +198,6 @@
`status` = #{status,jdbcType=INTEGER},
minimum = #{minimum,jdbcType=VARCHAR},
maximum = #{maximum,jdbcType=VARCHAR},
- date_created = #{dateCreated,jdbcType=TIMESTAMP},
date_updated = #{dateUpdated,jdbcType=TIMESTAMP}
where id = #{id,jdbcType=VARCHAR}
</update>
@@ -214,4 +219,4 @@
#{id, jdbcType=VARCHAR}
</foreach>
</delete>
-</mapper>
\ No newline at end of file
+</mapper>