Esempio n. 1
0
        public async Task <ActionResult <Vehiculo> > PostVehiculo(Vehiculo vehiculo)
        {
            _context.Vehiculos.Add(vehiculo);
            try
            {
                PuntosxVehiculo puntosxVehiculo = new PuntosxVehiculo();
                puntosxVehiculo.MatriculaVehiculo = vehiculo.MatriculaVehiculo;
                puntosxVehiculo.PuntosAcumulados  = 0;
                _context.PuntosxVehiculos.Add(puntosxVehiculo);
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (VehiculoExists(vehiculo.MatriculaVehiculo))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }


            return(CreatedAtAction("GetVehiculo", new { id = vehiculo.MatriculaVehiculo }, vehiculo));
        }
        public async Task <ActionResult <Transaccione> > PostTransaccione(Transaccione transaccione)
        {
            double?PuntosASumar = 0;

            _context.Transacciones.Add(transaccione);
            //await _context.SaveChangesAsync();

            PuntosxVehiculo puntosxVehiculo = await _context.PuntosxVehiculos.Where(o => o.MatriculaVehiculo.Equals(transaccione.MatriculaVehiculo)).SingleOrDefaultAsync();

            if (_context.Rangos.Where(o => transaccione.CantidadRecargada >= o.MinimoRecargado && transaccione.CantidadRecargada <= o.MaximoRecargado).FirstOrDefault() != null)
            {
                PuntosASumar = _context.Rangos.Where(o => transaccione.CantidadRecargada >= o.MinimoRecargado && transaccione.CantidadRecargada <= o.MaximoRecargado).FirstOrDefault().PuntosObtenidos;
            }
            else
            {
                PuntosASumar = 0;
            }
            puntosxVehiculo.PuntosAcumulados = (int)(puntosxVehiculo.PuntosAcumulados + PuntosASumar);

            _context.Set <PuntosxVehiculo>().Update(puntosxVehiculo);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetTransacciones", new { id = transaccione.IdTransaccion }, transaccione));
        }