This is an automated email from the ASF dual-hosted git repository.
chengjie pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-streampark.git
The following commit(s) were added to refs/heads/dev by this push:
new f512b6b9d [Improve] mybatis-plus query improvements (#4167)
f512b6b9d is described below
commit f512b6b9d0cf3ce3653920b153c9153e15640eca
Author: benjobs <[email protected]>
AuthorDate: Sat Jan 18 22:18:13 2025 +0800
[Improve] mybatis-plus query improvements (#4167)
* [Improve] mybatis-plus query impovements
* [Improve] mybatis-plus query improvement
* [Improve] mybatis-plus query improvements
* [Improve] add mybatis-plus PaginationInterceptor
* [Improve] add mybatis-plus PaginationInterceptor.java
* [Improve] trigger ci
* [Bug] spark application mapping state bug fixed.
* [Bug] yarnQueue check exists bug fixed.
* [Improve] check project-name exists improvement
* [Improve] project e2e bug fixed.
---
.../src/main/assembly/script/data/mysql-data.sql | 2 +-
.../src/main/assembly/script/data/pgsql-data.sql | 2 +-
.../console/base/config/MybatisConfig.java | 4 +-
.../mybatis/interceptor/PaginationInterceptor.java | 491 +++++++++++++++++++++
.../core/mapper/FlinkApplicationConfigMapper.java | 6 -
.../core/mapper/FlinkApplicationMapper.java | 8 -
.../console/core/mapper/FlinkCatalogMapper.java | 9 -
.../console/core/mapper/FlinkClusterMapper.java | 10 -
.../console/core/mapper/FlinkEnvMapper.java | 4 -
.../console/core/mapper/ProjectMapper.java | 11 -
.../console/core/mapper/ResourceMapper.java | 2 -
.../core/mapper/SparkApplicationConfigMapper.java | 6 -
.../core/mapper/SparkApplicationMapper.java | 13 -
.../console/core/mapper/VariableMapper.java | 5 -
.../console/core/mapper/YarnQueueMapper.java | 8 -
.../console/core/service/ProjectService.java | 4 +
.../impl/FlinkApplicationConfigServiceImpl.java | 12 +-
.../impl/FlinkApplicationInfoServiceImpl.java | 16 +-
.../impl/FlinkApplicationManageServiceImpl.java | 16 +-
.../impl/SparkApplicationConfigServiceImpl.java | 12 +-
.../impl/SparkApplicationManageServiceImpl.java | 13 +-
.../core/service/impl/FlinkCatalogServiceImpl.java | 17 +-
.../core/service/impl/FlinkClusterServiceImpl.java | 13 +-
.../core/service/impl/FlinkEnvServiceImpl.java | 9 +-
.../core/service/impl/FlinkSqlServiceImpl.java | 4 +-
.../core/service/impl/ProjectServiceImpl.java | 53 ++-
.../core/service/impl/ResourceServiceImpl.java | 3 +-
.../core/service/impl/SparkSqlServiceImpl.java | 4 +-
.../core/service/impl/VariableServiceImpl.java | 9 +-
.../core/service/impl/YarnQueueServiceImpl.java | 11 +-
.../console/system/mapper/MemberMapper.java | 16 -
.../console/system/mapper/RoleMapper.java | 6 -
.../console/system/mapper/TeamMapper.java | 6 -
.../console/system/mapper/UserMapper.java | 4 -
.../system/service/impl/MemberServiceImpl.java | 4 +-
.../system/service/impl/RoleServiceImpl.java | 4 +-
.../system/service/impl/TeamServiceImpl.java | 6 +-
.../system/service/impl/UserServiceImpl.java | 9 +-
.../src/main/resources/db/data-h2.sql | 2 +-
.../mapper/core/FlinkApplicationConfigMapper.xml | 11 -
.../mapper/core/FlinkApplicationMapper.xml | 36 --
.../resources/mapper/core/FlinkCatalogMapper.xml | 29 --
.../resources/mapper/core/FlinkClusterMapper.xml | 43 --
.../main/resources/mapper/core/FlinkEnvMapper.xml | 14 -
.../main/resources/mapper/core/ProjectMapper.xml | 60 ---
.../main/resources/mapper/core/ResourceMapper.xml | 11 -
.../mapper/core/SparkApplicationConfigMapper.xml | 11 -
.../mapper/core/SparkApplicationMapper.xml | 22 -
.../main/resources/mapper/core/VariableMapper.xml | 26 --
.../main/resources/mapper/core/YarnQueueMapper.xml | 39 --
.../main/resources/mapper/system/MemberMapper.xml | 12 -
.../main/resources/mapper/system/RoleMapper.xml | 20 -
.../main/resources/mapper/system/TeamMapper.xml | 20 -
.../main/resources/mapper/system/UserMapper.xml | 12 -
.../streampark-console-webapp/package.json | 4 +-
55 files changed, 659 insertions(+), 545 deletions(-)
diff --git
a/streampark-console/streampark-console-service/src/main/assembly/script/data/mysql-data.sql
b/streampark-console/streampark-console-service/src/main/assembly/script/data/mysql-data.sql
index ecf0edd86..1d94ec494 100644
---
a/streampark-console/streampark-console-service/src/main/assembly/script/data/mysql-data.sql
+++
b/streampark-console/streampark-console-service/src/main/assembly/script/data/mysql-data.sql
@@ -48,7 +48,7 @@ insert into `t_flink_effective` values (100000, 100000, 2,
100000, now());
-- ----------------------------
-- Records of t_flink_project
-- ----------------------------
-insert into `t_flink_project` values (100000, 100000, 'streampark-quickstart',
'https://github.com/apache/incubator-streampark-quickstart', 'release-2.0.0',
null, null, null, null, null, null, 1, 1, null, 'streampark-quickstart', -1,
now(), now());
+insert into `t_flink_project` values (100000, 100000, 'streampark-quickstart',
'https://github.com/apache/streampark-quickstart', 'release-2.0.0', null, null,
null, null, null, null, 1, 1, null, 'streampark-quickstart', -1, now(), now());
-- ----------------------------
-- Records of t_flink_sql
diff --git
a/streampark-console/streampark-console-service/src/main/assembly/script/data/pgsql-data.sql
b/streampark-console/streampark-console-service/src/main/assembly/script/data/pgsql-data.sql
index 813d1a789..46686f66b 100644
---
a/streampark-console/streampark-console-service/src/main/assembly/script/data/pgsql-data.sql
+++
b/streampark-console/streampark-console-service/src/main/assembly/script/data/pgsql-data.sql
@@ -39,7 +39,7 @@ insert into "public"."t_flink_effective" values (100000,
100000, 2, 100000, now(
-- ----------------------------
-- Records of t_flink_project
-- ----------------------------
-insert into "public"."t_flink_project" values (100000, 100000,
'streampark-quickstart',
'https://github.com/apache/incubator-streampark-quickstart', 'release-2.0.0',
null, null, null, null, null, null, 1, 1, null, 'streampark-quickstart', -1,
now(), now());
+insert into "public"."t_flink_project" values (100000, 100000,
'streampark-quickstart', 'https://github.com/apache/streampark-quickstart',
'release-2.0.0', null, null, null, null, null, null, 1, 1, null,
'streampark-quickstart', -1, now(), now());
-- ----------------------------
-- Records of t_flink_sql
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/config/MybatisConfig.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/config/MybatisConfig.java
index 82165f34b..0036ea098 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/config/MybatisConfig.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/config/MybatisConfig.java
@@ -17,6 +17,7 @@
package org.apache.streampark.console.base.config;
+import
org.apache.streampark.console.base.mybatis.interceptor.PaginationInterceptor;
import
org.apache.streampark.console.base.mybatis.interceptor.PostgreSQLPrepareInterceptor;
import
org.apache.streampark.console.base.mybatis.interceptor.PostgreSQLQueryInterceptor;
@@ -30,7 +31,6 @@ import com.baomidou.mybatisplus.core.MybatisConfiguration;
import com.baomidou.mybatisplus.core.config.GlobalConfig;
import com.baomidou.mybatisplus.core.toolkit.GlobalConfigUtils;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
-import
com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
@@ -46,7 +46,7 @@ public class MybatisConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
- interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
+ interceptor.addInnerInterceptor(new PaginationInterceptor());
return interceptor;
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/mybatis/interceptor/PaginationInterceptor.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/mybatis/interceptor/PaginationInterceptor.java
new file mode 100644
index 000000000..1101f32de
--- /dev/null
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/base/mybatis/interceptor/PaginationInterceptor.java
@@ -0,0 +1,491 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.streampark.console.base.mybatis.interceptor;
+
+import org.apache.ibatis.cache.CacheKey;
+import org.apache.ibatis.executor.Executor;
+import org.apache.ibatis.logging.Log;
+import org.apache.ibatis.logging.LogFactory;
+import org.apache.ibatis.mapping.BoundSql;
+import org.apache.ibatis.mapping.MappedStatement;
+import org.apache.ibatis.mapping.ParameterMapping;
+import org.apache.ibatis.mapping.ResultMap;
+import org.apache.ibatis.session.Configuration;
+import org.apache.ibatis.session.ResultHandler;
+import org.apache.ibatis.session.RowBounds;
+
+import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.baomidou.mybatisplus.core.toolkit.ClassUtils;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.core.toolkit.ParameterUtils;
+import com.baomidou.mybatisplus.core.toolkit.PluginUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringPool;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.inner.InnerInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.pagination.DialectFactory;
+import com.baomidou.mybatisplus.extension.plugins.pagination.DialectModel;
+import com.baomidou.mybatisplus.extension.plugins.pagination.dialects.IDialect;
+import com.baomidou.mybatisplus.extension.toolkit.JdbcUtils;
+import com.baomidou.mybatisplus.extension.toolkit.PropertyMapper;
+import com.baomidou.mybatisplus.extension.toolkit.SqlParserUtils;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import net.sf.jsqlparser.expression.Alias;
+import net.sf.jsqlparser.expression.Expression;
+import net.sf.jsqlparser.parser.CCJSqlParserUtil;
+import net.sf.jsqlparser.schema.Column;
+import net.sf.jsqlparser.schema.Table;
+import net.sf.jsqlparser.statement.select.Distinct;
+import net.sf.jsqlparser.statement.select.FromItem;
+import net.sf.jsqlparser.statement.select.GroupByElement;
+import net.sf.jsqlparser.statement.select.Join;
+import net.sf.jsqlparser.statement.select.OrderByElement;
+import net.sf.jsqlparser.statement.select.PlainSelect;
+import net.sf.jsqlparser.statement.select.Select;
+import net.sf.jsqlparser.statement.select.SelectBody;
+import net.sf.jsqlparser.statement.select.SelectExpressionItem;
+import net.sf.jsqlparser.statement.select.SelectItem;
+import net.sf.jsqlparser.statement.select.SetOperationList;
+import net.sf.jsqlparser.statement.select.SubSelect;
+import net.sf.jsqlparser.statement.select.WithItem;
+
+import java.sql.SQLException;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Properties;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.stream.Collectors;
+
+@Data
+@NoArgsConstructor
+public class PaginationInterceptor implements InnerInterceptor {
+
+ /**
+ * 获取jsqlparser中count的SelectItem
+ */
+ protected static final List<SelectItem> COUNT_SELECT_ITEM =
Collections.singletonList(
+ new SelectExpressionItem(new
Column().withColumnName("COUNT(1)")).withAlias(new Alias("total")));
+ protected static final Map<String, MappedStatement> countMsCache = new
ConcurrentHashMap<>();
+ protected final Log logger = LogFactory.getLog(this.getClass());
+
+ /**
+ * 溢出总页数后是否进行处理
+ */
+ protected boolean overflow;
+ /**
+ * 单页分页条数限制
+ */
+ protected Long maxLimit;
+ /**
+ * 数据库类型
+ * <p>
+ * 查看 {@link #findIDialect(Executor)} 逻辑
+ */
+ private DbType dbType;
+ /**
+ * 方言实现类
+ * <p>
+ * 查看 {@link #findIDialect(Executor)} 逻辑
+ */
+ private IDialect dialect;
+ /**
+ * 生成 countSql 优化掉 join
+ * 现在只支持 left join
+ *
+ * @since 3.4.2
+ */
+ protected boolean optimizeJoin = true;
+
+ /**
+ * 这里进行count,如果count为0这返回false(就是不再执行sql了)
+ */
+ @Override
+ public boolean willDoQuery(Executor executor, MappedStatement ms, Object
parameter, RowBounds rowBounds,
+ ResultHandler resultHandler, BoundSql boundSql)
throws SQLException {
+ IPage<?> page = ParameterUtils.findPage(parameter).orElse(null);
+ if (page == null || page.getSize() < 0 || !page.searchCount()) {
+ return true;
+ }
+
+ BoundSql countSql;
+ MappedStatement countMs = buildCountMappedStatement(ms,
page.countId());
+ if (countMs != null) {
+ countSql = countMs.getBoundSql(parameter);
+ } else {
+ countMs = buildAutoCountMappedStatement(ms);
+ String countSqlStr = autoCountSql(page, boundSql.getSql());
+ PluginUtils.MPBoundSql mpBoundSql =
PluginUtils.mpBoundSql(boundSql);
+ countSql = new BoundSql(countMs.getConfiguration(), countSqlStr,
mpBoundSql.parameterMappings(), parameter);
+ PluginUtils.setAdditionalParameter(countSql,
mpBoundSql.additionalParameters());
+ }
+
+ CacheKey cacheKey = executor.createCacheKey(countMs, parameter,
rowBounds, countSql);
+ List<Object> result = executor.query(countMs, parameter, rowBounds,
resultHandler, cacheKey, countSql);
+ long total = 0;
+ if (CollectionUtils.isNotEmpty(result)) {
+ // 个别数据库 count 没数据不会返回 0
+ Object o = result.get(0);
+ if (o != null) {
+ total = Long.parseLong(o.toString());
+ }
+ }
+ page.setTotal(total);
+ return continuePage(page);
+ }
+
+ @Override
+ public void beforeQuery(Executor executor, MappedStatement ms, Object
parameter, RowBounds rowBounds,
+ ResultHandler resultHandler, BoundSql boundSql) {
+ IPage<?> page = ParameterUtils.findPage(parameter).orElse(null);
+ if (null == page) {
+ return;
+ }
+
+ // 处理 orderBy 拼接
+ boolean addOrdered = false;
+ String buildSql = boundSql.getSql();
+ List<OrderItem> orders = page.orders();
+ if (CollectionUtils.isNotEmpty(orders)) {
+ addOrdered = true;
+ buildSql = this.concatOrderBy(buildSql, orders);
+ }
+
+ // size 小于 0 且不限制返回值则不构造分页sql
+ Long _limit = page.maxLimit() != null ? page.maxLimit() : maxLimit;
+ if (page.getSize() < 0 && null == _limit) {
+ if (addOrdered) {
+ PluginUtils.mpBoundSql(boundSql).sql(buildSql);
+ }
+ return;
+ }
+
+ handlerLimit(page, _limit);
+ IDialect dialect = findIDialect(executor);
+
+ final Configuration configuration = ms.getConfiguration();
+ DialectModel model = dialect.buildPaginationSql(buildSql,
page.offset(), page.getSize());
+ PluginUtils.MPBoundSql mpBoundSql = PluginUtils.mpBoundSql(boundSql);
+
+ List<ParameterMapping> mappings = mpBoundSql.parameterMappings();
+ Map<String, Object> additionalParameter =
mpBoundSql.additionalParameters();
+ model.consumers(mappings, configuration, additionalParameter);
+ mpBoundSql.sql(model.getDialectSql());
+ mpBoundSql.parameterMappings(mappings);
+ }
+
+ /**
+ * 获取分页方言类的逻辑
+ *
+ * @param executor Executor
+ * @return 分页方言类
+ */
+ protected IDialect findIDialect(Executor executor) {
+ if (dialect != null) {
+ return dialect;
+ }
+ if (dbType != null) {
+ dialect = DialectFactory.getDialect(dbType);
+ return dialect;
+ }
+ return DialectFactory.getDialect(JdbcUtils.getDbType(executor));
+ }
+
+ /**
+ * 获取指定的 id 的 MappedStatement
+ *
+ * @param ms MappedStatement
+ * @param countId id
+ * @return MappedStatement
+ */
+ protected MappedStatement buildCountMappedStatement(MappedStatement ms,
String countId) {
+ if (StringUtils.isNotBlank(countId)) {
+ final String id = ms.getId();
+ if (!countId.contains(StringPool.DOT)) {
+ countId = id.substring(0, id.lastIndexOf(StringPool.DOT) + 1)
+ countId;
+ }
+ final Configuration configuration = ms.getConfiguration();
+ try {
+ return CollectionUtils.computeIfAbsent(countMsCache, countId,
+ key -> configuration.getMappedStatement(key, false));
+ } catch (Exception e) {
+ logger.warn(String.format("can not find this countId:
[\"%s\"]", countId));
+ }
+ }
+ return null;
+ }
+
+ /**
+ * 构建 mp 自用自动的 MappedStatement
+ *
+ * @param ms MappedStatement
+ * @return MappedStatement
+ */
+ protected MappedStatement buildAutoCountMappedStatement(MappedStatement
ms) {
+ final String countId = ms.getId() + "_mpCount";
+ final Configuration configuration = ms.getConfiguration();
+ return CollectionUtils.computeIfAbsent(countMsCache, countId, key -> {
+ MappedStatement.Builder builder =
+ new MappedStatement.Builder(configuration, key,
ms.getSqlSource(), ms.getSqlCommandType());
+ builder.resource(ms.getResource());
+ builder.fetchSize(ms.getFetchSize());
+ builder.statementType(ms.getStatementType());
+ builder.timeout(ms.getTimeout());
+ builder.parameterMap(ms.getParameterMap());
+ builder.resultMaps(Collections.singletonList(
+ new ResultMap.Builder(configuration, Constants.MYBATIS_PLUS,
Long.class, Collections.emptyList())
+ .build()));
+ builder.resultSetType(ms.getResultSetType());
+ builder.cache(ms.getCache());
+ builder.flushCacheRequired(ms.isFlushCacheRequired());
+ builder.useCache(ms.isUseCache());
+ return builder.build();
+ });
+ }
+
+ /**
+ * 获取自动优化的 countSql
+ *
+ * @param page 参数
+ * @param sql sql
+ * @return countSql
+ */
+ protected String autoCountSql(IPage<?> page, String sql) {
+ if (!page.optimizeCountSql()) {
+ return lowLevelCountSql(sql);
+ }
+ try {
+ Select select = (Select) CCJSqlParserUtil.parse(sql);
+ SelectBody selectBody = select.getSelectBody();
+ // https://github.com/baomidou/mybatis-plus/issues/3920
分页增加union语法支持
+ if (selectBody instanceof SetOperationList) {
+ return lowLevelCountSql(sql);
+ }
+ PlainSelect plainSelect = (PlainSelect) select.getSelectBody();
+ Distinct distinct = plainSelect.getDistinct();
+ GroupByElement groupBy = plainSelect.getGroupBy();
+ List<OrderByElement> orderBy = plainSelect.getOrderByElements();
+
+ if (CollectionUtils.isNotEmpty(orderBy)) {
+ boolean canClean = groupBy == null;
+ // 包含groupBy 不去除orderBy
+ if (canClean) {
+ for (OrderByElement order : orderBy) {
+ // order by 里带参数,不去除order by
+ Expression expression = order.getExpression();
+ if (!(expression instanceof Column)
+ &&
expression.toString().contains(StringPool.QUESTION_MARK)) {
+ canClean = false;
+ break;
+ }
+ }
+ }
+ if (canClean) {
+ plainSelect.setOrderByElements(null);
+ }
+ }
+ // #95 Github, selectItems contains #{} ${}, which will be
translated to ?, and it may be in a function:
+ // power(#{myInt},2)
+ for (SelectItem item : plainSelect.getSelectItems()) {
+ if (item.toString().contains(StringPool.QUESTION_MARK)) {
+ return lowLevelCountSql(select.toString());
+ }
+ }
+ // 包含 distinct、groupBy不优化
+ if (distinct != null || null != groupBy) {
+ return lowLevelCountSql(select.toString());
+ }
+ // 包含 join 连表,进行判断是否移除 join 连表
+ if (optimizeJoin && page.optimizeJoinOfCountSql()) {
+ List<Join> joins = plainSelect.getJoins();
+ if (CollectionUtils.isNotEmpty(joins)) {
+ boolean canRemoveJoin = true;
+ String whereS =
Optional.ofNullable(plainSelect.getWhere()).map(Expression::toString)
+ .orElse(StringPool.EMPTY);
+ // 不区分大小写
+ whereS = whereS.toLowerCase();
+ for (Join join : joins) {
+ if (!join.isLeft()) {
+ canRemoveJoin = false;
+ break;
+ }
+ FromItem rightItem = join.getRightItem();
+ String str = "";
+ if (rightItem instanceof Table) {
+ Table table = (Table) rightItem;
+ str =
Optional.ofNullable(table.getAlias()).map(Alias::getName).orElse(table.getName())
+ + StringPool.DOT;
+ } else if (rightItem instanceof SubSelect) {
+ SubSelect subSelect = (SubSelect) rightItem;
+ /* 如果 left join 是子查询,并且子查询里包含 ?(代表有入参) 或者 where
条件里包含使用 join 的表的字段作条件,就不移除 join */
+ if
(subSelect.toString().contains(StringPool.QUESTION_MARK)) {
+ canRemoveJoin = false;
+ break;
+ }
+ str = subSelect.getAlias().getName() +
StringPool.DOT;
+ }
+ // 不区分大小写
+ str = str.toLowerCase();
+
+ if (whereS.contains(str)) {
+ /* 如果 where 条件里包含使用 join 的表的字段作条件,就不移除 join */
+ canRemoveJoin = false;
+ break;
+ }
+
+ for (Expression expression : join.getOnExpressions()) {
+ if
(expression.toString().contains(StringPool.QUESTION_MARK)) {
+ /* 如果 join 里包含 ?(代表有入参) 就不移除 join */
+ canRemoveJoin = false;
+ break;
+ }
+ }
+ }
+
+ if (canRemoveJoin) {
+ plainSelect.setJoins(null);
+ }
+ }
+ }
+ // 优化 SQL
+ plainSelect.setSelectItems(COUNT_SELECT_ITEM);
+ return select.toString();
+ } catch (Exception ignored) {
+
+ }
+ return lowLevelCountSql(sql);
+ }
+
+ /**
+ * 无法进行count优化时,降级使用此方法
+ *
+ * @param originalSql 原始sql
+ * @return countSql
+ */
+ protected String lowLevelCountSql(String originalSql) {
+ return SqlParserUtils.getOriginalCountSql(originalSql);
+ }
+
+ /**
+ * 查询SQL拼接Order By
+ *
+ * @param originalSql 需要拼接的SQL
+ * @return ignore
+ */
+ public String concatOrderBy(String originalSql, List<OrderItem> orderList)
{
+ try {
+ Select select = (Select) CCJSqlParserUtil.parse(originalSql);
+ SelectBody selectBody = select.getSelectBody();
+ if (selectBody instanceof PlainSelect) {
+ PlainSelect plainSelect = (PlainSelect) selectBody;
+ List<OrderByElement> orderByElements =
plainSelect.getOrderByElements();
+ List<OrderByElement> orderByElementsReturn =
addOrderByElements(orderList, orderByElements);
+ plainSelect.setOrderByElements(orderByElementsReturn);
+ return select.toString();
+ } else if (selectBody instanceof SetOperationList) {
+ SetOperationList setOperationList = (SetOperationList)
selectBody;
+ List<OrderByElement> orderByElements =
setOperationList.getOrderByElements();
+ List<OrderByElement> orderByElementsReturn =
addOrderByElements(orderList, orderByElements);
+ setOperationList.setOrderByElements(orderByElementsReturn);
+ return select.toString();
+ } else if (selectBody instanceof WithItem) {
+ // todo: don't known how to resole
+ return originalSql;
+ } else {
+ return originalSql;
+ }
+ } catch (Exception ignored) {
+ }
+ return originalSql;
+ }
+
+ protected List<OrderByElement> addOrderByElements(List<OrderItem>
orderList, List<OrderByElement> orderByElements) {
+ List<OrderByElement> additionalOrderBy = orderList.stream()
+ .filter(item -> StringUtils.isNotBlank(item.getColumn()))
+ .map(item -> {
+ OrderByElement element = new OrderByElement();
+ element.setExpression(new Column(item.getColumn()));
+ element.setAsc(item.isAsc());
+ element.setAscDescPresent(true);
+ return element;
+ }).collect(Collectors.toList());
+ if (CollectionUtils.isEmpty(orderByElements)) {
+ return additionalOrderBy;
+ }
+ // github pull/3550 优化排序,比如:默认 order by id 前端传了name排序,设置为 order by
name,id
+ additionalOrderBy.addAll(orderByElements);
+ return additionalOrderBy;
+ }
+
+ /**
+ * count 查询之后,是否继续执行分页
+ *
+ * @param page 分页对象
+ * @return 是否
+ */
+ protected boolean continuePage(IPage<?> page) {
+ if (page.getTotal() <= 0) {
+ return false;
+ }
+ if (page.getCurrent() > page.getPages()) {
+ if (overflow) {
+ // 溢出总页数处理
+ handlerOverflow(page);
+ } else {
+ // 超过最大范围,未设置溢出逻辑中断 list 执行
+ return false;
+ }
+ }
+ return true;
+ }
+
+ /**
+ * 处理超出分页条数限制,默认归为限制数
+ *
+ * @param page IPage
+ */
+ protected void handlerLimit(IPage<?> page, Long limit) {
+ final long size = page.getSize();
+ if (limit != null && limit > 0 && (size > limit || size < 0)) {
+ page.setSize(limit);
+ }
+ }
+
+ /**
+ * 处理页数溢出,默认设置为第一页
+ *
+ * @param page IPage
+ */
+ protected void handlerOverflow(IPage<?> page) {
+ page.setCurrent(1);
+ }
+
+ @Override
+ public void setProperties(Properties properties) {
+ PropertyMapper.newInstance(properties)
+ .whenNotBlank("overflow", Boolean::parseBoolean, this::setOverflow)
+ .whenNotBlank("dbType", DbType::getDbType, this::setDbType)
+ .whenNotBlank("dialect", ClassUtils::newInstance, this::setDialect)
+ .whenNotBlank("maxLimit", Long::parseLong, this::setMaxLimit)
+ .whenNotBlank("optimizeJoin", Boolean::parseBoolean,
this::setOptimizeJoin);
+ }
+}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationConfigMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationConfigMapper.java
index 47357c824..422c7be2b 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationConfigMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationConfigMapper.java
@@ -22,8 +22,6 @@ import
org.apache.streampark.console.core.entity.FlinkApplicationConfig;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface FlinkApplicationConfigMapper extends
BaseMapper<FlinkApplicationConfig> {
@@ -31,8 +29,4 @@ public interface FlinkApplicationConfigMapper extends
BaseMapper<FlinkApplicatio
FlinkApplicationConfig selectEffective(@Param("appId") Long appId);
- FlinkApplicationConfig selectLatest(@Param("appId") Long appId);
-
- IPage<FlinkApplicationConfig> selectPageByAppId(
-
Page<FlinkApplicationConfig> page, @Param("appId") Long appId);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationMapper.java
index ad3698dc5..3338b090c 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkApplicationMapper.java
@@ -37,8 +37,6 @@ public interface FlinkApplicationMapper extends
BaseMapper<FlinkApplication> {
List<FlinkApplication> selectAppsByTeamId(@Param("teamId") Long teamId);
- boolean mapping(@Param("app") FlinkApplication appParam);
-
List<String> selectRecentK8sNamespaces(@Param("limitSize") Integer limit);
List<String> selectRecentK8sClusterIds(
@@ -53,12 +51,6 @@ public interface FlinkApplicationMapper extends
BaseMapper<FlinkApplication> {
List<String> selectRecentK8sTmPodTemplates(@Param("limitSize") Integer
limit);
- void resetOptionState();
-
- List<FlinkApplication> selectAppsByProjectId(@Param("projectId") Long id);
-
- boolean existsRunningJobByClusterId(@Param("clusterId") Long clusterId);
-
Integer countAffectedByClusterId(
@Param("clusterId") Long clusterId,
@Param("dbType") String dbType);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkCatalogMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkCatalogMapper.java
index 1706766c1..94183ede7 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkCatalogMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkCatalogMapper.java
@@ -19,18 +19,9 @@ package org.apache.streampark.console.core.mapper;
import org.apache.streampark.console.core.entity.FlinkCatalog;
-import org.apache.ibatis.annotations.Param;
-
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/** catalog mapper */
public interface FlinkCatalogMapper extends BaseMapper<FlinkCatalog> {
- boolean existsByCatalogName(@Param("catalogName") String catalogName);
-
- FlinkCatalog selectByCatalogName(@Param("catalogName") String catalogName);
-
- IPage<FlinkCatalog> selectPage(Page<FlinkCatalog> page, @Param("catalog")
FlinkCatalog catalog);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkClusterMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkClusterMapper.java
index b8758b2c0..b2cb088bd 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkClusterMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkClusterMapper.java
@@ -19,18 +19,8 @@ package org.apache.streampark.console.core.mapper;
import org.apache.streampark.console.core.entity.FlinkCluster;
-import org.apache.ibatis.annotations.Param;
-
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface FlinkClusterMapper extends BaseMapper<FlinkCluster> {
- boolean existsByClusterId(@Param("clusterId") String clusterId,
@Param("id") Long id);
-
- boolean existsByClusterName(@Param("clusterName") String clusterName,
@Param("id") Long id);
-
- IPage<FlinkCluster> findPage(
- Page<FlinkCluster> page, @Param("cluster")
FlinkCluster flinkCluster);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkEnvMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkEnvMapper.java
index c1315404d..38fb6f6b9 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkEnvMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/FlinkEnvMapper.java
@@ -18,13 +18,10 @@
package org.apache.streampark.console.core.mapper;
import org.apache.streampark.console.core.entity.FlinkEnv;
-import org.apache.streampark.console.core.entity.Project;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface FlinkEnvMapper extends BaseMapper<FlinkEnv> {
@@ -32,5 +29,4 @@ public interface FlinkEnvMapper extends BaseMapper<FlinkEnv> {
void setDefault(@Param("id") Long id);
- IPage<FlinkEnv> findPage(Page<Project> page, @Param("flinkEnv") FlinkEnv
flinkEnv);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ProjectMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ProjectMapper.java
index c61d2bb89..54ba61262 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ProjectMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ProjectMapper.java
@@ -25,19 +25,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import java.util.List;
-
public interface ProjectMapper extends BaseMapper<Project> {
- void updateBuildState(@Param("id") Long id, @Param("state") Integer
buildState);
-
- void updateBuildTime(@Param("id") Long id);
-
IPage<Project> selectPage(Page<Project> page, @Param("project") Project
project);
- boolean existsByTeamId(@Param("teamId") Long teamId);
-
- List<Project> selectProjectsByTeamId(@Param("teamId") Long teamId);
-
- Long getBuildingCount();
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ResourceMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ResourceMapper.java
index 7906a4888..3bc5ff8d1 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ResourceMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/ResourceMapper.java
@@ -28,6 +28,4 @@ import
com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface ResourceMapper extends BaseMapper<Resource> {
IPage<Resource> selectPage(Page<Resource> page, @Param("resource")
Resource resource);
-
- boolean existsByUserId(@Param("userId") Long userId);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationConfigMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationConfigMapper.java
index 2644e7978..2f3837a33 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationConfigMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationConfigMapper.java
@@ -22,8 +22,6 @@ import
org.apache.streampark.console.core.entity.SparkApplicationConfig;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface SparkApplicationConfigMapper extends
BaseMapper<SparkApplicationConfig> {
@@ -31,8 +29,4 @@ public interface SparkApplicationConfigMapper extends
BaseMapper<SparkApplicatio
SparkApplicationConfig selectEffective(@Param("appId") Long appId);
- SparkApplicationConfig selectLatest(@Param("appId") Long appId);
-
- IPage<SparkApplicationConfig> selectPageByAppId(
-
Page<SparkApplicationConfig> page, @Param("appId") Long appId);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationMapper.java
index b45ad52fd..a19ecc541 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/SparkApplicationMapper.java
@@ -38,21 +38,8 @@ public interface SparkApplicationMapper extends
BaseMapper<SparkApplication> {
void persistMetrics(@Param("app") SparkApplication application);
- boolean mapping(@Param("app") SparkApplication appParam);
-
List<String> selectRecentK8sNamespaces(@Param("limitSize") Integer limit);
- List<String> selectRecentK8sClusterIds(
- @Param("deployMode") Integer
deployMode,
- @Param("limitSize") Integer limit);
-
List<String> selectRecentK8sPodTemplates(@Param("limitSize") Integer
limit);
- List<String> selectRecentK8sJmPodTemplates(@Param("limitSize") Integer
limit);
-
- List<String> selectRecentK8sTmPodTemplates(@Param("limitSize") Integer
limit);
-
- void resetOptionState();
-
- List<SparkApplication> selectAppsByProjectId(@Param("projectId") Long id);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
index dbb8d8e8a..ce0194ec3 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/VariableMapper.java
@@ -25,13 +25,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import java.util.List;
-
public interface VariableMapper extends BaseMapper<Variable> {
IPage<Variable> selectPage(Page<Variable> page, @Param("variable")
Variable variable);
- List<Variable> selectVarsByTeamId(@Param("teamId") Long teamId,
@Param("keyword") String keyword);
-
- boolean existsByTeamId(@Param("teamId") Long teamId);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/YarnQueueMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/YarnQueueMapper.java
index 8047f03c3..72b6bca2d 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/YarnQueueMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/mapper/YarnQueueMapper.java
@@ -19,16 +19,8 @@ package org.apache.streampark.console.core.mapper;
import org.apache.streampark.console.core.entity.YarnQueue;
-import org.apache.ibatis.annotations.Param;
-
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
/** Yarn queue mapper definition. */
public interface YarnQueueMapper extends BaseMapper<YarnQueue> {
-
- IPage<YarnQueue> selectPage(Page<YarnQueue> page, @Param("yarnQueue")
YarnQueue yarnQueue);
-
- boolean existsByQueueLabel(@Param("yarnQueue") YarnQueue yarnQueue);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/ProjectService.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/ProjectService.java
index 5e1f96dd3..206c840ed 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/ProjectService.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/ProjectService.java
@@ -166,4 +166,8 @@ public interface ProjectService extends IService<Project> {
GitAuthorizedErrorEnum gitCheck(Project project);
List<String> getAllTags(Project project);
+
+ void updateBuildTime(Long id);
+
+ void updateBuildState(Long id, int state);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationConfigServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationConfigServiceImpl.java
index b4b79e9f6..283fc8f39 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationConfigServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationConfigServiceImpl.java
@@ -188,7 +188,9 @@ public class FlinkApplicationConfigServiceImpl
@Override
public FlinkApplicationConfig getLatest(Long appId) {
- return baseMapper.selectLatest(appId);
+ return this.lambdaQuery().eq(FlinkApplicationConfig::getAppId, appId)
+ .eq(FlinkApplicationConfig::getLatest, true)
+ .one();
}
@Override
@@ -209,9 +211,13 @@ public class FlinkApplicationConfigServiceImpl
@Override
public IPage<FlinkApplicationConfig> getPage(FlinkApplicationConfig
config, RestRequest request) {
- request.setSortField("version");
Page<FlinkApplicationConfig> page = MybatisPager.getPage(request);
- IPage<FlinkApplicationConfig> configList =
this.baseMapper.selectPageByAppId(page, config.getAppId());
+
+ IPage<FlinkApplicationConfig> configList = this.lambdaQuery()
+ .eq(FlinkApplicationConfig::getAppId, config.getAppId())
+ .orderByDesc(FlinkApplicationConfig::getVersion)
+ .page(page);
+
fillEffectiveField(config.getAppId(), configList.getRecords());
return configList;
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationInfoServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationInfoServiceImpl.java
index d602eb7f4..7276bcde1 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationInfoServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationInfoServiceImpl.java
@@ -260,12 +260,16 @@ public class FlinkApplicationInfoServiceImpl extends
ServiceImpl<FlinkApplicatio
@Override
public boolean existsRunningByClusterId(Long clusterId) {
- return baseMapper.existsRunningJobByClusterId(clusterId)
- || FlinkAppHttpWatcher.getWatchingApps().stream()
- .anyMatch(
- application ->
clusterId.equals(application.getFlinkClusterId())
- && FlinkAppStateEnum.RUNNING == application
- .getStateEnum());
+ boolean exists = this.lambdaQuery()
+ .eq(FlinkApplication::getFlinkClusterId, clusterId)
+ .eq(FlinkApplication::getState,
FlinkAppStateEnum.RUNNING.getValue())
+ .exists();
+
+ return exists || FlinkAppHttpWatcher.getWatchingApps().stream()
+ .anyMatch(
+ application ->
clusterId.equals(application.getFlinkClusterId())
+ && FlinkAppStateEnum.RUNNING == application
+ .getStateEnum());
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationManageServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationManageServiceImpl.java
index c6987825a..aec454bac 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationManageServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/FlinkApplicationManageServiceImpl.java
@@ -152,7 +152,7 @@ public class FlinkApplicationManageServiceImpl extends
ServiceImpl<FlinkApplicat
@PostConstruct
public void resetOptionState() {
- this.baseMapper.resetOptionState();
+ this.lambdaUpdate().set(FlinkApplication::getOptionState,
OptionStateEnum.NONE.getValue()).update();
}
@Override
@@ -179,7 +179,15 @@ public class FlinkApplicationManageServiceImpl extends
ServiceImpl<FlinkApplicat
@Override
public boolean mapping(FlinkApplication appParam) {
- boolean mapping = this.baseMapper.mapping(appParam);
+ boolean result = this.lambdaUpdate()
+ .eq(FlinkApplication::getId, appParam.getId())
+ .set(appParam.getClusterId() != null,
FlinkApplication::getClusterId, appParam.getClusterId())
+ .set(appParam.getJobId() != null, FlinkApplication::getJobId,
appParam.getJobId())
+ .set(FlinkApplication::getEndTime, null)
+ .set(FlinkApplication::getState,
FlinkAppStateEnum.MAPPING.getValue())
+ .set(FlinkApplication::getTracking, 1)
+ .update();
+
FlinkApplication application = getById(appParam.getId());
if (application.isKubernetesModeJob()) {
// todo mark
@@ -187,7 +195,7 @@ public class FlinkApplicationManageServiceImpl extends
ServiceImpl<FlinkApplicat
} else {
FlinkAppHttpWatcher.doWatching(application);
}
- return mapping;
+ return result;
}
@Override
@@ -674,7 +682,7 @@ public class FlinkApplicationManageServiceImpl extends
ServiceImpl<FlinkApplicat
@Override
public List<FlinkApplication> listByProjectId(Long id) {
- return baseMapper.selectAppsByProjectId(id);
+ return this.lambdaQuery().eq(FlinkApplication::getProjectId,
id).list();
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationConfigServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationConfigServiceImpl.java
index a0f34601c..39b1c6e5a 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationConfigServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationConfigServiceImpl.java
@@ -196,7 +196,9 @@ public class SparkApplicationConfigServiceImpl
@Override
public SparkApplicationConfig getLatest(Long appId) {
- return baseMapper.selectLatest(appId);
+ return this.lambdaQuery().eq(SparkApplicationConfig::getAppId, appId)
+ .eq(SparkApplicationConfig::getLatest, true)
+ .one();
}
@Override
@@ -217,9 +219,13 @@ public class SparkApplicationConfigServiceImpl
@Override
public IPage<SparkApplicationConfig> getPage(SparkApplicationConfig
config, RestRequest request) {
- request.setSortField("version");
Page<SparkApplicationConfig> page = MybatisPager.getPage(request);
- IPage<SparkApplicationConfig> configList =
this.baseMapper.selectPageByAppId(page, config.getAppId());
+
+ IPage<SparkApplicationConfig> configList = this.lambdaQuery()
+ .eq(SparkApplicationConfig::getAppId, config.getAppId())
+ .orderByDesc(SparkApplicationConfig::getVersion)
+ .page(page);
+
fillEffectiveField(config.getAppId(), configList.getRecords());
return configList;
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationManageServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationManageServiceImpl.java
index 38c2c2a9a..635afa2dd 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationManageServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/application/impl/SparkApplicationManageServiceImpl.java
@@ -124,7 +124,8 @@ public class SparkApplicationManageServiceImpl
@PostConstruct
public void resetOptionState() {
- this.baseMapper.resetOptionState();
+ this.lambdaUpdate().set(SparkApplication::getOptionState,
OptionStateEnum.NONE.getValue())
+ .update();
}
@Override
@@ -151,7 +152,13 @@ public class SparkApplicationManageServiceImpl
@Override
public boolean mapping(SparkApplication appParam) {
- return this.baseMapper.mapping(appParam);
+ return this.lambdaUpdate()
+ .set(SparkApplication::getClusterId, appParam.getClusterId())
+ .set(SparkApplication::getEndTime, null)
+ .set(SparkApplication::getState,
SparkAppStateEnum.MAPPING.getValue())
+ .set(SparkApplication::getTracking, 1)
+ .eq(SparkApplication::getId, appParam.getId())
+ .update();
}
@Override
@@ -565,7 +572,7 @@ public class SparkApplicationManageServiceImpl
@Override
public List<SparkApplication> listByProjectId(Long id) {
- return baseMapper.selectAppsByProjectId(id);
+ return this.lambdaQuery().eq(SparkApplication::getProjectId,
id).list();
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkCatalogServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkCatalogServiceImpl.java
index f316d5478..3c0dfec4a 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkCatalogServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkCatalogServiceImpl.java
@@ -26,6 +26,8 @@ import org.apache.streampark.console.core.entity.FlinkCatalog;
import org.apache.streampark.console.core.mapper.FlinkCatalogMapper;
import org.apache.streampark.console.core.service.FlinkCatalogService;
+import org.apache.commons.lang3.StringUtils;
+
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -79,7 +81,14 @@ public class FlinkCatalogServiceImpl extends
ServiceImpl<FlinkCatalogMapper, Fli
catalog.getTeamId(), "The teamId can't be null. List catalog
failed.");
Page<FlinkCatalog> page = MybatisPager.getPage(request);
- this.baseMapper.selectPage(page, FlinkCatalog.of(catalog));
+
+ this.lambdaQuery()
+ .eq(FlinkCatalog::getTeamId, catalog.getTeamId())
+ .eq(StringUtils.isNotBlank(catalog.getCatalogName()),
FlinkCatalog::getCatalogName,
+ catalog.getCatalogName())
+ .eq(catalog.getUserId() != null, FlinkCatalog::getUserId,
catalog.getUserId())
+ .page(page);
+
Page<FlinkCatalogParams> paramsPage = new Page<>();
BeanUtils.copyProperties(page, paramsPage, "records");
List<FlinkCatalogParams> paramList = new ArrayList<>();
@@ -99,7 +108,7 @@ public class FlinkCatalogServiceImpl extends
ServiceImpl<FlinkCatalogMapper, Fli
@Override
public FlinkCatalog getCatalog(String catalogName) {
- return this.baseMapper.selectByCatalogName(catalogName);
+ return this.lambdaQuery().eq(FlinkCatalog::getCatalogName,
catalogName).one();
}
@Override
@@ -123,7 +132,9 @@ public class FlinkCatalogServiceImpl extends
ServiceImpl<FlinkCatalogMapper, Fli
}
public Boolean existsByCatalogName(String catalogName) {
- return this.baseMapper.existsByCatalogName(catalogName);
+ return this.lambdaQuery()
+ .eq(FlinkCatalog::getCatalogName, catalogName)
+ .exists();
}
/** validate catalog name */
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkClusterServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkClusterServiceImpl.java
index 11dba77ee..0450baba3 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkClusterServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkClusterServiceImpl.java
@@ -277,12 +277,18 @@ public class FlinkClusterServiceImpl extends
ServiceImpl<FlinkClusterMapper, Fli
@Override
public Boolean existsByClusterId(String clusterId, Long id) {
- return this.baseMapper.existsByClusterId(clusterId, id);
+ return this.lambdaQuery()
+ .eq(FlinkCluster::getClusterId, clusterId)
+ .ne(id != null, FlinkCluster::getId, id)
+ .exists();
}
@Override
public Boolean existsByClusterName(String clusterName, Long id) {
- return this.baseMapper.existsByClusterName(clusterName, id);
+ return this.lambdaQuery()
+ .eq(FlinkCluster::getClusterName, clusterName)
+ .ne(id != null, FlinkCluster::getId, id)
+ .exists();
}
@Override
@@ -329,7 +335,8 @@ public class FlinkClusterServiceImpl extends
ServiceImpl<FlinkClusterMapper, Fli
@Override
public IPage<FlinkCluster> findPage(FlinkCluster flinkCluster, RestRequest
restRequest) {
Page<FlinkCluster> page = MybatisPager.getPage(restRequest);
- return this.baseMapper.findPage(page, flinkCluster);
+ return
this.lambdaQuery().like(StringUtils.isNotBlank(flinkCluster.getClusterName()),
+ FlinkCluster::getClusterName,
flinkCluster.getClusterName()).page(page);
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkEnvServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkEnvServiceImpl.java
index d422a81be..2076fb420 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkEnvServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkEnvServiceImpl.java
@@ -21,13 +21,14 @@ import
org.apache.streampark.console.base.domain.RestRequest;
import org.apache.streampark.console.base.exception.ApiAlertException;
import org.apache.streampark.console.base.mybatis.pager.MybatisPager;
import org.apache.streampark.console.core.entity.FlinkEnv;
-import org.apache.streampark.console.core.entity.Project;
import org.apache.streampark.console.core.enums.FlinkEnvCheckEnum;
import org.apache.streampark.console.core.mapper.FlinkEnvMapper;
import org.apache.streampark.console.core.service.FlinkClusterService;
import org.apache.streampark.console.core.service.FlinkEnvService;
import
org.apache.streampark.console.core.service.application.FlinkApplicationInfoService;
+import org.apache.commons.lang3.StringUtils;
+
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -161,8 +162,10 @@ public class FlinkEnvServiceImpl extends
ServiceImpl<FlinkEnvMapper, FlinkEnv>
}
@Override
public IPage<FlinkEnv> findPage(FlinkEnv flinkEnv, RestRequest
restRequest) {
- Page<Project> page = MybatisPager.getPage(restRequest);
- return this.baseMapper.findPage(page, flinkEnv);
+ Page<FlinkEnv> page = MybatisPager.getPage(restRequest);
+ return this.lambdaQuery()
+ .like(StringUtils.isNotBlank(flinkEnv.getFlinkName()),
FlinkEnv::getFlinkName, flinkEnv.getFlinkName())
+ .page(page);
}
private void checkOrElseAlert(FlinkEnv flinkEnv) {
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkSqlServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkSqlServiceImpl.java
index 4d3096708..b45c8a951 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkSqlServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/FlinkSqlServiceImpl.java
@@ -210,9 +210,9 @@ public class FlinkSqlServiceImpl extends
ServiceImpl<FlinkSqlMapper, FlinkSql>
@Override
public IPage<FlinkSql> getPage(Long appId, RestRequest request) {
- request.setSortField("version");
Page<FlinkSql> page = MybatisPager.getPage(request);
- IPage<FlinkSql> sqlList = this.lambdaQuery().eq(FlinkSql::getAppId,
appId).page(page);
+ IPage<FlinkSql> sqlList = this.lambdaQuery().eq(FlinkSql::getAppId,
appId)
+ .orderByDesc(FlinkSql::getVersion).page(page);
FlinkSql effectiveSql = baseMapper.getEffective(appId);
if (effectiveSql != null) {
for (FlinkSql sql : sqlList.getRecords()) {
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ProjectServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ProjectServiceImpl.java
index 47bd24f4a..220f8d187 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ProjectServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ProjectServiceImpl.java
@@ -32,7 +32,6 @@ import
org.apache.streampark.console.base.exception.ApiDetailException;
import org.apache.streampark.console.base.mybatis.pager.MybatisPager;
import org.apache.streampark.console.base.util.GZipUtils;
import org.apache.streampark.console.base.util.GitUtils;
-import org.apache.streampark.console.base.util.ObjectUtils;
import org.apache.streampark.console.core.entity.FlinkApplication;
import org.apache.streampark.console.core.entity.Project;
import org.apache.streampark.console.core.enums.BuildStateEnum;
@@ -44,6 +43,7 @@ import
org.apache.streampark.console.core.service.application.FlinkApplicationMa
import org.apache.streampark.console.core.task.ProjectBuildTask;
import org.apache.streampark.console.core.watcher.FlinkAppHttpWatcher;
+import org.apache.commons.lang3.StringUtils;
import org.apache.flink.configuration.MemorySize;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -116,13 +116,6 @@ public class ProjectServiceImpl extends
ServiceImpl<ProjectMapper, Project>
@Override
public boolean checkExists(Project project) {
- if (project.getId() != null) {
- Project proj = getById(project.getId());
- if (proj != null && ObjectUtils.safeEquals(project.getName(),
proj.getName())) {
- return false;
- }
- }
-
return this.lambdaQuery()
.eq(Project::getName, project.getName())
.eq(Project::getTeamId, project.getTeamId())
@@ -195,37 +188,51 @@ public class ProjectServiceImpl extends
ServiceImpl<ProjectMapper, Project>
@Override
public IPage<Project> getPage(Project project, RestRequest request) {
Page<Project> page = MybatisPager.getPage(request);
- return this.baseMapper.selectPage(page, project);
+ this.lambdaQuery()
+ .eq(Project::getTeamId, project.getTeamId())
+ .like(StringUtils.isNotBlank(project.getName()), Project::getName,
project.getName())
+ .eq(project.getBuildState() != null, Project::getBuildState,
project.getBuildState())
+ .page(page);
+ return page;
}
@Override
public Boolean existsByTeamId(Long teamId) {
- return this.baseMapper.existsByTeamId(teamId);
+ return this.lambdaQuery()
+ .eq(Project::getTeamId, teamId)
+ .exists();
}
@Override
public List<Project> listByTeamId(Long teamId) {
- return this.baseMapper.selectProjectsByTeamId(teamId);
+ return this.lambdaQuery().eq(Project::getTeamId, teamId)
+ .list();
}
@Override
public void build(Long id) throws Exception {
- Long currentBuildCount = this.baseMapper.getBuildingCount();
+
+ Long currentBuildCount = this.lambdaQuery()
+ .eq(Project::getBuildState, BuildStateEnum.BUILDING.get())
+ .count();
+
ApiAlertException.throwIfTrue(
maxProjectBuildNum > -1 && currentBuildCount > maxProjectBuildNum,
String.format(
"The number of running Build projects exceeds the maximum
number: %d of max-build-num",
maxProjectBuildNum));
Project project = getById(id);
- this.baseMapper.updateBuildState(project.getId(),
BuildStateEnum.BUILDING.get());
+
+ this.updateBuildState(project.getId(), BuildStateEnum.BUILDING.get());
+
String logPath = getBuildLogPath(id);
ProjectBuildTask projectBuildTask = new ProjectBuildTask(
logPath,
project,
buildStateEnum -> {
- baseMapper.updateBuildState(id, buildStateEnum.get());
+ this.updateBuildState(id, buildStateEnum.get());
if (buildStateEnum == BuildStateEnum.SUCCESSFUL) {
- baseMapper.updateBuildTime(id);
+ this.updateBuildTime(id);
}
flinkAppHttpWatcher.init();
},
@@ -445,6 +452,22 @@ public class ProjectServiceImpl extends
ServiceImpl<ProjectMapper, Project>
}
}
+ @Override
+ public void updateBuildTime(Long id) {
+ this.lambdaUpdate()
+ .eq(Project::getId, id)
+ .set(Project::getLastBuild, new Date())
+ .update();
+ }
+
+ @Override
+ public void updateBuildState(Long id, int state) {
+ this.lambdaUpdate()
+ .eq(Project::getId, id)
+ .set(Project::getBuildState, state)
+ .update();
+ }
+
private Project remakeProject(Project project) {
if (Objects.nonNull(project.getId())) {
return this.baseMapper.selectById(project.getId());
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ResourceServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ResourceServiceImpl.java
index 4cfe80093..b0139f7d6 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ResourceServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/ResourceServiceImpl.java
@@ -123,7 +123,8 @@ public class ResourceServiceImpl extends
ServiceImpl<ResourceMapper, Resource>
*/
@Override
public boolean existsByUserId(Long userId) {
- return this.baseMapper.existsByUserId(userId);
+ return this.lambdaQuery().eq(Resource::getCreatorId, userId)
+ .exists();
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/SparkSqlServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/SparkSqlServiceImpl.java
index 167f6d5a8..e776b73d9 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/SparkSqlServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/SparkSqlServiceImpl.java
@@ -209,9 +209,9 @@ public class SparkSqlServiceImpl extends
ServiceImpl<SparkSqlMapper, SparkSql>
@Override
public IPage<SparkSql> getPage(Long appId, RestRequest request) {
- request.setSortField("version");
Page<SparkSql> page = MybatisPager.getPage(request);
- IPage<SparkSql> sqlList = this.lambdaQuery().eq(SparkSql::getAppId,
appId).page(page);
+ IPage<SparkSql> sqlList = this.lambdaQuery().eq(SparkSql::getAppId,
appId)
+ .orderByDesc(SparkSql::getVersion).page(page);
SparkSql effectiveSql = baseMapper.getEffective(appId);
if (effectiveSql != null) {
for (SparkSql sql : sqlList.getRecords()) {
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
index be0ff0bad..ee9695a83 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/VariableServiceImpl.java
@@ -169,7 +169,11 @@ public class VariableServiceImpl extends
ServiceImpl<VariableMapper, Variable>
*/
@Override
public List<Variable> listByTeamId(Long teamId, String keyword) {
- return baseMapper.selectVarsByTeamId(teamId, keyword);
+ return this.lambdaQuery().eq(Variable::getTeamId, teamId)
+ .and(StringUtils.isNotBlank(keyword), c ->
c.like(Variable::getVariableCode, keyword)
+ .or()
+ .like(Variable::getDescription, keyword))
+ .list();
}
/**
@@ -255,6 +259,7 @@ public class VariableServiceImpl extends
ServiceImpl<VariableMapper, Variable>
@Override
public boolean existsByTeamId(Long teamId) {
- return this.baseMapper.existsByTeamId(teamId);
+ return this.lambdaQuery().eq(Variable::getTeamId, teamId)
+ .exists();
}
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/YarnQueueServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/YarnQueueServiceImpl.java
index 0fcc3ff06..fe07f3e95 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/YarnQueueServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/core/service/impl/YarnQueueServiceImpl.java
@@ -78,8 +78,12 @@ public class YarnQueueServiceImpl extends
ServiceImpl<YarnQueueMapper, YarnQueue
AssertUtils.notNull(yarnQueue, "Yarn queue query params mustn't be
null.");
AssertUtils.notNull(
yarnQueue.getTeamId(), "Team id of yarn queue query params mustn't
be null.");
+
Page<YarnQueue> page = MybatisPager.getPage(request);
- return this.baseMapper.selectPage(page, yarnQueue);
+ return this.lambdaQuery().eq(yarnQueue.getTeamId() != null,
YarnQueue::getTeamId, yarnQueue.getTeamId())
+ .like(StringUtils.isNotBlank(yarnQueue.getQueueLabel()),
YarnQueue::getQueueLabel,
+ yarnQueue.getQueueLabel())
+ .page(page);
}
/**
@@ -108,7 +112,10 @@ public class YarnQueueServiceImpl extends
ServiceImpl<YarnQueueMapper, YarnQueue
return responseResult;
}
- boolean existed = this.baseMapper.existsByQueueLabel(yarnQueue);
+ boolean existed = this.lambdaQuery().eq(YarnQueue::getTeamId,
yarnQueue.getTeamId())
+ .eq(YarnQueue::getQueueLabel, yarnQueue.getQueueLabel())
+ .ne(yarnQueue.getId() != null, YarnQueue::getId, yarnQueue.getId())
+ .exists();
if (existed) {
responseResult.setStatus(1);
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/MemberMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/MemberMapper.java
index 8669336d9..9893db1ae 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/MemberMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/MemberMapper.java
@@ -30,22 +30,6 @@ import java.util.List;
public interface MemberMapper extends BaseMapper<Member> {
- /**
- * delete role by user id
- *
- * @param userId user id
- * @return boolean
- */
- boolean deleteByUserId(@Param("userId") Long userId);
-
- /**
- * delete user by role id
- *
- * @param roleId role id
- * @return boolean
- */
- boolean deleteByRoleId(@Param("roleId") Long roleId);
-
IPage<Member> selectPage(Page<Member> page, @Param("member") Member
member);
List<User> selectUsersNotInTeam(@Param("teamId") Long teamId);
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/RoleMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/RoleMapper.java
index 1039c8198..0e6aab877 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/RoleMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/RoleMapper.java
@@ -19,13 +19,7 @@ package org.apache.streampark.console.system.mapper;
import org.apache.streampark.console.system.entity.Role;
-import org.apache.ibatis.annotations.Param;
-
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface RoleMapper extends BaseMapper<Role> {
-
- IPage<Role> selectPage(Page<Role> page, @Param("role") Role role);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/TeamMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/TeamMapper.java
index 6beabd0b2..16a572260 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/TeamMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/TeamMapper.java
@@ -19,17 +19,11 @@ package org.apache.streampark.console.system.mapper;
import org.apache.streampark.console.system.entity.Team;
-import org.apache.ibatis.annotations.Param;
-
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
public interface TeamMapper extends BaseMapper<Team> {
- IPage<Team> selectPage(Page<Team> page, @Param("team") Team team);
-
List<Team> selectTeamsByUserId(Long userId);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/UserMapper.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/UserMapper.java
index d43a679a2..bfc72b509 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/UserMapper.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/mapper/UserMapper.java
@@ -34,8 +34,4 @@ public interface UserMapper extends BaseMapper<User> {
List<User> selectNoTokenUsers();
List<User> selectUsersByAppOwner(@Param("teamId") Long teamId);
-
- void clearLastTeamByUserId(@Param("userId") Long userId);
-
- void clearLastTeamByTeamId(@Param("teamId") Long teamId);
}
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/MemberServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/MemberServiceImpl.java
index 45c027ddc..e7ea0de90 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/MemberServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/MemberServiceImpl.java
@@ -58,13 +58,13 @@ public class MemberServiceImpl extends
ServiceImpl<MemberMapper, Member> impleme
@Override
@Transactional
public void removeByRoleIds(String[] roleIds) {
- Arrays.stream(roleIds).forEach(id ->
baseMapper.deleteByRoleId(Long.valueOf(id)));
+ this.lambdaUpdate().in(Member::getRoleId,
Arrays.asList(roleIds)).remove();
}
@Override
@Transactional
public void removeByUserId(Long userId) {
- baseMapper.deleteByUserId(userId);
+ this.lambdaUpdate().eq(Member::getUserId, userId).remove();
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/RoleServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/RoleServiceImpl.java
index c841c5f7b..eefb80b8a 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/RoleServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/RoleServiceImpl.java
@@ -63,7 +63,9 @@ public class RoleServiceImpl extends ServiceImpl<RoleMapper,
Role> implements Ro
@Override
public IPage<Role> getPage(Role role, RestRequest request) {
Page<Role> page = MybatisPager.getPage(request);
- return this.baseMapper.selectPage(page, role);
+ return this.lambdaQuery()
+ .like(StringUtils.isNotBlank(role.getRoleName()),
Role::getRoleName, role.getRoleName())
+ .page(page);
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/TeamServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/TeamServiceImpl.java
index d40ee2741..0820c5ba9 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/TeamServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/TeamServiceImpl.java
@@ -33,6 +33,8 @@ import
org.apache.streampark.console.system.service.MemberService;
import org.apache.streampark.console.system.service.TeamService;
import org.apache.streampark.console.system.service.UserService;
+import org.apache.commons.lang3.StringUtils;
+
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -68,7 +70,9 @@ public class TeamServiceImpl extends ServiceImpl<TeamMapper,
Team> implements Te
@Override
public IPage<Team> getPage(Team team, RestRequest request) {
Page<Team> page = MybatisPager.getPage(request);
- return this.baseMapper.selectPage(page, team);
+ return this.lambdaQuery()
+ .like(StringUtils.isNotBlank(team.getTeamName()),
Team::getTeamName, team.getTeamName())
+ .page(page);
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/UserServiceImpl.java
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/UserServiceImpl.java
index dc2095ee6..383dfba80 100644
---
a/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/UserServiceImpl.java
+++
b/streampark-console/streampark-console-service/src/main/java/org/apache/streampark/console/system/service/impl/UserServiceImpl.java
@@ -216,12 +216,17 @@ public class UserServiceImpl extends
ServiceImpl<UserMapper, User> implements Us
if (!teamId.equals(user.getLastTeamId())) {
return;
}
- this.baseMapper.clearLastTeamByUserId(userId);
+ this.lambdaUpdate()
+ .eq(User::getUserId, userId)
+ .set(User::getLastTeamId, null)
+ .update();
}
@Override
public void clearLastTeam(Long teamId) {
- this.baseMapper.clearLastTeamByTeamId(teamId);
+ this.lambdaUpdate().eq(User::getLastTeamId, teamId)
+ .set(User::getLastTeamId, null)
+ .update();
}
@Override
diff --git
a/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql
b/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql
index 5e5bb79c0..d76d1ede5 100644
---
a/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql
+++
b/streampark-console/streampark-console-service/src/main/resources/db/data-h2.sql
@@ -44,7 +44,7 @@ insert into `t_flink_effective` values (100000, 100000, 2,
100000, now());
-- ----------------------------
-- Records of t_flink_project
-- ----------------------------
-insert into `t_flink_project` values (100000, 100000, 'streampark-quickstart',
'https://github.com/apache/incubator-streampark-quickstart', 'dev', null, null,
null, null, null, null, 1, 1, null, 'streampark-quickstart', -1, now(), now());
+insert into `t_flink_project` values (100000, 100000, 'streampark-quickstart',
'https://github.com/apache/streampark-quickstart', 'dev', null, null, null,
null, null, null, 1, 1, null, 'streampark-quickstart', -1, now(), now());
-- ----------------------------
-- Records of t_flink_sql
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationConfigMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationConfigMapper.xml
index fb1829b1e..06365d4a0 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationConfigMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationConfigMapper.xml
@@ -19,13 +19,6 @@
<mapper
namespace="org.apache.streampark.console.core.mapper.FlinkApplicationConfigMapper">
- <select id="selectLatest"
resultType="org.apache.streampark.console.core.entity.FlinkApplicationConfig"
parameterType="java.lang.Long">
- select *
- from t_flink_config
- where app_id=#{appId}
- and latest=true
- </select>
-
<select id="selectLastVersion" resultType="java.lang.Integer"
parameterType="java.lang.Long">
select max(`version`) as lastVersion
from t_flink_config
@@ -41,9 +34,5 @@
and e.target_type = 1
</select>
- <select id="selectPageByAppId"
resultType="org.apache.streampark.console.core.entity.FlinkApplicationConfig"
parameterType="java.lang.Long">
- select * from t_flink_config
- where app_id=#{appId}
- </select>
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationMapper.xml
index 045d6b112..0c567e6d0 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkApplicationMapper.xml
@@ -18,22 +18,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.streampark.console.core.mapper.FlinkApplicationMapper">
- <update id="resetOptionState">
- update t_flink_app
- set option_state = 0
- </update>
-
- <select id="existsRunningJobByClusterId" resultType="java.lang.Boolean"
parameterType="java.lang.Long">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_flink_app
- where flink_cluster_id = #{clusterId}
- and state = 5
- limit 1
- </select>
-
<select id="countAffectedByClusterId" resultType="java.lang.Integer"
parameterType="java.lang.Long">
select
count(1)
@@ -52,10 +36,6 @@
limit 1
</select>
- <select id="selectAppsByProjectId"
resultType="org.apache.streampark.console.core.entity.FlinkApplication"
parameterType="java.lang.Long">
- select * from t_flink_app where project_id=#{projectId}
- </select>
-
<select id="selectPage"
resultType="org.apache.streampark.console.core.entity.FlinkApplication"
parameterType="org.apache.streampark.console.core.entity.FlinkApplication">
select
t.*,
@@ -205,22 +185,6 @@
where t.team_id=#{teamId}
</select>
- <update id="mapping"
parameterType="org.apache.streampark.console.core.entity.FlinkApplication">
- update t_flink_app
- <set>
- <if test="app.clusterId != null">
- cluster_id=#{app.clusterId},
- </if>
- <if test="app.jobId != null">
- job_id=#{app.jobId},
- </if>
- end_time=null,
- state=14,
- tracking=1
- </set>
- where id=#{app.id}
- </update>
-
<select id="selectRecentK8sNamespaces" resultType="java.lang.String"
parameterType="java.lang.Integer">
select k8s_namespace
from (
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkCatalogMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkCatalogMapper.xml
index d5de6876f..834d52c91 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkCatalogMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkCatalogMapper.xml
@@ -17,34 +17,5 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.streampark.console.core.mapper.FlinkCatalogMapper">
- <select id="existsByCatalogName" resultType="java.lang.Boolean"
parameterType="java.lang.String">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_flink_catalog
- where catalog_name = #{catalogName}
- limit 1
- </select>
- <select id="selectByCatalogName"
resultType="org.apache.streampark.console.core.entity.FlinkCatalog"
parameterType="java.lang.String">
- select
- *
- from t_flink_catalog
- where catalog_name = #{catalogName}
- limit 1
- </select>
-
- <select id="selectPage"
resultType="org.apache.streampark.console.core.entity.FlinkCatalog"
parameterType="org.apache.streampark.console.core.entity.FlinkCatalog">
- select * from t_flink_catalog
- <where>
- team_id = #{catalog.teamId}
- <if test="catalog.catalogName != null and catalog.catalogName !=
''">
- and catalog_name = #{catalog.catalogName}
- </if>
- <if test="catalog.userId != null and catalog.userId != ''">
- and user_id = #{catalog.userId}
- </if>
- </where>
- </select>
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkClusterMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkClusterMapper.xml
index ade85d8cf..4b0cd2aea 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkClusterMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkClusterMapper.xml
@@ -17,48 +17,5 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.streampark.console.core.mapper.FlinkClusterMapper">
- <select id="findPage"
resultType="org.apache.streampark.console.core.entity.FlinkCluster">
- select * from t_flink_cluster
- <where>
- <if test="cluster.clusterName != null and cluster.clusterName !=
''">
- <if test="_databaseId == 'mysql'">
- and cluster_name like concat('%',
#{cluster.clusterName},'%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and cluster_name like '%' || #{cluster.clusterName} || '%'
- </if>
- </if>
- </where>
- </select>
-
- <select id="existsByClusterId" resultType="java.lang.Boolean"
parameterType="java.lang.String">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_flink_cluster
- <where>
- cluster_id=#{clusterId}
- <if test="id != null">
- and id <> #{id}
- </if>
- </where>
- limit 1
- </select>
-
- <select id="existsByClusterName" resultType="java.lang.Boolean"
parameterType="java.util.Map">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_flink_cluster
- <where>
- cluster_name=#{clusterName}
- <if test="id != null">
- and id <> #{id}
- </if>
- </where>
- limit 1
- </select>
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkEnvMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkEnvMapper.xml
index 7757311b8..306d1e1f7 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkEnvMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/FlinkEnvMapper.xml
@@ -17,20 +17,6 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.apache.streampark.console.core.mapper.FlinkEnvMapper">
- <select id="findPage"
resultType="org.apache.streampark.console.core.entity.FlinkEnv">
- select * from t_flink_env
- <where>
- <if test="flinkEnv.flinkName != null and flinkEnv.flinkName != ''">
- <if test="_databaseId == 'mysql'">
- and flink_name like concat('%', #{flinkEnv.flinkName},'%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and flink_name like '%' || #{flinkEnv.flinkName} || '%'
- </if>
- </if>
- </where>
- </select>
-
<select id="selectByAppId"
resultType="org.apache.streampark.console.core.entity.FlinkEnv"
parameterType="java.lang.Long">
select v.*
from t_flink_env v
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/ProjectMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/ProjectMapper.xml
index ade3437a8..0220644bd 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/ProjectMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/ProjectMapper.xml
@@ -18,64 +18,4 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.apache.streampark.console.core.mapper.ProjectMapper">
- <select id="existsByTeamId" resultType="java.lang.Boolean"
parameterType="java.lang.Long">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_flink_project
- where team_id = #{teamId}
- limit 1
- </select>
-
- <select id="existsByUserId" resultType="java.lang.Boolean"
parameterType="java.lang.String">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_flink_project
- where user_id = #{userId}
- limit 1
- </select>
-
- <select id="selectProjectsByTeamId"
resultType="org.apache.streampark.console.core.entity.Project"
parameterType="java.lang.Long">
- select *
- from t_flink_project
- where team_id = #{teamId}
- </select>
-
- <update id="updateBuildState" parameterType="java.util.Map">
- update t_flink_project
- set build_state = #{state}
- where id = #{id}
- </update>
-
- <update id="updateBuildTime" parameterType="java.lang.Long">
- update t_flink_project
- set last_build = now()
- where id = #{id}
- </update>
-
- <select id="selectPage"
resultType="org.apache.streampark.console.core.entity.Project"
parameterType="org.apache.streampark.console.core.entity.Project">
- select *
- from t_flink_project t
- <where>
- t.team_id = #{project.teamId}
- <if test="project.name != null and project.name != ''">
- <if test="_databaseId == 'mysql'">
- and t.name like concat('%', #{project.name},'%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and t.name like '%' || #{project.name} || '%'
- </if>
- </if>
- <if test="project.buildState != null">
- and t.build_state = #{project.buildState}
- </if>
- </where>
- </select>
- <select id="getBuildingCount" resultType="java.lang.Long">
- select count(1) from t_flink_project where build_state = 0
- </select>
-
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/ResourceMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/ResourceMapper.xml
index af7d50543..6d0bbaa77 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/ResourceMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/ResourceMapper.xml
@@ -43,15 +43,4 @@
</if>
</select>
- <select id="existsByUserId" resultType="java.lang.Boolean"
parameterType="java.lang.Long">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_resource
- where creator_id = #{userId}
- limit 1
- </select>
-
-
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationConfigMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationConfigMapper.xml
index f1a5edf6d..3ddde3d4e 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationConfigMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationConfigMapper.xml
@@ -18,12 +18,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.streampark.console.core.mapper.SparkApplicationConfigMapper">
- <select id="selectLatest"
resultType="org.apache.streampark.console.core.entity.SparkApplicationConfig"
parameterType="java.lang.Long">
- select *
- from t_spark_config
- where app_id=#{appId}
- and latest=true
- </select>
<select id="selectLastVersion" resultType="java.lang.Integer"
parameterType="java.lang.Long">
select max(`version`) as lastVersion
@@ -40,9 +34,4 @@
and e.target_type = 3
</select>
- <select id="selectPageByAppId"
resultType="org.apache.streampark.console.core.entity.SparkApplicationConfig"
parameterType="java.lang.Long">
- select * from t_spark_config
- where app_id=#{appId}
- </select>
-
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationMapper.xml
index 40e76f06a..2e7c6dd14 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/SparkApplicationMapper.xml
@@ -17,15 +17,6 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace="org.apache.streampark.console.core.mapper.SparkApplicationMapper">
- <update id="resetOptionState">
- update t_spark_app
- set option_state = 0
- </update>
-
-
- <select id="selectAppsByProjectId"
resultType="org.apache.streampark.console.core.entity.SparkApplication"
parameterType="java.lang.Long">
- select * from t_spark_app where project_id=#{projectId}
- </select>
<select id="selectPage"
resultType="org.apache.streampark.console.core.entity.SparkApplication"
parameterType="org.apache.streampark.console.core.entity.SparkApplication">
select
@@ -99,19 +90,6 @@
where t.team_id=#{teamId}
</select>
- <update id="mapping"
parameterType="org.apache.streampark.console.core.entity.SparkApplication">
- update t_spark_app
- <set>
- <if test="app.cluster_id != null">
- cluster_id=#{app.clusterId},
- </if>
- end_time=null,
- state=14,
- tracking=1
- </set>
- where id=#{app.id}
- </update>
-
<select id="selectRecentK8sNamespaces" resultType="java.lang.String"
parameterType="java.lang.Integer">
select k8s_namespace
from (
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
index 07cd64d90..9158f8c0c 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/VariableMapper.xml
@@ -43,30 +43,4 @@
</if>
</select>
- <select id="existsByTeamId" resultType="java.lang.Boolean"
parameterType="java.lang.Long">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_variable
- where team_id = #{teamId}
- limit 1
- </select>
-
- <select id="selectVarsByTeamId"
resultType="org.apache.streampark.console.core.entity.Variable">
- select *
- from t_variable
- <where>
- team_id = #{teamId}
- <if test="keyword != null and keyword != ''">
- <if test="_databaseId == 'mysql'">
- and variable_code like concat('%', #{keyword}, '%') or
description like concat('%', #{keyword}, '%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and variable_code like '%' || #{keyword} || '%' or
description like '%' || #{keyword} || '%'
- </if>
- </if>
- </where>
- </select>
-
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/YarnQueueMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/YarnQueueMapper.xml
index 1c9754144..600c88391 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/core/YarnQueueMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/core/YarnQueueMapper.xml
@@ -17,44 +17,5 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.apache.streampark.console.core.mapper.YarnQueueMapper">
- <select id="selectPage"
resultType="org.apache.streampark.console.core.entity.YarnQueue">
- select * from t_yarn_queue
- <where>
- <if test="yarnQueue.teamId != null">
- team_id = #{yarnQueue.teamId}
- </if>
- <if test="yarnQueue.queueLabel != null and yarnQueue.queueLabel !=
''">
- <if test="_databaseId == 'mysql'">
- and queue_label like concat('%',
#{yarnQueue.queueLabel},'%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and queue_label like '%' || #{yarnQueue.queueLabel} || '%'
- </if>
- </if>
- <if test="yarnQueue.createTimeFrom != null and
yarnQueue.createTimeFrom !=''">
- and create_time > #{yarnQueue.createTimeFrom}
- </if>
- <if test="yarnQueue.createTimeTo!= null and yarnQueue.createTimeTo
!=''">
- and create_time < #{yarnQueue.createTimeTo}
- </if>
- </where>
- </select>
-
- <select id="existsByQueueLabel" resultType="java.lang.Boolean"
parameterType="org.apache.streampark.console.core.entity.YarnQueue">
- select
- CASE
- WHEN count(1) > 0 THEN true ELSE false
- END
- from t_yarn_queue
- <where>
- team_id = #{yarnQueue.teamId}
- and
- queue_label = #{yarnQueue.queueLabel}
- <if test="yarnQueue.id != null">
- and id <> #{yarnQueue.id}
- </if>
- </where>
- limit 1
- </select>
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/MemberMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/MemberMapper.xml
index dc2c633bc..03aba47f3 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/MemberMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/MemberMapper.xml
@@ -18,18 +18,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.apache.streampark.console.system.mapper.MemberMapper">
- <delete id="deleteByUserId">
- delete
- from t_member
- where user_id = #{userId}
- </delete>
-
- <delete id="deleteByRoleId">
- delete
- from t_member
- where role_id = #{roleId}
- </delete>
-
<select id="selectPage"
resultType="org.apache.streampark.console.system.entity.Member"
parameterType="org.apache.streampark.console.system.entity.Member">
select tur.*,
u.username,
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/RoleMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/RoleMapper.xml
index 6868610a0..1b307870c 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/RoleMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/RoleMapper.xml
@@ -17,24 +17,4 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.apache.streampark.console.system.mapper.RoleMapper">
- <select id="selectPage"
resultType="org.apache.streampark.console.system.entity.Role"
parameterType="org.apache.streampark.console.system.entity.Role">
- select * from t_role
- <where>
- <if test="role.roleName != null and role.roleName != ''">
- <if test="_databaseId == 'mysql'">
- and role_name like concat('%', #{role.roleName},'%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and role_name like '%' || #{role.roleName} || '%'
- </if>
- </if>
- <if test="role.createTimeFrom != null and role.createTimeFrom
!=''">
- and create_time > #{role.createTimeFrom}
- </if>
- <if test="role.createTimeTo!= null and role.createTimeTo !=''">
- and create_time < #{role.createTimeTo}
- </if>
- </where>
- </select>
-
</mapper>
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/TeamMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/TeamMapper.xml
index 0188161ea..38cb61997 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/TeamMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/TeamMapper.xml
@@ -17,26 +17,6 @@
-->
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.apache.streampark.console.system.mapper.TeamMapper">
- <select id="selectPage"
resultType="org.apache.streampark.console.system.entity.Team"
parameterType="org.apache.streampark.console.system.entity.Team">
- select * from t_team
- <where>
- <if test="team.teamName != null and team.teamName != ''">
- <if test="_databaseId == 'mysql'">
- and team_name like concat('%', #{team.teamName},'%')
- </if>
- <if test="_databaseId == 'pgsql'">
- and team_name like '%' || #{team.teamName} || '%'
- </if>
- </if>
- <if test="team.createTimeFrom != null and team.createTimeFrom
!=''">
- and create_time > #{team.createTimeFrom}
- </if>
- <if test="team.createTimeTo!= null and team.createTimeTo !=''">
- and create_time < #{team.createTimeTo}
- </if>
- </where>
- </select>
-
<select id="selectTeamsByUserId"
resultType="org.apache.streampark.console.system.entity.Team"
parameterType="org.apache.streampark.console.system.entity.Team">
select t.* from t_team t
join t_member m
diff --git
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/UserMapper.xml
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/UserMapper.xml
index 6f311094f..e61d65de2 100644
---
a/streampark-console/streampark-console-service/src/main/resources/mapper/system/UserMapper.xml
+++
b/streampark-console/streampark-console-service/src/main/resources/mapper/system/UserMapper.xml
@@ -102,16 +102,4 @@
on u.user_id = t.user_id
</select>
- <update id="clearLastTeamByUserId" parameterType="java.lang.Long">
- update t_user
- set last_team_id = null
- where user_id = #{userId}
- </update>
-
- <update id="clearLastTeamByTeamId" parameterType="java.lang.Long">
- update t_user
- set last_team_id = null
- where last_team_id = #{teamId}
- </update>
-
</mapper>
diff --git a/streampark-console/streampark-console-webapp/package.json
b/streampark-console/streampark-console-webapp/package.json
index b1ee23fef..9e3ce9bac 100644
--- a/streampark-console/streampark-console-webapp/package.json
+++ b/streampark-console/streampark-console-webapp/package.json
@@ -8,11 +8,11 @@
"packageManager": "[email protected]",
"repository": {
"type": "git",
- "url": "git+https://github.com/apache/incubator-streampark.git"
+ "url": "git+https://github.com/apache/streampark.git"
},
"license": "Apache-2.0 license",
"bugs": {
- "url": "https://github.com/apache/incubator-streampark/issues"
+ "url": "https://github.com/apache/streampark/issues"
},
"homepage": "https://streampark.apache.org",
"scripts": {