allow set null for reviewer/approver

This commit is contained in:
Timo Bejan 2021-10-11 16:01:50 +03:00
parent c8f81d5e52
commit 6768f3f81c
4 changed files with 10 additions and 12 deletions

View File

@ -22,6 +22,7 @@ public interface StatusResource {
String EXCLUDED_STATUS_PARAM = "excluded";
String APPROVER_ID_REQUEST_PARAM = "approverId";
String REVIEWER_ID_REQUEST_PARAM = "reviewerId";
@ResponseBody
@ResponseStatus(value = HttpStatus.OK)
@ -47,7 +48,7 @@ public interface StatusResource {
@PostMapping(value = STATUS_PATH + "/reviewer" + DOSSIER_ID_PATH_PARAM + FILE_ID_PATH_VARIABLE, consumes = MediaType.APPLICATION_JSON_VALUE)
void setCurrentFileReviewer(@PathVariable(DOSSIER_ID_PARAM) String dossierId, @PathVariable(FILE_ID) String fileId,
@RequestBody JSONPrimitive<String> currentReviewer);
@RequestParam(value = APPROVER_ID_REQUEST_PARAM, required =false) String reviewerId);
@PostMapping(value = STATUS_PATH + "/underreview" + DOSSIER_ID_PATH_PARAM + FILE_ID_PATH_VARIABLE)

View File

@ -24,7 +24,7 @@ public class ManualRedactionEntryEntity {
private AnnotationEntityId id;
@Column(name = "user_id")
private String user;
@Column
@Column(length = 4000)
private String typeId;
@Column
private String value;

View File

@ -276,7 +276,7 @@ public class FileStatusPersistenceService {
fileRepository.findById(fileId).ifPresentOrElse((file) -> {
file.setCurrentReviewer(currentReviewer);
file.setLastReviewer(lastReviewer);
file.setStatus(FileStatus.UNDER_REVIEW);
file.setStatus(currentReviewer == null ? FileStatus.UNASSIGNED :FileStatus.UNDER_REVIEW);
}, () -> {
throw new NotFoundException("Unknown file=" + fileId);
});

View File

@ -3,7 +3,6 @@ package com.iqser.red.service.peristence.v1.server.controller;
import com.iqser.red.service.peristence.v1.server.service.*;
import com.iqser.red.service.peristence.v1.server.utils.FileModelMapper;
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.FileEntity;
import com.iqser.red.service.persistence.service.v1.api.model.common.JSONPrimitive;
import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.dossier.file.FileModel;
import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.dossier.file.FileStatus;
import com.iqser.red.service.persistence.service.v1.api.resources.StatusResource;
@ -70,10 +69,10 @@ public class FileStatusController implements StatusResource {
@Override
public void setCurrentFileReviewer(@PathVariable(DOSSIER_ID_PARAM) String dossierId,
@PathVariable(FILE_ID) String fileId,
@RequestBody JSONPrimitive<String> currentFileReviewerRequest) {
@RequestParam(value = REVIEWER_ID_REQUEST_PARAM, required = false) String reviewerId) {
fileStatusService.setCurrentReviewer(dossierId, fileId, currentFileReviewerRequest.getValue());
fileStatusService.setStatusSuccessful(fileId, FileStatus.UNDER_REVIEW);
fileStatusService.setCurrentReviewer(dossierId, fileId, reviewerId);
fileStatusService.setStatusSuccessful(fileId, reviewerId != null ? FileStatus.UNDER_REVIEW : FileStatus.UNASSIGNED);
analysisFlagsCalculationService.calculateFlags(dossierId, fileId);
}
@ -85,7 +84,7 @@ public class FileStatusController implements StatusResource {
FileEntity fileStatus = fileStatusService.getStatus(fileId);
String lastReviewer = fileStatus.getLastReviewer();
fileStatusService.setCurrentReviewer(dossierId, fileId, lastReviewer);
fileStatusService.setStatusSuccessful(fileId, FileStatus.UNDER_REVIEW);
fileStatusService.setStatusSuccessful(fileId, lastReviewer != null ? FileStatus.UNDER_REVIEW : FileStatus.UNASSIGNED);
analysisFlagsCalculationService.calculateFlags(dossierId, fileId);
}
@ -97,10 +96,8 @@ public class FileStatusController implements StatusResource {
var dossier = dossierService.getDossierById(dossierId);
String dossierOwner = dossier.getOwnerId();
fileStatusService.setCurrentReviewer(dossierId, fileId, approverId != null ? approverId : dossierOwner);
fileStatusService.setStatusSuccessful(fileId, FileStatus.UNDER_APPROVAL);
fileStatusService.setCurrentReviewer(dossierId, fileId, approverId);
fileStatusService.setStatusSuccessful(fileId, approverId != null ? FileStatus.UNDER_APPROVAL : FileStatus.UNASSIGNED);
analysisFlagsCalculationService.calculateFlags(dossierId, fileId);
}