예제 #1
0
        protected void cmbSolicitud_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e)
        {
            try
            {
                ErrorManager();
                Limpiar();
                dt.Rows.Clear();
                if (cmbSolicitud.SelectedValue != "-1")
                {
                    CN_CapAjusteBaseInstalada cn_ajuste = new CN_CapAjusteBaseInstalada();
                    AjusteBaseInstalada       cabezera  = new AjusteBaseInstalada();
                    cabezera.Id_Emp     = session.Id_Emp;
                    cabezera.Id_Cd      = session.Id_Cd_Ver;
                    cabezera.Abi_Unique = cmbSolicitud.SelectedValue;
                    bool encontrado = false;
                    cn_ajuste.ConsultarAjusteBaseInstalada_PorUnique(ref cabezera, session.Emp_Cnx, ref encontrado);
                    if (encontrado)
                    {
                        foreach (AjusteBaseInstaladaDet adet in cabezera.ListaAjusteBaseInstalada)
                        {
                            dt.Rows.Add(new object[] {
                                adet.Abi_Tipo,
                                cmbTipo.FindItemByValue(adet.Abi_Tipo.ToString()).Text.Replace("-", "").Trim(),
                                adet.Id_Ter_Origen,
                                adet.Id_Cte_Origen,
                                adet.Id_Prd_Origen,
                                adet.Abi_CantActual_Origen,
                                adet.Abi_CantQuitar_Origen,
                                adet.Id_Ter_Destino,
                                adet.Id_Cte_Destino,
                                adet.Id_Prd_Destino,
                                adet.Abi_CantActual_Destino,
                                adet.Abi_CantQuitar_Destino,
                                adet.Abi_ExplicacionCaso,
                                adet.Abi_Estatus,
                                Estatus(adet.Abi_Estatus),
                            });
                        }

                        txtAutorizacion.Text = cabezera.Abi_FechaAutoriza.HasValue ? cabezera.Abi_FechaAutoriza.Value.ToString("dd/MM/yyyy HH:mm") : "";
                    }
                    else
                    {
                        Alerta("No se encontró la solicitud");
                    }
                }
                rgAjuste.Rebind();
            }
            catch (Exception ex)
            {
                ErrorManager(ex, new System.Diagnostics.StackTrace().GetFrame(0).GetMethod().Name);
            }
        }
