Пример #1
0
        public Task <int> Create(GeneratorSettingsModel model)
        {
            var settings = new HttpSettings($"{this._url}", null, null, "Generator setting creating");

            var body = new HttpBody <GeneratorSettingsModel>(model);

            return(this._http.CreateInt <GeneratorSettingsModel>(settings, body));
        }
Пример #2
0
        public void LoadData()
        {
            var generatorSettingsModel = new GeneratorSettingsModel {
                PageName = "LoginPage", DriverName = "driver"
            };

            this.GeneratorSettingsModel = generatorSettingsModel;
        }
Пример #3
0
        /// <summary>
        /// Update csomor with the given Id
        /// </summary>
        /// <param name="id">Csomor Id</param>
        /// <param name="model">Settings model</param>
        public void Update(int id, GeneratorSettingsModel model)
        {
            var user = this._utils.GetCurrentUser();

            var csomor = this._context.Csomors.Find(id);

            if (csomor == null)
            {
                throw this._logger.LogInvalidThings(user, GeneratorServiceSource, CsomorThing, CsomorDoesNotExistMessage);
            }

            csomor.Works.ToList().ForEach(x =>
            {
                x.Tables.ToList().ForEach(y =>
                {
                    y.PersonId = null;
                    this._context.CsomorWorkTables.Update(y);
                });
            });
            csomor.Persons.ToList().ForEach(x =>
            {
                x.Tables.ToList().ForEach(y =>
                {
                    y.WorkId = null;
                    this._context.CsomorPersonTables.Update(y);
                });
            });
            this._context.SaveChanges();

            csomor.Works.ToList().ForEach(x =>
            {
                this._context.CsomorWorkTables.RemoveRange(x.Tables);
                this._context.CsomorWorks.Remove(x);
                this._context.SaveChanges();
            });

            csomor.Persons.ToList().ForEach(x =>
            {
                this._context.CsomorPersonTables.RemoveRange(x.Tables);
                this._context.CsomorPersons.Remove(x);
                this._context.SaveChanges();
            });

            this._mapper.Map(model, csomor);

            csomor.Persons       = this._mapper.Map <List <CsomorPerson> >(model.Persons);
            csomor.Works         = this._mapper.Map <List <CsomorWork> >(model.Works);
            csomor.LastUpdate    = DateTime.Now;
            csomor.LastUpdaterId = user.Id;


            this._context.Csomors.Update(csomor);
            this._context.SaveChanges();

            this._logger.LogInformation(user, GeneratorServiceSource, "update csomor", csomor.Id);
        }
Пример #4
0
 public GeneratorSettings(int?id, GeneratorSettingsModel model)
 {
     this.Id          = id;
     this.Title       = model.Title;
     this.Start       = model.Start;
     this.Finish      = model.Finish;
     this.MaxWorkHour = model.MaxWorkHour;
     this.MinRestHour = model.MinRestHour;
     this.Persons     = model.Persons.Select(x => new Person(x)).ToList();
     this.Works       = model.Works.Select(x => new Work(x)).ToList();
 }
Пример #5
0
        public Task <bool> Update(int id, GeneratorSettingsModel model)
        {
            var pathParams = new HttpPathParameters();

            pathParams.Add(id, -1);

            var settings = new HttpSettings($"{this._url}", null, pathParams, "Generator setting updating");

            var body = new HttpBody <GeneratorSettingsModel>(model);

            return(this._http.Update <GeneratorSettingsModel>(settings, body));
        }
Пример #6
0
        /// <summary>
        /// Create Csomor from settings model
        /// </summary>
        /// <param name="model">Settings model</param>
        public int Create(GeneratorSettingsModel model)
        {
            var user = this._utils.GetCurrentUser();

            var csomor = this._mapper.Map <Csomor>(model);

            csomor.OwnerId = user.Id;

            model.Persons.ForEach(x =>
            {
                var person = csomor.Persons.FirstOrDefault(y => y.Id == x.Id);

                person.IgnoredWorks = new List <IgnoredWork>();

                x.IgnoredWorks.ForEach(y =>
                {
                    var ignored = new IgnoredWork
                    {
                        PersonId = x.Id,
                        WorkId   = y
                    };

                    person.IgnoredWorks.Add(ignored);
                });
            });

            csomor.Persons = this._mapper.Map <List <CsomorPerson> >(model.Persons);
            csomor.Works   = this._mapper.Map <List <CsomorWork> >(model.Works);

            this._context.Csomors.Add(csomor);
            this._context.SaveChanges();

            this._logger.LogInformation(user, GeneratorServiceSource, "create csomor", csomor.Id);

            return(csomor.Id);
        }
Пример #7
0
        public IActionResult Update([FromRoute] int id, [FromBody] GeneratorSettingsModel model)
        {
            this._generatorService.Update(id, model);

            return(this.Ok());
        }
Пример #8
0
 public IActionResult Create([FromBody] GeneratorSettingsModel model)
 {
     return(this.Ok(this._generatorService.Create(model)));
 }