SUPPORT-9362: save traceId to local storage

This commit is contained in:
gulnaz 2025-09-03 12:10:39 +03:00
parent 615d482425
commit ef4d9072ca
2 changed files with 8 additions and 1 deletions

View file

@ -181,6 +181,10 @@ export class UserManagementService extends Behavior {
let code = response.code;
if (code === '200') {
localStorage.setItem(response.traceId, appNumber.toString());
setTimeout(() => {
localStorage.removeItem(response.traceId);
}, 30 * 60 * 1000);
this.rpc.saveTraceId(response.traceId, appNumber);
}
else {

View file

@ -3,6 +3,7 @@ import {Subject} from "rxjs";
import {HttpClient} from "@angular/common/http";
import {WebsocketService} from "../websocket/websocket.service";
import {StatusUpdateService} from "./status-update.service";
import {ErvuPermission} from "../enum/ErvuRole";
export interface UserSession {
userId: string,
@ -30,12 +31,14 @@ export class AuthorizationService implements OnDestroy {
this.session = session;
this.onSessionUpdate.next(session);
if (this.hasPermission('security_administrator')) {
if (this.hasPermission(ErvuPermission.APPROVER)) {
this.websocketService.subscribe(({data}) => {
let parsedObj = JSON.parse(data);
if (parsedObj && parsedObj.traceId) {
if (parsedObj.className === 'update' || parsedObj.className === 'processError') {
parsedObj.appNumber = localStorage.getItem(parsedObj.traceId);
localStorage.removeItem(parsedObj.traceId);
this.statusUpdateService.update(parsedObj);
}
}