Skip to content

Commit 7bb7385

Browse files
committed
Merge branch 'main' into devRawDataProcessing
2 parents aeecb7c + 10fc979 commit 7bb7385

File tree

72 files changed

+2032
-1716
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+2032
-1716
lines changed

CHANGELOG.md

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
11
# Changelog
22

3+
## 1.4.0 [2025-02-18]
4+
5+
### Changed
6+
- Rename all identifiers and refactor values
7+
### Fixed
8+
- Bug on export of data to Kraftwerk
9+
### Updated
10+
- pitest 1.18.2
11+
- springdoc 2.8.5
12+
- cucumber 7.21.1
13+
314
## 1.3.2 [2025-01-31]
415

516
### Added
@@ -213,4 +224,4 @@ First production version
213224
- Fix issue with variables that are collected but not present in DDI specifications
214225

215226
## 1.0.0 - [2024-01-17]
216-
- First release
227+
- First release

pom.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<modelVersion>4.0.0</modelVersion>
55
<groupId>fr.insee.genesis</groupId>
66
<artifactId>genesis-api</artifactId>
7-
<version>1.3.2</version>
7+
<version>1.4.0</version>
88
<packaging>jar</packaging>
99
<name>genesis-api</name>
1010

@@ -16,9 +16,9 @@
1616

1717
<properties>
1818
<java.version>21</java.version>
19-
<springdoc.version>2.8.4</springdoc.version>
19+
<springdoc.version>2.8.5</springdoc.version>
2020
<mapstruct.version>1.6.3</mapstruct.version>
21-
<cucumber.version>7.21.0</cucumber.version>
21+
<cucumber.version>7.21.1</cucumber.version>
2222
<!-- Proprietes sonar -->
2323
<jacoco.version>0.8.12</jacoco.version>
2424
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
@@ -29,7 +29,7 @@
2929
</sonar.exclusions>
3030
<skipSurefireReport>true</skipSurefireReport>
3131
<!-- Pi Test-->
32-
<pitest.version>1.17.4</pitest.version>
32+
<pitest.version>1.18.2</pitest.version>
3333
<pitest.junit.version>1.2.1</pitest.junit.version>
3434
<jackson.version>2.18.2</jackson.version>
3535
<bpm.version>1.0.5</bpm.version>

src/main/java/fr/insee/genesis/Constants.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ public class Constants {
44

55
public static final String XSLT_STRUCTURED_VARIABLES = "xslt/structured-variables.xsl";
66
public static final String ROOT_GROUP_NAME = "RACINE";
7-
public static final String ROOT_IDENTIFIER_NAME = "IdUE";
7+
public static final String ROOT_IDENTIFIER_NAME = "interrogationId";
88
public static final String METADATA_SEPARATOR = ".";
99
public static final String DATE_REGEX = "(^([0-9]{4})[\\-\\/]([0-9]|1[0-2]|0[1-9])[\\-\\/]([0-9]|[0-2][0-9]|3[0-1])$)|" +
1010
"(^([0-9]|[0-2][0-9]|3[0-1])[\\-\\/]([0-9]|1[0-2]|0[1-9])[\\-\\/]([0-9]{4})$)";

src/main/java/fr/insee/genesis/controller/adapter/LunaticJsonAdapter.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ public class LunaticJsonAdapter {
1313

1414
public SurveyUnitModel convert(LunaticJsonSurveyUnit su){
1515
return SurveyUnitModel.builder()
16-
.idQuest(su.getIdQuest())
17-
.idCampaign("")
18-
.idUE(su.getIdUE())
16+
.questionnaireId(su.getQuestionnaireId())
17+
.campaignId("")
18+
.interrogationId(su.getInterrogationId())
1919
.state(DataState.COLLECTED)
2020
.mode(Mode.WEB)
2121
.recordDate(LocalDateTime.now())

src/main/java/fr/insee/genesis/controller/adapter/LunaticXmlAdapter.java

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -23,34 +23,34 @@ public class LunaticXmlAdapter {
2323
* Convert a Lunatic XML survey unit into a genesis survey unit model
2424
* @param su Lunatic XML survey unit to convert
2525
* @param variablesMap variable definitions (used for loops)
26-
* @param idCampaign survey id
26+
* @param campaignId survey id
2727
* @return Genesis SurveyUnitModels for each data state
2828
*/
29-
public static List<SurveyUnitModel> convert(LunaticXmlSurveyUnit su, VariablesMap variablesMap, String idCampaign, Mode mode){
29+
public static List<SurveyUnitModel> convert(LunaticXmlSurveyUnit su, VariablesMap variablesMap, String campaignId, Mode mode){
3030
//Get COLLECTED Data and external variables
3131
List<SurveyUnitModel> surveyUnitModelList = new ArrayList<>();
32-
SurveyUnitModel surveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, idCampaign, DataState.COLLECTED, mode);
32+
SurveyUnitModel surveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, campaignId, DataState.COLLECTED, mode);
3333
getExternalDataFromSurveyUnit(su, surveyUnitModel, variablesMap);
3434

3535
surveyUnitModelList.add(surveyUnitModel);
3636

3737
//Get data from other states
38-
SurveyUnitModel editedSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, idCampaign, DataState.EDITED,mode);
38+
SurveyUnitModel editedSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, campaignId, DataState.EDITED,mode);
3939
if(editedSurveyUnitModel != null){
4040
surveyUnitModelList.add(editedSurveyUnitModel);
4141
}
4242

43-
SurveyUnitModel inputedSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, idCampaign, DataState.INPUTED,mode);
43+
SurveyUnitModel inputedSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, campaignId, DataState.INPUTED,mode);
4444
if(inputedSurveyUnitModel != null){
4545
surveyUnitModelList.add(inputedSurveyUnitModel);
4646
}
4747

