Skip to content

Commit 2e71558

Browse files
Fix line name modification + rework LineModification dialog (#3260)
Signed-off-by: Mathieu DEHARBE <[email protected]>
1 parent bdda66c commit 2e71558

File tree

5 files changed

+47
-43
lines changed

5 files changed

+47
-43
lines changed

src/components/dialogs/limits/limits-pane-utils.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,15 @@ import { isNodeBuilt } from '../../graph/util/model-functions';
2929
import {
3030
AttributeModification,
3131
CurrentLimits,
32+
LineModificationInfos,
3233
OperationalLimitsGroup,
3334
OperationType,
3435
TemporaryLimit,
3536
} from '../../../services/network-modification-types';
3637
import { CurrentTreeNode } from '../../graph/tree-node.type';
3738
import { BranchInfos } from '../../../services/study/network-map.type';
3839
import { areOperationalLimitsGroupUnique, OperationalLimitsId } from './limits-utils';
39-
import { LineModificationEditData } from '../network-modifications/line/modification/line-modification-type';
40+
import { LineModificationFormInfos } from '../network-modifications/line/modification/line-modification-type';
4041

4142
const limitsGroupValidationSchema = (isModification: boolean) => ({
4243
[ID]: yup.string().nonNullable().required(),
@@ -225,10 +226,10 @@ export const updateTemporaryLimits = (
225226
};
226227

227228
/**
228-
* extract data loaded from the map server and merge it with local data in order to fill the operaitonal liits groups modification interface
229+
* extract data loaded from the map server and merge it with local data in order to fill the operational limits groups modification interface
229230
*/
230231
export const updateOpLimitsGroups = (
231-
formBranchModification: LineModificationEditData,
232+
formBranchModification: LineModificationFormInfos,
232233
mapServerBranch: BranchInfos
233234
): OperationalLimitsGroup[] => {
234235
let updatedOpLG: OperationalLimitsGroup[] = formBranchModification.limits.operationalLimitsGroups ?? [];
@@ -367,7 +368,7 @@ export function addOperationTypeToSelectedOpLG(
367368
export const addModificationTypeToOpLimitsGroups = (
368369
limitsGroups: OperationalLimitsGroup[],
369370
networkLine: BranchInfos | null,
370-
editData: LineModificationEditData | null | undefined,
371+
editData: LineModificationInfos | null | undefined,
371372
currentNode: CurrentTreeNode
372373
) => {
373374
let modificationLimitsGroups: OperationalLimitsGroup[] = sanitizeLimitsGroups(limitsGroups);

src/components/dialogs/network-modifications/line/modification/line-modification-dialog.tsx

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,13 @@ import { UUID } from 'crypto';
101101
import { CurrentTreeNode } from '../../../../graph/tree-node.type';
102102
import { BranchInfos } from '../../../../../services/study/network-map.type';
103103
import { useIntl } from 'react-intl';
104-
import { LineModificationEditData } from './line-modification-type';
104+
import { LineModificationFormInfos } from './line-modification-type';
105+
import { LineModificationInfos } from '../../../../../services/network-modification-types';
106+
import { toModificationOperation } from '../../../../utils/utils';
105107

106108
export interface LineModificationDialogProps {
107109
// contains data when we try to edit an existing hypothesis from the current node's list
108-
editData: LineModificationEditData | null | undefined;
110+
editData: LineModificationInfos | null | undefined;
109111
// Used to pre-select an equipmentId when calling this dialog from the SLD or network map
110112
defaultIdValue: string;
111113
studyUuid: UUID;
@@ -183,7 +185,7 @@ const LineModificationDialog = ({
183185
const { reset, setValue, getValues } = formMethods;
184186

185187
const fromEditDataToFormValues = useCallback(
186-
(lineModification: LineModificationEditData) => {
188+
(lineModification: LineModificationInfos) => {
187189
if (lineModification?.equipmentId) {
188190
setSelectedId(lineModification.equipmentId);
189191
}
@@ -220,7 +222,7 @@ const LineModificationDialog = ({
220222
}, [fromEditDataToFormValues, editData]);
221223

222224
const onSubmit = useCallback(
223-
(line: LineModificationEditData) => {
225+
(line: LineModificationFormInfos) => {
224226
const connectivity1 = line[CONNECTIVITY]?.[CONNECTIVITY_1];
225227
const connectivity2 = line[CONNECTIVITY]?.[CONNECTIVITY_2];
226228
const characteristics = line[CHARACTERISTICS];
@@ -232,7 +234,7 @@ const LineModificationDialog = ({
232234
nodeUuid: currentNodeUuid,
233235
modificationUuid: editData?.uuid ?? '',
234236
lineId: selectedId,
235-
lineName: sanitizeString(line[EQUIPMENT_NAME]?.value) ?? '',
237+
equipmentName: toModificationOperation(sanitizeString(line[EQUIPMENT_NAME]) ?? ''),
236238
r: characteristics[R],
237239
x: characteristics[X],
238240
g1: convertOutputValue(FieldType.G1, characteristics[G1]),
@@ -245,13 +247,13 @@ const LineModificationDialog = ({
245247
editData,
246248
currentNode
247249
),
248-
selectedLimitsGroup1: addOperationTypeToSelectedOpLG(
250+
selectedOperationalLimitsGroup1: addOperationTypeToSelectedOpLG(
249251
limits[SELECTED_LIMITS_GROUP_1],
250252
intl.formatMessage({
251253
id: 'None',
252254
})
253255
),
254-
selectedLimitsGroup2: addOperationTypeToSelectedOpLG(
256+
selectedOperationalLimitsGroup2: addOperationTypeToSelectedOpLG(
255257
limits[SELECTED_LIMITS_GROUP_2],
256258
intl.formatMessage({
257259
id: 'None',
@@ -309,7 +311,7 @@ const LineModificationDialog = ({
309311
if (line) {
310312
setLineToModify(line);
311313
reset(
312-
(formValues: LineModificationEditData) => ({
314+
(formValues: LineModificationFormInfos) => ({
313315
...formValues,
314316
...{
315317
[LIMITS]: {
@@ -344,7 +346,7 @@ const LineModificationDialog = ({
344346
}
345347
}, [selectedId, onEquipmentIdChange]);
346348

347-
const onValidationError = (errors: FieldErrors<LineModificationEditData>) => {
349+
const onValidationError = (errors: FieldErrors<LineModificationFormInfos>) => {
348350
let tabsInError: number[] = [];
349351
if (errors?.[LIMITS] !== undefined) {
350352
tabsInError.push(LineModificationDialogTab.LIMITS_TAB);

src/components/dialogs/network-modifications/line/modification/line-modification-type.ts

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,27 +6,26 @@
66
*/
77

88
import { UUID } from 'crypto';
9-
import { AttributeModification, OperationalLimitsGroup } from '../../../../../services/network-modification-types';
9+
import { OperationalLimitsGroup } from '../../../../../services/network-modification-types';
1010
import { Property } from '../../common/properties/property-utils';
1111

12-
export interface LineModificationEditData {
13-
uuid?: string;
12+
export interface LineModificationFormInfos {
1413
equipmentId?: string;
15-
equipmentName?: { value: string };
14+
equipmentName?: string;
1615
studyUuid: string;
1716
nodeUuid: UUID;
1817
modificationUuid: string;
1918
lineId: string;
2019
lineName: string | null;
21-
r: AttributeModification<number> | null;
22-
x: AttributeModification<number>;
23-
g1: AttributeModification<number>;
24-
b1: AttributeModification<number>;
25-
g2: AttributeModification<number>;
26-
b2: AttributeModification<number>;
20+
r: number;
21+
x: number;
22+
g1: number;
23+
b1: number;
24+
g2: number;
25+
b2: number;
2726
operationalLimitsGroups: OperationalLimitsGroup[];
28-
selectedOperationalLimitsGroup1: AttributeModification<string>;
29-
selectedOperationalLimitsGroup2: AttributeModification<string>;
27+
selectedOperationalLimitsGroup1: string | null;
28+
selectedOperationalLimitsGroup2: string | null;
3029
voltageLevelId1: string;
3130
busOrBusbarSectionId1: string;
3231
voltageLevelId2: string;

src/services/network-modification-types.ts

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -538,21 +538,23 @@ export interface LineCreationInfo {
538538
properties: Property[] | null;
539539
}
540540

541-
export interface LineModificationInfo {
541+
export interface LineModificationInfos {
542+
uuid?: string | null;
542543
studyUuid: string;
544+
equipmentId?: string;
545+
equipmentName?: AttributeModification<string> | null;
543546
nodeUuid: UUID;
544547
modificationUuid: string;
545548
lineId: string;
546-
lineName: string | null;
547-
r: number;
548-
x: number;
549-
g1: number;
550-
b1: number;
551-
g2: number;
552-
b2: number;
549+
r: AttributeModification<number> | null;
550+
x: AttributeModification<number> | null;
551+
g1: AttributeModification<number> | null;
552+
b1: AttributeModification<number> | null;
553+
g2: AttributeModification<number> | null;
554+
b2: AttributeModification<number> | null;
553555
operationalLimitsGroups: OperationalLimitsGroup[];
554-
selectedLimitsGroup1: AttributeModification<string> | null;
555-
selectedLimitsGroup2: AttributeModification<string> | null;
556+
selectedOperationalLimitsGroup1: AttributeModification<string> | null;
557+
selectedOperationalLimitsGroup2: AttributeModification<string> | null;
556558
voltageLevelId1: string;
557559
busOrBusbarSectionId1: string;
558560
voltageLevelId2: string;

src/services/study/network-modifications.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import {
3535
LCCCreationInfo,
3636
LccModificationInfos,
3737
LineCreationInfo,
38-
LineModificationInfo,
38+
LineModificationInfos,
3939
LinesAttachToSplitLinesInfo,
4040
LoadCreationInfo,
4141
LoadModificationInfo,
@@ -828,16 +828,16 @@ export function modifyLine({
828828
nodeUuid,
829829
modificationUuid,
830830
lineId,
831-
lineName,
831+
equipmentName,
832832
r,
833833
x,
834834
g1,
835835
b1,
836836
g2,
837837
b2,
838838
operationalLimitsGroups,
839-
selectedLimitsGroup1,
840-
selectedLimitsGroup2,
839+
selectedOperationalLimitsGroup1,
840+
selectedOperationalLimitsGroup2,
841841
voltageLevelId1,
842842
busOrBusbarSectionId1,
843843
voltageLevelId2,
@@ -859,7 +859,7 @@ export function modifyLine({
859859
p2MeasurementValidity,
860860
q2MeasurementValue,
861861
q2MeasurementValidity,
862-
}: LineModificationInfo) {
862+
}: LineModificationInfos) {
863863
let modifyLineUrl = getNetworkModificationUrl(studyUuid, nodeUuid);
864864
const isUpdate = !!modificationUuid;
865865
if (isUpdate) {
@@ -878,16 +878,16 @@ export function modifyLine({
878878
body: JSON.stringify({
879879
type: MODIFICATION_TYPES.LINE_MODIFICATION.type,
880880
equipmentId: lineId,
881-
equipmentName: toModificationOperation(lineName),
881+
equipmentName: equipmentName,
882882
r: toModificationOperation(r),
883883
x: toModificationOperation(x),
884884
g1: toModificationOperation(g1),
885885
b1: toModificationOperation(b1),
886886
g2: toModificationOperation(g2),
887887
b2: toModificationOperation(b2),
888888
operationalLimitsGroups: operationalLimitsGroups,
889-
selectedOperationalLimitsGroup1: selectedLimitsGroup1,
890-
selectedOperationalLimitsGroup2: selectedLimitsGroup2,
889+
selectedOperationalLimitsGroup1: selectedOperationalLimitsGroup1,
890+
selectedOperationalLimitsGroup2: selectedOperationalLimitsGroup2,
891891
voltageLevelId1: toModificationOperation(voltageLevelId1),
892892
busOrBusbarSectionId1: toModificationOperation(busOrBusbarSectionId1),
893893
voltageLevelId2: toModificationOperation(voltageLevelId2),

0 commit comments

Comments
 (0)