Skip to content

Commit fa4c78b

Browse files
committed
add controles to imprt sts trajectory
1 parent af48d3e commit fa4c78b

7 files changed

Lines changed: 396 additions & 367 deletions

File tree

src/main/java/com/rte_france/antares/datamanager_back/controller/StStorageController.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,10 @@ public class StStorageController {
3030
@Operation(summary = "import sts trajectory to database ")
3131
@PostMapping("/st-storage")
3232
public ResponseEntity<TrajectoryDTO> uploadThermalCapacityTrajectory(@RequestParam("area") String area, // FR, // GB, DE, IT, ES, PT, BE, NL, LU, CH //OTHER
33-
@RequestParam(value = "technology") String technology, @RequestParam("trajectoryToUse") @Size(max = 40, message = "Trajectory name cannot exceed 40 characters") String trajectoryToUse, @RequestParam("horizon") @Pattern(regexp = "^\\d{4}-\\d{4}$") @Parameter(description = "example of horizon : 2020-2021") String horizon, @RequestParam("studyId") Integer studyId, @RequestParam("isCivilYear") boolean isCivilYear) throws IOException {
33+
@RequestParam(value = "technology") String technology,
34+
@RequestParam("trajectoryToUse") @Size(max = 40, message = "Trajectory name cannot exceed 40 characters") String trajectoryToUse,
35+
@RequestParam("horizon") @Pattern(regexp = "^\\d{4}-\\d{4}$") @Parameter(description = "example of horizon : 2020-2021") String horizon,
36+
@RequestParam("studyId") Integer studyId, @RequestParam("isCivilYear") boolean isCivilYear) throws IOException {
3437

3538
return new ResponseEntity<>(toTrajectoryDTO
3639
(stStorageFileProcessorService.processStStorageFile(trajectoryToUse, horizon, studyId, isCivilYear, area, technology)),

src/main/java/com/rte_france/antares/datamanager_back/repository/model/WarningCode.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@ public enum WarningCode {
1212
DUPLICATION_MISSING_TRAJECTORIES("duplication.missing_trajectories"),
1313
THERMAL_INSTALLED_POWER_MISSING_AREAS("thermal.installed_power_missing_areas"),
1414
THERMAL_SPECIFIC_PARAM_MISSING_AREAS("thermal.specific_param_missing_areas"),
15-
THERMAL_SPECIFIC_PARAM_ANY_CM_MR_REQUIRED("thermal.specific_param_any_cm_mr_required");
15+
THERMAL_SPECIFIC_PARAM_ANY_CM_MR_REQUIRED("thermal.specific_param_any_cm_mr_required"),
16+
STS_MISSING_AREAS("sts_missing_areas");
17+
1618
private final String value;
1719

1820
public String value() {

src/main/java/com/rte_france/antares/datamanager_back/service/StStorage/StStorageFileProcessorServiceImpl.java

Lines changed: 145 additions & 56 deletions
Large diffs are not rendered by default.

src/main/java/com/rte_france/antares/datamanager_back/util/Utils.java

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public static TrajectoryEntity buildTrajectory(Path path, int versionTrajectory,
141141
.version(versionTrajectory == 0 ? 1 : versionTrajectory + 1)
142142
.checksum(checksum)
143143
.lastModificationContentDate(LocalDateTime.ofInstant(Instant.ofEpochMilli(Files.getLastModifiedTime(path).toMillis()), ZoneId.systemDefault()))
144-
.horizon(horizon)
144+
.horizon(civilToChevalHorizon(horizon))
145145
.area(area)
146146
.technology(technology)
147147
.type(trajectoryType.name())
@@ -389,7 +389,7 @@ public static String computeChecksumByType(Path path, TrajectoryType type, Strin
389389
case LOAD, THERMAL_CAPACITY -> getFileChecksum(path.toString());
390390
case LINK -> computeLinkChecksum(path.toString(), horizon);
391391
case THERMAL_TECHNICAL_MODULATION_PARAMETER, THERMAL_ECONOMIC_COST_PARAMETER, THERMAL_ECONOMIC_PARAMETER -> "NA";
392-
case STS -> computeSheetChecksum(path.toString(), horizon.split("-")[1]);
392+
case STS -> computeSheetChecksum(path.toString(), horizon.matches("^\\d{4}-\\d{4}$") ? horizon.split("-")[1] : horizon);
393393
default -> computeSheetChecksum(path.toString(), horizon);
394394
};
395395
}
@@ -636,4 +636,15 @@ public static Path findChildDirectoryIgnoreCase(Path parent, String childName) t
636636
}
637637
}
638638
}
639+
640+
public static String civilToChevalHorizon(String horizon) {
641+
if (horizon == null) return null;
642+
String s = horizon.trim();
643+
if (s.length() == 4 && s.chars().allMatch(Character::isDigit)) {
644+
int year = Integer.parseInt(s);
645+
return String.format("%04d-%s", year - 1, s);
646+
}
647+
return s;
648+
}
649+
639650
}

src/main/resources/application-localhost.properties

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
#spring.datasource.url=jdbc:postgresql://pegase_db:5434/pegase_local_db?currentSchema=pegase_local_db_schema
77
spring.datasource.url=jdbc:postgresql://localhost:5434/pegase_local_db?currentSchema=pegase_local_db_schema
88
spring.datasource.username=postgres
9-
spring.datasource.password=
9+
spring.datasource.password=postgres
1010

1111
spring.datasource.hikari.connection-timeout=30000
1212
spring.datasource.hikari.maximum-pool-size=4
@@ -31,7 +31,7 @@ spring.liquibase.change-log=classpath:db/changelog/db.changelog-master.yaml
3131
spring.liquibase.default-schema=pegase_local_db_schema
3232
spring.liquibase.liquibase-schema=pegase_local_db_schema
3333
spring.liquibase.user=postgres
34-
spring.liquibase.password=
34+
spring.liquibase.password=postgres
3535

3636
# ===============================
3737
# = FILES
@@ -42,9 +42,9 @@ antares.datamanager.area.directory=area
4242
antares.datamanager.link.directory=link
4343
antares.datamanager.thermal.cost.directory=thermal/economic parameters/costs
4444
antares.datamanager.thermal.economic.directory=thermal/economic parameters/economic
45-
antares.datamanager.thermal.capacity.directory=thermal_capacity
46-
antares.datamanager.thermal.parameter.directory=thermal_parameter
47-
antares.datamanager.thermal.parameter.modulation.directory=thermal_parameter/param_modulation
45+
antares.datamanager.thermal.capacity.directory=thermal/installed power
46+
antares.datamanager.thermal.parameter.directory=thermal/technical parameters
47+
antares.datamanager.thermal.parameter.modulation.directory=thermal/technical parameters/param_modulation
4848
antares.datamanager.load.directory=load
4949
antares.datamanager.sts.directory=STS
5050
antares.datamanager.load.output.directory=output/load_arrows
@@ -56,7 +56,7 @@ spring.security.oauth2.resourceserver.opaquetoken.introspection-uri=http://local
5656
spring.security.oauth2.resourceserver.opaquetoken.client-id=pegase-client
5757
spring.security.oauth2.resourceserver.opaquetoken.client-secret=
5858

59-
pegase.nas.directory=tmp/mnt/nas
59+
pegase.nas.directory=/home/elazaarmou/Bureau
6060
pegase.enable.authentification=false
6161
peagse.genarator.host.url=http://localhost:8094
6262

0 commit comments

Comments
 (0)