48-
SurveyUnitModel forcedSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, idCampaign, DataState.FORCED,mode);
48+
SurveyUnitModel forcedSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, campaignId, DataState.FORCED,mode);
4949
if(forcedSurveyUnitModel != null){
5050
surveyUnitModelList.add(forcedSurveyUnitModel);
5151
}
5252

53-
SurveyUnitModel previousSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, idCampaign, DataState.PREVIOUS,mode);
53+
SurveyUnitModel previousSurveyUnitModel = getStateDataFromSurveyUnit(su, variablesMap, campaignId, DataState.PREVIOUS,mode);
5454
if(previousSurveyUnitModel != null){
5555
surveyUnitModelList.add(previousSurveyUnitModel);
5656
}
@@ -63,15 +63,15 @@ public static List<SurveyUnitModel> convert(LunaticXmlSurveyUnit su, VariablesMa
6363
* Collects data from XML survey unit depending on the data state
6464
* @param su source XML Survey Unit
6565
* @param variablesMap variable definitions (used for loops)
66-
* @param idCampaign survey id
66+
* @param campaignId survey id
6767
* @param dataState state of the SurveyUnitModel to generate
6868
* @return SurveyUnitModel with a specific state
6969
*/
70-
private static SurveyUnitModel getStateDataFromSurveyUnit(LunaticXmlSurveyUnit su, VariablesMap variablesMap, String idCampaign, DataState dataState, Mode mode) {
70+
private static SurveyUnitModel getStateDataFromSurveyUnit(LunaticXmlSurveyUnit su, VariablesMap variablesMap, String campaignId, DataState dataState, Mode mode) {
7171
SurveyUnitModel surveyUnitModel = SurveyUnitModel.builder()
72-
.idQuest(su.getQuestionnaireModelId())
73-
.idCampaign(idCampaign)
74-
.idUE(su.getId())
72+
.questionnaireId(su.getQuestionnaireModelId())
73+
.campaignId(campaignId)
74+
.interrogationId(su.getId())
7575
.state(dataState)
7676
.mode(mode)
7777
.recordDate(LocalDateTime.now())
@@ -119,14 +119,13 @@ private static SurveyUnitModel getCollectedDataFromSurveyUnit(LunaticXmlSurveyUn
119119
continue; //Go to next data
120120
}
121121
for (int i = 1; i <= valueTypeList.size(); i++) {
122-
List<String> variableValues = new ArrayList<>();
123122
if (valueTypeList.get(i-1).getValue()!=null) {
124-
variableValues.add(valueTypeList.get(i-1).getValue());
125123
variableModels.add(VariableModel.builder()
126-
.idVar(lunaticXmlCollectedData.getVariableName())
127-
.values(variableValues)
128-
.idLoop(LoopIdentifier.getLoopIdentifier(lunaticXmlCollectedData.getVariableName(), variablesMap, i))
129-
.idParent(LoopIdentifier.getRelatedVariableName(lunaticXmlCollectedData.getVariableName(), variablesMap))
124+
.varId(lunaticXmlCollectedData.getVariableName())
125+
.value(valueTypeList.get(i-1).getValue())
126+
.scope(LoopIdentifier.getLoopIdentifier(lunaticXmlCollectedData.getVariableName(), variablesMap))
127+
.parentId(LoopIdentifier.getRelatedVariableName(lunaticXmlCollectedData.getVariableName(), variablesMap))
128+
.iteration(i)
130129
.build());
131130
dataCount++;
132131
}
@@ -157,14 +156,13 @@ private static void getExternalDataFromSurveyUnit(LunaticXmlSurveyUnit su, Surve
157156
continue; //Go to next data
158157
}
159158
for (int i = 1; i <= valueTypeList.size(); i++) {
160-
List<String> variableValues = new ArrayList<>();
161159
if (valueTypeList.get(i-1).getValue()!=null) {
162-
variableValues.add(valueTypeList.get(i-1).getValue());
163160
variableModels.add(VariableModel.builder()
164-
.idVar(lunaticXmlExternalData.getVariableName())
165-
.values(variableValues)
166-
.idLoop(LoopIdentifier.getLoopIdentifier(lunaticXmlExternalData.getVariableName(), variablesMap, i))
167-
.idParent(LoopIdentifier.getRelatedVariableName(lunaticXmlExternalData.getVariableName(), variablesMap))
161+
.varId(lunaticXmlExternalData.getVariableName())
162+
.value(valueTypeList.get(i-1).getValue())
163+
.scope(LoopIdentifier.getLoopIdentifier(lunaticXmlExternalData.getVariableName(), variablesMap))
164+
.iteration(i)
165+
.parentId(LoopIdentifier.getRelatedVariableName(lunaticXmlExternalData.getVariableName(), variablesMap))
168166
.build());
169167
}
170168
}

src/main/java/fr/insee/genesis/controller/dto/CampaignWithQuestionnaire.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010
@NoArgsConstructor
1111
@Getter
1212
public class CampaignWithQuestionnaire {
13-
private String idCampaign;
13+
private String campaignId;
1414
private Set<String> questionnaires;
1515
}

src/main/java/fr/insee/genesis/controller/dto/SurveyUnitId.java renamed to src/main/java/fr/insee/genesis/controller/dto/InterrogationId.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package fr.insee.genesis.controller.dto;
22

3-
import com.fasterxml.jackson.annotation.JsonProperty;
43
import lombok.AllArgsConstructor;
54
import lombok.Getter;
65
import lombok.NoArgsConstructor;
@@ -12,21 +11,20 @@
1211
@Getter
1312
@NoArgsConstructor
1413
@AllArgsConstructor
15-
public class SurveyUnitId {
14+
public class InterrogationId {
1615

17-
@JsonProperty("idUE")
18-
private String idUE;
16+
private String interrogationId;
1917

2018
@Override
2119
public boolean equals(Object o) {
2220
if (this == o) return true;
2321
if (o == null || getClass() != o.getClass()) return false;
24-
SurveyUnitId that = (SurveyUnitId) o;
25-
return Objects.equals(idUE, that.idUE);
22+
InterrogationId that = (InterrogationId) o;
23+
return Objects.equals(interrogationId, that.interrogationId);
2624
}
2725

2826
@Override
2927
public int hashCode() {
30-
return Objects.hash(idUE);
28+
return Objects.hash(interrogationId);
3129
}
3230
}

src/main/java/fr/insee/genesis/controller/dto/QuestionnaireWithCampaign.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010
@NoArgsConstructor
1111
@Getter
1212
public class QuestionnaireWithCampaign {
13-
private String idQuestionnaire;
13+
private String questionnaireId;
1414
private Set<String> campaigns;
1515
}

src/main/java/fr/insee/genesis/controller/dto/SurveyUnitDto.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
@Builder
99
@Data
1010
public class SurveyUnitDto {
11-
private String surveyUnitId;
11+
private String interrogationId;
1212
private List<VariableDto> collectedVariables;
1313
private List<VariableDto> externalVariables;
1414
}

src/main/java/fr/insee/genesis/controller/dto/SurveyUnitInputDto.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,9 @@
99
@Builder
1010
@Data
1111
public class SurveyUnitInputDto {
12-
13-
private String surveyUnitId;
12+
private String interrogationId;
1413
private String campaignId;
1514
private Mode mode;
16-
private String idQuestionnaire;
15+
private String questionnaireId;
1716
private List<VariableInputDto> collectedVariables;
18-
1917
}

0 commit comments

Comments
 (0)