public void InsertarFactura(ZoSolicitud solicitud)
 {
     AdoConn ado = new AdoConn();
     ArrayList parametros = new ArrayList();
     parametros.Add(solicitud.Ip);
     parametros.Add(solicitud.Pais);
     parametros.Add(solicitud.CodClie);
     parametros.Add(solicitud.FechaCompra);
     parametros.Add(solicitud.Cantidad);
     parametros.Add(solicitud.NroFactura);
     parametros.Add(solicitud.NombreUsu);
     parametros.Add(solicitud.DirUsu);
     parametros.Add(solicitud.Nro);
     parametros.Add(solicitud.Dpto);
     parametros.Add(solicitud.Piso);
     parametros.Add(solicitud.CodProv);
     parametros.Add(solicitud.Ciudad);
     parametros.Add(solicitud.Vehiculo);
     parametros.Add(solicitud.Cuotas);
     parametros.Add(solicitud.FlgProcesado);
     parametros.Add(solicitud.FecAlta);
     parametros.Add(solicitud.UsuAlta);
     parametros.Add(solicitud.Telefono);
     parametros.Add(solicitud.CodPos);
     parametros.Add(solicitud.NroTicket);
     parametros.Add(solicitud.NroCom);
     parametros.Add(solicitud.NroTarjeta);
     parametros.Add(solicitud.NroAuto);
     parametros.Add(solicitud.Precio);
     parametros.Add(solicitud.CodPromo);
     parametros.Add(solicitud.Descuento);
     parametros.Add(solicitud.CodAux);
     parametros.Add(solicitud.Nota);
     ado.ExecuteNonStoredProcedure("SP_INSERT_ZOSOLICITUD", parametros);
 }
        protected void btnLeerSolicitudes_Click(object sender, EventArgs e)
        {
            conSolicitud.BorrarSolicitudes();
            if (File.Exists(HDrutaArchivoSubido.Value))
            {
                FileInfo fi = new FileInfo(HDrutaArchivoSubido.Value);
                // Se consulta el tamaño del archivo en bytes
                if (fi.Length > 0 && (fi.Extension.ToUpper() == "TXT" || fi.Extension.ToUpper() == ".TXT"))
                {
                    try
                    {
                        using (StreamReader lector = new StreamReader(HDrutaArchivoSubido.Value))
                        {
                            // Se comienza a leer el archivo
                            while (lector.Peek() > -1)
                            {
                                string linea = lector.ReadLine();
                                if (!String.IsNullOrEmpty(linea))
                                {
                                    ZoSolicitud solicitud = new ZoSolicitud();
                                    string[] componentes = linea.Split(',');
                                    solicitud.CodSolicitud = Convert.ToInt32(componentes[0]);
                                    solicitud.CodClie = componentes[1];
                                    solicitud.Nota = componentes[2];

                                    solicitudes.Add(solicitud);
                                }
                            }
                            if (solicitudes.Count > 0)
                                conSolicitud.InsertarSolicitudes(solicitudes);
                        }
                    }
                    catch (Exception ex)
                    {
                        lblMensaje.Text = "Error: " + ex.Message;
                        ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
                        ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);

                    }
                    // Se agregan las solicitudes de la tabla temporal a la grilla
                    gvListadoSolicitudes.DataSource = conSolicitud.ListadoDeSolicitudes();
                    gvListadoSolicitudes.DataBind();
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
                }
                else
                {
                    lblMensaje.Text = "No hay ninguna solicitud o el tipo de archivo es erroneo. Solo se permiten archivos de texto .txt";
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
                }
            }
        }
        //protected void ddlEditarCliente_SelectedIndexChanged(object sender, EventArgs e)
        //{
        //    DataSet ds = new DataSet();
        //    ZoRegion reg = new ZoRegion();
        //    reg = conClientes.RegionDelCliente(ddlEditarCliente.SelectedValue);
        //    txtEditarRegion.Text = "(" + reg.Reg_code + ") " + reg.Descripcion;
        //}
        protected void btnEditarAceptar_Click(object sender, EventArgs e)
        {
            solicitud = new ZoSolicitud();

            solicitud.Ip = ddlEditarMedida.SelectedValue.ToString();
            solicitud.Pais = HDPais.Value;
            solicitud.CodClie = ddlEditarCliente.SelectedValue.ToString();
            //solicitud.FechaCompra = Convert.ToDateTime(pMetodos.ConvertmmddyyyyToyyyymmdd(dpEditarFecha.Text));
            solicitud.FechaCompra = Convert.ToDateTime(pMetodos.ConvertddmmyyyyToyyyymmdd(dpEditarFecha.Text));
            solicitud.Cantidad = Convert.ToInt32(txtEditarCantidad.Text);
            solicitud.NroFactura = txtEditarNumFactura.Text;
            solicitud.NombreUsu = txtEditarNombre.Text;
            solicitud.DirUsu = txtEditarDireccion.Text;
            solicitud.Nro = txtEditarNumero.Text;
            solicitud.Dpto = "";
            solicitud.Piso = txtEditarPiso.Text;
            solicitud.CodProv = ddlEditarProvincia.SelectedValue.ToString();
            solicitud.Ciudad = txtEditarCiudad.Text;
            solicitud.Vehiculo = txtEditarVehiculo.Text;
            solicitud.Cuotas = Convert.ToInt32(txtEditCuota.Text);
            solicitud.FlgProcesado = "0";
            solicitud.FecAlta = DateTime.Now;
            solicitud.UsuAlta = User.Usu_id;
            solicitud.Telefono = txtEditarTelefono.Text;
            solicitud.CodPos = txtEditarCodigoPostal.Text;
            solicitud.NroTicket = Convert.ToInt32(txtEditarticket.Text);
            solicitud.NroCom = txtEditarNumCompra.Text;
            solicitud.NroTarjeta = Convert.ToInt32(txtEditarTarjeta.Text);
            solicitud.NroAuto = 0;
            solicitud.Precio = Convert.ToDouble(txtEditarPrecio.Text.Replace(".", ","));
            solicitud.CodPromo = Convert.ToInt32(ddlEditarTipoPromo.SelectedValue);
            solicitud.Descuento = Convert.ToDouble(txtDescuento.Text.Replace(".", ","));
            solicitud.CodAux = "";
            solicitud.Nota = txtEditarNota.Text;

            if (string.IsNullOrEmpty(HDCodSolicitud.Value))
            {
                conFacturas.InsertarFactura(solicitud);
                lblMensaje.Text = "Facturas creada con exito";
            }
            else
            {
                solicitud.CodSolicitud = Convert.ToInt32(HDCodSolicitud.Value);
                conFacturas.ModificarFactura(solicitud);
                lblMensaje.Text = "Facturas modifica con exito";

            }

            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (!String.IsNullOrEmpty(Page.Request["CodSolicitud"]))
                {
                    HDCodSolicitud.Value = Page.Request["CodSolicitud"];
                    solicitud = new ZoSolicitud();
                    solicitud = conFacturas.TraerFactura(Convert.ToInt32(Page.Request["CodSolicitud"]));
                    HDCliente.Value = solicitud.CodClie;
                    HDMedida.Value = solicitud.Ip;
                    HDProvincia.Value = solicitud.CodProv;
                    HDPromo.Value = solicitud.CodPromo.ToString();

                    txtEditarCantidad.Text = solicitud.Cantidad.ToString();
                    txtEditarPrecio.Text = solicitud.Precio.ToString().Replace(",", "."); ;
                    txtEditarNumFactura.Text = solicitud.NroFactura.ToString();
                    txtEditarticket.Text = solicitud.NroTicket.ToString();
                    txtEditarTarjeta.Text = solicitud.NroTarjeta.ToString();
                    txtEditarNumCompra.Text = solicitud.NroCom.ToString();

                    txtEditarNombre.Text = solicitud.NombreUsu;
                    txtEditarDireccion.Text = solicitud.DirUsu;
                    txtEditarTelefono.Text = solicitud.Telefono;
                    txtEditarNumero.Text = solicitud.Nro.ToString();
                    txtEditarPiso.Text = solicitud.Piso;
                    txtEditarCiudad.Text = solicitud.Ciudad;
                    txtEditarCodigoPostal.Text = solicitud.CodPos;
                    txtEditarVehiculo.Text = solicitud.Vehiculo;
                    txtEditarNota.Text = solicitud.Nota;
                    dpEditarFecha.Text = solicitud.FechaCompra.ToString("dd/MM/yyyy");
                    dpEditarFecha_TextChanged(sender, e);
                    cargarCuotaDescuentoDePromo();

                }
                cargarClientes(ddlEditarCliente);
                cargarMedidas(ddlEditarMedida);
                cargarProvincia(ddlEditarProvincia);
                //dpEditarFecha_TextChanged(sender, e);
                //cargarRegion(ddlEditarRegion);
                ddlEditarMedida_SelectedIndexChanged(sender, e);
                ddlEditarCliente_SelectedIndexChanged(sender, e);
                //ddlEditarCliente_SelectedIndexChanged(sender, e);
            }
        }
        public ZoSolicitud TraerFactura(int codigo)
        {
            ZoSolicitud solicitud = new ZoSolicitud();
            AdoConn ado = new AdoConn();
            DataSet ds = new DataSet();
            ArrayList parametros = new ArrayList();
            parametros.Add(codigo);
            ds = ado.ExecuteStoredProcedureDS("SP_SELECT_ZOSOLICITUD", parametros);
            if (ds.Tables[0].Rows.Count > 0)
            {
                solicitud.CodSolicitud = Convert.ToInt32(ds.Tables[0].Rows[0]["CodSolicitud"]);
                solicitud.CodAgrup = Convert.ToInt32(ds.Tables[0].Rows[0]["CodAgrup"]);
                solicitud.Ip = ds.Tables[0].Rows[0]["Ip"].ToString();
                solicitud.Pais = ds.Tables[0].Rows[0]["Pais"].ToString();
                solicitud.CodClie = ds.Tables[0].Rows[0]["CodClie"].ToString();
                solicitud.FechaCompra = Convert.ToDateTime(ds.Tables[0].Rows[0]["FechaCompra"]);
                solicitud.Cantidad = Convert.ToInt32(ds.Tables[0].Rows[0]["Cantidad"]);
                solicitud.NroFactura = ds.Tables[0].Rows[0]["NroFactura"].ToString();
                solicitud.NroTicket = Convert.ToInt32(ds.Tables[0].Rows[0]["NroTicket"]);
                solicitud.NroCom = ds.Tables[0].Rows[0]["NroCom"].ToString();
                solicitud.NroTarjeta = Convert.ToInt32(ds.Tables[0].Rows[0]["NroTarjeta"]);
                solicitud.NroAuto = Convert.ToInt32(ds.Tables[0].Rows[0]["NroAuto"]);
                solicitud.NombreUsu = ds.Tables[0].Rows[0]["NombreUsu"].ToString();
                solicitud.DirUsu = ds.Tables[0].Rows[0]["DirUsu"].ToString();
                solicitud.Nro = ds.Tables[0].Rows[0]["Nro"].ToString();
                solicitud.Dpto = ds.Tables[0].Rows[0]["Dpto"].ToString();
                solicitud.Piso = ds.Tables[0].Rows[0]["Piso"].ToString();
                solicitud.Ciudad = ds.Tables[0].Rows[0]["Ciudad"].ToString();
                solicitud.CodProv = ds.Tables[0].Rows[0]["CodProv"].ToString();
                solicitud.Vehiculo = ds.Tables[0].Rows[0]["Vehiculo"].ToString();
                solicitud.Cuotas = Convert.ToInt32(ds.Tables[0].Rows[0]["Cuotas"]);
                solicitud.Telefono = ds.Tables[0].Rows[0]["Telefono"].ToString();
                solicitud.CodPos = ds.Tables[0].Rows[0]["CodPos"].ToString();
                solicitud.Precio = Convert.ToDouble(ds.Tables[0].Rows[0]["Precio"]);
                solicitud.FlgProcesado = ds.Tables[0].Rows[0]["FlgProcesado"].ToString();
                solicitud.CodPromo = Convert.ToInt32(ds.Tables[0].Rows[0]["CodPromo"]);
                solicitud.Descuento = Convert.ToInt32(ds.Tables[0].Rows[0]["Descuento"]);
                solicitud.CodAux = ds.Tables[0].Rows[0]["CodAux"].ToString();
                if (ds.Tables[0].Rows[0]["FecAlta"] != DBNull.Value)
                    solicitud.FecAlta = Convert.ToDateTime(ds.Tables[0].Rows[0]["FecAlta"]);
                solicitud.UsuAlta = ds.Tables[0].Rows[0]["UsuAlta"].ToString();
                if (ds.Tables[0].Rows[0]["FecUltAct"] != DBNull.Value)
                    solicitud.FecUltAct = Convert.ToDateTime(ds.Tables[0].Rows[0]["FecUltAct"]);
                solicitud.UsuUltAct = ds.Tables[0].Rows[0]["UsuUltAct"].ToString();
                if (ds.Tables[0].Rows[0]["FecSubSAP"] != DBNull.Value)
                    solicitud.FecSubSAP = Convert.ToDateTime(ds.Tables[0].Rows[0]["FecSubSAP"]);
                solicitud.Nota = ds.Tables[0].Rows[0]["Nota"].ToString();
                solicitud.Esker_Link = ds.Tables[0].Rows[0]["Esker_Link"].ToString();
                solicitud.Esker_ID = ds.Tables[0].Rows[0]["Esker_ID"].ToString();

            }

            return solicitud;
        }