public int?CreateTemplateIssues(TemplateCreateApiRequestModel model)
        {
            var issuesWithSeriesId = this.dbContext.Series.Include(s => s.Issues).Select(s => new { s.Id, s.Issues }).FirstOrDefault(s => s.Id == model.SeriesId);

            if (issuesWithSeriesId.Issues.Any() || model.NumberOfEntities < 1)
            {
                return(null);
            }

            var templateIssues = new Issue[model.NumberOfEntities];

            for (int i = 0; i < model.NumberOfEntities; i++)
            {
                var templateIssue = new Issue
                {
                    Number   = i + 1,
                    SeriesId = model.SeriesId,
                };

                templateIssues[i] = templateIssue;
            }

            this.dbContext.Issues.AddRange(templateIssues);
            this.dbContext.SaveChanges();

            return(model.NumberOfEntities);
        }
        public int?CreateTemplateVolumes(TemplateCreateApiRequestModel model)
        {
            if (model.NumberOfEntities < 1)
            {
                return(-1);
            }

            var templateVolumes = new Volume[model.NumberOfEntities];

            for (int i = 0; i < model.NumberOfEntities; i++)
            {
                var templateVolume = new Volume
                {
                    Number   = i + 1,
                    SeriesId = model.SeriesId,
                };

                templateVolumes[i] = templateVolume;
            }

            this.dbContext.Volumes.AddRange(templateVolumes);
            this.dbContext.SaveChanges();

            return(model.NumberOfEntities);
        }
Esempio n. 3
0
        public int?CreateTemplateArcs(TemplateCreateApiRequestModel model)
        {
            if (model.NumberOfEntities < 1)
            {
                return(null);
            }

            var templateArcs = new Arc[model.NumberOfEntities];

            for (int i = 0; i < model.NumberOfEntities; i++)
            {
                var templateArc = new Arc
                {
                    Number   = i + 1,
                    SeriesId = model.SeriesId,
                };

                templateArcs[i] = templateArc;
            }

            this.dbContext.Arcs.AddRange(templateArcs);
            this.dbContext.SaveChanges();

            return(model.NumberOfEntities);
        }
Esempio n. 4
0
        public ActionResult <int> CreateVolumes(TemplateCreateApiRequestModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.BadRequest());
            }

            var numberOfVolumesCreated = this.volumeTemplateCreationService.CreateTemplateVolumes(model);

            if (numberOfVolumesCreated == null)
            {
                return(this.BadRequest());
            }

            this.cache.RemoveSeriesDetails(model.SeriesId);

            return(numberOfVolumesCreated);
        }