Ejemplo n.º 1
0
        public ResaPreambleParagraph CreatePreambleParagraph([NotNull] ResaElement resolution, string text = "")
        {
            if (resolution == null)
            {
                throw new ArgumentNullException("This method CreatePReambleParagraph received an resolution element null");
            }

            _context.Update(resolution);

            var paragraph = new ResaPreambleParagraph()
            {
                ResaElement = resolution,
                OrderIndex  = _context.PreambleParagraphs.Count(n => n.ResolutionId == resolution.ResaElementId),
                Text        = text
            };

            if (resolution.PreambleParagraphs == null)
            {
                resolution.PreambleParagraphs = new List <ResaPreambleParagraph>();
            }
            resolution.PreambleParagraphs.Add(paragraph);
            _context.PreambleParagraphs.Add(paragraph);
            _context.SaveChanges();
            return(paragraph);
        }
Ejemplo n.º 2
0
        public void UpdatePreambleParagraph(ResaPreambleParagraph paragraph)
        {
            using var scope = serviceScopeFactory.CreateScope();
            var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>();

            resolutionService.UpdatePreambleParagraph(paragraph);
            PreambleParagraphChanged?.Invoke(this, paragraph);
        }
Ejemplo n.º 3
0
 public bool RemovePreambleParagraph(ResaPreambleParagraph paragraph)
 {
     _context.PreambleParagraphs.Remove(paragraph);
     foreach (var pAfter in _context.PreambleParagraphs.Where(n => n.ResolutionId == paragraph.ResolutionId && n.OrderIndex > paragraph.OrderIndex))
     {
         pAfter.OrderIndex--;
     }
     return(_context.SaveChanges() > 0);
 }
Ejemplo n.º 4
0
    public void TestCreatePreambleParagraph()
    {
        var resolution = _context.Resolutions.FirstOrDefault();
        var paragraph  = new ResaPreambleParagraph();

        paragraph.ResaElement = resolution;
        paragraph.OrderIndex  = _context.PreambleParagraphs.Count(n => n.ResaElement.ResaElementId == resolution.ResaElementId);
        _context.PreambleParagraphs.Add(paragraph);
        _context.SaveChanges();
        Assert.AreEqual(1, _context.PreambleParagraphs.Count());
    }
Ejemplo n.º 5
0
        public void RemovePreambleParagraph(ResaPreambleParagraph paragraph)
        {
            // Make update in database
            using var scope = serviceScopeFactory.CreateScope();
            var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>();

            resolutionService.RemovePreambleParagraph(paragraph);

            this.Resolution.PreambleParagraphs.Remove(paragraph);
            PreambleParagraphChanged?.Invoke(this, paragraph);
            ResolutionChanged?.Invoke(this, Resolution);
        }
Ejemplo n.º 6
0
    public static PreambleParagraph ToModel(this ResaPreambleParagraph sourceParagraph)
    {
        PreambleParagraph model = new PreambleParagraph()
        {
            Comment             = sourceParagraph.Comment,
            Corrected           = sourceParagraph.IsCorrected,
            IsLocked            = sourceParagraph.IsLocked,
            PreambleParagraphId = sourceParagraph.ResaPreambleParagraphId,
            Text = sourceParagraph.Text
        };

        return(model);
    }
Ejemplo n.º 7
0
        public void MovePreambleParagraphUp(ResaPreambleParagraph paragraph)
        {
            // Make update in database
            using var scope = serviceScopeFactory.CreateScope();
            var resolutionService = scope.ServiceProvider.GetRequiredService <ResolutionService>();

            resolutionService.MovePreambleParagraphUp(paragraph);

            // Make update in exchange
            var oldIndex = this.Resolution.PreambleParagraphs.IndexOf(paragraph);

            this.Resolution.PreambleParagraphs.Swap(oldIndex, oldIndex - 1);
            PreambleParagraphChanged?.Invoke(this, paragraph);
            ResolutionChanged?.Invoke(this, Resolution);
        }
Ejemplo n.º 8
0
    public void TestRemoveResolutionDeletePreambleParagraphs()
    {
        var resolution        = new ResaElement();
        var preambleParagraph = new ResaPreambleParagraph();

        resolution.PreambleParagraphs.Add(preambleParagraph);
        _context.Resolutions.Add(resolution);
        _context.SaveChanges();

        Assert.AreEqual(1, _context.Resolutions.Count());
        Assert.AreEqual(1, _context.PreambleParagraphs.Count());

        _context.Resolutions.Remove(resolution);
        _context.SaveChanges();
        Assert.AreEqual(0, _context.Resolutions.Count());
        Assert.AreEqual(0, _context.PreambleParagraphs.Count());
    }
Ejemplo n.º 9
0
        public bool MovePreambleParagraphDown(ResaPreambleParagraph paragraph)
        {
            if (paragraph.OrderIndex >= _context.PreambleParagraphs.Count(n => n.ResolutionId == paragraph.ResolutionId))
            {
                return(false);
            }

            var moveUpElement = _context.PreambleParagraphs
                                .FirstOrDefault(n => n.ResolutionId == paragraph.ResolutionId && n.OrderIndex == paragraph.OrderIndex + 1);

            if (moveUpElement != null)
            {
                moveUpElement.OrderIndex--;
            }
            paragraph.OrderIndex = paragraph.OrderIndex + 1;
            _context.SaveChanges();
            return(true);
        }
Ejemplo n.º 10
0
    public void TestAddPreambleParagraph()
    {
        var tmpResolution = _context.Resolutions
                            .FirstOrDefault();
        var newPreambleParagraph = new ResaPreambleParagraph()
        {
            Comment     = "",
            IsCorrected = false,
            IsLocked    = false,
            OrderIndex  = 0,
            ResaElement = tmpResolution,
            Text        = "New Paragraph"
        };

        _context.PreambleParagraphs.Add(newPreambleParagraph);
        _context.SaveChanges();
        Assert.AreEqual(1, _context.PreambleParagraphs.Count());
        var reloadParagraph = _context.PreambleParagraphs
                              .Include(n => n.ResaElement)
                              .FirstOrDefault(n => n.ResaPreambleParagraphId == newPreambleParagraph.ResaPreambleParagraphId);

        Assert.NotNull(reloadParagraph.ResaElement);
    }
Ejemplo n.º 11
0
 public int UpdatePreambleParagraph(ResaPreambleParagraph paragraph)
 {
     _context.Update(paragraph);
     return(_context.SaveChanges());
 }