public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } _context.Attach(RelacionTecnicoSolicitud).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!RelacionTecnicoSolicitudExists(RelacionTecnicoSolicitud.TecnicoId)) { return(NotFound()); } else { throw; } } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } _context.Attach(Puesto).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PuestoExists(Puesto.PropuestaID)) { return(NotFound()); } else { throw; } } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { _context.Attach(Costo).State = EntityState.Modified; await _context.SaveChangesAsync(); // Se actualiza el costo en todas las solicitudes activas. foreach (Solicitud sol in _context.Solicitudes) { sol.ActualizarCostoSolicitudActiva(); } // Se guarda la actualizacion de precios en las solicitudes. await _context.SaveChangesAsync(); return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } _context.Tecnicos.Add(Tecnico); await _context.SaveChangesAsync(); return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } _context.RelacionProyectoSolicitudes.Add(RelacionProyectoSolicitud); await _context.SaveChangesAsync(); return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostDesasignarTecnicoAsync(int id, string TecnicoIdDesasignado) { // Selecciono la solicitud para actualizar. Solicitud solicitudActualizada = await _context.Solicitudes .Include(s => s.RelacionTecnicoSolicitud) .ThenInclude(r => r.Tecnico) .FirstOrDefaultAsync(m => m.SolicitudId == id); // Selecciono el técnico especifico a partir de la solicitud involucrada. var TecnicoDesasignado = solicitudActualizada.RelacionTecnicoSolicitud .Where(a => a.TecnicoId == TecnicoIdDesasignado).FirstOrDefault(); // Sí tiene un técnico, lo elimino de la solicitud. if (TecnicoDesasignado != null) { solicitudActualizada.RelacionTecnicoSolicitud.Remove(TecnicoDesasignado); } // Guardar los cambios await _context.SaveChangesAsync(); // Recargar la página al index. return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } _context.Attach(Solicitud).State = EntityState.Modified; try { await _context.SaveChangesAsync(); // Se actualiza el costo en todas las solicitudes activas. foreach (Solicitud sol in _context.Solicitudes) { sol.ActualizarCostoSolicitudActiva(); } // Se guarda la actualizacion de precios en las solicitudes. await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SolicitudExists(Solicitud.SolicitudId)) { return(NotFound()); } else { throw; } } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync(string id) { if (id == null) { return(NotFound()); } RelacionClienteProyecto = await _context.RelacionClienteProyectos.FindAsync(id); if (RelacionClienteProyecto != null) { _context.RelacionClienteProyectos.Remove(RelacionClienteProyecto); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } Propuesta = await _context.Propuestas.FindAsync(id); if (Propuesta != null) { _context.Propuestas.Remove(Propuesta); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } Solicitud = await _context.Solicitudes.FindAsync(id); if (Solicitud != null) { _context.Solicitudes.Remove(Solicitud); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync(string id) { if (id == null) { return(NotFound()); } ApplicationUser = await _context.Users.FindAsync(id); if (ApplicationUser != null) { _context.Users.Remove(ApplicationUser); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync(int?id) { if (id == null) { return(NotFound()); } Tecnico = await _context.Tecnico.FindAsync(id); if (Tecnico != null) { _context.Tecnico.Remove(Tecnico); await _context.SaveChangesAsync(); } return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } _context.Solicitudes.Add(Solicitud); await _context.SaveChangesAsync(); // se agrega la solicitud como observador. Costo costo = new Costo(); costo.Agregar(Solicitud); return(RedirectToPage("./Index")); }
public async Task <IActionResult> OnPostAsync(int?id) { if (!ModelState.IsValid) { return(Page()); } var propuestaToUpdate = await _context.Propuestas .Include(l => l.Puesto) .Include(a => a.AsiganrTecnico) .ThenInclude(a => a.Tecnico) .FirstOrDefaultAsync(m => m.ID == id); if (await TryUpdateModelAsync <Propuesta>( propuestaToUpdate, "Propuesta", i => i.Title, i => i.FechaLimite, i => i.CostoEstimado, i => i.EstimadoDeHora, i => i.Puesto, i => i.Estado, i => i.DescripcionDeLaPropuesta, i => i.FechaLimite, i => i.NivelDeDificutad )) { if (String.IsNullOrWhiteSpace(propuestaToUpdate.Puesto?.TrabajoName)) { propuestaToUpdate.Puesto = null; } Propuesta.NivelDeDificutad = IgnisData.NivelesDeDificultad[NiveleDif]; /*Utilizamos el patron de polimorfismo ya que como las clases CalculadorBasico y CalculadorAvanzado inplmentan la inteface ICalcular realiza una operacion, la clase que se instancie cambara el precio hora. */ if (IgnisData.NivelesDeDificultad[NiveleDif] == IgnisData.NivelesDeDificultad[0]) { this.Calculcosto = new CalculadorBasico(Propuesta); } else if (IgnisData.NivelesDeDificultad[NiveleDif] == IgnisData.NivelesDeDificultad[1]) { this.Calculcosto = new CalculadorAvanzado(Propuesta); } /*Caprurams la excepción que puede causar si no se recibe el valor correcto desde l form y redirigimos a la index */ try { Propuesta.CostoEstimado = this.Calculcosto.Calcular(); } catch { return(NotFound()); } _context.Attach(propuestaToUpdate).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PropuestaExists(Propuesta.ID)) { return(NotFound()); } else { throw; } } } return(RedirectToPage("./Index")); }