Ejemplo n.º 1
0
 /// <remarks/>
 public void GeneraCartaFiniquitoAsync(string NombreContratante, string NoPoliza, string NombreAsegurado, string NombreCoop, string FechaEmision, string Ubicacion, string BancoEmisor, string NoSocio, string NoSiniestro, string Cobertura, string SumaAsegurada, Finiquito[] lista, object userState) {
     if ((this.GeneraCartaFiniquitoOperationCompleted == null)) {
         this.GeneraCartaFiniquitoOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGeneraCartaFiniquitoOperationCompleted);
     }
     this.InvokeAsync("GeneraCartaFiniquito", new object[] {
                 NombreContratante,
                 NoPoliza,
                 NombreAsegurado,
                 NombreCoop,
                 FechaEmision,
                 Ubicacion,
                 BancoEmisor,
                 NoSocio,
                 NoSiniestro,
                 Cobertura,
                 SumaAsegurada,
                 lista}, this.GeneraCartaFiniquitoOperationCompleted, userState);
 }
Ejemplo n.º 2
0
 /// <remarks/>
 public void GeneraCartaFiniquitoAsync(string NombreContratante, string NoPoliza, string NombreAsegurado, string NombreCoop, string FechaEmision, string Ubicacion, string BancoEmisor, string NoSocio, string NoSiniestro, string Cobertura, string SumaAsegurada, Finiquito[] lista) {
     this.GeneraCartaFiniquitoAsync(NombreContratante, NoPoliza, NombreAsegurado, NombreCoop, FechaEmision, Ubicacion, BancoEmisor, NoSocio, NoSiniestro, Cobertura, SumaAsegurada, lista, null);
 }
Ejemplo n.º 3
0
 public string GeneraCartaFiniquito(string NombreContratante, string NoPoliza, string NombreAsegurado, string NombreCoop, string FechaEmision, string Ubicacion, string BancoEmisor, string NoSocio, string NoSiniestro, string Cobertura, string SumaAsegurada, Finiquito[] lista) {
     object[] results = this.Invoke("GeneraCartaFiniquito", new object[] {
                 NombreContratante,
                 NoPoliza,
                 NombreAsegurado,
                 NombreCoop,
                 FechaEmision,
                 Ubicacion,
                 BancoEmisor,
                 NoSocio,
                 NoSiniestro,
                 Cobertura,
                 SumaAsegurada,
                 lista});
     return ((string)(results[0]));
 }
