예제 #1
0
        public static List<detalleHojaRutaFactura> obtenerDetalle(string idOrdenCompra, string numeroFactura)
        {
            List<detalleHojaRutaFactura> retorno = new List<detalleHojaRutaFactura>();
            SqlConnection cnx = conexion.crearConexion();

            SqlCommand cmd = new SqlCommand();
            cmd.Connection = cnx;
            cmd.CommandText = "SELECT * "
                + "FROM detalle_hoja_ruta "
                + "WHERE id_orden_compra='" + idOrdenCompra + "' AND numero_factura='" + numeroFactura + "'";
            cmd.CommandType = CommandType.Text;
            SqlDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                detalleHojaRutaFactura nueva = new detalleHojaRutaFactura();

                nueva.nombreItem = (string)dr["nombre_item"];
                nueva.idPartida = (string)dr["id_partida"];
                nueva.idFaena = (string)dr["id_faena"];
                nueva.numeroItemPartida = dr["numero_item_partida"].ToString();
                nueva.nombreItemPartida = (string)dr["nombre_item_partida"];
                nueva.cantidad = float.Parse(dr["cantidad"].ToString());

                retorno.Add(nueva);
            }

            cnx.Close();

            return retorno;
        }
예제 #2
0
        public ActionResult editarHojaRuta(FormCollection post)
        {
            if (Session["rol"] != null
                && (Session["rol"].ToString().Equals("admin") || Session["rol"].ToString().Equals("adquisiciones")))
            {
                hojaRutaFactura editada = hojaRutaFactura.obtenerHojaRuta(post["numeroOrdenCompra"].ToString(), post["numeroFactura"].ToString());

                editada.idProveedor = post["proveedor"].ToString();
                editada.numeroFactura = post["numeroFactura"].ToString();

                string fecha = post["fechaEntrega"].ToString();

                int año = int.Parse(fecha.Split('/')[2]);
                int mes = int.Parse(fecha.Split('/')[1]);
                int dia = int.Parse(fecha.Split('/')[0]);

                DateTime fechaRecepcionFactura = new DateTime(año, mes, dia, 0, 0, 0);

                editada.fechaRecepcionFactura = fechaRecepcionFactura;
                editada.nombreQuienEntrega = post["nombreQuienEntrega"].ToString();
                editada.formaPago = post["formaPago"].ToString();
                editada.idCentroCosto = post["centroCostos"].ToString();

                editada.detalle = new List<detalleHojaRutaFactura>();
                string[] cantidadEntregada = Request.Form.GetValues("cantidadEntregada");

                List<detalle_ordencompra> detalleOC = detalle_ordencompra.obtenerTodas(editada.numeroOrdenCompra);

                for (int i = 0; i < detalleOC.Count; i++)
                {
                    detalleHojaRutaFactura temp = new detalleHojaRutaFactura();

                    temp.nombreItem = detalleOC[i].id_item;
                    temp.idPartida = detalleOC[i].id_partida;
                    temp.idFaena = detalleOC[i].id_faena;
                    temp.numeroItemPartida = detalleOC[i].numero_item_partida.ToString();
                    temp.nombreItemPartida = detalleOC[i].nombre_item_partida;
                    temp.cantidad = int.Parse(cantidadEntregada[i]);

                    editada.detalle.Add(temp);
                }
                string numeroFacturaAnterior = post["numeroFacturaAnterior"].ToString();
                hojaRutaFactura.editar(editada, numeroFacturaAnterior);

                flag = 4;//Editado con éxito

                return RedirectToAction("Index");
            }
            else
            {
                return RedirectToAction("login", "Home");
            }
        }
예제 #3
0
        public ActionResult agregarHojaRuta(FormCollection post)
        {
            if (Session["rol"] != null
                && (Session["rol"].ToString().Equals("admin") || Session["rol"].ToString().Equals("adquisiciones")))
            {
                hojaRutaFactura nueva = hojaRutaFactura.obtenerHojaRuta(post["numeroOrdenCompra"].ToString(), post["numeroFactura"].ToString());

                nueva.idProveedor = post["proveedor"].ToString();
                nueva.numeroFactura = post["numeroFactura"].ToString();

                string fecha = post["fechaEntrega"].ToString();

                int año = int.Parse(fecha.Split('/')[2]);
                int mes = int.Parse(fecha.Split('/')[1]);
                int dia = int.Parse(fecha.Split('/')[0]);

                DateTime fechaRecepcionFactura = new DateTime(año, mes, dia, 0, 0, 0);

                nueva.fechaRecepcionFactura = fechaRecepcionFactura;
                nueva.nombreQuienEntrega = post["nombreQuienEntrega"].ToString();
                nueva.formaPago = post["formaPago"].ToString();
                nueva.idCentroCosto = post["centroCostos"].ToString();

                nueva.detalle = new List<detalleHojaRutaFactura>();
                string[] cantidadEntregada = Request.Form.GetValues("cantidadEntregada");
                string[] registrar = Request.Form.GetValues("guardarInventario");

                List<detalle_ordencompra> detalleOC = detalle_ordencompra.obtenerTodas(nueva.numeroOrdenCompra);
                for (int i = 0; i < detalleOC.Count; i++)
                {
                    detalleHojaRutaFactura temp = new detalleHojaRutaFactura();

                    temp.nombreItem = detalleOC[i].id_item;
                    temp.idPartida = detalleOC[i].id_partida;
                    temp.idFaena = detalleOC[i].id_faena;
                    temp.numeroItemPartida = detalleOC[i].numero_item_partida.ToString();
                    temp.nombreItemPartida = detalleOC[i].nombre_item_partida;
                    temp.cantidad = int.Parse(cantidadEntregada[i]);

                    nueva.detalle.Add(temp);

                    if (registrar[i].Equals("true"))
                    {
                        detalleInventario detalle = new detalleInventario();
                        detalle.idFaena = faena.obtenerNombreFaena(nueva.idCentroCosto);
                        detalle.cantidad = temp.cantidad;
                        detalle.nombreItem = temp.nombreItem;
                        detalleInventario.agregarDetalle(detalle);
                    }
                }

                hojaRutaFactura.agregarNueva(nueva);

                flag = 2; //Agregado correctamente

                return RedirectToAction("Index");
            }
            else
            {
                return RedirectToAction("login", "Home");
            }
        }