public bool Validate(string rota, string authorization)
        {
            var retorno = new HttpResult <IActionResult>();

            var serviceRotaToggle  = ServiceRotaToggleEntityService.GetAll().Result.Where(x => x.Rota == rota).FirstOrDefault();
            var toggle             = ToggleEntityService.Get(serviceRotaToggle.Toggle.Id);
            var toggleServiceRotas = toggle.Result.ToggleServiceRotas;
            var serviceRota        = ServiceRotaEntityService.GetAll().Result.Where(x => x.Authorization == authorization).FirstOrDefault();

            if (toggleServiceRotas != null && toggleServiceRotas.Count == 0)
            {
                return(true);
            }

            foreach (var toggleServiceRota in toggle.Result.ToggleServiceRotas)
            {
                if (toggleServiceRota.ServiceRota.Id == serviceRota.Id)
                {
                    return(true);
                }

                continue;
            }

            return(false);
        }
示例#2
0
        public async Task <HttpResult <ServiceRotaToggle> > Update(int id, string rota, int toggleId)
        {
            var retorno = new HttpResult <ServiceRotaToggle>();

            var retornoServiceRotaToggleGet = await ServiceRotaToggleEntityService.Get(id);

            if (retornoServiceRotaToggleGet == null)
            {
                return(retorno.SetHttpStatusToNotFound());
            }

            var retornoToggleGet = ToggleEntityService.Get(toggleId);

            if (retornoToggleGet == null)
            {
                return(retorno.SetHttpStatusToNotFound());
            }

            retornoServiceRotaToggleGet.Toggle = retornoToggleGet.Result;
            retornoServiceRotaToggleGet.Rota   = rota;

            _dbContext.SaveChanges();

            retorno.Response = retornoServiceRotaToggleGet;
            retorno.SetHttpStatusToOk();

            return(retorno);
        }
示例#3
0
        public async Task <HttpResult <Toggle> > Get(int id)
        {
            var retorno = new HttpResult <Toggle>();

            var retornoToggleGet = await ToggleEntityService.Get(id);

            if (retornoToggleGet == null)
            {
                return(retorno.SetHttpStatusToNotFound());
            }

            retorno.Response = retornoToggleGet;
            retorno.SetHttpStatusToOk();

            return(retorno);
        }
示例#4
0
        public async Task <HttpResult <List <Toggle> > > GetAll()
        {
            var retorno = new HttpResult <List <Toggle> >();

            retorno.Response = new List <Toggle>();

            var retornoToggleGetAll = ToggleEntityService.GetAll();

            if (retornoToggleGetAll != null && retornoToggleGetAll.Result != null)
            {
                retorno.Response.AddRange(retornoToggleGetAll.Result);
            }

            retorno.SetHttpStatusToOk();

            return(retorno);
        }
示例#5
0
        public async Task <HttpResult <Toggle> > Update(int id, string description, bool flag, List <int> idsServiceRota)
        {
            var retorno = new HttpResult <Toggle>();

            var retornoToggleGet = await ToggleEntityService.Get(id);

            if (retornoToggleGet == null)
            {
                return(retorno.SetHttpStatusToNotFound());
            }

            retornoToggleGet.Description = description;
            retornoToggleGet.Flag        = flag;

            if (idsServiceRota != null && idsServiceRota.Count > 0)
            {
                retornoToggleGet.ToggleServiceRotas = null;
                retornoToggleGet.ToggleServiceRotas = new List <ToggleServiceRota>();
            }

            foreach (var idServiceRota in idsServiceRota)
            {
                var retornoServiceRotaGet = ServiceRotaEntityService.Get(idServiceRota);
                if (retornoServiceRotaGet == null)
                {
                    return(retorno.SetHttpStatusToNotFound());
                }

                var toggleServiceRota = new ToggleServiceRota();
                toggleServiceRota.ServiceRota = retornoServiceRotaGet.Result;
                toggleServiceRota.Toggle      = retornoToggleGet;

                retornoToggleGet.ToggleServiceRotas.Add(toggleServiceRota);
            }

            _dbContext.SaveChanges();

            retorno.Response = retornoToggleGet;
            retorno.SetHttpStatusToOk();

            return(retorno);
        }
示例#6
0
        public async Task <HttpResult <Toggle> > Delete(int id)
        {
            var retorno = new HttpResult <Toggle>();

            var retornoToggleGet = await ToggleEntityService.Get(id);

            if (retornoToggleGet == null)
            {
                return(retorno.SetHttpStatusToNotFound());
            }

            retornoToggleGet.Active = false;

            _dbContext.SaveChanges();

            retorno.Response = retornoToggleGet;
            retorno.SetHttpStatusToOk();

            return(retorno);
        }
示例#7
0
        public HttpResult <ServiceRotaToggle> Create(ServiceRotaToggle serviceRotaToggle, int toggleId)
        {
            var retorno = new HttpResult <ServiceRotaToggle>();

            var retornoToggleGet = ToggleEntityService.Get(toggleId);

            if (retornoToggleGet == null)
            {
                return(retorno.SetHttpStatusToNotFound());
            }

            serviceRotaToggle.Toggle = retornoToggleGet.Result;

            _dbContext.Context.ServiceRotaToggle.Add(serviceRotaToggle);

            _dbContext.SaveChanges();

            retorno.Response = serviceRotaToggle;
            retorno.SetHttpStatusToCreated();

            return(retorno);
        }