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 2c3129fbea..18036f198a 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 @@ -782,6 +782,7 @@ public FlinkApplication getApp(Long id) { setAppDurationIfNeeded(application, now); } + application.setAppControl(getAppControl(application)); application.setYarnQueueByHotParams(); return application; 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 e2e00b4220..86a9f9c2c6 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 @@ -228,20 +228,7 @@ record -> { if (pipeStates.containsKey(record.getId())) { record.setBuildStatus(pipeStates.get(record.getId()).getCode()); } - - AppControl appControl = new AppControl() - .setAllowBuild( - record.getBuildStatus() == null - || !PipelineStatusEnum.running - .getCode() - .equals(record.getBuildStatus())) - .setAllowStart( - !record.shouldTracking() - && PipelineStatusEnum.success - .getCode() - .equals(record.getBuildStatus())) - .setAllowStop(record.isRunning()) - .setAllowView(record.shouldTracking()); + AppControl appControl = getAppControl(record); record.setAppControl(appControl); }) .collect(Collectors.toList()); @@ -249,6 +236,22 @@ record -> { return page; } + private AppControl getAppControl(SparkApplication record) { + return new AppControl() + .setAllowBuild( + record.getBuildStatus() == null + || !PipelineStatusEnum.running + .getCode() + .equals(record.getBuildStatus())) + .setAllowStart( + !record.shouldTracking() + && PipelineStatusEnum.success + .getCode() + .equals(record.getBuildStatus())) + .setAllowStop(record.isRunning()) + .setAllowView(record.shouldTracking()); + } + @Override public void changeOwnership(Long userId, Long targetUserId) { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper() @@ -645,7 +648,7 @@ public SparkApplication getApp(Long id) { application.setConfPath(path); } } - + application.setAppControl(getAppControl(application)); application.resolveYarnQueue(); return application; diff --git a/streampark-console/streampark-console-webapp/src/api/flink/app.type.ts b/streampark-console/streampark-console-webapp/src/api/flink/app.type.ts index df6d96132c..65d6b1374b 100644 --- a/streampark-console/streampark-console-webapp/src/api/flink/app.type.ts +++ b/streampark-console/streampark-console-webapp/src/api/flink/app.type.ts @@ -145,6 +145,7 @@ interface AppControl { allowStart: boolean; allowStop: boolean; allowBuild: boolean; + allowView: boolean; } /* cancel params */ export interface CancelParam { diff --git a/streampark-console/streampark-console-webapp/src/api/spark/app.type.ts b/streampark-console/streampark-console-webapp/src/api/spark/app.type.ts index 41704111b6..809a30e7cb 100644 --- a/streampark-console/streampark-console-webapp/src/api/spark/app.type.ts +++ b/streampark-console/streampark-console-webapp/src/api/spark/app.type.ts @@ -112,6 +112,7 @@ interface AppControl { allowStart: boolean; allowStop: boolean; allowBuild: boolean; + allowView: boolean; } // create Params