public ActionResult Create([Bind(Include = "cotizacionServiciosID,numeroCotizacion,datosClienteEmpresa,datosClienteRut,datosClienteDomicilio,datosClienteSolicitadoPor,fecha,encabezado,descripcionServicio,valorTotal,nota,faena,tiempo")] cotizacionServicios cotizacionServicios, FormCollection form) { if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString()))) { return RedirectToAction("Index", "Home"); } cotizacionServicios.fecha = Formateador.fechaFormatoGuardar(form["fecha"].ToString()); //cotizacionServicios.fechaEscrita = cotizacionServicios.fecha.ToString("D").Split(',')[1]; cotizacionServicios.fechaEscrita = formatearString.fechaPalabras(cotizacionServicios.fecha); cotizacionServicios.anio = cotizacionServicios.fecha.Year; db.cotizacionesServicios.Add(cotizacionServicios); db.SaveChanges(); //Se obtiene el detalle de categorias int cantidadCategorias = int.Parse(form["cantidadCategorias"].ToString()); for (int i = 1; i <= cantidadCategorias; i++) { if (Request.Form.GetValues("categoria" + i) != null) { string[] categoria = Request.Form.GetValues("categoria" + i); string[] cargo = Request.Form.GetValues("cargoGeneral" + i); string[] turno = Request.Form.GetValues("turnoGeneral" + i); string[] cantidad = Request.Form.GetValues("cantidadGeneral" + i); for (int j = 0; j < cargo.Length; j++) { detalleServicioCotizacionServicios nuevo = new detalleServicioCotizacionServicios(); nuevo.categoria = categoria[0]; nuevo.cargo = cargo[j]; nuevo.turno = turno[j]; nuevo.numeroPersonas = int.Parse(cantidad[j]); nuevo.CotizacionServiciosID = cotizacionServicios.cotizacionServiciosID; db.detalleServiciosCotizacionServicios.Add(nuevo); } } } //Se obtiene el detalle de equipos string[] equipo = Request.Form.GetValues("equipoEquipo"); string[] cantidadEquipo = Request.Form.GetValues("cantidadEquipo"); for (int i = 0; i < equipo.Length; i++) { detalleEquiposCotizacionServicios nuevo = new detalleEquiposCotizacionServicios(); nuevo.equipo=equipo[i]; nuevo.cantidad = int.Parse(cantidadEquipo[i]); nuevo.CotizacionServiciosID = cotizacionServicios.cotizacionServiciosID; db.detalleEquiposCotizacionServicios.Add(nuevo); } registro Registro = new registro(); Registro.fecha = DateTime.Now; Registro.tipoAccion = "Crear"; Registro.tipoDato = "cotizacionServicios"; Registro.usuario = db.Usuarios.Find(int.Parse(Session["ID"].ToString())).nombreUsuario + " / " + db.Usuarios.Find(int.Parse(Session["ID"].ToString())).nombreCompleto; Registro.usuarioID = int.Parse(Session["ID"].ToString()); Registro.descripcion = Registro.usuario+" Crea Cotizacion de Servicios: " + cotizacionServicios.numeroCotizacion; db.Registros.Add(Registro); db.SaveChanges(); return RedirectToAction("Index"); }
public ActionResult Edit([Bind(Include = "cotizacionServiciosID,numeroCotizacion,datosClienteEmpresa,datosClienteRut,datosClienteDomicilio,datosClienteSolicitadoPor,fecha,encabezado,descripcionServicio,valorTotal,nota,faena,tiempo")] cotizacionServicios cotizacionServicios, FormCollection form) { if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString()))) { return RedirectToAction("Index", "Home"); } cotizacionServicios.fecha = Formateador.fechaFormatoGuardar(form["fecha"].ToString()); cotizacionServicios.fechaEscrita = cotizacionServicios.fecha.ToString("D").Split(',')[1]; cotizacionServicios.anio = cotizacionServicios.fecha.Year; db.cotizacionesServicios.Add(cotizacionServicios); db.Entry(cotizacionServicios).State = EntityState.Modified; db.SaveChanges(); //Se obtiene el detalle de categorias cotizacionServicios.eliminarDetalleServiciosYEquipos(); int cantidadCategorias = int.Parse(form["cantidadCategorias"].ToString()); for (int i = 1; i <= cantidadCategorias; i++) { if (Request.Form.GetValues("categoria" + i) != null) { string[] categoria = Request.Form.GetValues("categoria" + i); string[] cargo = Request.Form.GetValues("cargoGeneral" + i); string[] turno = Request.Form.GetValues("turnoGeneral" + i); string[] cantidad = Request.Form.GetValues("cantidadGeneral" + i); for (int j = 0; j < cargo.Length; j++) { detalleServicioCotizacionServicios nuevo = new detalleServicioCotizacionServicios(); nuevo.categoria = categoria[0]; nuevo.cargo = cargo[j]; nuevo.turno = turno[j]; nuevo.numeroPersonas = int.Parse(cantidad[j]); nuevo.CotizacionServiciosID = cotizacionServicios.cotizacionServiciosID; db.detalleServiciosCotizacionServicios.Add(nuevo); } } } //Se obtiene el detalle de equipos string[] equipo = Request.Form.GetValues("equipoEquipo"); string[] cantidadEquipo = Request.Form.GetValues("cantidadEquipo"); for (int i = 0; i < equipo.Length; i++) { detalleEquiposCotizacionServicios nuevo = new detalleEquiposCotizacionServicios(); nuevo.equipo = equipo[i]; nuevo.cantidad = int.Parse(cantidadEquipo[i]); nuevo.CotizacionServiciosID = cotizacionServicios.cotizacionServiciosID; db.detalleEquiposCotizacionServicios.Add(nuevo); } db.SaveChanges(); return RedirectToAction("Index"); }