bulk assing reviewer

This commit is contained in:
Timo 2020-12-21 23:02:33 +02:00
parent 165e82c308
commit 381143c9a5
2 changed files with 33 additions and 12 deletions

View File

@ -88,11 +88,14 @@ export class AssignOwnerDialogComponent {
if (this.data.type === 'file') {
const reviewerId = this.selectedSingleUser;
const promises = this.data.files.map((file) =>
this._statusControllerService.setFileReviewer(this._appStateService.activeProjectId, file.fileId, reviewerId).toPromise()
);
await this._statusControllerService
.setFileReviewerForList(
this.data.files.map((f) => f.fileId),
this._appStateService.activeProjectId,
reviewerId
)
.toPromise();
await Promise.all(promises);
for (const file of this.data.files) {
file.currentReviewer = reviewerId;
file.reviewerName = this.userService.getNameForId(reviewerId);

View File

@ -2,10 +2,10 @@ import { Injectable } from '@angular/core';
import { DialogService } from '../../../dialogs/dialog.service';
import { AppStateService } from '../../../state/app-state.service';
import { UserService } from '../../../user/user.service';
import { ReanalysisControllerService, StatusControllerService } from '@redaction/red-ui-http';
import { FileStatus } from '@redaction/red-ui-http';
import { FileStatus, ReanalysisControllerService, StatusControllerService } from '@redaction/red-ui-http';
import { FileStatusWrapper } from '../model/file-status.wrapper';
import { PermissionsService } from '../../../common/service/permissions.service';
import { isArray } from 'rxjs/internal-compatibility';
@Injectable({
providedIn: 'root'
@ -75,15 +75,33 @@ export class FileActionService {
}
}
setFileUnderApproval(fileStatus: FileStatusWrapper) {
return this._statusControllerService.setStatusUnderApproval(this._appStateService.activeProjectId, fileStatus.fileId);
setFileUnderApproval(fileStatus: FileStatusWrapper | FileStatusWrapper[]) {
if (!isArray(fileStatus)) {
fileStatus = [fileStatus];
}
return this._statusControllerService.setStatusUnderApprovalForList(
fileStatus.map((f) => f.fileId),
this._appStateService.activeProjectId
);
}
setFileApproved(fileStatus: FileStatusWrapper) {
return this._statusControllerService.setStatusApproved(this._appStateService.activeProjectId, fileStatus.fileId);
setFileApproved(fileStatus: FileStatusWrapper | FileStatusWrapper[]) {
if (!isArray(fileStatus)) {
fileStatus = [fileStatus];
}
return this._statusControllerService.setStatusApprovedForList(
fileStatus.map((f) => f.fileId),
this._appStateService.activeProjectId
);
}
setFileUnderReview(fileStatus: FileStatusWrapper) {
return this._statusControllerService.setStatusUnderReview(this._appStateService.activeProjectId, fileStatus.fileId);
setFileUnderReview(fileStatus: FileStatusWrapper | FileStatusWrapper[]) {
if (!isArray(fileStatus)) {
fileStatus = [fileStatus];
}
return this._statusControllerService.setStatusUnderReviewForList(
fileStatus.map((f) => f.fileId),
this._appStateService.activeProjectId
);
}
}