From 23a46b4be35277e06ec89f48730eeb694e686be8 Mon Sep 17 00:00:00 2001
From: Kenmegne <stephanie.kenmegne@gmail.com>
Date: Thu, 18 Jun 2026 15:40:06 +0000
Subject: [PATCH] add fdx-commons and fdx-consultation
---
fdx-consultation/fdxconsultation-core-impl/src/main/java/com/megatim/fdxconsultation/core/impl/stats/ConvertedCriteriaEntityFromView.java | 89 ++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 89 insertions(+), 0 deletions(-)
diff --git a/fdx-consultation/fdxconsultation-core-impl/src/main/java/com/megatim/fdxconsultation/core/impl/stats/ConvertedCriteriaEntityFromView.java b/fdx-consultation/fdxconsultation-core-impl/src/main/java/com/megatim/fdxconsultation/core/impl/stats/ConvertedCriteriaEntityFromView.java
new file mode 100644
index 0000000..c291cf5
--- /dev/null
+++ b/fdx-consultation/fdxconsultation-core-impl/src/main/java/com/megatim/fdxconsultation/core/impl/stats/ConvertedCriteriaEntityFromView.java
@@ -0,0 +1,89 @@
+package com.megatim.fdxconsultation.core.impl.stats;
+
+import com.megatim.fdxcommons.model.pojo.BetweenOperatorValues;
+import com.megatim.fdxcommons.model.pojo.CriteriaEntityFromView;
+import com.megatim.fdxconsultation.model.stats.CriteriaEntityPersisted;
+
+/**
+ *
+ * @author Gabuntu
+ */
+public class ConvertedCriteriaEntityFromView {
+
+ private final CriteriaEntityPersisted criteriaEntityPersisted;
+
+ public ConvertedCriteriaEntityFromView(CriteriaEntityPersisted criteriaEntityPersisted) {
+ this.criteriaEntityPersisted = criteriaEntityPersisted;
+ }
+
+ public CriteriaEntityFromView criteriaEntityFromView() {
+ return buildCriterion(criteriaEntityPersisted);
+ }
+
+ private CriteriaEntityFromView buildCriterion(CriteriaEntityPersisted persisted) {
+
+ if (persisted != null) {
+
+ CriteriaEntityFromView criterion = new CriteriaEntityFromView();
+
+ if (persisted.getSubCriterias() != null && !persisted.getSubCriterias().isEmpty()) {
+
+ criterion.setCriteriaLogicConnector(persisted.getCriteriaLogicConnector());
+ persisted.getSubCriterias().stream().forEach(c -> {
+ CriteriaEntityFromView criterionfromView = buildCriterion(c);
+ if (criterionfromView != null) {
+ criterion.getSubCriterias().add(criterionfromView);
+ }
+ });
+
+ return criterion;
+
+ } else {
+
+ criterion.setNomColonne(persisted.getNomColonne());
+ criterion.setOperateur(persisted.getOperateur());
+ criterion.setCriteriaValue(criteriaValue(persisted));
+
+ return criterion;
+ }
+
+ }
+
+ return null;
+ }
+
+ public Object criteriaValue(CriteriaEntityPersisted persisted) {
+
+ if (persisted.getCriteriaDateListValue() != null && !persisted.getCriteriaDateListValue().isEmpty()) {
+ return persisted.getCriteriaDateListValue();
+
+ } else if (persisted.getCriteriaDateLowerBound() != null && persisted.getCriteriaDateUpperBound() != null) {
+ return new BetweenOperatorValues(persisted.getCriteriaDateLowerBound(), persisted.getCriteriaDateUpperBound());
+
+ } else if (persisted.getCriteriaDateValue() != null) {
+ return persisted.getCriteriaDateValue();
+
+ } else if (persisted.getCriteriaNumericListValue() != null && !persisted.getCriteriaNumericListValue().isEmpty()) {
+ return persisted.getCriteriaNumericListValue();
+
+ } else if (persisted.getCriteriaNumericLowerBound() != null && persisted.getCriteriaNumericUpperBound() != null) {
+ return new BetweenOperatorValues(persisted.getCriteriaNumericLowerBound(), persisted.getCriteriaNumericUpperBound());
+
+ } else if (persisted.getCriteriaNumericValue() != null) {
+ return persisted.getCriteriaNumericValue();
+
+ } else if (persisted.getCriteriaStringListValue() != null && !persisted.getCriteriaStringListValue().isEmpty()) {
+ return persisted.getCriteriaStringListValue();
+
+ } else if (persisted.getCriteriaStringLowerBound() != null && persisted.getCriteriaStringUpperBound() != null) {
+ return new BetweenOperatorValues(persisted.getCriteriaStringLowerBound(), persisted.getCriteriaStringUpperBound());
+
+ } else if (persisted.getCriteriaStringValue() != null) {
+ return persisted.getCriteriaStringValue();
+
+ } else {
+ return null;
+ }
+ }
+
+}
--
Gitblit v1.10.0