Skip to content

Commit 21c92b8

Browse files
author
Slimane AMAR
committed
Add a nad positions generation mode by default
1 parent 772361b commit 21c92b8

File tree

4 files changed

+20
-11
lines changed

4 files changed

+20
-11
lines changed

src/main/java/org/gridsuite/studyconfig/server/entities/NetworkVisualizationParamEntity.java

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,10 @@
77
package org.gridsuite.studyconfig.server.entities;
88

99
import jakarta.persistence.*;
10-
import lombok.AllArgsConstructor;
11-
import lombok.Builder;
12-
import lombok.Getter;
13-
import lombok.NoArgsConstructor;
14-
import lombok.Setter;
10+
import lombok.*;
1511

1612
import java.util.UUID;
1713

18-
import static org.gridsuite.studyconfig.server.dto.NadPositionsGenerationMode.GEOGRAPHICAL_COORDINATES;
19-
2014
/**
2115
* @author David BRAQUART <david.braquart at rte-france.com>
2216
*/
@@ -62,7 +56,7 @@ public class NetworkVisualizationParamEntity {
6256
private String componentLibrary = "";
6357

6458
@Column(name = "nad_positions_generation_mode")
65-
private String nadPositionsGenerationMode = GEOGRAPHICAL_COORDINATES.name();
59+
private String nadPositionsGenerationMode = null;
6660

6761
@Column(name = "nad_positions_config_uuid")
6862
private UUID nadPositionsConfigUuid = null;

src/main/java/org/gridsuite/studyconfig/server/mapper/NetworkVisualizationParamMapper.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
*/
77
package org.gridsuite.studyconfig.server.mapper;
88

9+
import org.apache.logging.log4j.util.Strings;
910
import org.gridsuite.studyconfig.server.dto.*;
1011
import org.gridsuite.studyconfig.server.entities.NetworkVisualizationParamEntity;
1112

@@ -19,7 +20,7 @@ public final class NetworkVisualizationParamMapper {
1920
private NetworkVisualizationParamMapper() {
2021
}
2122

22-
public static NetworkVisualizationParamInfos toDto(NetworkVisualizationParamEntity entity) {
23+
public static NetworkVisualizationParamInfos toDto(NetworkVisualizationParamEntity entity, NadPositionsGenerationMode nadPositionsGenerationDefaultMode) {
2324
return new NetworkVisualizationParamInfos(
2425
entity.getId(),
2526
new MapParamInfos(
@@ -34,10 +35,15 @@ public static NetworkVisualizationParamInfos toDto(NetworkVisualizationParamEnti
3435
entity.getSubstationLayout(),
3536
entity.getComponentLibrary()
3637
),
37-
new NetworkAreaDiagramParamInfos(NadPositionsGenerationMode.valueOf(entity.getNadPositionsGenerationMode()), entity.getNadPositionsConfigUuid())
38+
new NetworkAreaDiagramParamInfos(getNadPositionsGenerationMode(entity.getNadPositionsGenerationMode(), nadPositionsGenerationDefaultMode), entity.getNadPositionsConfigUuid())
3839
);
3940
}
4041

42+
private static NadPositionsGenerationMode getNadPositionsGenerationMode(String nadPositionsGenerationMode, NadPositionsGenerationMode nadPositionsGenerationDefaultMode) {
43+
return Strings.isEmpty(nadPositionsGenerationMode) ? nadPositionsGenerationDefaultMode : NadPositionsGenerationMode.valueOf(nadPositionsGenerationMode);
44+
45+
}
46+
4147
public static NetworkVisualizationParamEntity toEntity(NetworkVisualizationParamInfos dto) {
4248
NetworkVisualizationParamEntity entity = new NetworkVisualizationParamEntity();
4349
updateEntity(entity, dto);

src/main/java/org/gridsuite/studyconfig/server/service/NetworkVisualizationsParamService.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,12 @@
88

99
import jakarta.persistence.EntityNotFoundException;
1010
import lombok.RequiredArgsConstructor;
11+
import org.gridsuite.studyconfig.server.dto.NadPositionsGenerationMode;
1112
import org.gridsuite.studyconfig.server.dto.NetworkVisualizationParamInfos;
1213
import org.gridsuite.studyconfig.server.entities.NetworkVisualizationParamEntity;
1314
import org.gridsuite.studyconfig.server.mapper.NetworkVisualizationParamMapper;
1415
import org.gridsuite.studyconfig.server.repositories.NetworkVisualizationParamRepository;
16+
import org.springframework.beans.factory.annotation.Value;
1517
import org.springframework.stereotype.Service;
1618
import org.springframework.transaction.annotation.Transactional;
1719

@@ -26,9 +28,13 @@ public class NetworkVisualizationsParamService {
2628

2729
private final NetworkVisualizationParamRepository repository;
2830

31+
@Value("${study-config.nad-positions-generation-default-mode:}")
32+
private NadPositionsGenerationMode nadPositionsGenerationDefaultMode;
33+
2934
@Transactional
3035
public UUID createDefaultParameters() {
3136
NetworkVisualizationParamEntity entity = new NetworkVisualizationParamEntity();
37+
entity.setNadPositionsGenerationMode(nadPositionsGenerationDefaultMode.toString());
3238
return repository.save(entity).getId();
3339
}
3440

@@ -62,7 +68,7 @@ public UUID duplicateParameters(UUID id) {
6268

6369
@Transactional(readOnly = true)
6470
public NetworkVisualizationParamInfos getParameters(UUID id) {
65-
return NetworkVisualizationParamMapper.toDto(findEntityById(id));
71+
return NetworkVisualizationParamMapper.toDto(findEntityById(id), nadPositionsGenerationDefaultMode);
6672
}
6773

6874
@Transactional

src/main/resources/config/application.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,6 @@ spring:
55
powsybl-ws:
66
database:
77
name: studyconfig
8+
9+
study-config:
10+
nad-positions-generation-default-mode: GEOGRAPHICAL_COORDINATES

0 commit comments

Comments
 (0)