public void ActivateAmendment(ResaAmendment amendment, bool active = true) { var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.ActivateAmendment(amendment, active); if (amendment is ResaDeleteAmendment delAmendment) { OperativeParagraphChanged?.Invoke(this, delAmendment.TargetParagraph); } else if (amendment is ResaChangeAmendment changeAmendment) { OperativeParagraphChanged?.Invoke(this, changeAmendment.TargetParagraph); } else if (amendment is ResaMoveAmendment moveAmendment) { OperativeParagraphChanged?.Invoke(this, moveAmendment.SourceParagraph); OperativeParagraphChanged?.Invoke(this, moveAmendment.VirtualParagraph); ResolutionChanged?.Invoke(this, Resolution); } else if (amendment is ResaAddAmendment addAmendment) { ResolutionChanged?.Invoke(this, Resolution); OperativeParagraphChanged?.Invoke(this, addAmendment.VirtualParagraph); } }
public void SubmitAmendment(ResaAmendment amendment) { if (amendment is ResaDeleteAmendment deleteAmendment) { var resolution = amendment.Resolution; var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.SubmitDeleteAmendment(deleteAmendment); ResolutionChanged?.Invoke(this, resolution); } else if (amendment is ResaChangeAmendment changeAmendment) { var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.SubmitChangeAmendment(changeAmendment); OperativeParagraphChanged?.Invoke(this, changeAmendment.TargetParagraph); } else if (amendment is ResaMoveAmendment moveAmendment) { var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.SubmitMoveAmendment(moveAmendment); ResolutionChanged?.Invoke(this, Resolution); } else if (amendment is ResaAddAmendment addAmendment) { var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.SubmitAddAmendment(addAmendment); ResolutionChanged?.Invoke(this, Resolution); } }
public void UpdateOperativeParagraph(ResaOperativeParagraph paragraph) { using var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.UpdateOperativeParagraph(paragraph); OperativeParagraphChanged?.Invoke(this, paragraph); }
public void RevokeChangeAmendment(ResaChangeAmendment amendment) { using var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.RevokeChangeAmendment(amendment); OperativeParagraphChanged?.Invoke(this, amendment.TargetParagraph); }
public void AddChangeAmendment(ResaOperativeParagraph paragraph, int roleId, string newText) { using var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.AddChangeAmendment(paragraph, roleId, newText); OperativeParagraphChanged?.Invoke(this, paragraph); }
private void NotifyOnAmendentChange(ResaAmendment amendment) { if (amendment is ResaDeleteAmendment delete) { OperativeParagraphChanged?.Invoke(this, delete.TargetParagraph); } else if (amendment is ResaChangeAmendment change) { OperativeParagraphChanged?.Invoke(this, change.TargetParagraph); } else if (amendment is ResaMoveAmendment move) { OperativeParagraphChanged?.Invoke(this, move.SourceParagraph); } }
public void MoveOperativeParagraphUp(ResaOperativeParagraph paragraph) { // Make update in database using var scope = serviceScopeFactory.CreateScope(); var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>(); resolutionService.MoveOperativeParagraphUp(paragraph); // Make update in exchange if (paragraph.Parent == null) { var oldIndex = this.Resolution.OperativeParagraphs.IndexOf(paragraph); this.Resolution.OperativeParagraphs.Swap(oldIndex, oldIndex - 1); OperativeParagraphChanged?.Invoke(this, paragraph); ResolutionChanged?.Invoke(this, Resolution); } else { var oldIndex = paragraph.Parent.Children.IndexOf(paragraph); paragraph.Parent.Children.Swap(oldIndex, oldIndex - 1); OperativeParagraphChanged?.Invoke(this, paragraph); ResolutionChanged?.Invoke(this, Resolution); } }