Ejemplo n.º 4
0
        /*Botón que guarda la información del siniestro en la BD y guarda la cadena html generada en una variable de sesión*/
        protected void btnGuardarSiniestro_DirectClick(object sender, DirectEventArgs e)
        {
            try
            {
                List<Finiquito> listaben = new List<Finiquito>(); ;
                Session["ListaBen"] = listaben;//Guarda la lista en una varible de sesión
                List<wsConsultasMic.Beneficiario> beneficiarioagregado = new List<wsConsultasMic.Beneficiario>(consultadat.ConsultaBeneficiarios(Convert.ToInt32(Session["IdEmision"]), Convert.ToString(Session["SumaAseg"])));//Realiza busqueda de los beneficiarios de la póliza seleccionada previamente
                List<Beneficiario> beneficiarioconcatenado = new List<Beneficiario>();//Crea lista del objeto Beneficiario para mostrar en grid
                foreach (wsConsultasMic.Beneficiario datos in beneficiarioagregado)
                {
                    Beneficiario tmp = new Beneficiario(datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido, datos.Parentesco, datos.Porcentaje, datos.Id, datos.Estatus);
                    beneficiarioconcatenado.Add(tmp);
                    Session["listaben2"] = beneficiarioconcatenado;
                    Finiquito bene = new Finiquito();
                    bene.NombreBeneficiario = datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido;
                    bene.Cantidad = datos.Porcentaje2.ToString();
                    listaben = (List<Finiquito>)(Session["ListaBen"]);
                    listaben.Add(bene);
                    Session["ListaBen"] = listaben;
                }
                this.stDesignacionBeneficiarios.DataSource = beneficiarioconcatenado;
                this.stDesignacionBeneficiarios.DataBind();

                listaben = (List<Finiquito>)(Session["ListaBen"]);
                if (dfFechaMuerte.Text != "" && txaCausaMuerte.Text != "")//Compara que los campos obligatorios contengan información
                {
                    if (Convert.ToString(Session["MAhorrador"]) == "false")
                    {
                        tipopol = 1;
                    }
                    else if (Convert.ToString(Session["MAhorrador"]) == "true")
                    {
                        tipopol = 2;
                    }

                    if (Convert.ToInt32(cbTipoMuerte.SelectedItem.Value) == 3 || Convert.ToInt32(cbTipoMuerte.SelectedItem.Value) == 4)//Comprueba el tipo de muerte del asegurado
                    {
                        this.chkValidarBen.Checked = false;//Libera la casila de verificacion de beneficiarios

                        /*Mensaje de alerta*/
                        Acceso.GeneraMensaje("Aviso", "Lo sentimos pero no puedes continuar con el pago del beneficio por el tipo de muerte, envía la documentación necesaria a PRYBE para su análisis", 'I');

                        List<wsConsultasMic.Poliza> polizasasociadas = new List<wsConsultasMic.Poliza>(consultadat.ConsultaPolizasSocio(Convert.ToInt32(Session["NoCoop"]), Convert.ToString(Session["NumeroSocio"])));
                        if (tipopol == 1)
                        {
                            foreach (var item in polizasasociadas)
                            {
                                if (item.EsDependiente == false)
                                {
                                    /*Realiza inserción de siniestro de las pólizas tipo 1 ligadas al socio*/
                                    error = insertsiniestro.InsertSiniestro(0, dfFechaMuerte.Text, txaCausaMuerte.Text.ToUpper(), tipopol, 0, Convert.ToInt32(item.Id),
                                                                    Convert.ToInt32(cbTipoMuerte.SelectedItem.Value), Convert.ToInt32(Session["Ejecutivo"]), Convert.ToInt32(Session["IdAseg"]),Convert.ToInt32(Session["NoSucursal"]));
                                    /*Guarda en log el alta de siniestro de las pólizas ligadas al socio con el tipo de muerte*/
                                    Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "ALTA DE SINIESTRO CON TIPO DE MUERTE SUICIDIO/HOMICIDIO DE LA POLIZA: " + Convert.ToString(item.Numero) + " | DEL SOCIO: " + Convert.ToString(Session["NumeroSocio"]));
                                }
                            }
                        }
                        else
                        {
                            /*Realiza la inserción de siniestro de las pólizas tipo 2 ligadas al socio*/
                            error = insertsiniestro.InsertSiniestro(0, dfFechaMuerte.Text, txaCausaMuerte.Text.ToUpper(), tipopol, 0, Convert.ToInt32(Session["IdEmision"]),
                                                                    Convert.ToInt32(cbTipoMuerte.SelectedItem.Value), Convert.ToInt32(Session["Ejecutivo"]), Convert.ToInt32(Session["IdAseg"]),Convert.ToInt32(Session["NoSucursal"]));
                            /*Guarda en log el alta de siniestro de las pólizas ligadas al socio con el tipo de muerte*/
                            Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "ALTA DE SINIESTRO CON TIPO DE MUERTE SUICIDIO/HOMICIDIO DE LA POLIZA: " + Convert.ToString(Session["Cert"]) + " | DEL SOCIO: " + Convert.ToString(Session["NumeroSocio"]));
                        }

                        Limpia_CamposSiniestro();//Consume el método que limpia campos de captura de información de siniestro

                        numerosocio = Convert.ToString(Session["NumeroSocio"]);//Obtiene el número de socio a través de variable de sesión y la guarda en una variable de tipo cadena

                        //Realiza busqueda de pólizas asociadas al socio
                        List<wsConsultasMic.Poliza> polizasasociadas1 = new List<wsConsultasMic.Poliza>(consultadat.ConsultaPolizasSocio(Convert.ToInt32(Session["NoCoop"]), numerosocio));
                        polizasasociadas1.Reverse();
                        stEmisionesSocio.DataSource = polizasasociadas1;
                        stEmisionesSocio.DataBind();
                        this.wdw_DatosMuerte.Hide();//Oculta la ventana de captura datos de siniestro
                    }
                    else
                    {
                        Session["FechaM"] = diam = Convert.ToDateTime(dfFechaMuerte.Text);
                        Session["CausaM"] = txaCausaMuerte.Text.ToUpper();
                        this.chkValidarBen.Checked = false;
                        /*Consulta de pólizas ligadas al socio*/
                        List<wsConsultasMic.Poliza> polizasasociadas = new List<wsConsultasMic.Poliza>(consultadat.ConsultaPolizasSocio(Convert.ToInt32(Session["NoCoop"]), Convert.ToString(Session["NumeroSocio"])));
                        if (tipopol == 1)
                        {
                            foreach (var item in polizasasociadas)
                            {
                                if (item.EsDependiente == false)
                                {
                                    /*Realiza inserción de siniestro de las pólizas tipo 1 ligadas al socio*/
                                    error = insertsiniestro.InsertSiniestro(0, dfFechaMuerte.Text, txaCausaMuerte.Text.ToUpper(), tipopol, 0, Convert.ToInt32(item.Id),
                                                                    Convert.ToInt32(cbTipoMuerte.SelectedItem.Value), Convert.ToInt32(Session["Ejecutivo"]), Convert.ToInt32(Session["IdAseg"]),Convert.ToInt32(Session["NoSucursal"]));
                                    /*Guarda en log el alta de siniestro de las pólizas ligadas al socio con el tipo de muerte*/
                                    Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "ALTA DE SINIESTRO CON TIPO DE MUERTE NATURAL/ACCIDENTAL DE LA POLIZA: " + Convert.ToString(item.Numero) + " | DEL SOCIO: " + Convert.ToString(Session["NumeroSocio"]));
                                }
                            }
                        }
                        else
                        {
                            /*Realiza inserción de siniestro de las pólizas tipo 2 ligadas al socio*/
                            error = insertsiniestro.InsertSiniestro(0, dfFechaMuerte.Text, txaCausaMuerte.Text.ToUpper(), tipopol, 0, Convert.ToInt32(Session["IdEmision"]),
                                                                    Convert.ToInt32(cbTipoMuerte.SelectedItem.Value), Convert.ToInt32(Session["Ejecutivo"]), Convert.ToInt32(Session["IdAseg"]),Convert.ToInt32(Session["NoSucursal"]));
                            /*Guarda en log el alta de siniestro de las pólizas ligadas al socio con el tipo de muerte*/
                            Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "ALTA DE SINIESTRO CON TIPO DE MUERTE NATURAL/ACCIDENTAL DE LA POLIZA: " + Convert.ToString(Session["Cert"]) + " | DEL SOCIO: " + Convert.ToString(Session["NumeroSocio"]));
                        }

                        numerosocio = Convert.ToString(Session["NumeroSocio"]);//Obtiene el número de socio a través de variable de sesión y la guarda en una variable de tipo cadena
                        List<wsConsultasMic.Poliza> polizasasociadas1 = new List<wsConsultasMic.Poliza>(consultadat.ConsultaPolizasSocio(Convert.ToInt32(Session["NoCoop"]), numerosocio));//Realiza buesqueda de pólizas asociadas al socio
                        polizasasociadas1.Reverse();
                        stEmisionesSocio.DataSource = polizasasociadas1;
                        stEmisionesSocio.DataBind();
                        Limpia_CamposSiniestro();//Consume el método que limpia campos de captura de información de siniestro
                        this.wdw_DatosMuerte.Hide();//Oculta la ventana de captura de información de siniestro
                        wdwInformacionBeneficiarios.Show();//Muestra la venta de los beneficiarios asignados
                    }
                }
                else
                {
                    Acceso.GeneraMensaje("Aviso", "Falta de llenado campos que son obligatorios", 'W');//Mensaje de alerta
                }
                Limpia_CamposSiniestro();
                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
            }
            catch (Exception ex)
            {
                Acceso.GeneraMensaje("Aviso", "Se genero un problema en el servicio de PRYBE, por favor vuelva a intentarlo.", 'I');//Mensaje de alerta
                /*Guarda en log problema de excepcion originado*/
                Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "PROBLEMA ORIGINADO EN EL MODULO DE SINIESTROS, MENSAJE: " + ex.Message);
                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
            }
        }
