public async Task <ActionResult> Create(VehiculoChofer vehiculoChofer)
        {
            if (ModelState.IsValid)
            {
                if (!db.VehiculoChofer.Where(x => x.Activo == true && x.IdVehiculo == vehiculoChofer.IdVehiculo).Any())
                {
                    if (!db.VehiculoChofer.Where(x => x.Activo == true && x.IdChofer == vehiculoChofer.IdChofer).Any())
                    {
                        vehiculoChofer.FechaAsignacion = DateTime.Now;
                        vehiculoChofer.Activo          = true;

                        db.VehiculoChofer.Add(vehiculoChofer);
                        await db.SaveChangesAsync();

                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        ModelState.AddModelError("IdChofer", "El chofer ya tiene un vehículo asignado.");
                    }
                }
                else
                {
                    ModelState.AddModelError("IdVehiculo", "El vehículo ya se encuentra asignado.");
                }
            }

            ViewBag.IdChofer   = new SelectList(db.Usuario.Where(x => x.EsChofer == true && x.Activo == true).Select(x => new { IdUsuario = x.IdUsuario, Nombres = x.Nombres + " " + x.Apellidos }), "IdUsuario", "Nombres");
            ViewBag.IdVehiculo = new SelectList(db.Vehiculo.Select(x => new { idVehiculo = x.idVehiculo, placa = x.placaLetras + x.placaNumeros }), "idVehiculo", "placa", vehiculoChofer.IdVehiculo);
            return(View(vehiculoChofer));
        }
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            VehiculoChofer vehiculoChofer = await db.VehiculoChofer.FindAsync(id);

            vehiculoChofer.Activo             = false;
            vehiculoChofer.FechaDesasignacion = DateTime.Now;
            //db.VehiculoChofer.Remove(vehiculoChofer);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            VehiculoChofer vehiculoChofer = await db.VehiculoChofer.FindAsync(id);

            if (vehiculoChofer == null)
            {
                return(HttpNotFound());
            }
            return(View(vehiculoChofer));
        }