From 229f1b8991349a48b7fc3ef381b8b9254cb7f98a Mon Sep 17 00:00:00 2001 From: dhb52 Date: Tue, 21 May 2024 00:32:51 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=B0=86groupby=E5=88=86=E9=A1=B5m?= =?UTF-8?q?apperid=E6=8F=90=E5=8F=96=E5=88=B0template=E5=8C=85,=20?= =?UTF-8?q?=E5=B9=B6=E5=85=A8=E5=B1=80=E8=87=AA=E5=AE=9A=E4=B9=89countId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../persistence/mapper/JobSummaryMapper.java | 13 ++++--- .../mapper/RetrySummaryMapper.java | 3 +- .../template/mapper/JobSummaryMapper.xml | 39 +++++++++++++++++++ .../template/mapper/RetrySummaryMapper.xml | 22 +++++++++++ .../mariadb/mapper/JobSummaryMapper.xml | 9 ----- .../mariadb/mapper/RetrySummaryMapper.xml | 9 ----- .../mysql/mapper/JobSummaryMapper.xml | 36 ----------------- .../mysql/mapper/RetrySummaryMapper.xml | 9 ----- .../oracle/mapper/JobSummaryMapper.xml | 26 ------------- .../oracle/mapper/RetrySummaryMapper.xml | 10 ----- .../postgresql/mapper/JobSummaryMapper.xml | 28 +------------ .../postgresql/mapper/RetrySummaryMapper.xml | 9 ----- .../sqlserver/mapper/JobSummaryMapper.xml | 37 ------------------ .../sqlserver/mapper/RetrySummaryMapper.xml | 33 ---------------- .../service/impl/DashBoardServiceImpl.java | 20 +++++----- 15 files changed, 82 insertions(+), 221 deletions(-) create mode 100644 snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/JobSummaryMapper.xml create mode 100644 snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/RetrySummaryMapper.xml diff --git a/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/JobSummaryMapper.java b/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/JobSummaryMapper.java index 54240066..3c7c4bfc 100644 --- a/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/JobSummaryMapper.java +++ b/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/JobSummaryMapper.java @@ -2,11 +2,10 @@ package com.aizuda.snailjob.template.datasource.persistence.mapper; import com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardCardResponseDO; import com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardLineResponseDO; -import com.aizuda.snailjob.template.datasource.persistence.po.Job; -import com.aizuda.snailjob.template.datasource.persistence.po.JobSummary; import com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardRetryLineResponseDO.Rank; import com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardRetryLineResponseDO.Task; -import com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardLineResponseDO; +import com.aizuda.snailjob.template.datasource.persistence.po.Job; +import com.aizuda.snailjob.template.datasource.persistence.po.JobSummary; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -28,16 +27,20 @@ public interface JobSummaryMapper extends BaseMapper { int batchUpdate(@Param("list") List list); - IPage jobTaskList(@Param("ew") Wrapper wrapper, Page page); + // jobTaskList 自定义 countStatement + long jobTaskListCount(@Param("ew") Wrapper wrapper); + IPage workflowTaskList(@Param("ew") Wrapper wrapper, Page page); + // workflowTaskList 自定义 countStatement + long workflowTaskListCount(@Param("ew") Wrapper wrapper); + List jobLineList(@Param("dateFormat") String dateFormat, @Param("ew") Wrapper wrapper); List dashboardRank(@Param("systemTaskType") Integer systemTaskType, @Param("ew") Wrapper wrapper); DashboardCardResponseDO.JobTask toJobTask(@Param("ew") Wrapper wrapper); - long countJobTask(@Param("ew") Wrapper wrapper); } diff --git a/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/RetrySummaryMapper.java b/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/RetrySummaryMapper.java index b66485cc..b66dec30 100644 --- a/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/RetrySummaryMapper.java +++ b/snail-job-datasource/snail-job-datasource-template/src/main/java/com/aizuda/snailjob/template/datasource/persistence/mapper/RetrySummaryMapper.java @@ -32,9 +32,10 @@ public interface RetrySummaryMapper extends BaseMapper { IPage retryTaskList(@Param("ew") Wrapper wrapper, Page page); + long retryTaskListCount(@Param("ew") Wrapper wrapper); + List retryLineList(@Param("dateFormat") String dateFormat, @Param("ew") Wrapper wrapper); List dashboardRank(@Param("ew") Wrapper wrapper); - long countRetryTask(@Param("ew") Wrapper wrapper); } diff --git a/snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/JobSummaryMapper.xml new file mode 100644 index 00000000..e8860cdc --- /dev/null +++ b/snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/JobSummaryMapper.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/RetrySummaryMapper.xml new file mode 100644 index 00000000..a797c787 --- /dev/null +++ b/snail-job-datasource/snail-job-datasource-template/src/main/resources/template/mapper/RetrySummaryMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + \ No newline at end of file diff --git a/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/JobSummaryMapper.xml index c53c8281..b5df76db 100644 --- a/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/JobSummaryMapper.xml +++ b/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/JobSummaryMapper.xml @@ -111,13 +111,4 @@ LIMIT 10 - diff --git a/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/RetrySummaryMapper.xml index 9f41bb5e..5ab875c0 100644 --- a/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/RetrySummaryMapper.xml +++ b/snail-job-datasource/snail-job-mariadb-datasource/src/main/resources/mariadb/mapper/RetrySummaryMapper.xml @@ -106,13 +106,4 @@ LIMIT 10 - diff --git a/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/JobSummaryMapper.xml index 542b8cfd..47fa69b7 100644 --- a/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/JobSummaryMapper.xml +++ b/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/JobSummaryMapper.xml @@ -1,23 +1,6 @@ - - - - - - - - - - - - - - - - - INSERT INTO sj_job_summary (namespace_id, group_name, business_id, trigger_at, system_task_type, @@ -111,23 +94,4 @@ LIMIT 10 - - - diff --git a/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/RetrySummaryMapper.xml index 9f41bb5e..5ab875c0 100644 --- a/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/RetrySummaryMapper.xml +++ b/snail-job-datasource/snail-job-mysql-datasource/src/main/resources/mysql/mapper/RetrySummaryMapper.xml @@ -106,13 +106,4 @@ LIMIT 10 - diff --git a/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/JobSummaryMapper.xml index 768f89ed..262f69ff 100644 --- a/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/JobSummaryMapper.xml +++ b/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/JobSummaryMapper.xml @@ -1,23 +1,6 @@ - - - - - - - - - - - - - - - - - INSERT INTO sj_job_summary (namespace_id, group_name, business_id, trigger_at, system_task_type, @@ -107,13 +90,4 @@ WHERE ROWNUM 10 - diff --git a/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/RetrySummaryMapper.xml index 815f1b42..8fbbe444 100644 --- a/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/RetrySummaryMapper.xml +++ b/snail-job-datasource/snail-job-oracle-datasource/src/main/resources/oracle/mapper/RetrySummaryMapper.xml @@ -105,14 +105,4 @@ WHERE ROWNUM 10 - - diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml index 58d887a9..d8fb24ed 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml @@ -1,27 +1,10 @@ - - - - - - - - - - - - - - - - - INSERT INTO sj_job_summary (namespace_id, group_name, business_id, trigger_at, system_task_type, - success_num,fail_num,fail_reason,stop_num,stop_reason, cancel_num,cancel_reason) + success_num,fail_num,fail_reason,stop_num,stop_reason, cancel_num,cancel_reason) VALUES ( @@ -110,13 +93,4 @@ ORDER BY total DESC LIMIT 10 - diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml index c1396d1f..5bb2497d 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml @@ -103,13 +103,4 @@ ORDER BY total DESC LIMIT 10 - diff --git a/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/JobSummaryMapper.xml index 3e4738c9..cb29b6c5 100644 --- a/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/JobSummaryMapper.xml +++ b/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/JobSummaryMapper.xml @@ -1,23 +1,6 @@ - - - - - - - - - - - - - - - - - INSERT INTO sj_job_summary (namespace_id, group_name, business_id, trigger_at, system_task_type, @@ -118,24 +101,4 @@ ORDER BY name DESC - - - - - diff --git a/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/RetrySummaryMapper.xml index e7e48b3f..e849514d 100644 --- a/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/RetrySummaryMapper.xml +++ b/snail-job-datasource/snail-job-sqlserver-datasource/src/main/resources/sqlserver/mapper/RetrySummaryMapper.xml @@ -1,19 +1,6 @@ - - - - - - - - - - - - - INSERT INTO sj_retry_summary (namespace_id, group_name, scene_name, trigger_at, @@ -113,24 +100,4 @@ ORDER BY total DESC - - - - - diff --git a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/DashBoardServiceImpl.java b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/DashBoardServiceImpl.java index a7bcf980..04c8a893 100644 --- a/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/DashBoardServiceImpl.java +++ b/snail-job-server/snail-job-server-web/src/main/java/com/aizuda/snailjob/server/web/service/impl/DashBoardServiceImpl.java @@ -165,11 +165,10 @@ public class DashBoardServiceImpl implements DashBoardService { .eq(RetrySceneConfig::getNamespaceId, namespaceId) .in(CollUtil.isNotEmpty(groupNames), RetrySceneConfig::getGroupName, groupNames); - // 针对SQL Server的分页COUNT, 自定义statement ID - if (DbTypeEnum.SQLSERVER == DbUtils.getDbType()) { - pager.setSearchCount(false); - pager.setTotal(retrySummaryMapper.countRetryTask(wrapper)); - } + + // 针对 Group By 分页自定义countStatement + pager.setSearchCount(false); + pager.setTotal(retrySummaryMapper.retryTaskListCount(wrapper)); IPage page = retrySummaryMapper.retryTaskList(wrapper, pager); List taskList = JobSummaryResponseVOConverter.INSTANCE.convertList(page.getRecords()); @@ -234,11 +233,12 @@ public class DashBoardServiceImpl implements DashBoardService { .eq(Job::getDeleted, 0) .eq(Job::getNamespaceId, namespaceId) .in(CollUtil.isNotEmpty(groupNames), Job::getGroupName, groupNames); - // 针对SQL Server的分页COUNT, 自定义statement ID - if (DbTypeEnum.SQLSERVER == DbUtils.getDbType()) { - pager.setSearchCount(false); - pager.setTotal(jobSummaryMapper.countJobTask(wrapper)); - } + + // 针对 Group By 分页自定义countStatement + pager.setSearchCount(false); + pager.setTotal(SystemModeEnum.JOB.name().equals(mode) ? + jobSummaryMapper.jobTaskListCount(wrapper): + jobSummaryMapper.workflowTaskListCount(wrapper)); IPage taskIPage = SystemModeEnum.JOB.name().equals(mode) ? jobSummaryMapper.jobTaskList(wrapper, pager) : jobSummaryMapper.workflowTaskList(wrapper, pager);