Ejemplo n.º 5
0
        /*Método que selecciona una poliza y se obtiene los beneficiarios de esta.*/
        protected void CellCotizacion_DirectClick(object sender, DirectEventArgs e)
        {
            RowSelectionModel sm = this.gpPolizasSocio.SelectionModel.Primary as RowSelectionModel;
            string cadena1, cadena2, cadena3, cadena4, cadena5, cadena6, cadena7, cadena8, cadena9;
            /*Datos necesarios para impresión de solicitud de reclamo de beneficiarios*/
            Session["IdEmision"] = idEmision = e.ExtraParams["Id"];
            Session["AseguradoPol"] = e.ExtraParams["Asegurado"];
            Session["Contratante"] = e.ExtraParams["Socio"];
            Session["SumaAseg"] = e.ExtraParams["SumaAsegurada"];
            Session["Cert"] = poliza = e.ExtraParams["Poliza"];
            Session["IdAseg"] = e.ExtraParams["IdAsegurado"];
            Session["MAhorrador"] = menor = e.ExtraParams["MenorAhorrador"];
            Session["StatusPoliza"] = estatus = e.ExtraParams["Estatus"];
            fechanac = e.ExtraParams["FechaNacimiento"];
            Session["FechaIni"] = e.ExtraParams["FechaInicio"];
            Session["FechaFinVig"] = e.ExtraParams["FechaFin"];
            Session["Link1"] = e.ExtraParams["Link"];
            Session["Calle1"] = e.ExtraParams["Calle"];
            Session["NoExterior"] = e.ExtraParams["NoExt"];
            Session["Lada1"] = e.ExtraParams["Lada"];
            Session["Tel"] = e.ExtraParams["Telefono"];
            Session["RFC1"] = e.ExtraParams["RFC"];
            Session["FechaNac"] = Convert.ToDateTime(fechanac);
            Session["Ocupacion"] = e.ExtraParams["OcupEsp"];
            Session["DomicilioGral"] = cadena1 = e.ExtraParams["Domicilio"];

            if (cadena1 != null)//Comprueba que la cadena contega información
            {
                Session["CadenaP"] = cadena1.LongCount(letra => letra.ToString() == "|");//Realiza conteo de apariciones del caracter |
                if (Convert.ToInt32(Session["CadenaP"]) == 4)//Comprueba que la variable de sesión sea igual a 4
                {
                    /*Se extraen de cadena los datos necesarios para impresión de solicitud de reclamo de beneficiarios*/
                    Session["Estado"] = cadena = cadena1.Substring(0, cadena1.IndexOf("|"));
                    cadena2 = cadena1.Substring(cadena1.IndexOf("|", 1) + 1);
                    Session["Municipio"] = cadena3 = cadena2.Substring(0, cadena2.IndexOf("|"));
                    cadena4 = cadena2.Substring(cadena2.IndexOf("|", 1) + 1);
                    Session["Colonia"] = cadena5 = cadena4.Substring(0, cadena4.IndexOf("|"));
                    cadena6 = cadena4.Substring(cadena4.IndexOf("|", 1) + 1);
                    Session["CP"] = cadena7 = cadena6.Substring(0, cadena6.IndexOf("|"));
                    cadena8 = cadena6.Substring(cadena6.IndexOf("|", 1) + 1);
                    Session["EstadoNac"] = cadena9 = cadena8.Substring(0, cadena8.Length);
                }
                else
                {
                    Session["Estado"] = "";
                    Session["Municipio"] = "";
                    Session["Colonia"] = "";
                    Session["CP"] = "";
                    Session["EstadoNac"] = "";
                }
            }
            else
            {
                Session["Estado"] = "";
                Session["Municipio"] = "";
                Session["Colonia"] = "";
                Session["CP"] = "";
                Session["EstadoNac"] = "";
            }

            if (Convert.ToString(Session["Link1"]) != "")
            {
                if (estatus == "Cancelada" || estatus == "Pago Denegado" || estatus == "No Renovada" || estatus == "En Revisión")//Comprueba el status de la póliza o certificado
                {
                    sm.ClearSelections();
                    switch (estatus)
                    {
                        case "Cancelada":
                            Acceso.GeneraMensaje("Aviso", "La póliza ha sido cancelada por que la póliza principal ha sido marcada como Siniestrada", 'I');//Mensaje de alerta
                            break;

                        case "Pago Denegado":
                            Acceso.GeneraMensaje("Aviso", "Lo sentimos pero no puedes realizar el pago de este beneficio ya que se denego.", 'I');//Mensaje de alerta
                            break;

                        case "No Renovada":
                            Acceso.GeneraMensaje("Aviso", "No puedes dar de alta este siniestro ya que la póliza no esta vigente.", 'I');//Mensaje de alerta
                            break;

                        case "En Revisión":
                            Acceso.GeneraMensaje("Aviso", "No puedes realizar el pago ya que el siniestro todavía se encuentra en etapa de análisis.", 'I');//Mensaje de alerta
                            break;
                    }
                    Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "NO SE PUEDE REALIZAR OPERACIONES EN SINIESTROS YA QUE LA PÓLIZA: " + Convert.ToString(Session["Cert"]) + " | SE ENCUENTRA EN ESTATUS: " + estatus + " | DEL SOCIO: " + Convert.ToString(Session["NumeroSocio"]));
                }
                else
                {
                    if (estatus == "Siniestrada" || estatus == "Pago Aprobado")//Comprueba el estatus de la póliza
                    {
                        int tipopol;
                        if (Convert.ToString(Session["MAhorrador"]) == "false")
                        {
                            tipopol = 1;
                        }
                        else
                        {
                            tipopol = 2;
                        }

                        datosin = insertsiniestro.ConsultaSiniestro(Convert.ToInt32(Session["IdEmision"]), tipopol);
                        Session["FechaM"] = datosin.FechaMuerte;
                        List<Finiquito> listaben = new List<Finiquito>(); ;//Guarda el arreglo en una varible de sesión
                        Session["ListaBen"] = listaben;
                        List<wsConsultasMic.Beneficiario> beneficiarioagregado = new List<wsConsultasMic.Beneficiario>(consultadat.ConsultaBeneficiarios(Convert.ToInt32(Session["IdEmision"]), Convert.ToString(Session["SumaAseg"])));//Realiza busqueda de los beneficiarios de la póliza seleccionada previamente
                        List<Beneficiario> beneficiarioconcatenado = new List<Beneficiario>();//Crea lista del objeto Beneficiario para guardar los datos de los beneficiarios
                        foreach (wsConsultasMic.Beneficiario datos in beneficiarioagregado)
                        {
                            Beneficiario tmp = new Beneficiario(datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido, datos.Parentesco, datos.Porcentaje, datos.Id, datos.Estatus);
                            beneficiarioconcatenado.Add(tmp);
                            Session["listaben2"] = beneficiarioconcatenado;
                            Finiquito bene = new Finiquito();
                            bene.NombreBeneficiario = datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido;
                            bene.Cantidad = datos.Porcentaje2.ToString();
                            listaben = (List<Finiquito>)(Session["ListaBen"]);
                            listaben.Add(bene);
                            Session["ListaBen"] = listaben;
                        }
                        this.stDesignacionBeneficiarios.DataSource = beneficiarioconcatenado;
                        this.stDesignacionBeneficiarios.DataBind();
                        this.wdwInformacionBeneficiarios.Show();
                        wdwInformacionBeneficiarios.Show();
                        sm.ClearSelections();
                    }
                    else
                    {
                        this.wdw_DatosMuerte.Show();
                        sm.ClearSelections();
                    }
                    /*Guarda en log la consulta de la póliza seleccionada*/
                    Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "CONSULTA DE LA POLIZA: " + Convert.ToString(Session["Cert"]) + " | DEL SOCIO:" + Convert.ToString(Session["NumeroSocio"]));
                }
                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla   
                dfFechaMuerte.MinDate = Convert.ToDateTime(Session["FechaIni"]);
                Session["FechaGracia"] = Convert.ToDateTime(Session["FechaFinVig"]).AddDays(30);//
                if (DateTime.Compare(DateTime.Now, Convert.ToDateTime(Session["FechaGracia"])) > 0)//Compara la fecha actual con la fecha de fin de vigencia + periodo de gracia
                {
                    dfFechaMuerte.MaxDate = Convert.ToDateTime(Session["FechaGracia"]);
                }
                else
                {
                    dfFechaMuerte.MaxDate = DateTime.Now;
                }
            }
            else
            {
                Acceso.GeneraMensaje("Aviso", "No se encontro póliza asociada para dar de alta el siniestro", 'I');//Mensaje de alerta
                /*Guarda en log error generado*/
                Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "NO SE ENCONTRO PÓLIZA ASOCIADA DEL ASEGURADO: " + Convert.ToString(Session["AseguradoPol"]) + " | DEL SOCIO:" + Convert.ToString(Session["NumeroSocio"]));
                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla 
            }

        }
