public async Task <IActionResult> PostFreio([FromBody] FreioDto freio)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var entityFreio = new Freio()
            {
                DataHora                 = System.DateTime.Now,
                KmFreioCalculado         = freio.KmFreioCalculado,
                LinhaId                  = freio.LinhaID,
                RPNFreioCalculado        = freio.RPNFreioCalculado,
                RPNPontosParadaCalculado = freio.RPNPontosParada,
                RPNRedutoresCalculado    = freio.RPNRedutores,
                RPNSemaforoCalculado     = freio.RPNSemaforo
            };

            _context.Freio.Add(entityFreio);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetFreio", new { id = entityFreio.FreioID }, entityFreio));
        }
        public async Task <IActionResult> PutFreio([FromRoute] int id, [FromBody] FreioDto freioDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var freio = await _context.Freio.FirstOrDefaultAsync(x => x.Linha.LinhaID == id);

            if (freio == null)
            {
                return(BadRequest());
            }

            freio.RPNFreioCalculado        = freioDto.RPNFreioCalculado;
            freio.RPNPontosParadaCalculado = freioDto.RPNPontosParada;
            freio.RPNSemaforoCalculado     = freioDto.RPNSemaforo;
            freio.RPNRedutoresCalculado    = freioDto.RPNRedutores;
            freio.KmFreioCalculado         = freioDto.KmFreioCalculado;
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!FreioExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }