如何从API和垫子表的角度比较材料的jobId

问题描述 投票:0回答:1

我有一个垫表,它表明乔布斯和它像的jobId,流程id,状态等详细另外我有把工作即运行,成功或失败的通知状态的WebSocket。我的WebSocket现在的问题是,它不区分基于项目或用户的工作,这意味着如果用户2运行的项目,然后同时我会得到的工作运行的通知。

我想提出一个条件,我的代码以这样的方式,当我上停止按钮点击旁边的我的工作清单的代码要比我和的jobId地位和得到回应作业是否是从的WebSocket停止与否。

HTML代码为我停止作业按钮:

 <button *ngIf="index === 0"
                    mat-icon-button
                    (click)="stop_exec_job(element)"
                    matTooltip="Stop Executing the Job"
                    [disabled]="element.status == 'Completed' || element.status == 'FINISH'"
                >
                    <!-- Edit icon for row -->
                    <i class="material-icons" style="color:red"> stop </i>
                </button>

停止功能代码的打字稿:

stop_exec_job(element) {
    if (element.status == 'RUNNING' || element.status == 'Pending')  {
        //Api to stop Job Execution
        this.recommendationService
            .stopJobExecution(element.jobId,element.status)
            .subscribe(data => {
                this.executeJobStop = data;
            });
        this.displaySpinner = false;

        this.snakbar.statusBar('Job Execution Stopped', 'Sucess');
    } else {
        this.snakbar.statusBar('Job Failed to start', 'Failure');
    }
}

WebSocket的代码:

this.messageService.messageReceived$.subscribe(data => {
        let status: any = data;
        this.snakbar.statusBar(
            "Platform job status - " + status.message,
            "Info"
        );
});

我希望收到的WebSocket相当于我已使用的if-else条件停止的工作通知。如何实现这一目标?

javascript angular typescript websocket angular-material
1个回答
0
投票

我不知道如果我理解你想要什么,我也不知道什么this.recommendationService.stopJobExecution(的jobId,状态)的回报,但也许你必须把小吃吧行动中,如订阅:

...
this.recommendationService
            .stopJobExecution(element.jobId,element.status)
            .subscribe(data => {
                this.executeJobStop = data;
                if(data.stopped) {
                    this.snakbar.statusBar('Job Execution Stopped', 'Success');
                }
            });
....
© www.soinside.com 2019 - 2024. All rights reserved.