From ce3ba35866bcc334e7601db47b7dc4debb1faef0 Mon Sep 17 00:00:00 2001 From: Mattia Vianelli Date: Tue, 24 Oct 2023 13:44:15 +0200 Subject: [PATCH] CST-12174 added isNew Check for patterns deeltion --- .../ldn-service-form-edit.component.ts | 37 ++++++++----------- 1 file changed, 16 insertions(+), 21 deletions(-) diff --git a/src/app/admin/admin-ldn-services/ldn-service-form-edit/ldn-service-form-edit.component.ts b/src/app/admin/admin-ldn-services/ldn-service-form-edit/ldn-service-form-edit.component.ts index d642963532..fa460afbca 100644 --- a/src/app/admin/admin-ldn-services/ldn-service-form-edit/ldn-service-form-edit.component.ts +++ b/src/app/admin/admin-ldn-services/ldn-service-form-edit/ldn-service-form-edit.component.ts @@ -200,23 +200,6 @@ export class LdnServiceFormEditComponent implements OnInit { notifyServiceOutboundPatternsArray.push(this.createOutboundPatternFormGroup()); } - removeOutboundPattern(index: number): void { - const patternsArray = this.formModel.get('notifyServiceOutboundPatterns') as FormArray; - const patternGroup = patternsArray.at(index) as FormGroup; - const patternValue = patternGroup.value; - - if (index < 0 || index >= patternsArray.length || patternValue.isNew) { - patternsArray.removeAt(index); - return; - } - - - this.deletedOutboundPatterns.push(index); - - patternsArray.removeAt(index); - this.cdRef.detectChanges(); - } - toggleAutomatic(i: number) { const automaticControl = this.formModel.get(`notifyServiceInboundPatterns.${i}.automatic`); @@ -316,22 +299,34 @@ export class LdnServiceFormEditComponent implements OnInit { for (const index of this.markedForDeletionInboundPattern) { if (index >= 0 && index < patternsArray.length) { - this.deletedInboundPatterns.push(index); - patternsArray.removeAt(index); + const patternGroup = patternsArray.at(index) as FormGroup; + const patternValue = patternGroup.value; + if (patternValue.isNew) { + patternsArray.removeAt(index); + } else { + this.deletedInboundPatterns.push(index); + } } } this.markedForDeletionInboundPattern = []; } + deleteMarkedOutboundPatterns() { this.markedForDeletionOutboundPattern.sort((a, b) => b - a); const patternsArray = this.formModel.get('notifyServiceOutboundPatterns') as FormArray; for (const index of this.markedForDeletionOutboundPattern) { if (index >= 0 && index < patternsArray.length) { - this.deletedOutboundPatterns.push(index); - patternsArray.removeAt(index); + const patternGroup = patternsArray.at(index) as FormGroup; + const patternValue = patternGroup.value; + if (patternValue.isNew) { + patternsArray.removeAt(index); + } else { + + this.deletedOutboundPatterns.push(index); + } } }