public override global::System.Data.DataSet Clone() { DsDatosMailTurnos cln = ((DsDatosMailTurnos)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = this.SchemaSerializationMode; return(cln); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { DsDatosMailTurnos ds = new DsDatosMailTurnos(); global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); any.Namespace = ds.Namespace; sequence.Items.Add(any); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); DsDatosMailTurnos ds = new DsDatosMailTurnos(); global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); any1.Namespace = "http://www.w3.org/2001/XMLSchema"; any1.MinOccurs = new decimal(0); any1.MaxOccurs = decimal.MaxValue; any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any1); global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; any2.MinOccurs = new decimal(1); any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any2); global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute1.Name = "namespace"; attribute1.FixedValue = ds.Namespace; type.Attributes.Add(attribute1); global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute2.Name = "tableTypeName"; attribute2.FixedValue = "DatosDataTable"; type.Attributes.Add(attribute2); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
protected void btnRetencion_Click(object sender, EventArgs e) { lblMensaje.Text = ""; lblMensaje.Visible = false; this.trMensajeError.Visible = false; string GuiasError = ""; int cant = 0; IGuiasSolicitudConfirmacionTurnoDominio _guiasDominio = IoC.GetObjectDominio <IGuiasSolicitudConfirmacionTurnoDominio>(); List <Int32?> lstDatosIngresados = new List <Int32?>();//datos ya cargados List <Dominio.Entidades.ClienteSolicitaTurno> _datosCliente = new List <Dominio.Entidades.ClienteSolicitaTurno>(); DsDatosMailTurnos dst = new DsDatosMailTurnos(); usuario = (IUsuarios)Session["usuario"]; //cargo el usuario cant = Utiles.Validaciones.obtieneEntero(this.txtGuiaIndex.Text); //la cantidad de guias cargadas try { if (cant == 0) { throw new Exception("Debe ingresar al menos una guia, para realizar una retención"); } else { for (int i = 0; i < cant; i++) { string txt = "txt" + i; //cargo el numero de la guia string ddl = "ddl" + i.ToString(); string txtNroCaso = "txtnroCaso2" + i.ToString(); //cargo el numero de caso string txtDetalleUsuario = "txtDetalleUsuario" + i.ToString(); //cargo el detalle ingresado string observacionManual = "txtDetalleUsuarioManual" + i.ToString(); string Nrocaso = Request.Form[txtNroCaso].ToString(); string nroGuia = Request.Form[txt].ToString(); string ObDetalle = Request.Form[txtDetalleUsuario].ToString(); string ObservacionManualUsuario = Request.Form[observacionManual].ToString(); string tGuia = ""; //separo el numero de la guia tGuia = NegociosSisPackInterface.SisPack.TipoGuia(nroGuia.Substring(0, 1)); string nroSucursal = nroGuia.Substring(1, 4); string nGuia = nroGuia.Substring(5); //traigo el guiaid IGuia oGuia = GuiaFactory.GetGuia(); oGuia.NroGuia = Utiles.Validaciones.obtieneEntero(nGuia); oGuia.NroSucursalGuia = nroSucursal; oGuia.TipoGuia = tGuia; oGuia.Consultar(); //cargo el guiaid para guardar en una tabla para que ya se sepa que guia se pidio turno guiaidST = oGuia.GuiaID; try{ Convert.ToInt32(ObDetalle); } catch { ObDetalle = "0"; }//Esto es para el caso que no ingresen numero //valida la observacion //ValidaaObservacionTRF int EsObservacion = Convert.ToInt32(_guiasDominio.ValidaObservacionTRF(Convert.ToInt32(ObDetalle))); if (EsObservacion == 1) //quiere decir que si existe la observacion ingresada { //valida que este en estado en destino para que se pueda solicitar turno y que sea de la agencia if (_guiasDominio.ValidaGuia(guiaidST) == "PendienteDeEntrega" || _guiasDominio.ValidaGuia(guiaidST) == "EnDestino")//trae los estados en destino o pedneinte de entrega { if (_guiasDominio.GuiaRetenidaEstados(guiaidST) == 1) {//se puede retener IAgencia ag = AgenciaFactory.GetAgencia(); ag.AgenciaID = this.AgenciaConectadaID; ag.Consultar(); if (oGuia.AgenciaDestinoID != ag.AgenciaID) {//por si se intenta solicitar turno de una agencia la cual //no es el destino real. if (GuiasError == "") { GuiasError = tGuia + "-" + nroSucursal + "-" + nGuia; } else { GuiasError = GuiasError + tGuia + "-" + nroSucursal + "-" + nGuia; } } } else {//la guia ya tiene un turno, o no se encuentra en el estado correspondiente //para solicitar turno. if (GuiasError == "") { GuiasError = tGuia + "-" + nroSucursal + "-" + nGuia; } else { GuiasError = GuiasError + tGuia + "-" + nroSucursal + "-" + nGuia; } } if (GuiasError == "") { try { //guarda en la tabla de guias retenidas retencion //el clienteid va en 0, porque se penso guardar por cliente por las dudas, pero dp se cambio Fquiroga Int32?datos = _guiasDominio.InsertarGuiaEnRetencion(guiaidST, 0, Nrocaso, usuario.UsuarioID, ObDetalle, ObservacionManualUsuario); lstDatosIngresados.Add(datos); } catch (Exception ex) { ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje((ex.Message)); } } } else { GuiasError = GuiasError + tGuia + "-" + nroSucursal + "-" + nGuia; } } else { GuiasError = GuiasError + tGuia + "-" + nroSucursal + "-" + nGuia + "Código de Observación Incorrecto";//no existe la observacion ingresada } }//termina de ver las guias que estan cargando if (GuiasError == "")//si alguna guia tiene algun error { this.txtGuiaIndex.Text = "0"; string scriptString = "<script language=JavaScript>\n"; scriptString += "alert('Retención Exitosa');\n"; scriptString += "</script>"; Page.RegisterStartupScript("scrip", scriptString); } else { this.txtGuiaIndex.Text = "0"; lblMensaje.Text = "Las siguientes guias tienen problemas para ser retenidas: " + GuiasError; lblMensaje.Visible = true; this.trMensajeError.Visible = true; } } } catch (Exception ex) { ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje((ex.Message)); } }
protected void btnSolicitud_Click(object sender, EventArgs e) { lblMensaje.Text = ""; lblMensaje.Visible = false; this.trMensajeError.Visible = false; string GuiasError = ""; int cant = 0; DataTable dt = new DataTable();//data table para que vaya cargando todas las guias con todos los mails repetidos dt.Columns.Add("GuiaID"); dt.Columns.Add("Email"); dt.Columns.Add("Observa"); dt.Columns.Add("NroCaso"); dt.Clear();//limpia los datos por las dudas que haya salido un error. para que los vuelva a cargar string EmailEnvia = txtMailGenerico.Text; string pass = txtPass.Text; if (EmailEnvia == "") {//mail que va a responder el cliente ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("Falta ingresa el mail al cual el cliente va a responder la solicitud del turno. "); return; } if (pass == "") {//mail que va a responder el cliente ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("Falta ingresa la contraseña del mail ingresado."); return; } IGuiasSolicitudConfirmacionTurnoDominio _guiasDominio = IoC.GetObjectDominio <IGuiasSolicitudConfirmacionTurnoDominio>(); List <Int32?> lstDatosIngresados = new List <Int32?>();//datos ya cargados List <Dominio.Entidades.ClienteSolicitaTurno> _datosCliente = new List <Dominio.Entidades.ClienteSolicitaTurno>(); DsDatosMailTurnos dst = new DsDatosMailTurnos(); usuario = (IUsuarios)Session["usuario"]; //cargo el usuario cant = Utiles.Validaciones.obtieneEntero(this.txtGuiaIndex.Text); //la cantidad de guias cargadas List <string> lstemail = new List <string>(); try { if (cant == 0) { throw new Exception("Debe ingresar al menos una guia, para solicitar turnos"); } else { for (int i = 0; i < cant; i++) { string txt = "txt" + i; //cargo el numero de la guia string ddl = "ddl" + i.ToString(); string txtNroCaso = "txtnroCaso2" + i.ToString(); //cargo el numero de caso string txtMailCliente = "txtMailCliente" + i.ToString(); //cargo el mail ingresado string txtDetalleUsuario = "txtDetalleUsuario" + i.ToString(); //cargo el detalle ingresado string Nrocaso = Request.Form[txtNroCaso].ToString(); string nroGuia = Request.Form[txt].ToString(); string Email = Request.Form[txtMailCliente].ToString(); string ObDetalle = Request.Form[txtDetalleUsuario].ToString(); string[] separadas; separadas = Email.Split(';'); string tGuia = ""; //separo el numero de la guia tGuia = NegociosSisPackInterface.SisPack.TipoGuia(nroGuia.Substring(0, 1)); string nroSucursal = nroGuia.Substring(1, 4); string nGuia = nroGuia.Substring(5); //traigo el guiaid IGuia oGuia = GuiaFactory.GetGuia(); oGuia.NroGuia = Utiles.Validaciones.obtieneEntero(nGuia); oGuia.NroSucursalGuia = nroSucursal; oGuia.TipoGuia = tGuia; oGuia.Consultar(); //cargo el guiaid para guardar en una tabla para que ya se sepa que guia se pidio turno guiaidST = oGuia.GuiaID; //valida que este en estado en destino para que se pueda solicitar turno y que sea de la agencia if (_guiasDominio.ValidaGuia(guiaidST) == "PendienteDeEntrega" || _guiasDominio.ValidaGuia(guiaidST) == "EnDestino")//trae los estados en destino o pedneinte de entrega { IAgencia ag = AgenciaFactory.GetAgencia(); ag.AgenciaID = this.AgenciaConectadaID; ag.Consultar(); if (oGuia.AgenciaDestinoID != ag.AgenciaID) {//por si se intenta solicitar turno de una agencia la cual //no es el destino real. if (GuiasError == "") { GuiasError = tGuia + "-" + nroSucursal + "-" + nGuia; } else { GuiasError = GuiasError + tGuia + "-" + nroSucursal + "-" + nGuia; } } } else {//la guia ya tiene un turno, o no se encuentra en el estado correspondiente //para solicitar turno. if (GuiasError == "") { GuiasError = tGuia + "-" + nroSucursal + "-" + nGuia; } else { GuiasError = GuiasError + tGuia + "-" + nroSucursal + "-" + nGuia; } } if (GuiasError == "") { //si no tiene error lo que cargan que se agregue en la tabla e inserte los datos //carga las guias y los mails for (int im = 0; im < separadas.Count(); im++) { dst.Datos.AddDatosRow(Convert.ToString(guiaidST), separadas[im].ToString(), Nrocaso, ObDetalle); try { _guiasDominio.DatosTurnosINS(guiaidST, separadas[im].ToString(), usuario.UsuarioID); } catch { } DataRow row2 = dt.NewRow(); if (!lstemail.Contains(separadas[im].ToString())) { lstemail.Add(separadas[im].ToString()); } } try { //guarda en la tabla de pedido de turno //el clienteid va en 0, porque se penso guardar por cliente por las dudas, pero dp se cambio Fquiroga Int32?datos = _guiasDominio.InsertarSolictudDeTurno(guiaidST, 0, Nrocaso, usuario.UsuarioID, ObDetalle); lstDatosIngresados.Add(datos); } catch (Exception ex) { ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje((ex.Message)); } } }//termina de ver las guias que estan cargando if (lstDatosIngresados.Count() > 0)//es para que no envie mail si no se inserto ningun dato { for (int em = 0; em < lstemail.Count(); em++) {//recorre los mails cargados string GuiaID = ""; string observaciones = ""; string NroCaso = ""; for (int da = 0; da < dst.Datos.Count; da++)//recore el ds que tiene todos los mails con las guias { if (dst.Datos[da].Email == lstemail[em].ToString()) { //compara si es el mismo mail //si es guarda las guias que tiene ese mail if (GuiaID == "") { GuiaID = dst.Datos[da].GuiaID; } else { GuiaID = GuiaID + "," + dst.Datos[da].GuiaID; } observaciones = dst.Datos[da].Observacion; NroCaso = dst.Datos[da].NroCaso; } } DataRow row2 = dt.NewRow(); row2["GuiaID"] = Convert.ToString(GuiaID); row2["Email"] = lstemail[em].ToString(); row2["Observa"] = observaciones; row2["NroCaso"] = NroCaso; dt.Rows.Add(row2); } //para realizar el envio de mail //envia la tabla con todos los datos separados por mail. Para que no se envie mas de un mail por mail. Fquiroga try { IUsuarios usu = UsuariosFactory.GetUsuario(); usu.MandarMailClientesFechaEntrega(dt, EmailEnvia, pass); } catch { throw new Exception("Contraseña o Mail mal ingresado."); } } if (GuiasError == "")//si alguna guia tiene algun error { this.txtGuiaIndex.Text = "0"; string scriptString = "<script language=JavaScript>\n"; scriptString += "alert('Solicitud de Turno Exitosamente');\n"; scriptString += "</script>"; Page.RegisterStartupScript("scrip", scriptString); } else { this.txtGuiaIndex.Text = "0"; lblMensaje.Text = "Las siguientes guias tienen problemas para solicitar turnos: " + GuiasError; lblMensaje.Visible = true; this.trMensajeError.Visible = true; } } } catch (Exception ex) { ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje((ex.Message)); } }