RED-2171: Fixed missing session in migration

This commit is contained in:
deiflaender 2021-11-22 14:03:28 +01:00
parent 0b5ea6fe18
commit 50b369132b

View File

@ -166,6 +166,7 @@ public class MigrationService {
private final ApplicationContext ctx;
@Transactional
@EventListener(ApplicationReadyEvent.class)
public void runMigration() {
@ -693,7 +694,7 @@ public class MigrationService {
@SneakyThrows
private void migrateDossiers() {
public void migrateDossiers() {
byte[] dossierBytes = fileManagementStorageService.getStoredObjectBytes(getMigrationId("dossier_v4"));
List<MigrationDossier> oldDossiers = objectMapper.readValue(dossierBytes, new TypeReference<List<MigrationDossier>>() {
@ -720,7 +721,7 @@ public class MigrationService {
.hardDeletedTime(oldDossier.getHardDeletedTime())
.dueDate(oldDossier.getDueDate())
.dossierTemplate(dossierTemplateRepository.getOne(oldDossier.getDossierTemplateId()))
.dossierTemplateId(oldDossier.getDossierTemplateId())
// .dossierTemplateId(oldDossier.getDossierTemplateId())
.reportTemplates(reportTemplates)
.build();
@ -867,7 +868,7 @@ public class MigrationService {
.analysisVersion(oldFile.getAnalysisVersion())
.excludedPages(oldFile.getExcludedPages())
.dossier(dossierEntity)
.dossierId(oldFile.getDossierId())
// .dossierId(oldFile.getDossierId())
.build();
List<FileAttributeEntity> convertedFileAttributes = new ArrayList<>();
@ -945,7 +946,6 @@ public class MigrationService {
types.stream().forEach(typeEntity -> {
if (typeEntity.getDossierId().equals("global")) {
typeEntity.setDossierId(null);
var version = versions.stream()
.filter(versionRow -> versionRow.getDossierId()
.equals("global") && versionRow.getDossierTemplateId()
@ -955,8 +955,7 @@ public class MigrationService {
.get()
.getVersion();
typeEntity.setId(toTypeId(typeEntity.getType(), typeEntity.getDossierTemplateId(), typeEntity.getDossierId()));
typeEntity.setDossier(typeEntity.getDossierId() == null ? null : dossierRepository.getOne(typeEntity.getDossierId()));
typeEntity.setId(toTypeId(typeEntity.getType(), typeEntity.getDossierTemplateId(), null));
typeEntity.setDossierTemplate(dossierTemplateRepository.getOne(typeEntity.getDossierTemplateId()));
typeEntity.setVersion(version);
typeRepository.save(typeEntity);
@ -1024,6 +1023,7 @@ public class MigrationService {
reportTemplates.forEach(reportTemplateEntity -> {
var dossierTemplate = dossierTemplateRepository.getOne(reportTemplateEntity.getDossierTemplateId());
reportTemplateEntity.setDossierTemplate(dossierTemplate);
reportTemplateEntity.setDossierTemplateId(null);
reportTemplateRepository.save(reportTemplateEntity);
dossierTemplateRepository.save(dossierTemplate);
});