Pull request #106: fixes
Merge in RED/persistence-service from bugfixes-3 to master * commit 'f2b4d175c27d1f9773f14a10b20c484465a7a095': fixed hard delete and dossier template fixes
This commit is contained in:
commit
952a61cb21
@ -64,13 +64,13 @@ public class DossierTemplatePersistenceService {
|
|||||||
public void deleteDossierTemplate(String dossierTemplateId, String deletingUserId) {
|
public void deleteDossierTemplate(String dossierTemplateId, String deletingUserId) {
|
||||||
dossierTemplateRepository.findById(dossierTemplateId).ifPresentOrElse((dossierTemplate) -> {
|
dossierTemplateRepository.findById(dossierTemplateId).ifPresentOrElse((dossierTemplate) -> {
|
||||||
|
|
||||||
if (dossierTemplate.getDossiers().isEmpty()) {
|
var hasNonDeletedDossiers = dossierTemplate.getDossiers().stream().anyMatch(template -> template.getHardDeletedTime() == null);
|
||||||
|
if (hasNonDeletedDossiers) {
|
||||||
|
throw new BadRequestException("Cannot delete dossier template with active dossiers!");
|
||||||
|
} else {
|
||||||
dossierTemplate.setModifiedBy(deletingUserId);
|
dossierTemplate.setModifiedBy(deletingUserId);
|
||||||
dossierTemplate.setDateModified(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
|
dossierTemplate.setDateModified(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
|
||||||
dossierTemplate.setSoftDeleteTime(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
|
dossierTemplate.setSoftDeleteTime(OffsetDateTime.now().truncatedTo(ChronoUnit.MILLIS));
|
||||||
} else {
|
|
||||||
throw new BadRequestException("Cannot delete dossier template with active dossiers!");
|
|
||||||
}
|
}
|
||||||
}, () -> {
|
}, () -> {
|
||||||
throw new NotFoundException(String.format(DOSSIER_TEMPLATE_NOT_FOUND_MESSAGE, dossierTemplateId));
|
throw new NotFoundException(String.format(DOSSIER_TEMPLATE_NOT_FOUND_MESSAGE, dossierTemplateId));
|
||||||
|
|||||||
@ -144,7 +144,6 @@ public class DictionaryController implements DictionaryResource {
|
|||||||
.collect(toList()), currentVersion + 1);
|
.collect(toList()), currentVersion + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
dictionaryPersistenceService.incrementVersion(typeId);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -35,8 +35,6 @@ public class ReanalysisController implements ReanalysisResource {
|
|||||||
|
|
||||||
private final FileStatusService fileStatusService;
|
private final FileStatusService fileStatusService;
|
||||||
private final DossierPersistenceService dossierPersistenceService;
|
private final DossierPersistenceService dossierPersistenceService;
|
||||||
private final DictionaryController dictionaryClient;
|
|
||||||
private final RulesController rulesClient;
|
|
||||||
private final IndexingService indexingService;
|
private final IndexingService indexingService;
|
||||||
private final ReanalysisRequiredStatusService reanalysisRequiredStatusService;
|
private final ReanalysisRequiredStatusService reanalysisRequiredStatusService;
|
||||||
|
|
||||||
|
|||||||
@ -50,7 +50,8 @@ public class ReportTemplateController implements ReportTemplateResource {
|
|||||||
String storageId = StorageIdUtils.getReportStorageId(reportTemplateUploadRequest.getDossierTemplateId(), reportTemplateUploadRequest.getFileName());
|
String storageId = StorageIdUtils.getReportStorageId(reportTemplateUploadRequest.getDossierTemplateId(), reportTemplateUploadRequest.getFileName());
|
||||||
storageService.storeObject(storageId, reportTemplateUploadRequest.getTemplate());
|
storageService.storeObject(storageId, reportTemplateUploadRequest.getTemplate());
|
||||||
String templateId = UUID.randomUUID().toString();
|
String templateId = UUID.randomUUID().toString();
|
||||||
reportTemplatePersistenceService.insert(reportTemplateUploadRequest.getDossierTemplateId(), templateId, storageId, reportTemplateUploadRequest.getFileName(), reportTemplateUploadRequest.isActiveByDefault(), reportTemplateUploadRequest.isMultiFileReport());
|
reportTemplatePersistenceService.insert(reportTemplateUploadRequest.getDossierTemplateId(), templateId, storageId,
|
||||||
|
reportTemplateUploadRequest.getFileName(), reportTemplateUploadRequest.isActiveByDefault(), reportTemplateUploadRequest.isMultiFileReport());
|
||||||
|
|
||||||
return convert(reportTemplatePersistenceService.find(templateId), ReportTemplate.class);
|
return convert(reportTemplatePersistenceService.find(templateId), ReportTemplate.class);
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
package com.iqser.red.service.peristence.v1.server.integration.tests;
|
||||||
|
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.client.DossierClient;
|
||||||
import com.iqser.red.service.peristence.v1.server.integration.client.DossierTemplateClient;
|
import com.iqser.red.service.peristence.v1.server.integration.client.DossierTemplateClient;
|
||||||
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTemplateTesterAndProvider;
|
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTemplateTesterAndProvider;
|
||||||
|
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
|
||||||
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
|
||||||
import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.CreateOrUpdateDossierTemplateRequest;
|
import com.iqser.red.service.persistence.service.v1.api.model.dossiertemplate.CreateOrUpdateDossierTemplateRequest;
|
||||||
import feign.FeignException;
|
import feign.FeignException;
|
||||||
@ -9,16 +11,24 @@ import org.junit.Test;
|
|||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat;
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
public class DossierTemplateTest extends AbstractPersistenceServerServiceTest {
|
public class DossierTemplateTest extends AbstractPersistenceServerServiceTest {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DossierTesterAndProvider dossierTesterAndProvider;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private DossierTemplateTesterAndProvider dossierTemplateTesterAndProvider;
|
private DossierTemplateTesterAndProvider dossierTemplateTesterAndProvider;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private DossierTemplateClient dossierTemplateClient;
|
private DossierTemplateClient dossierTemplateClient;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DossierClient dossierClient;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testDossierTemplate() {
|
public void testDossierTemplate() {
|
||||||
|
|
||||||
@ -50,5 +60,18 @@ public class DossierTemplateTest extends AbstractPersistenceServerServiceTest {
|
|||||||
updated = dossierTemplateClient.createOrUpdateDossierTemplate(cru);
|
updated = dossierTemplateClient.createOrUpdateDossierTemplate(cru);
|
||||||
assertThat(updated.getName()).isEqualTo("Template 1 Update");
|
assertThat(updated.getName()).isEqualTo("Template 1 Update");
|
||||||
|
|
||||||
|
var testDossier = dossierTesterAndProvider.provideTestDossier(updated);
|
||||||
|
|
||||||
|
try{
|
||||||
|
dossierTemplateClient.deleteDossierTemplate(updated.getId(), "1");
|
||||||
|
}catch (FeignException e){
|
||||||
|
assertThat(e.status()).isEqualTo(400);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dossierClient.hardDeleteDossiers(Collections.singleton(testDossier.getId()));
|
||||||
|
|
||||||
|
dossierTemplateClient.deleteDossierTemplate(updated.getId(), "1");
|
||||||
|
assertThat(dossierTemplateClient.getAllDossierTemplates().isEmpty()).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user