diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/EntityLogDocument.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/EntityLogDocument.java new file mode 100644 index 00000000..d9c61170 --- /dev/null +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/EntityLogDocument.java @@ -0,0 +1,54 @@ +package com.iqser.red.service.redaction.v1.server.mongo; + +import org.springframework.data.annotation.Id; +import org.springframework.data.mongodb.core.mapping.Document; + +import com.iqser.red.service.persistence.service.v1.api.shared.model.analysislog.entitylog.EntityLog; + +import lombok.AllArgsConstructor; +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +@Document(collection = "entity-logs") +@Getter +@Setter +@AllArgsConstructor +@NoArgsConstructor +public class EntityLogDocument { + + @Id + private String id; + + private EntityLog entityLog; + + + /** + private long analysisVersion; + private int analysisNumber; + + private List entityLogEntry = new ArrayList<>(); + private List legalBasis = new ArrayList<>(); + + private long dictionaryVersion = -1; + private long dossierDictionaryVersion = -1; + private long rulesVersion = -1; + private long legalBasisVersion = -1; + + + public EntityLogDocument(String id, EntityLog entityLog) { + + this.id = id; + + this.analysisVersion = entityLog.getAnalysisVersion(); + this.analysisNumber = entityLog.getAnalysisNumber(); + this.entityLogEntry = entityLog.getEntityLogEntry(); + this.legalBasis = entityLog.getLegalBasis(); + this.dictionaryVersion = entityLog.getDictionaryVersion(); + this.dossierDictionaryVersion = entityLog.getDossierDictionaryVersion(); + this.rulesVersion = entityLog.getRulesVersion(); + this.legalBasisVersion = entityLog.getLegalBasisVersion(); + + } **/ + +} diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/EntityLogDocumentService.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/EntityLogDocumentService.java new file mode 100644 index 00000000..385ee717 --- /dev/null +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/EntityLogDocumentService.java @@ -0,0 +1,34 @@ +package com.iqser.red.service.redaction.v1.server.mongo; + +import java.util.Optional; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.stereotype.Repository; +import org.springframework.stereotype.Service; + +import lombok.AccessLevel; +import lombok.RequiredArgsConstructor; +import lombok.experimental.FieldDefaults; + +@Service +public class EntityLogDocumentService { + + private final EntityLogDocumentRepository entityLogDocumentRepository; + + + public EntityLogDocumentService(EntityLogDocumentRepository entityLogDocumentRepository) {this.entityLogDocumentRepository = entityLogDocumentRepository;} + + + public EntityLogDocument saveEntityLogDocument(EntityLogDocument entityLogDocument) { + return entityLogDocumentRepository.save(entityLogDocument); + } + + public Optional findEntityLogDocumentById(String id) { + return entityLogDocumentRepository.findById(id); + } + + public boolean entityLogDocumentExists(String id) { + return entityLogDocumentRepository.existsById(id); + } +} diff --git a/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/_EntityLogDocumentRepository.java b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/_EntityLogDocumentRepository.java new file mode 100644 index 00000000..f05ae273 --- /dev/null +++ b/redaction-service-v1/redaction-service-server-v1/src/main/java/com/iqser/red/service/redaction/v1/server/mongo/_EntityLogDocumentRepository.java @@ -0,0 +1,24 @@ +package com.iqser.red.service.redaction.v1.server.mongo; + +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.stereotype.Repository; + +import lombok.AccessLevel; +import lombok.RequiredArgsConstructor; +import lombok.experimental.FieldDefaults; + +@Repository +@FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE) +@RequiredArgsConstructor +public class _EntityLogDocumentRepository { + + MongoTemplate mongoTemplate; + + public EntityLogDocument saveEntityLogDocument(EntityLogDocument entityLogDocument) { + return mongoTemplate.save(entityLogDocument); + } + + public EntityLogDocument findEntityLogDocumentById(String id) { + return mongoTemplate.findById(id, EntityLogDocument.class); + } +}