Merge branch 'RED-7517' into 'master'
Resolve RED-7517 Closes RED-7517 See merge request redactmanager/persistence-service!203
This commit is contained in:
commit
284d0bff50
@ -18,6 +18,7 @@ import java.util.Set;
|
||||
import java.util.TreeSet;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.service.DossierCreatorService;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpStatus;
|
||||
@ -73,6 +74,7 @@ public class DossierController implements DossierResource {
|
||||
private final NotificationPersistenceService notificationPersistenceService;
|
||||
private final AccessControlService accessControlService;
|
||||
private final DossierACLService dossierACLService;
|
||||
private final DossierCreatorService dossierCreatorService;
|
||||
|
||||
|
||||
@Override
|
||||
@ -308,7 +310,7 @@ public class DossierController implements DossierResource {
|
||||
|
||||
private Dossier createNewDossier(DossierRequest dossier, String ownerId, Set<String> members, Set<String> approvers) {
|
||||
|
||||
Dossier newDossier = dossierManagementService.addDossier(CreateOrUpdateDossierRequest.builder()
|
||||
Dossier newDossier = dossierCreatorService.addDossier(CreateOrUpdateDossierRequest.builder()
|
||||
.dossierName(dossier.getDossierName())
|
||||
.description(dossier.getDescription())
|
||||
.dossierTemplateId(dossier.getDossierTemplateId())
|
||||
@ -318,9 +320,8 @@ public class DossierController implements DossierResource {
|
||||
.watermarkId(dossier.getWatermarkId())
|
||||
.previewWatermarkId(dossier.getPreviewWatermarkId())
|
||||
.dossierStatusId(dossier.getDossierStatusId())
|
||||
.build());
|
||||
.build(), members, approvers, ownerId);
|
||||
|
||||
dossierACLService.updateDossierACL(members, approvers, ownerId, newDossier.getId());
|
||||
dossierACLService.enhanceDossierWithACLData(newDossier);
|
||||
|
||||
return newDossier;
|
||||
|
||||
@ -0,0 +1,34 @@
|
||||
package com.iqser.red.service.persistence.management.v1.processor.service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.acl.custom.dossier.DossierACLService;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.utils.DossierMapper;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.CreateOrUpdateDossierRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.Dossier;
|
||||
import com.knecon.fforesight.databasetenantcommons.providers.utils.MagicConverter;
|
||||
import jakarta.transaction.Transactional;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class DossierCreatorService {
|
||||
|
||||
private final DossierService dossierService;
|
||||
private final DossierACLService dossierACLService;
|
||||
|
||||
|
||||
@Transactional
|
||||
public Dossier addDossier(CreateOrUpdateDossierRequest dossierRequest, Set<String> members, Set<String> approvers, String ownerId) {
|
||||
|
||||
var dossier = dossierService.addDossier(dossierRequest);
|
||||
dossierACLService.updateDossierACL(members, approvers, ownerId, dossier.getId());
|
||||
|
||||
return MagicConverter.convert(dossier, Dossier.class, new DossierMapper());
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,18 +1,7 @@
|
||||
package com.iqser.red.service.persistence.management.v1.processor.service;
|
||||
|
||||
import static com.iqser.red.service.persistence.management.v1.processor.exception.DossierNotFoundException.DOSSIER_NOT_FOUND_MESSAGE;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.DossierEntity;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.DossierNotFoundException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.settings.FileManagementServiceSettings;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.utils.DossierMapper;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.DossierInformation;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.common.JSONPrimitive;
|
||||
@ -22,10 +11,18 @@ import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemp
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.file.FileModel;
|
||||
import com.iqser.red.service.search.v1.model.IndexMessageType;
|
||||
import com.knecon.fforesight.databasetenantcommons.providers.utils.MagicConverter;
|
||||
|
||||
import jakarta.transaction.Transactional;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.iqser.red.service.persistence.management.v1.processor.exception.DossierNotFoundException.DOSSIER_NOT_FOUND_MESSAGE;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@ -36,8 +33,6 @@ public class DossierManagementService {
|
||||
private final FileStatusService fileStatusService;
|
||||
private final FileService fileService;
|
||||
private final IndexingService indexingService;
|
||||
private final DictionaryManagementService dictionaryManagementService;
|
||||
private final FileManagementServiceSettings fileManagementServiceSettings;
|
||||
|
||||
|
||||
public Set<DossierChange> changesSince(JSONPrimitive<OffsetDateTime> since) {
|
||||
@ -46,15 +41,6 @@ public class DossierManagementService {
|
||||
}
|
||||
|
||||
|
||||
@Transactional
|
||||
public Dossier addDossier(CreateOrUpdateDossierRequest dossierRequest) {
|
||||
|
||||
var dossier = dossierService.addDossier(dossierRequest);
|
||||
|
||||
return MagicConverter.convert(dossier, Dossier.class, new DossierMapper());
|
||||
}
|
||||
|
||||
|
||||
@Transactional
|
||||
public Dossier updateDossier(CreateOrUpdateDossierRequest dossierRequest, String dossierId) {
|
||||
|
||||
|
||||
@ -1,12 +1,5 @@
|
||||
package com.iqser.red.service.persistence.management.v1.processor.service;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import com.iqser.red.service.persistence.management.v1.processor.entity.dossier.DossierEntity;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.BadRequestException;
|
||||
import com.iqser.red.service.persistence.management.v1.processor.exception.ConflictException;
|
||||
@ -18,10 +11,15 @@ import com.iqser.red.service.persistence.management.v1.processor.utils.TypeIdUti
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.DossierTemplateStatus;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.CreateOrUpdateDossierRequest;
|
||||
import com.iqser.red.service.persistence.service.v1.api.shared.model.dossiertemplate.dossier.DossierChange;
|
||||
|
||||
import jakarta.transaction.Transactional;
|
||||
import jakarta.validation.ConstraintViolationException;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.OffsetDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* Provides the internal interface between dossier request and the actual persistence.
|
||||
@ -40,6 +38,7 @@ public class DossierService {
|
||||
private final DictionaryPersistenceService dictionaryPersistenceService;
|
||||
|
||||
|
||||
@Transactional
|
||||
public DossierEntity addDossier(CreateOrUpdateDossierRequest createOrUpdateDossierRequest) {
|
||||
|
||||
if (dossierPersistenceService.findAllDossiers()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user