protected void Page_Load(object sender, EventArgs e) { try { string page = Request.QueryString["num_pedido"]; Session["source"] = Request.QueryString["source"]; Order order = GetOrderDetailVtexAsync(page).Result; using (datosguiaEntities mot = new datosguiaEntities()) { var Motivos = from motivo in mot.motivos where motivo.estado == true select new { motivo.id, text = motivo.descripcion }; var serializer = new JavaScriptSerializer(); string json = serializer.Serialize(Motivos); string script = "var data = " + json + ";"; ClientScript.RegisterClientScriptBlock(this.Page.GetType(), "dataVar", script, true); } } catch (Exception ex) { Console.WriteLine(ex.InnerException); } }
protected void Page_Load(object sender, EventArgs e) { string Valor = Request.QueryString["num_pedido"]; var pedido = Valor; datosguiaEntities context = new datosguiaEntities(); var query = context.info_guia.Where(x => x.num_pedido == pedido).ToList(); string num_pedido = ""; string num_guia = ""; string nombre = ""; string apellido = ""; string documento = ""; string email = ""; int idmotivo = 0; foreach (var item in query) { num_pedido = item.num_pedido; num_guia = Convert.ToString(item.num_guia); nombre = item.nombre; apellido = item.apellido; documento = item.num_documento; email = item.email; idmotivo = Convert.ToInt32(item.id_motivos); } string nomApell = $"{ nombre } { apellido } "; string guia = num_guia; name.Text = nomApell; numguia.Text = guia; numpedido.Text = num_pedido; }
public void GenerarGuia_Click(object sender, EventArgs e) { var privacy = Convert.ToString(policy.Value); var idMotivo = Convert.ToString(id_motivo.Value); if (privacy == "false" || idMotivo == "-1") { string privacyErr = Convert.ToString(privacy); string idMotivoErr = idMotivo; ClientScript.RegisterStartupScript(this.GetType(), "Pli", $"ErrorPli( '" + privacyErr + "', '" + idMotivoErr + "' );", true); } else { string page = Request.QueryString["num_pedido"]; if (page != null) { var Information = GetOrderDetailVtexAsync(page).Result; string[] serviciosSinDevoluion = ConfigurationManager.AppSettings["ServiciosSinDevolucion"].Split(','); int itemsSinDevolucion = Information.Items.Where(i => i.BundleItems.Where(b => serviciosSinDevoluion.Contains(b.AdditionalInfo.OfferingTypeId)).Count() > 0).Count(); //Si ningun producto se puede devolver if (itemsSinDevolucion == Information.Items.Count) { infoDevolucionNoPermitida(Information.OrderId); return; } // informacion del Remitente string nombre = Information.ClientProfileData.FirstName; string apellidos = Information.ClientProfileData.LastName; string telefono = Information.ClientProfileData.Phone; string alias = Information.ClientProfileData.Email; string ciudad = Information.ShippingData.Address.City; string direccion = Information.ShippingData.Address.Street; string DepartamentoDestino = Information.ShippingData.Address.State; string CodigoPostal = Information.ShippingData.Address.PostalCode + "000"; string num_pedido = Information.OrderId; string num_documento = Information.ClientProfileData.Document; string NomApell = $"{ nombre } { apellidos }"; string numFactura; if (Information.PackageAttachment.Packages.Count <= 0) { numFactura = ""; } else { numFactura = Information.PackageAttachment.Packages[0].InvoiceNumber; } var infoEmail = GetEmailVtex($"http://conversationtracker.vtex.com.br/api/pvt/emailMapping?alias={alias}&an=offcorss", headers, ""); string email = infoEmail.email; // Informacion del Destinario. string nombre_Des = ConfigurationManager.AppSettings["nom_Des"]; string direccion_Des = ConfigurationManager.AppSettings["direccion_Des"]; string telefono_Des = ConfigurationManager.AppSettings["telefono_Des"]; string ciudad_Des = ConfigurationManager.AppSettings["ciudad_Des"]; string NIT_Des = ConfigurationManager.AppSettings["Ide_Num_Identific_Dest"]; string departamento_Des = ConfigurationManager.AppSettings["departamento_Des"]; string codigoPostal_Des = ConfigurationManager.AppSettings["codigoPostal_Des"]; string email_Des = ConfigurationManager.AppSettings["email_Des"]; int valorDeclarado = Convert.ToInt32(ConfigurationManager.AppSettings["ValorDeclaradoTotal"]); string Des_UnidadLongitud = ConfigurationManager.AppSettings["Des_UnidadLongitud"]; string Des_UnidadPeso = ConfigurationManager.AppSettings["Des_UnidadPeso"]; string Nom_UnidadEmpaque = ConfigurationManager.AppSettings["Nom_UnidadEmpaque"]; string Des_DiceContener = ConfigurationManager.AppSettings["Des_DiceContener"]; string Ide_CodFacturacion = ConfigurationManager.AppSettings["Ide_CodFacturacion"]; string Fec_TiempoEntrega = ConfigurationManager.AppSettings["Fec_TiempoEntrega"]; int Des_TipoTrayecto = Convert.ToInt32(ConfigurationManager.AppSettings["Des_TipoTrayecto"]); int Num_Piezas = Convert.ToInt32(ConfigurationManager.AppSettings["Num_Piezas"]); int Des_FormaPago = Convert.ToInt32(ConfigurationManager.AppSettings["Des_FormaPago"]); int Des_MedioTransporte = Convert.ToInt32(ConfigurationManager.AppSettings["Des_MedioTransporte"]); int Des_TipoDuracionTrayecto = Convert.ToInt32(ConfigurationManager.AppSettings["Des_TipoDuracionTrayecto"]); string Nom_TipoTrayecto = ConfigurationManager.AppSettings["Nom_TipoTrayecto"]; int Num_Alto = Convert.ToInt32(ConfigurationManager.AppSettings["Num_Alto"]); int Num_Ancho = Convert.ToInt32(ConfigurationManager.AppSettings["Num_Ancho"]); int Num_Largo = Convert.ToInt32(ConfigurationManager.AppSettings["Num_Largo"]); int Num_PesoTotal = Convert.ToInt32(ConfigurationManager.AppSettings["Num_Alto"]); int Ide_Producto = Convert.ToInt32(ConfigurationManager.AppSettings["Ide_Producto"]); int Num_BolsaSeguridad = Convert.ToInt32(ConfigurationManager.AppSettings["Num_BolsaSeguridad"]); int Num_VolumenTotal = Convert.ToInt32(ConfigurationManager.AppSettings["Num_VolumenTotal"]); int Num_PesoFacturado = Convert.ToInt32(ConfigurationManager.AppSettings["Num_PesoFacturado"]); string ruta = ConfigurationManager.AppSettings["ruta_archivo"]; // Autenticación al servicio. string login = ConfigurationManager.AppSettings["login"]; string pwd = ConfigurationManager.AppSettings["pw"]; string Id_CodFacturacion = ConfigurationManager.AppSettings["Id_CodFacturacion"]; string Nombre_Cargue = ConfigurationManager.AppSettings["Nombre_Cargue"]; datosguiaEntities context = new datosguiaEntities(); var query = context.info_guia.Where(x => x.num_pedido == num_pedido).ToList(); if (query.Count > 0) { infoWarning(num_pedido); } else { #region GenGguia GeneracionGuias prGuias = new GeneracionGuias(); prGuias.Url = "http://web.servientrega.com:8081/GeneracionGuias.asmx"; CargueMasivoExternoDTO[] cargueExtern = new CargueMasivoExternoDTO[1]; int cantEnvios = 1; cargueExtern[0] = new CargueMasivoExternoDTO(); cargueExtern[0].objEnvios = new EnviosExterno[cantEnvios]; //2. Inicio Parametros para autenticación al servicio AuthHeader objautenti = new AuthHeader(); objautenti.login = login; //Login de acceso de SISCLINET objautenti.pwd = prGuias.EncriptarContrasena(pwd); //Encriptar la contraseña del cliente objautenti.Id_CodFacturacion = Id_CodFacturacion; //Código de Facturación de SISCLINET objautenti.Nombre_Cargue = Nombre_Cargue; //Nombre del cargue, aparecerá en la impresión de guías desde la aplicación SISCLINET prGuias.AuthHeaderValue = objautenti; //Asocio la autenticación al servicio web for (int i = 0; i < cantEnvios; i++) { //3.Set de parametros del envío cargueExtern[0].objEnvios[i] = new EnviosExterno(); var arrEnvios = new EnviosExterno(); //CARACTETISTICAS DEL ENVIO arrEnvios.Num_Guia = 0; arrEnvios.Num_Sobreporte = 0; arrEnvios.Num_SobreCajaPorte = "0"; arrEnvios.Fec_TiempoEntrega = Fec_TiempoEntrega; arrEnvios.Des_TipoTrayecto = Des_TipoTrayecto; arrEnvios.Ide_CodFacturacion = Ide_CodFacturacion; arrEnvios.Num_Piezas = Num_Piezas; arrEnvios.Des_FormaPago = Des_FormaPago; // Siempre va 2 Crédito arrEnvios.Des_MedioTransporte = Des_MedioTransporte; arrEnvios.Des_TipoDuracionTrayecto = Des_TipoDuracionTrayecto; arrEnvios.Nom_TipoTrayecto = Nom_TipoTrayecto; arrEnvios.Num_Alto = Num_Alto; arrEnvios.Num_Ancho = Num_Alto; arrEnvios.Num_Largo = Num_Alto; arrEnvios.Num_PesoTotal = Num_Alto; arrEnvios.Des_UnidadLongitud = Des_UnidadLongitud; arrEnvios.Des_UnidadPeso = Des_UnidadPeso; arrEnvios.Nom_UnidadEmpaque = Nom_UnidadEmpaque; arrEnvios.Gen_Sobreporte = false; arrEnvios.Gen_Cajaporte = false; arrEnvios.Des_DiceContenerSobre = Des_DiceContener; //CAMPOS OPCIONALES CON CAIDA IMPRESA EN LA GUIA arrEnvios.Doc_Relacionado = num_pedido; arrEnvios.Des_VlrCampoPersonalizado1 = NomApell; arrEnvios.Ide_Num_Referencia_Dest = ""; arrEnvios.Num_Factura = numFactura; //TIPO DE PRODUCTO A UTILIZAR DE SERVIENTREGA arrEnvios.Ide_Producto = Ide_Producto;//tipo de mercancia a cargar arrEnvios.Num_Recaudo = "0"; //OTRA INFORMACION, DEJAR SIEMPRE FIJA Guid guid = new Guid("00000000-0000-0000-0000-000000000000"); arrEnvios.Ide_Destinatarios = guid; arrEnvios.Ide_Manifiesto = guid; arrEnvios.Num_BolsaSeguridad = Num_BolsaSeguridad; arrEnvios.Num_Precinto = 0; arrEnvios.Num_VolumenTotal = Num_VolumenTotal; arrEnvios.Des_DireccionRecogida = ""; arrEnvios.Des_TelefonoRecogida = ""; arrEnvios.Des_CiudadRecogida = ""; arrEnvios.Num_PesoFacturado = 0; arrEnvios.Des_TipoGuia = 2; arrEnvios.Id_ArchivoCargar = ""; arrEnvios.Des_CiudadOrigen = "0"; //arrEnvios.idePaisOrigen = 1; //arrEnvios.idePaisDestino = 1; //arrEnvios.Des_codigopostal = codigoPostal_Des; //arrEnvios.Recoleccion_Esporadica = ""; //arrEnvios.Rem_codigopostal = CodigoPostal; //Valores arrEnvios.Num_ValorDeclaradoTotal = valorDeclarado; arrEnvios.Num_ValorLiquidado = 0; arrEnvios.Num_VlrSobreflete = 0; arrEnvios.Num_VlrFlete = 0; arrEnvios.Num_Descuento = 0; arrEnvios.Num_ValorDeclaradoSobreTotal = "60000"; //Informacion Destinatario arrEnvios.Des_Telefono = telefono_Des; arrEnvios.Des_Ciudad = ciudad_Des; arrEnvios.Des_DepartamentoDestino = departamento_Des; arrEnvios.Des_Direccion = direccion_Des; arrEnvios.Nom_Contacto = nombre_Des; arrEnvios.Des_DiceContener = Des_DiceContener; arrEnvios.Ide_Num_Identific_Dest = num_documento; arrEnvios.Num_Celular = ""; arrEnvios.Des_CorreoElectronico = email_Des; //Información del Remitente arrEnvios.Des_CiudadRemitente = CodigoPostal; arrEnvios.Des_DireccionRemitente = direccion; arrEnvios.Des_DepartamentoOrigen = ""; arrEnvios.Num_TelefonoRemitente = telefono; arrEnvios.Num_IdentiRemitente = "";//num_documento si se envía falla la creación de la guía; arrEnvios.Nom_Remitente = nombre; //MAYORISTA , NO APICA PARA CLIENTES arrEnvios.Est_CanalMayorista = false; arrEnvios.Nom_RemitenteCanal = ""; arrEnvios.Des_IdArchivoOrigen = "1000100"; cargueExtern[0].objEnvios[i] = arrEnvios; } //4. Consumo del método CargueMasivoExterno y captura la Guia de retorno string[] respuesta = new string[1]; byte[] bytereport = new byte[1]; int sFormatoimpresionguia = -99; string sfile; if (prGuias.CargueMasivoExterno(ref cargueExtern, ref respuesta)) { //5. GenerarGuiaSticker como stream y retorno array de bytes sFormatoimpresionguia = cargueExtern[0].objEnvios[0].Des_TipoGuia; prGuias.GenerarGuiaSticker(decimal.Parse(respuesta[0].ToString()), decimal.Parse(respuesta[respuesta.Length - 1].ToString()), objautenti.Id_CodFacturacion, sFormatoimpresionguia, cargueExtern[0].objEnvios[0].Id_ArchivoCargar, false, ref bytereport); if (bytereport[0] == 0) { ErrByte(); } } int num_guia = Convert.ToInt32(cargueExtern[0].objEnvios[0].Num_Guia); if (num_guia != 0) { string workingDirectory = Path.Combine(Server.MapPath(ruta)); //6. Impresión de los bytes de la guía en el navegador if (sFormatoimpresionguia == 1) //6. Impresión de guía bond { //sfile = "c:\\reportsticker_" + respuesta[0] + ".pdf"; sfile = $@"{workingDirectory}\{NomApell}_{num_guia}.pdf"; } else //6. Impresión de guía Sticker { sfile = $@"{workingDirectory}\{NomApell}_{num_guia}.pdf"; } File.WriteAllBytes(sfile, bytereport); #region FunEmail if (SendMail(sfile, email, NomApell)) { int motivos = Convert.ToInt32(id_motivo.Value); #region InsertDataGuia try { info_guia bd = new info_guia { num_pedido = num_pedido, num_guia = num_guia, nombre = nombre, apellido = apellidos, telefono = telefono, num_documento = num_documento, email = email, direccion = direccion, codigoPostal = CodigoPostal, id_motivos = motivos, source = Session["source"] != null ? Session["source"].ToString() : "" }; context.info_guia.Add(bd); context.SaveChanges(); } catch (Exception ex) { Console.WriteLine(ex.InnerException); } #endregion InsertDataGuia string guia = Convert.ToString(num_guia); //string motivo = Convert.ToString(motivos); datosguiaEntities mot = new datosguiaEntities(); var query1 = from m in context.motivos where m.id == motivos select m; var motinfo = query1.FirstOrDefault <motivos>(); string descMotivo = motinfo.descripcion; SendMailAdmin(NomApell, email, num_documento, num_pedido, descMotivo, guia, sfile, numFactura); Response.Redirect($"guiagenerada.aspx?num_pedido={page}"); } else { string textError = $"Lo sentimos, la guía no pudo ser generada correctamente. Por favor comuniquese con el centro de ayuda de OFFCORSS"; ClientScript.RegisterStartupScript(GetType(), "Error", "ErrorModal('" + textError + "');", true); } #endregion funEmail #endregion GenGguia } else { infoErrorOrder(num_pedido); } } } else { infoErrorOrderNull(); } } }