public async Task <IActionResult> Create(TrackingDetail trackingDetail) { if (ModelState.IsValid) { TrackingHeader parent = await _context.TrackingHeaders.AsNoTracking().FirstOrDefaultAsync(h => h.TrackingID == trackingDetail.TrackingId); Vehiculo vehiculo = await _context.Vehiculos.AsNoTracking().FirstOrDefaultAsync(v => v.VIN == parent.VINVehiculo); if (vehiculo != null) { vehiculo.PrecioMinimo += trackingDetail.Costo; vehiculo.PrecioRecomendado += trackingDetail.Costo; _context.Vehiculos.Update(vehiculo); } _context.Add(trackingDetail); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Edit), "TrackingHeaders", new { @id = trackingDetail.TrackingId })); } ViewData["TrackingId"] = new SelectList(_context.TrackingHeaders, "TrackingID", "TrackingID", trackingDetail.TrackingId); ViewData["ProveedorId"] = new SelectList(_context.Proveedores, "ID", "NombreEmpresa", trackingDetail.ProveedorId); ViewData["TrabajoId"] = new SelectList(_context.Trabajos, "ID", "Descripcion", trackingDetail.TrabajoId); return(View(trackingDetail)); }
public async Task <IActionResult> DeleteConfirmed(int id) { int trackingID = 0; var trackingDetail = await _context.TrackinDetails.FindAsync(id); trackingID = trackingDetail.TrackingId; TrackingHeader parent = await _context.TrackingHeaders.AsNoTracking().FirstOrDefaultAsync(h => h.TrackingID == trackingDetail.TrackingId); Vehiculo vehiculo = await _context.Vehiculos.AsNoTracking().FirstOrDefaultAsync(v => v.VIN == parent.VINVehiculo); if (vehiculo != null) { vehiculo.PrecioMinimo -= trackingDetail.Costo; vehiculo.PrecioRecomendado -= trackingDetail.Costo; _context.Vehiculos.Update(vehiculo); } _context.TrackinDetails.Remove(trackingDetail); await _context.SaveChangesAsync(); if (trackingID != 0) { return(RedirectToAction(nameof(Edit), "TrackingHeaders", new { @id = trackingID })); } return(RedirectToAction(nameof(Index))); }
// GET: TrackingHeaders/Create public IActionResult Create() { TrackingHeader header = new TrackingHeader(); header.Fecha = DateTime.Today; ; ViewData["VINVehiculo"] = new SelectList(this._context.Vehiculos.Where(v => !this._context.TrackingHeaders.Any(t => t.VINVehiculo == v.VIN) && !v.VendidoYN && !v.ApartadoYN), "VIN", "Descripcion"); return(View(header)); }
public async Task <IActionResult> Create(TrackingHeader trackingHeader) { if (ModelState.IsValid) { _context.Add(trackingHeader); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Edit), new { ID = trackingHeader.TrackingID })); } ViewData["VINVehiculo"] = new SelectList(_context.Vehiculos, "VIN", "VIN", trackingHeader.VINVehiculo); return(View(trackingHeader)); }