예제 #2
0
 private void Guardar()
 {
     try
     {
         if (dt.Rows.Count == 0)
         {
             Alerta("La solicitud no tiene partidas agregadas");
             return;
         }
         string    verificador = "";
         Funciones funcion     = new Funciones();
         if (!_PermisoGuardar)
         {
             Alerta("No tiene permiso para guardar");
             return;
         }
         AjusteBaseInstalada cabezera = new AjusteBaseInstalada();
         cabezera.Id_Emp     = session.Id_Emp;
         cabezera.Id_Cd      = session.Id_Cd_Ver;
         cabezera.Id_U       = session.Id_U;
         cabezera.Abi_Fecha  = funcion.GetLocalDateTime(session.Minutos);
         cabezera.Abi_Unique = cmbSolicitud.SelectedValue;
         CN_CapAjusteBaseInstalada cn_ajuste = new CN_CapAjusteBaseInstalada();
         cn_ajuste.Insertar(cabezera, dt, session.Emp_Cnx, ref verificador);
         if (verificador != "")
         {
             Alerta("Solicitud de autorización de ajuste de base instalada creada exitosamente");
             EnviaEmail(verificador);
             GetList();
             rgAjuste.Rebind();
             CargarSolicitudes();
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
예제 #3
0
        private void EnviaEmail(string solicitud)
        {
            try
            {
                ConfiguracionGlobal configuracion = new ConfiguracionGlobal();
                configuracion.Id_Cd  = session.Id_Cd_Ver;
                configuracion.Id_Emp = session.Id_Emp;
                CN_Configuracion cn_configuracion = new CN_Configuracion();
                cn_configuracion.Consulta(ref configuracion, session.Emp_Cnx);
                if (configuracion.Mail_BaseInstalada.Length == 0)
                {
                    Alerta("Error al enviar el correo. Favor de revisar la configuración del sistema");
                    return;
                }

                CN_CapAjusteBaseInstalada cn_ajuste = new CN_CapAjusteBaseInstalada();
                AjusteBaseInstalada       cabezera  = new AjusteBaseInstalada();
                cabezera.Id_Emp     = session.Id_Emp;
                cabezera.Id_Cd      = session.Id_Cd_Ver;
                cabezera.Abi_Unique = solicitud;
                bool encontrado = false;
                cn_ajuste.ConsultarAjusteBaseInstalada_PorUnique(ref cabezera, session.Emp_Cnx, ref encontrado);

                StringBuilder cuerpo_correo = new StringBuilder();
                cuerpo_correo.Append("<div align='center'>");
                cuerpo_correo.Append("<table style='font-family: verdana; font-size:9pt'><tr><td>");
                cuerpo_correo.Append("<img src=\"cid:companylogo\"></td>");
                cuerpo_correo.Append("<td></td>");
                cuerpo_correo.Append("</tr><tr><td colspan='2'><br><br><br></td>");
                cuerpo_correo.Append("</tr><tr>");
                cuerpo_correo.Append("<td colspan='2'>");
                cuerpo_correo.Append("Se ha colocado una solicitud de autorización de ajuste de base instalada con el número de folio <b>" + cabezera.Id_Abi.ToString() + "</b>");
                cuerpo_correo.Append("</td></tr><tr><td colspan='2'>");
                cuerpo_correo.Append("Centro de distribución: <b>" + session.Id_Cd_Ver + " - " + session.Cd_Nombre + "</b>");
                cuerpo_correo.Append("</td></tr><tr><td colspan='2'>");
                cuerpo_correo.Append("Solicitó: <b>" + session.Id_U + " - " + session.U_Nombre + "</b>");
                cuerpo_correo.Append("</td></tr><tr><td colspan='2'><br>");
                cuerpo_correo.Append("</td></tr><tr><td colspan='2'>");
                cuerpo_correo.Append("<center><br><a href='" + Request.Url.ToString().Replace((new FileInfo(Request.Url.AbsolutePath)).Name, "") + "CapAjusteBi_Autorizacion.aspx?id1=" + session.Id_Emp + "&Id2=" + session.Id_Cd_Ver + "&Id3=" + solicitud + "'>Solicitud de autorización de ajuste de base instalada</a></font></center>");
                cuerpo_correo.Append("</td></tr></table></div>");

                SmtpClient sm = new SmtpClient(configuracion.Mail_Servidor, Convert.ToInt32(configuracion.Mail_Puerto));
                sm.Credentials = new NetworkCredential(configuracion.Mail_Usuario, configuracion.Mail_Contraseña);
                //sm.EnableSsl = true;
                MailMessage m = new MailMessage();
                m.From = new MailAddress(configuracion.Mail_Remitente);

                string[] To = configuracion.Mail_BaseInstalada.Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries);
                for (int x = 0; x < To.Length; x++)
                {
                    m.To.Add(new MailAddress(To[x]));
                }

                m.Subject    = "Solicitud de autorización de ajuste de base instalada";
                m.IsBodyHtml = true;
                string        body      = cuerpo_correo.ToString();
                AlternateView vistaHtml = AlternateView.CreateAlternateViewFromString(body, null, MediaTypeNames.Text.Html);
                //Esto queda dentro de un try por si llegan a cambiar la imagen el correo como quiera se mande
                try
                {
                    LinkedResource logo = new LinkedResource(MapPath(@"Imagenes/logo.jpg"), MediaTypeNames.Image.Jpeg);
                    logo.ContentId = "companylogo";
                    vistaHtml.LinkedResources.Add(logo);
                }
                catch (Exception)
                {
                }
                m.AlternateViews.Add(vistaHtml);
                sm.Send(m);
            }
            catch (Exception ex)
            {
                throw ex;
                //Alerta("Error al enviar el correo. Favor de revisar la configuración del sistema");
            }
        }