migrated ruleset and projectid to new naming
This commit is contained in:
parent
e01074ef27
commit
ceaaed4fc7
@ -12,5 +12,6 @@ import lombok.NoArgsConstructor;
|
|||||||
public class AnnotateRequest {
|
public class AnnotateRequest {
|
||||||
|
|
||||||
private String dossierId;
|
private String dossierId;
|
||||||
|
private String dossierTemplateId;
|
||||||
private String fileId;
|
private String fileId;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,8 +15,8 @@ public class RedactionChangeLog {
|
|||||||
private List<RedactionChangeLogEntry> redactionLogEntry = new ArrayList<>();
|
private List<RedactionChangeLogEntry> redactionLogEntry = new ArrayList<>();
|
||||||
|
|
||||||
private long dictionaryVersion = -1;
|
private long dictionaryVersion = -1;
|
||||||
|
private long dossierDictionaryVersion = -1;
|
||||||
private long rulesVersion = -1;
|
private long rulesVersion = -1;
|
||||||
|
private long legalBasisVersion = -1;
|
||||||
private String dossierTemplateId;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,15 +13,9 @@ public class RedactionLog {
|
|||||||
private List<RedactionLogEntry> redactionLogEntry;
|
private List<RedactionLogEntry> redactionLogEntry;
|
||||||
private List<LegalBasisMapping> legalBasis;
|
private List<LegalBasisMapping> legalBasis;
|
||||||
|
|
||||||
private String dossierTemplateId;
|
|
||||||
|
|
||||||
private long dictionaryVersion = -1;
|
private long dictionaryVersion = -1;
|
||||||
private long rulesVersion = -1;
|
|
||||||
private long dossierDictionaryVersion = -1;
|
private long dossierDictionaryVersion = -1;
|
||||||
|
private long rulesVersion = -1;
|
||||||
private long legalBasisVersion = -1;
|
private long legalBasisVersion = -1;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -50,7 +50,7 @@ public class RedactionController implements RedactionResource {
|
|||||||
try (PDDocument pdDocument = PDDocument.load(storedObjectStream, MemoryUsageSetting.setupTempFileOnly())) {
|
try (PDDocument pdDocument = PDDocument.load(storedObjectStream, MemoryUsageSetting.setupTempFileOnly())) {
|
||||||
pdDocument.setAllSecurityToBeRemoved(true);
|
pdDocument.setAllSecurityToBeRemoved(true);
|
||||||
|
|
||||||
dictionaryService.updateDictionary(redactionLog.getDossierTemplateId(), annotateRequest.getDossierId());
|
dictionaryService.updateDictionary(annotateRequest.getDossierTemplateId(), annotateRequest.getDossierId());
|
||||||
annotationService.annotate(pdDocument, redactionLog, sectionsGrid);
|
annotationService.annotate(pdDocument, redactionLog, sectionsGrid);
|
||||||
|
|
||||||
try (ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream()) {
|
try (ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream()) {
|
||||||
|
|||||||
@ -27,14 +27,14 @@ public class DictionaryService {
|
|||||||
|
|
||||||
private final DictionaryClient dictionaryClient;
|
private final DictionaryClient dictionaryClient;
|
||||||
|
|
||||||
private final Map<String, DictionaryRepresentation> dictionariesByRuleSets = new HashMap<>();
|
private final Map<String, DictionaryRepresentation> dictionariesByDossierTemplate = new HashMap<>();
|
||||||
private final Map<String, DictionaryRepresentation> dictionariesByDossier = new HashMap<>();
|
private final Map<String, DictionaryRepresentation> dictionariesByDossier = new HashMap<>();
|
||||||
|
|
||||||
|
|
||||||
public DictionaryVersion updateDictionary(String dossierTemplateId, String dossierId) {
|
public DictionaryVersion updateDictionary(String dossierTemplateId, String dossierId) {
|
||||||
|
|
||||||
long dossierTemplateDictionaryVersion = dictionaryClient.getVersion(dossierTemplateId, GLOBAL_DOSSIER);
|
long dossierTemplateDictionaryVersion = dictionaryClient.getVersion(dossierTemplateId, GLOBAL_DOSSIER);
|
||||||
var dossierTemplateDictionary = dictionariesByRuleSets.get(dossierTemplateId);
|
var dossierTemplateDictionary = dictionariesByDossierTemplate.get(dossierTemplateId);
|
||||||
if (dossierTemplateDictionary == null || dossierTemplateDictionaryVersion > dossierTemplateDictionary.getDictionaryVersion()) {
|
if (dossierTemplateDictionary == null || dossierTemplateDictionaryVersion > dossierTemplateDictionary.getDictionaryVersion()) {
|
||||||
updateDictionaryEntry(dossierTemplateId, dossierTemplateDictionaryVersion, GLOBAL_DOSSIER);
|
updateDictionaryEntry(dossierTemplateId, dossierTemplateDictionaryVersion, GLOBAL_DOSSIER);
|
||||||
}
|
}
|
||||||
@ -54,10 +54,10 @@ public class DictionaryService {
|
|||||||
DictionaryVersion version = updateDictionary(dossierTemplateId, dossierId);
|
DictionaryVersion version = updateDictionary(dossierTemplateId, dossierId);
|
||||||
|
|
||||||
Set<DictionaryIncrementValue> newValues = new HashSet<>();
|
Set<DictionaryIncrementValue> newValues = new HashSet<>();
|
||||||
List<DictionaryModel> dictionaryModels = dictionariesByRuleSets.get(dossierTemplateId).getDictionary();
|
List<DictionaryModel> dictionaryModels = dictionariesByDossierTemplate.get(dossierTemplateId).getDictionary();
|
||||||
dictionaryModels.forEach(dictionaryModel -> {
|
dictionaryModels.forEach(dictionaryModel -> {
|
||||||
dictionaryModel.getEntries().forEach(dictionaryEntry -> {
|
dictionaryModel.getEntries().forEach(dictionaryEntry -> {
|
||||||
if (dictionaryEntry.getVersion() > fromVersion.getRulesetVersion()) {
|
if (dictionaryEntry.getVersion() > fromVersion.getDossierTemplateVersion()) {
|
||||||
newValues.add(new DictionaryIncrementValue(dictionaryEntry.getValue(), dictionaryModel.isCaseInsensitive()));
|
newValues.add(new DictionaryIncrementValue(dictionaryEntry.getValue(), dictionaryModel.isCaseInsensitive()));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -106,7 +106,7 @@ public class DictionaryService {
|
|||||||
dictionaryRepresentation.setDictionary(dictionary);
|
dictionaryRepresentation.setDictionary(dictionary);
|
||||||
|
|
||||||
if(dossierId.equals(GLOBAL_DOSSIER)) {
|
if(dossierId.equals(GLOBAL_DOSSIER)) {
|
||||||
dictionariesByRuleSets.put(dossierTemplateId, dictionaryRepresentation);
|
dictionariesByDossierTemplate.put(dossierTemplateId, dictionaryRepresentation);
|
||||||
} else {
|
} else {
|
||||||
dictionariesByDossier.put(dossierId, dictionaryRepresentation);
|
dictionariesByDossier.put(dossierId, dictionaryRepresentation);
|
||||||
}
|
}
|
||||||
@ -124,8 +124,8 @@ public class DictionaryService {
|
|||||||
if (dm.isRecommendation() && !dm.getLocalEntries().isEmpty()) {
|
if (dm.isRecommendation() && !dm.getLocalEntries().isEmpty()) {
|
||||||
dictionaryClient.addEntries(dm.getType(), dossierTemplateId, new ArrayList<>(dm.getLocalEntries()), false, GLOBAL_DOSSIER);
|
dictionaryClient.addEntries(dm.getType(), dossierTemplateId, new ArrayList<>(dm.getLocalEntries()), false, GLOBAL_DOSSIER);
|
||||||
long externalVersion = dictionaryClient.getVersion(dossierTemplateId, GLOBAL_DOSSIER);
|
long externalVersion = dictionaryClient.getVersion(dossierTemplateId, GLOBAL_DOSSIER);
|
||||||
if (externalVersion == dictionary.getVersion().getRulesetVersion() + 1) {
|
if (externalVersion == dictionary.getVersion().getDossierTemplateVersion() + 1) {
|
||||||
dictionary.getVersion().setRulesetVersion(externalVersion);
|
dictionary.getVersion().setDossierTemplateVersion(externalVersion);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -153,7 +153,7 @@ public class DictionaryService {
|
|||||||
|
|
||||||
public boolean isCaseInsensitiveDictionary(String type, String dossierTemplateId) {
|
public boolean isCaseInsensitiveDictionary(String type, String dossierTemplateId) {
|
||||||
|
|
||||||
DictionaryModel dictionaryModel = dictionariesByRuleSets.get(dossierTemplateId).getLocalAccessMap().get(type);
|
DictionaryModel dictionaryModel = dictionariesByDossierTemplate.get(dossierTemplateId).getLocalAccessMap().get(type);
|
||||||
if (dictionaryModel != null) {
|
if (dictionaryModel != null) {
|
||||||
return dictionaryModel.isCaseInsensitive();
|
return dictionaryModel.isCaseInsensitive();
|
||||||
}
|
}
|
||||||
@ -163,17 +163,17 @@ public class DictionaryService {
|
|||||||
|
|
||||||
public float[] getColor(String type, String dossierTemplateId) {
|
public float[] getColor(String type, String dossierTemplateId) {
|
||||||
|
|
||||||
DictionaryModel model = dictionariesByRuleSets.get(dossierTemplateId).getLocalAccessMap().get(type);
|
DictionaryModel model = dictionariesByDossierTemplate.get(dossierTemplateId).getLocalAccessMap().get(type);
|
||||||
if (model != null) {
|
if (model != null) {
|
||||||
return model.getColor();
|
return model.getColor();
|
||||||
}
|
}
|
||||||
return dictionariesByRuleSets.get(dossierTemplateId).getDefaultColor();
|
return dictionariesByDossierTemplate.get(dossierTemplateId).getDefaultColor();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public boolean isHint(String type, String dossierTemplateId) {
|
public boolean isHint(String type, String dossierTemplateId) {
|
||||||
|
|
||||||
DictionaryModel model = dictionariesByRuleSets.get(dossierTemplateId).getLocalAccessMap().get(type);
|
DictionaryModel model = dictionariesByDossierTemplate.get(dossierTemplateId).getLocalAccessMap().get(type);
|
||||||
if (model != null) {
|
if (model != null) {
|
||||||
return model.isHint();
|
return model.isHint();
|
||||||
}
|
}
|
||||||
@ -183,7 +183,7 @@ public class DictionaryService {
|
|||||||
|
|
||||||
public boolean isRecommendation(String type, String dossierTemplateId) {
|
public boolean isRecommendation(String type, String dossierTemplateId) {
|
||||||
|
|
||||||
DictionaryModel model = dictionariesByRuleSets.get(dossierTemplateId).getLocalAccessMap().get(type);
|
DictionaryModel model = dictionariesByDossierTemplate.get(dossierTemplateId).getLocalAccessMap().get(type);
|
||||||
if (model != null) {
|
if (model != null) {
|
||||||
return model.isRecommendation();
|
return model.isRecommendation();
|
||||||
}
|
}
|
||||||
@ -195,7 +195,7 @@ public class DictionaryService {
|
|||||||
|
|
||||||
List<DictionaryModel> copy = new ArrayList<>();
|
List<DictionaryModel> copy = new ArrayList<>();
|
||||||
|
|
||||||
var dossierTemplateRepresentation = dictionariesByRuleSets.get(dossierTemplateId);
|
var dossierTemplateRepresentation = dictionariesByDossierTemplate.get(dossierTemplateId);
|
||||||
dossierTemplateRepresentation.getDictionary().forEach(dm -> {
|
dossierTemplateRepresentation.getDictionary().forEach(dm -> {
|
||||||
copy.add(SerializationUtils.clone(dm));
|
copy.add(SerializationUtils.clone(dm));
|
||||||
});
|
});
|
||||||
@ -216,19 +216,19 @@ public class DictionaryService {
|
|||||||
|
|
||||||
public float[] getRequestRemoveColor(String dossierTemplateId) {
|
public float[] getRequestRemoveColor(String dossierTemplateId) {
|
||||||
|
|
||||||
return dictionariesByRuleSets.get(dossierTemplateId).getRequestAddColor();
|
return dictionariesByDossierTemplate.get(dossierTemplateId).getRequestAddColor();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public float[] getNotRedactedColor(String dossierTemplateId) {
|
public float[] getNotRedactedColor(String dossierTemplateId) {
|
||||||
|
|
||||||
return dictionariesByRuleSets.get(dossierTemplateId).getNotRedactedColor();
|
return dictionariesByDossierTemplate.get(dossierTemplateId).getNotRedactedColor();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public float[] getRequestAddColor(String dossierTemplateId) {
|
public float[] getRequestAddColor(String dossierTemplateId) {
|
||||||
|
|
||||||
return dictionariesByRuleSets.get(dossierTemplateId).getRequestAddColor();
|
return dictionariesByDossierTemplate.get(dossierTemplateId).getRequestAddColor();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -67,10 +67,9 @@ public class ReanalyzeService {
|
|||||||
|
|
||||||
var legalBasis = legalBasisClient.getLegalBasisMapping(analyzeRequest.getDossierTemplateId());
|
var legalBasis = legalBasisClient.getLegalBasisMapping(analyzeRequest.getDossierTemplateId());
|
||||||
var redactionLog = new RedactionLog(classifiedDoc.getRedactionLogEntities(),legalBasis,
|
var redactionLog = new RedactionLog(classifiedDoc.getRedactionLogEntities(),legalBasis,
|
||||||
analyzeRequest.getDossierTemplateId(),
|
classifiedDoc.getDictionaryVersion().getDossierTemplateVersion(),
|
||||||
classifiedDoc.getDictionaryVersion().getRulesetVersion(),
|
|
||||||
classifiedDoc.getRulesVersion(),
|
|
||||||
classifiedDoc.getDictionaryVersion().getDossierVersion(),
|
classifiedDoc.getDictionaryVersion().getDossierVersion(),
|
||||||
|
classifiedDoc.getRulesVersion(),
|
||||||
legalBasisClient.getVersion(analyzeRequest.getDossierTemplateId()));
|
legalBasisClient.getVersion(analyzeRequest.getDossierTemplateId()));
|
||||||
|
|
||||||
log.info("Analyzed with rules {} and dictionary {} for dossierTemplate: {}", classifiedDoc.getRulesVersion(), classifiedDoc
|
log.info("Analyzed with rules {} and dictionary {} for dossierTemplate: {}", classifiedDoc.getRulesVersion(), classifiedDoc
|
||||||
@ -253,7 +252,7 @@ public class ReanalyzeService {
|
|||||||
RedactionLog redactionLog, Text text,
|
RedactionLog redactionLog, Text text,
|
||||||
DictionaryIncrement dictionaryIncrement) {
|
DictionaryIncrement dictionaryIncrement) {
|
||||||
|
|
||||||
redactionLog.setDictionaryVersion(dictionaryIncrement.getDictionaryVersion().getRulesetVersion());
|
redactionLog.setDictionaryVersion(dictionaryIncrement.getDictionaryVersion().getDossierTemplateVersion());
|
||||||
redactionLog.setDossierDictionaryVersion(dictionaryIncrement.getDictionaryVersion().getDossierVersion());
|
redactionLog.setDossierDictionaryVersion(dictionaryIncrement.getDictionaryVersion().getDossierVersion());
|
||||||
|
|
||||||
var changeLog = redactionChangeLogService.createAndStoreChangeLog(analyzeRequest.getDossierId(), analyzeRequest.getFileId(), redactionLog);
|
var changeLog = redactionChangeLogService.createAndStoreChangeLog(analyzeRequest.getDossierId(), analyzeRequest.getFileId(), redactionLog);
|
||||||
|
|||||||
@ -57,8 +57,11 @@ public class RedactionChangeLogService {
|
|||||||
.map(entry -> convert(entry, ChangeType.REMOVED))
|
.map(entry -> convert(entry, ChangeType.REMOVED))
|
||||||
.collect(Collectors.toList()));
|
.collect(Collectors.toList()));
|
||||||
|
|
||||||
return new RedactionChangeLog(changeLogEntries, currentRedactionLog.getDictionaryVersion(), currentRedactionLog.getRulesVersion(), currentRedactionLog
|
return new RedactionChangeLog(changeLogEntries,
|
||||||
.getDossierTemplateId());
|
currentRedactionLog.getDictionaryVersion(),
|
||||||
|
currentRedactionLog.getDossierDictionaryVersion(),
|
||||||
|
currentRedactionLog.getRulesVersion(),
|
||||||
|
currentRedactionLog.getLegalBasisVersion());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user