private void dtgOrdenRetiro_ItemCommand_1(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { try { Session["OrdenRetiroID"] = e.Item.Cells[0].Text.ToString(); IOrdenRetiro orden = OrdenRetiroFactory.GetOrdenRetiroFactory(); orden.OrdenRetiroID = Utiles.Validaciones.obtieneEntero(e.Item.Cells[0].Text.ToString()); orden.Consultar(); //controlar que la solicitud de retiro ya haya sido controlada ISolicitudRetiro solicitud = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); solicitud.SolicitudRetiroID = orden.SolicitudRetiroID; solicitud.Consultar(); if (solicitud.EstadoSolicitudID == (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Controlada || solicitud.EstadoSolicitudID == (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.ControladaWeb) //esta en estado controlada { //controlar que no haya sido ya emitida if (orden.Estado == "Generada") { Response.Redirect("OrdenRetiro.aspx?Llamador=OrdenRetiroConsul&index=0"); } else { throw new Exception("La Orden de Retiro ya ha sido emitida."); } } else { throw new Exception("La solicitud de retiro no ha sido controlada aún."); } } catch (Exception ex) { ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message); } }
public string Imprimir(int solicitudes, int agencia) { string nombArchi = ""; string empresa = System.Configuration.ConfigurationSettings.AppSettings["empresa"]; DsSolicitudRetiroImpresion dsSolicitud = new DsSolicitudRetiroImpresion(); //el dataset que le voy a pasar al generador de reportes crystal ISolicitudRetiro sol = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); sol.SolicitudRetiroID = solicitudes; dsSolicitud = (DsSolicitudRetiroImpresion)sol.ConsultarSolicitudAImprimir(); for (int i = 0; i < dsSolicitud.Orden.Count; i++) { byte[] d = null; DsSolicitudRetiroImpresion.OrdenRow drOrden = (DsSolicitudRetiroImpresion.OrdenRow)dsSolicitud.Orden.Rows[i]; d = ConversionImagen(Server.MapPath("." + "/Reportes/images/" + empresa + ".JPG")); drOrden["Codigo"] = d; } byte[] im = null; DsSolicitudRetiroImpresion.SolicitudRow dr = (DsSolicitudRetiroImpresion.SolicitudRow)dsSolicitud.Solicitud.Rows[0]; im = ConversionImagen(Server.MapPath("." + "/Reportes/images/blanco.JPG")); for (int i = 0; i < dsSolicitud.Solicitud.Count; i++) { dr["Imagen"] = im; } if ((dsSolicitud.Solicitud.Count > 0) && (dsSolicitud.Orden.Count > 0)) { ExportOptions oExO; DiskFileDestinationOptions oExDo = new DiskFileDestinationOptions(); nombArchi = "SolicitudRetiro_" + solicitudes + "_" + agencia + ".pdf"; string sNombrePDF = Server.MapPath(".") + "/ReportesPDF/" + nombArchi; if (System.IO.File.Exists(sNombrePDF)) { System.IO.File.Delete(sNombrePDF); } oRD.Load(Server.MapPath("." + "/Reportes/ReporteSolicitudRetiro2.rpt")); oRD.SetDataSource(dsSolicitud); oExDo.DiskFileName = sNombrePDF; oExO = oRD.ExportOptions; oExO.ExportDestinationType = ExportDestinationType.DiskFile; oExO.ExportFormatType = ExportFormatType.PortableDocFormat; oExO.DestinationOptions = oExDo; oRD.Export(); oRD.Close(); oRD.Dispose(); return(nombArchi); } return(nombArchi); }
//[WebMethod] //public static string GetSolicitudes(int pageIndex, string fechaInicio, string fechaFin) //{ // return GetData(DateTime.Parse(fechaInicio), DateTime.Parse(fechaFin)).GetXml(); //} /// <summary> /// Metodo que arma la informacion para devolver /// </summary> /// <param name="cmd"></param> /// <param name="pageIndex"></param> /// <returns></returns> private static DataSet GetData(DateTime inicio, DateTime fin, string agenciaid, string filtro, string usu) { DsSolicitudRetiro dsr = new DsSolicitudRetiro(); ISolicitudRetiro isr = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); // int usu= usuario.UsuarioID; dsr = isr.GetSolicitudes(inicio, fin, agenciaid, filtro, Convert.ToInt32(usu), "", ""); int i = 0; using (DataSet ds = new DataSet()) { DataTable dt1 = new DataTable("Solicitudes"); dt1.Columns.Add("SolicitudRetiroID"); dt1.Columns.Add("FechaAlta"); dt1.Columns.Add("NumeroOrden"); dt1.Columns.Add("destino"); dt1.Columns.Add("Column1"); dt1.Columns.Add("RazonSocial"); dt1.Columns.Add("EstadoSolicitudDescrip"); i = 0; foreach (var solicitudRetiro in dsr.Datos) { dt1.Rows.Add(); dt1.Rows[i]["SolicitudRetiroID"] = solicitudRetiro.SolicitudRetiroID; dt1.Rows[i]["FechaAlta"] = solicitudRetiro.FechaAlta; dt1.Rows[i]["NumeroOrden"] = solicitudRetiro.NumeroOrden; dt1.Rows[i]["destino"] = solicitudRetiro.Destino; dt1.Rows[i]["Nombre"] = solicitudRetiro.Nombre; dt1.Rows[i]["RazonSocial"] = solicitudRetiro.RazonSocial; dt1.Rows[i]["EstadoSolicitudDescrip"] = solicitudRetiro.EstadoSolicitudDescrip; ++i; } ds.Tables.Add(dt1); DataTable dt = new DataTable("Pager"); dt.Columns.Add("PageIndex"); dt.Columns.Add("PageSize"); dt.Columns.Add("RecordCount"); dt.Rows.Add(); dt.Rows[0]["PageIndex"] = 1; // pageIndex; dt.Rows[0]["PageSize"] = 5; // PageSize; dt.Rows[0]["RecordCount"] = 10; //cmd.Parameters["@RecordCount"].Value; ds.Tables.Add(dt); return(ds); } }
protected void btnReImprimirCliente_Click(object sender, EventArgs e) { string pagina = ""; string ordens = Convert.ToString(Session["ImprimirOrdenes"]); //si son ordenes de tipo r que imprima la solicitud DsHojaRutaRepartidor dsoRdenes = new DsHojaRutaRepartidor(); ISolicitudRetiro sr = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); dsoRdenes = sr.ImprimirOrdenesMasiva(ordens); Session["imprimirOrden"] = dsoRdenes; pagina = "ImprimirGuiaBlanco.aspx"; //DsGuiaFacturaImpresion dsFactura = (DsGuiaFacturaImpresion)Session["DatosGuia"]; //string pagina = ObtienePaginaImpresion(drLista[0].TipoImpresionGuiaId); if (dsoRdenes.Ordenes.Count() > 0) { string script = ""; System.Web.HttpBrowserCapabilities browser = Request.Browser; string name = browser.Browser; float version = (float)(browser.MajorVersion + browser.MinorVersion); if ((name == "IE" && (version == 8))) { script += " window.open('"+ pagina + "','','Height: 934px;Width: 762px;edge: Raised; center: No; Status:No; help: No; resizable: No;');"; ScriptManager.RegisterClientScriptBlock(this.UpdatePanel1, UpdatePanel1.GetType(), "scriptOpen", script, true); } else { script += " window.open('"+ pagina + "','','Height: 934px;Width: 762px;edge: Raised; center: No; Status:No; help: No; resizable: No;');"; ScriptManager.RegisterClientScriptBlock(this.UpdatePanel1, UpdatePanel1.GetType(), "scriptOpen", script, true); } } }
protected void dtgSolicitud_Delete(object sender, DataGridCommandEventArgs e) { int usuarios = usuario.UsuarioID;; OrdenRetiroDominio _repo = new OrdenRetiroDominio(); if (_repo.Getusuhabilitado(usuarios) == 1) { int solicitudID = Convert.ToInt32(this.dtgSolicitud.DataKeys[e.Item.ItemIndex]); ISolicitudRetiro sr = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); DsSolicitudRetiro dsr = new DsSolicitudRetiro(); sr.SolicitudRetiroID = solicitudID; dsr = sr.GetSolicitudesbyID(solicitudID); foreach (DataRow dr in dsr.Datos) { if (dr.Table.Rows[0].ItemArray[18].ToString() == "5557")//viene de la web { //T.Laz 24-10-18 Permitir Anular Orden Retiro 'R' Emitidas Desde La Web //((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La Orden no se encuentra en condiciones de ser anulada."); //return; if ((dr.Table.Rows[0].ItemArray[14].ToString().Trim()).EndsWith("R")) { int usu = 0; usu = usuario.UsuarioID; string eID = dr.Table.Rows[0].ItemArray[7].ToString(); if (eID == "1") {//es el unico estado donde se puede eliminar("guardado") FQuiroga try { //se agrega el usuario para poder tener un control d quien esta eliminando las solicituddes. sr.CambiaEstadoaAnulada(usu); } catch { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("No se pudo eliminar la solicitud."); return; } } else { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La Orden no se encuentra en condiciones de ser anulada."); return; } } } else { int usu = 0; usu = usuario.UsuarioID; string eID = dr.Table.Rows[0].ItemArray[7].ToString(); if (eID == "1") {//es el unico estado donde se puede eliminar("guardado") FQuiroga try { //se agrega el usuario para poder tener un control d quien esta eliminando las solicituddes. sr.CambiaEstadoaAnulada(usu); } catch { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("No se pudo eliminar la solicitud."); return; } } else { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La Orden no se encuentra en condiciones de ser anulada."); return; } } } BindGrid(); } else { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("El usuario no se encuentra habilitado para anular la orden. Comunicarse con ADMINISTRACIÓN"); return; } }
private void BindGrid() { string Filtro = ""; string nroOrden = ""; string nroRemito = ""; try { ISolicitudRetiro sr = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); DsSolicitudRetiro dsr = new DsSolicitudRetiro(); DateTime fechaI, fechaH; if (txtFecha.Text == "") { fechaI = Convert.ToDateTime("1990-01-01"); } else { fechaI = Convert.ToDateTime(txtFecha.Text); } if (txtFechaHasta.Text == "") { fechaH = Convert.ToDateTime("2090-01-01"); } else { fechaH = Convert.ToDateTime(txtFechaHasta.Text); } if (ddlFiltros.SelectedValue != "") { if (ddlFiltros.SelectedValue == "Generada") { Filtro = "1"; } else if (ddlFiltros.SelectedValue == "Emitida") { Filtro = "2"; } else if (ddlFiltros.SelectedValue == "Cerrada") { Filtro = "5"; } else if (ddlFiltros.SelectedValue == "Realizada") { Filtro = "6"; } else if (ddlFiltros.SelectedValue == "Anulada") { Filtro = "7"; } else if (ddlFiltros.SelectedValue == "Pendiente de Pago") { Filtro = "8"; } else { Filtro = "0"; } } int usu = usuario.UsuarioID; string agen = Convert.ToString(this.AgenciaConectadaID); nroOrden = txtnroorden.Text; nroRemito = txtNroRemito.Text; dsr = sr.GetSolicitudes(fechaI, fechaH, agen, Filtro, usu, nroOrden, nroRemito); //trae todas las consultas mediante el filtro ingresado FQuiroga //se agrego el remito 14/01/2018 FQuiroga dtgSolicitud.DataSource = dsr; dtgSolicitud.DataBind(); } catch (Exception ex) { throw new Exception(ex.Message); } }
/**Realiza los controles correspondientes sobre el codigo de barra de la orden de retiro y si * pasa los controles abre la pantalla de la orden de retiro * para saber si es una orden de retiro el codigo debe comenzar con 7 * modelo de codigo de barra = 70010915000010 * 7-(orden retiro) 001-(cant bultos) 0915- (codigo cliente corporativo) 000010- (numero orden) * */ private bool verificarControles() { try { if ((txtCodBarraOrden.Text.Length != 0) && (txtCodBarraOrden.Text.Length == 14)) //tiene que tener 14 caracteres el codigo { if (verificarOrdenRetiro()) //es orden de retiro, comienza con 7 { //nroOrdenRetiro=Utiles.Validaciones.obtieneEntero(txtCodBarraOrden.Text.Substring(8,6)); //extraigo el nro de orden y consulto los datos de la orden nroOrdenR = txtCodBarraOrden.Text; nroCliente = Utiles.Validaciones.obtieneEntero(txtCodBarraOrden.Text.Substring(4, 4)); IOrdenRetiro orden = OrdenRetiroFactory.GetOrdenRetiroFactory(); orden.NumeroOrden = nroOrdenR; // nroOrdenRetiro.ToString(); orden.Consultar(nroCliente); if (orden.OrdenRetiroID != 0) { //es una orden de retiro correcta if (orden.Estado == "Generada") { Session["SolicitudRetiroID"] = orden.SolicitudRetiroID; Session["OrdenRetiroID"] = orden.OrdenRetiroID; //consulto los datos de la solicitud de retiro ISolicitudRetiro solicitud = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); solicitud.SolicitudRetiroID = orden.SolicitudRetiroID; solicitud.Consultar(); Session ["NumeroSolicitud"] = solicitud.NumeroSolicitud; lblNroSolicitud.Text = solicitud.NumeroSolicitud.ToString(); cantBultosTotal = orden.Bultos; if (verificarCantidadBultosEnCodigo(orden.Bultos)) { //el codigo de barra tiene bien puesto la cantidad de bultos if (solicitud.EstadoSolicitudID == 4) { //la solicitud de retiro esta en estado controlada if (verificarCantidadBultos(orden.Bultos)) { //ha ingresado tantos codigos de barra como la cantidad de bultos if (verificarCliente(nroCliente)) { //la nueva orden es del mismo cliente cantBultosIngresado = 0; //le dejo seguir para que abra la orden de retiro return(true); } else { cantBultosIngresado = 0; throw new Exception("La orden de retiro ingresada no corresponde al mismo cliente."); } } else { throw new Exception("La cantidad de bultos ingresada no es correcta. Ingrese tantos códigos de barra como bultos tiene la orden de retiro."); } } else { cantBultosIngresado = 0; lblNroSolicitudRetiro.Visible = true; lblNroSolicitud.Visible = true; throw new Exception("La solicitud de retiro " + solicitud.NumeroSolicitud + " no ha sido controlada aún."); } } else { cantBultosIngresado = 0; throw new Exception("La cantidad de bultos indicada en el código no coincide con la cantidad de bultos de la orden de retiro."); } } else if (orden.Estado == "Emitida") { cantBultosIngresado = 0; throw new Exception("La Orden de Retiro ya ha sido emitida."); } else { cantBultosIngresado = 0; throw new Exception("La Orden de Retiro no tiene el estado correcto para emitir la guía."); } } else { cantBultosIngresado = 0; throw new Exception("El código de barra ingresado no es correcto, verifique número de orden, cliente y cantidad de bultos."); } } else { cantBultosIngresado = 0; throw new Exception("El código ingresado no corresponde con una órden de retiro."); } } else { cantBultosIngresado = 0; throw new Exception("Debe ingresar un código de barras correcto."); } } catch (Exception ex) { ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message); return(false); } }
private string ExportarPDF(int solicitud) { //cuando venga 0 en solicitud se han pedidos todas string empresa = System.Configuration.ConfigurationSettings.AppSettings["empresa"]; DsSolicitudRetiroImpresion dsSolicitud = new DsSolicitudRetiroImpresion(); //el dataset que le voy a pasar al generador de reportes crystal ISolicitudRetiro sol = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); if (solicitud == 0) //quiero todas { if (Session["DsSolicitudRetiro"] != null) { sol.ClienteID = Utiles.Validaciones.obtieneEntero(busqCliente.ClienteID); sol.NumeroSolicitud = Utiles.Validaciones.obtieneEntero(txtNumSolicitud.Text); sol.AgenciaRetiroID = usuario.AgenciaID; //la agencia conectada /*if (chCerradas.Checked) * sol.EstadoSolicitudID=(int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Cerrada; * else if (chControladas.Checked) * sol.EstadoSolicitudID=(int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Controlada; * else * sol.EstadoSolicitudID=0;//todas */ if (this.ddlTipo.SelectedValue == "1") // Web { if ((chCerradas.Checked) && (chControladas.Checked == false)) { sol.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.CerradaWeb; } else if ((chControladas.Checked) && (chCerradas.Checked == false)) { sol.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.ControladaWeb; } else if ((chControladas.Checked) && (chCerradas.Checked)) { sol.EstadoSolicitudID = 0; //todas } } else if (this.ddlTipo.SelectedValue == "2") // Autogestión { if ((chCerradas.Checked) && (chControladas.Checked == false)) { sol.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Cerrada; } else if ((chControladas.Checked) && (chCerradas.Checked == false)) { sol.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Controlada; } else if ((chControladas.Checked) && (chCerradas.Checked)) { sol.EstadoSolicitudID = 0; //todas } } int desdeWeb = (this.ddlTipo.SelectedValue == "1")?1:0; //dsSolicitud = sol.GetSolicitudRetiroALLDataSet(desdeWeb); } } else //quiero solo una { sol.SolicitudRetiroID = solicitud; dsSolicitud = (DsSolicitudRetiroImpresion)sol.ConsultarSolicitudAImprimir(); } /*para guardar la imagen del codigo de barra correspondiente en el dataset descomentar */ // for (int i=0; i<dsSolicitud.Orden.Count;i++) // { // byte[] d= null; // DsSolicitudRetiroImpresion.OrdenRow drOrden= (DsSolicitudRetiroImpresion.OrdenRow) dsSolicitud.Orden.Rows[i]; // d = ConversionImagen(Server.MapPath("." + "/Reportes/images/CB/"+ drOrden["OrdenRetiroID"].ToString() + ".JPG")); // drOrden["Codigo"]=d; // } /*para guardar la imagen del logo de la empresa en el dataset */ for (int i = 0; i < dsSolicitud.Orden.Count; i++) { byte[] d = null; DsSolicitudRetiroImpresion.OrdenRow drOrden = (DsSolicitudRetiroImpresion.OrdenRow)dsSolicitud.Orden.Rows[i]; d = ConversionImagen(Server.MapPath("." + "/Reportes/images/" + empresa + ".JPG")); drOrden["Codigo"] = d; } byte[] im = null; DsSolicitudRetiroImpresion.SolicitudRow dr = (DsSolicitudRetiroImpresion.SolicitudRow)dsSolicitud.Solicitud.Rows[0]; im = ConversionImagen(Server.MapPath("." + "/Reportes/images/blanco.JPG")); for (int i = 0; i < dsSolicitud.Solicitud.Count; i++) { dr["Imagen"] = im; } if ((dsSolicitud.Solicitud.Count > 0) && (dsSolicitud.Orden.Count > 0)) { ReportDocument oRD = new ReportDocument(); ExportOptions oExO; DiskFileDestinationOptions oExDo = new DiskFileDestinationOptions(); string nombArchi = "SolicitudRetiro_" + solicitud + "_" + this.AgenciaConectadaID + ".pdf"; string sNombrePDF = Server.MapPath(".") + "/ReportesPDF/" + nombArchi; if (System.IO.File.Exists(sNombrePDF)) { System.IO.File.Delete(sNombrePDF); } oRD.Load(Server.MapPath("." + "/Reportes/ReporteSolicitudRetiro.rpt")); oRD.SetDataSource(dsSolicitud); oExDo.DiskFileName = sNombrePDF; oExO = oRD.ExportOptions; oExO.ExportDestinationType = ExportDestinationType.DiskFile; oExO.ExportFormatType = ExportFormatType.PortableDocFormat; oExO.DestinationOptions = oExDo; oRD.Export(); oRD.Close(); oRD.Dispose(); return(nombArchi); } else { ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("No se ha podido consultar los datos de la solicitud"); return(""); } }
private void BindGrid(int currentPage) { try { ISolicitudRetiro solicitud = SolicitudRetiroFactory.GetSolicitudRetiroFactory(); AdministrarGrillas.Configurar(dtgSolicitudRetiro, "SolicitudRetiroID", CantidadOpciones, true, false); dtgSolicitudRetiro.CurrentPageIndex = currentPage; if (busqCliente.RazonSocial != "") { solicitud.ClienteID = Utiles.Validaciones.obtieneEntero(busqCliente.ClienteID); } else { solicitud.ClienteID = 0; } solicitud.NumeroSolicitud = Utiles.Validaciones.obtieneEntero(txtNumSolicitud.Text); solicitud.AgenciaRetiroID = usuario.AgenciaID; //la agencia conectada if (this.ddlTipo.SelectedValue == "1") // Web { if ((chCerradas.Checked) && (chControladas.Checked == false)) { solicitud.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.CerradaWeb; } else if ((chControladas.Checked) && (chCerradas.Checked == false)) { solicitud.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.ControladaWeb; } else if ((chControladas.Checked) && (chCerradas.Checked)) { solicitud.EstadoSolicitudID = 0; //todas } } else if (this.ddlTipo.SelectedValue == "2") // Autogestión { if ((chCerradas.Checked) && (chControladas.Checked == false)) { solicitud.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Cerrada; } else if ((chControladas.Checked) && (chCerradas.Checked == false)) { solicitud.EstadoSolicitudID = (int)NegociosSisPackInterface.SisPack.EstadoSolicitud.Controlada; } else if ((chControladas.Checked) && (chCerradas.Checked)) { solicitud.EstadoSolicitudID = 0; //todas } } DateTime fDesde, fHasta; fDesde = txtFechaDesde.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(txtFechaDesde.Text): new DateTime(1901, 01, 01); fHasta = txtFechaHasta.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(txtFechaHasta.Text): new DateTime(2900, 01, 01); int desdeWeb = (this.ddlTipo.SelectedValue == "1")?1:0; if (chSinEmitir.Checked) // quiere ver si hay sin emitir { dtgSolicitudRetiro.DataSource = solicitud.GetSolicitudRetiroDataSet(desdeWeb, 1, fDesde, fHasta); //1: generadas } else { dtgSolicitudRetiro.DataSource = solicitud.GetSolicitudRetiroDataSet(desdeWeb, 0, fDesde, fHasta); //2: emitidas y 1: generadas } dtgSolicitudRetiro.DataBind(); Session["DsSolicitudRetiro"] = dtgSolicitudRetiro.DataSource; } catch (Exception ex) { ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message); } }