Ejemplo n.º 6
0
        /*Botón que oculta la ventana de beneficiarios de la póliza seleccionada y muestra la ventana para la captura de información de siniestro*/
        protected void btnPagoSiniestro_DirectClick(object sender, DirectEventArgs e)
        {
            try
            {
                StringBuilder result = new StringBuilder();
                RowSelectionModel sm = this.gplBeneficiario.SelectionModel.Primary as RowSelectionModel;
                List<wsConsultasMic.Beneficiario> beneficiarioagregado = new List<wsConsultasMic.Beneficiario>(consultadat.ConsultaBeneficiarios(Convert.ToInt32(Session["IdEmision"]), Convert.ToString(Session["SumaAseg"])));//Realiza busqueda de los beneficiarios de la póliza seleccionada previamente
                List<Beneficiario> beneficiarioconcatenado = new List<Beneficiario>();//Crea lista del objeto Beneficiario para guardar los datos de los beneficiarios
                List<Finiquito> listaben = new List<Finiquito>(); ;//Guarda el arreglo en una varible de sesión
                Session["ListaBen"] = listaben;
                string ben1, ben2, ben3, ben4, parentesco1, parentesco2, parentesco3, parentesco4;
                ben1 = "";
                ben2 = "";
                ben3 = "";
                ben4 = "";
                parentesco1 = "";
                parentesco2 = "";
                parentesco3 = "";
                parentesco4 = "";
                int cont = 0;

                if (chkValidarBen.Checked == true)//Comprueba que la casilla de validacion de beneficiarios este seleccionada
                {
                    if (Convert.ToString(Session["StatusPoliza"]) == "Emitida" || Convert.ToString(Session["StatusPoliza"]) == "Renovada")//Comprueba los status de la póliza o certificado
                    {
                        if (Convert.ToString(Session["MAhorrador"]) == "false")//Comprueba que sea un socio títular
                        {
                            tipopol = 1;
                            error = insertsiniestro.UpdateSiniestro(Convert.ToInt32(Session["IdEmision"]), tipopol, 1, 0, 0, 0);
                            if (error.Valor == true)
                            {
                                Session["Siniestro"] = error.Mensaje;
                            }
                            foreach (SelectedRow row in sm.SelectedRows)
                            {
                                foreach (wsConsultasMic.Beneficiario datos in beneficiarioagregado)
                                {
                                    if (datos.Id == Convert.ToInt32(row.RecordID))
                                    {
                                        Session["EstatusBen"] = datos.Estatus;
                                        if (datos.Estatus == "Pagado")
                                        {
                                            Acceso.GeneraMensaje("Aviso", "Ya se ha realizado el pago al beneficirio: " + datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido + " anteriormente", 'I');
                                        }
                                        else
                                        {
                                            /*Guarda en lista los beneficiarios asignados a la póliza seleccionada*/
                                            Beneficiario tmp = new Beneficiario(datos.PrimerApellido + " " + datos.SegundoApellido + " " + datos.PrimerNombre + " " + datos.SegundoNombre, datos.Parentesco, datos.Porcentaje, datos.Id, datos.Estatus);
                                            beneficiarioconcatenado.Add(tmp);
                                            Finiquito bene = new Finiquito();
                                            bene.NombreBeneficiario = datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido;
                                            bene.Cantidad = datos.Porcentaje2.ToString();
                                            listaben = (List<Finiquito>)(Session["ListaBen"]);
                                            listaben.Add(bene);
                                            Session["ListaBen"] = listaben;
                                            insertsiniestro.UpdateEstatusBeneficiario(datos.Id, 1);//Realiza modificación al estatus del beneficiario
                                        }
                                    }
                                }
                            }
                            if (listaben.Count > 0)
                            {
                                foreach (var item in beneficiarioconcatenado)
                                {
                                    cont = cont + 1;//Contador para controlar el numero de beneficiarios

                                    if (ben1 == "" && cont == 1)//Comprueba que ben1 no contenga infomación y que cont su valor sea 1
                                    {
                                        ben1 = item.Nombre.ToUpper();//Se asigna a ben1 el nombre del primer beneficiario
                                        parentesco1 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben2 == "" && cont == 2)//Comprueba que ben2 no contenga infomación y que cont su valor sea 2
                                    {
                                        ben2 = item.Nombre;//Se asigna a ben2 el nombre del segundo beneficiario
                                        parentesco2 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben3 == "" && cont == 3)//Comprueba que ben3 no contenga infomación y que cont su valor sea 3
                                    {
                                        ben3 = item.Nombre;//Se asigna a ben3 el nombre del tercer beneficiario
                                        parentesco3 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben4 == "" && cont == 4)//Comprueba que ben4 no contenga infomación y que cont su valor sea 4
                                    {
                                        ben4 = item.Nombre;//Se asigna a ben4 el nombre del cuarto beneficiario
                                        parentesco4 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }
                                }
                                /*Guarda en variable de sesión cadena HTML generada de solicitud de reclamo*/
                                Session["HTML2"] = creaformato.GeneraReclamacion(Convert.ToString(Session["Cert"]), Convert.ToString(Session["Contratante"]), Convert.ToString(Session["AseguradoPol"]),
                                                                                Convert.ToString(Session["Calle1"]) + ", " + Convert.ToString(Session["Colonia"]) + ", " + Convert.ToString(Session["NoExterior"]),
                                                                                Convert.ToString(Session["Municipio"]), Convert.ToString(Session["Estado"]), Convert.ToString(Session["CP"]),
                                                                                Convert.ToString(Session["Lada1"]) + Convert.ToString(Session["Tel"]), Convert.ToString(Session["RFC1"]), "",
                                                                                Convert.ToDateTime(Session["FechaNac"]).ToString("dd"), Convert.ToDateTime(Session["FechaNac"]).ToString("MM"),
                                                                                Convert.ToDateTime(Session["FechaNac"]).ToString("yy"), Convert.ToString(Session["EstadoNac"]), Convert.ToString(Session["Ocupacion"]),
                                                                                Convert.ToDateTime(Session["FechaM"]).ToString("dd"), Convert.ToDateTime(Session["FechaM"]).ToString("MM"), Convert.ToDateTime(Session["FechaM"]).ToString("yy"),
                                                                                Convert.ToString(Session["CausaM"]), ben1, parentesco1, ben2, parentesco2, ben3, parentesco3, ben4, parentesco4, Convert.ToString(Session["Ubicacion"]) + ", " + DateTime.Now.ToString("dd/MM/yyyy"));

                                /*Guarda en variable de sesión la cadena HTML generada del finiquito a los beneficiarios*/
                                Session["HTML"] = creaformato.GeneraCartaFiniquito(Convert.ToString(Session["Contratante"]), Convert.ToString(Session["Cert"]), Convert.ToString(Session["AseguradoPol"]),
                                                                                    Convert.ToString(Session["Coop"]), DateTime.Today.ToString("dd/MM/yyyy"), Convert.ToString(Session["Ubicacion"]), "", Convert.ToString(Session["NumeroSocio"]),
                                                                                     Convert.ToString(Session["Siniestro"]), "Fallecimiento", Convert.ToString(Session["SumaAseg"]), listaben.ToArray());

                                Session["OpImpresion"] = 1;
                                this.wdwInformacionBeneficiarios.Hide();//Oculta la ventana de beneficiarios de la póliza seleccionada
                                wd_ImpresionReclamo.Show();
                            }
                            else
                            {
                                if (listaben.Count == 0)
                                {
                                    Acceso.GeneraMensaje("Aviso", "No has seleccionado beneficiario para pago.", 'I');
                                    X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                                }
                                else
                                {
                                    Acceso.GeneraMensaje("Aviso", "Ya se realizo el pago al beneficiario seleccionado.", 'I');
                                    X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                                }
                            }
                        }
                        else
                        {
                            tipopol = 2;
                            error = insertsiniestro.UpdateSiniestro(Convert.ToInt32(Session["IdEmision"]), tipopol, 1, 0, 0, 0);
                            if (error.Valor == true)
                            {
                                Session["Siniestro"] = error.Mensaje;
                            }
                            foreach (SelectedRow row in sm.SelectedRows)
                            {
                                foreach (wsConsultasMic.Beneficiario datos in beneficiarioagregado)
                                {
                                    if (datos.Id == Convert.ToInt32(row.RecordID))
                                    {
                                        Session["EstatusBen"] = datos.Estatus;
                                        if (datos.Estatus == "Pagado")
                                        {
                                            Acceso.GeneraMensaje("Aviso", "Ya se ha realizado el pago al beneficirio: " + datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido + " anteriormente", 'I');
                                        }
                                        else
                                        {
                                            Beneficiario tmp1 = new Beneficiario(datos.PrimerApellido + " " + datos.SegundoApellido + " " + datos.PrimerNombre + " " + datos.SegundoNombre, datos.Parentesco, datos.Porcentaje, datos.Id, datos.Estatus);
                                            beneficiarioconcatenado.Add(tmp1);
                                            Finiquito bene1 = new Finiquito();
                                            bene1.NombreBeneficiario = datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido;
                                            bene1.Cantidad = datos.Porcentaje2.ToString();
                                            listaben = (List<Finiquito>)(Session["ListaBen"]);
                                            listaben.Add(bene1);
                                            Session["ListaBen"] = listaben;
                                            insertsiniestro.UpdateEstatusBeneficiario(datos.Id, 1);
                                        }
                                    }
                                }
                            }

                            if (listaben.Count > 0)
                            {
                                foreach (var item in beneficiarioconcatenado)
                                {
                                    cont = cont + 1;//Contador para controlar el numero de beneficiarios

                                    if (ben1 == "" && cont == 1)//Comprueba que ben1 no contenga infomación y que cont su valor sea 1
                                    {
                                        ben1 = item.Nombre.ToUpper();//Se asigna a ben1 el nombre del primer beneficiario
                                        parentesco1 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben2 == "" && cont == 2)//Comprueba que ben2 no contenga infomación y que cont su valor sea 2
                                    {
                                        ben2 = item.Nombre;//Se asigna a ben2 el nombre del segundo beneficiario
                                        parentesco2 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben3 == "" && cont == 3)//Comprueba que ben3 no contenga infomación y que cont su valor sea 3
                                    {
                                        ben3 = item.Nombre;//Se asigna a ben3 el nombre del tercer beneficiario
                                        parentesco3 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben4 == "" && cont == 4)//Comprueba que ben4 no contenga infomación y que cont su valor sea 4
                                    {
                                        ben4 = item.Nombre;//Se asigna a ben4 el nombre del cuarto beneficiario
                                        parentesco4 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }
                                }
                                /*Guarda en variable de sesión cadena HTML generada de solicitud de reclamo*/
                                Session["HTML2"] = creaformato.GeneraReclamacion(Convert.ToString(Session["Cert"]), Convert.ToString(Session["Contratante"]), Convert.ToString(Session["AseguradoPol"]),
                                                                                Convert.ToString(Session["Calle1"]) + ", " + Convert.ToString(Session["Colonia"]) + ", " + Convert.ToString(Session["NoExterior"]),
                                                                                Convert.ToString(Session["Municipio"]), Convert.ToString(Session["Estado"]), Convert.ToString(Session["CP"]),
                                                                                Convert.ToString(Session["Lada1"]) + Convert.ToString(Session["Tel"]), Convert.ToString(Session[""]), "",
                                                                                Convert.ToDateTime(Session["FechaNac"]).ToString("dd"), Convert.ToDateTime(Session["FechaNac"]).ToString("MM"),
                                                                                Convert.ToDateTime(Session["FechaNac"]).ToString("yy"), Convert.ToString(Session["EstadoNac"]), Convert.ToString(Session["Ocupacion"]),
                                                                                Convert.ToDateTime(Session["FechaM"]).ToString("dd"), Convert.ToDateTime(Session["FechaM"]).ToString("MM"),
                                                                                Convert.ToDateTime(Session["FechaM"]).ToString("yy"), Convert.ToString(Session["CausaM"]), ben1, parentesco1, ben2, parentesco2,
                                                                                ben3, parentesco3, ben4, parentesco4, Convert.ToString(Session["Ubicacion"]) + ", " + DateTime.Now.ToString("dd/MM/yyyy"));

                                /*Guarda en variable de sesión la cadena HTML generada del finiquito a los beneficiarios*/
                                Session["HTML"] = creaformato.GeneraCartaFiniquito(Convert.ToString(Session["Contratante"]), Convert.ToString(Session["Cert"]), Convert.ToString(Session["AseguradoPol"]),
                                                                                    Convert.ToString(Session["Coop"]), DateTime.Today.ToString("dd/MM/yyyy"), Convert.ToString(Session["Ubicacion"]), "",
                                                                                    Convert.ToString(Session["NumeroSocio"]), Convert.ToString(Session["Siniestro"]), "Fallecimiento", Convert.ToString(Session["SumaAseg"]), listaben.ToArray());
                                string cadena = Convert.ToString(Session["HTML"]);
                                Session["OpImpresion"] = 1;
                                this.wdwInformacionBeneficiarios.Hide();//Oculta la ventana de beneficiarios de la póliza seleccionada
                                wd_ImpresionReclamo.Show();
                            }
                            else if (listaben.Count == 0)
                            {
                                Acceso.GeneraMensaje("Aviso", "No has seleccionado beneficiario para pago.", 'I');
                                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                            }
                            else
                            {
                                Acceso.GeneraMensaje("Aviso", "Ya se ha realizado el pago al beneficiario.", 'I');
                                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                            }
                        }
                        X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                    }
                    else
                    {
                        this.wdwInformacionBeneficiarios.Hide();//Oculta la ventana de beneficiarios de la póliza seleccionada
                        if (Convert.ToString(Session["StatusPoliza"]) == "Pago Aprobado" || Convert.ToString(Session["StatusPoliza"]) == "Siniestrada")//Comprueba el status de la póliza o certificado
                        {
                            listaben = (List<Finiquito>)(Session["ListaBen"]);

                            if (Convert.ToString(Session["MAhorrador"]) == "false")
                            {
                                tipopol = 1;
                            }
                            else if (Convert.ToString(Session["MAhorrador"]) == "true")
                            {
                                tipopol = 2;
                                Session["RFC1"] = "";
                            }

                            this.chkValidarBen.Checked = false;//Libera la casilla de verificacion de beneficiarios

                            //Realiza la insercion de información de siniestro
                            error = insertsiniestro.UpdateSiniestro(Convert.ToInt32(Session["IdEmision"]), tipopol, 1, 0, 0, 0);
                            if (error.Valor == true)
                            {
                                Session["Siniestro"] = error.Mensaje;
                            }

                            foreach (SelectedRow row in sm.SelectedRows)
                            {
                                foreach (wsConsultasMic.Beneficiario datos in beneficiarioagregado)
                                {
                                    if (datos.Id == Convert.ToInt32(row.RecordID))
                                    {
                                        Session["EstatusBen"] = datos.Estatus;
                                        if (datos.Estatus == "Pagado")
                                        {
                                            Acceso.GeneraMensaje("Aviso", "Ya se ha realizado el pago al beneficiario: " + datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido + " anteriormente", 'I');
                                        }
                                        else
                                        {
                                            Beneficiario tmp = new Beneficiario(datos.PrimerApellido + " " + datos.SegundoApellido + " " + datos.PrimerNombre + " " + datos.SegundoNombre, datos.Parentesco, datos.Porcentaje, datos.Id, datos.Estatus);
                                            beneficiarioconcatenado.Add(tmp);
                                            Finiquito bene = new Finiquito();
                                            bene.NombreBeneficiario = datos.PrimerNombre + " " + datos.SegundoNombre + " " + datos.PrimerApellido + " " + datos.SegundoApellido;
                                            bene.Cantidad = datos.Porcentaje2.ToString();
                                            listaben = (List<Finiquito>)(Session["ListaBen"]);
                                            listaben.Add(bene);
                                            Session["ListaBen"] = listaben;
                                            insertsiniestro.UpdateEstatusBeneficiario(datos.Id, 1);
                                        }
                                    }
                                }
                            }
                            //Se guarda en variable de sesión la cadena HTML generada para la impresión de los finiquitos de los beneficiarios
                            if (listaben.Count > 0)
                            {
                                foreach (var item in beneficiarioconcatenado)
                                {
                                    cont = cont + 1;//Contador para controlar el numero de beneficiarios

                                    if (ben1 == "" && cont == 1)//Comprueba que ben1 no contenga infomación y que cont su valor sea 1
                                    {
                                        ben1 = item.Nombre.ToUpper();//Se asigna a ben1 el nombre del primer beneficiario
                                        parentesco1 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben2 == "" && cont == 2)//Comprueba que ben2 no contenga infomación y que cont su valor sea 2
                                    {
                                        ben2 = item.Nombre;//Se asigna a ben2 el nombre del segundo beneficiario
                                        parentesco2 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben3 == "" && cont == 3)//Comprueba que ben3 no contenga infomación y que cont su valor sea 3
                                    {
                                        ben3 = item.Nombre;//Se asigna a ben3 el nombre del tercer beneficiario
                                        parentesco3 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }

                                    if (ben4 == "" && cont == 4)//Comprueba que ben4 no contenga infomación y que cont su valor sea 4
                                    {
                                        ben4 = item.Nombre;//Se asigna a ben4 el nombre del cuarto beneficiario
                                        parentesco4 = item.Parentesco.ToUpper();//Se asigna el parentesco
                                    }
                                }
                                /*Guarda en variable de sesión cadena HTML generada de solicitud de reclamo*/
                                Session["HTML2"] = creaformato.GeneraReclamacion(Convert.ToString(Session["Cert"]), Convert.ToString(Session["Contratante"]), Convert.ToString(Session["AseguradoPol"]),
                                                                                Convert.ToString(Session["Calle1"]) + ", " + Convert.ToString(Session["Colonia"]) + ", " + Convert.ToString(Session["NoExterior"]),
                                                                                Convert.ToString(Session["Municipio"]), Convert.ToString(Session["Estado"]), Convert.ToString(Session["CP"]),
                                                                                Convert.ToString(Session["Lada1"]) + Convert.ToString(Session["Tel"]), Convert.ToString(Session["RFC1"]), "",
                                                                                Convert.ToDateTime(Session["FechaNac"]).ToString("dd"), Convert.ToDateTime(Session["FechaNac"]).ToString("MM"),
                                                                                Convert.ToDateTime(Session["FechaNac"]).ToString("yy"), Convert.ToString(Session["EstadoNac"]), Convert.ToString(Session["Ocupacion"]),
                                                                                Convert.ToDateTime(Session["FechaM"]).ToString("dd"), Convert.ToDateTime(Session["FechaM"]).ToString("MM"),
                                                                                Convert.ToDateTime(Session["FechaM"]).ToString("yy"), Convert.ToString(Session["CausaM"]), ben1, parentesco1, ben2, parentesco2,
                                                                                ben3, parentesco3, ben4, parentesco4, Convert.ToString(Session["Ubicacion"]) + ", " + DateTime.Now.ToString("dd/MM/yyyy"));

                                /*Guarda en variable de sesión la cadena HTML generada del finiquito a los beneficiarios*/
                                Session["HTML"] = creaformato.GeneraCartaFiniquito(Convert.ToString(Session["Contratante"]), Convert.ToString(Session["Cert"]), Convert.ToString(Session["AseguradoPol"]),
                                                                                Convert.ToString(Session["Coop"]), DateTime.Today.ToString("dd/MM/yyyy"), Convert.ToString(Session["Ubicacion"]), "", Convert.ToString(Session["NumeroSocio"]),
                                                                                Convert.ToString(Session["Siniestro"]), "Fallecimiento", Convert.ToString(Session["SumaAseg"]), listaben.ToArray());
                                //Realiza buesqueda de pólizas asociadas al socio
                                List<wsConsultasMic.Poliza> polizasasociadas = new List<wsConsultasMic.Poliza>(consultadat.ConsultaPolizasSocio(Convert.ToInt32(Session["NoCoop"]), Convert.ToString(Session["NumeroSocio"])));
                                polizasasociadas.Reverse();
                                stEmisionesSocio.DataSource = polizasasociadas;
                                stEmisionesSocio.DataBind();

                                Session["OpImpresion"] = 1;//Se guarda en variable de sesión el tipo de impresión
                                Limpia_CamposSiniestro();//Consume el método que limpia campos de captura de información de siniestro
                                wd_ImpresionReclamo.Show();//Muestra la ventana de emisión de finiquito
                                chkValidarBen.Checked = false;
                                Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "PAGO DE SINIESTRO LIBERADO DE POLIZA: " + Convert.ToString(Session["Cert"]) + " | DEL SOCIO: " + Convert.ToString(Session["NumeroSocio"]));
                            }
                            else
                            {
                                if (listaben.Count == 0)
                                {
                                    Acceso.GeneraMensaje("Aviso", "No has seleccionado beneficiario para realizar el pago, o ya se realizo el pago al beneficiario seleccionado.", 'I');
                                    X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                                }
                                else
                                {
                                    Acceso.GeneraMensaje("Aviso", "Ya se realizo el pago al beneficiario seleccionado.", 'I');
                                    X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                                }
                            }

                            X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla  
                        }
                        else
                        {
                            X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                            chkValidarBen.Checked = false;//Pone la casilla de verificación de beneficiarios en false
                            Acceso.GeneraMensaje("Aviso", "No puedes realizar el pago ya que el siniestro todavía se encuentra en etapa de análisis.", 'W');//Mensaje de alerta
                        }
                    }
                    chkValidarBen.Checked = false;
                }
                else
                {
                    X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
                    Acceso.GeneraMensaje("Aviso", "Debes validar que se encuentren todas la credenciales del IFE de los beneficiarios seleccionados.", 'I');//Mensaje de alerta
                }
                sm.ClearSelections();
            }
            catch (Exception ex)
            {
                Acceso.GeneraMensaje("Aviso", "Se genero un problema en el servicio de PRYBE, por favor vuelva a intentarlo.", 'I');
                Loguin.InsertLogDanos(Convert.ToInt32(Session["Ejecutivo"]), 16, "PROBLEMA ORIGINADO EN EL MODULO DE SINIESTROS, MENSAJE: " + ex.Message);
                X.Get("maskDiv").AddClass("x-hide-display");//Oculta la máscara de bloqueo de pantalla
            }

        }