示例#1
0
        public void RepCreActi(string titulo, string t)
        {
            DataTable datos     = new DataTable();
            string    ConsulAdd = "";

            if (t == "Diario")
            {
                ConsulAdd = "and (cre.id_tipo_credito=1 or cre.id_tipo_credito=2) ";
            }
            else if (t == "Mensual")
            {
                ConsulAdd = "and (cre.id_tipo_credito=3 or cre.id_tipo_credito=4) ";
            }

            string consulta = "SELECT  cre.COD_CREDITO,cli.NOMBRES,cli.APELLIDOS,cre.Saldo_cap, date_format(cre.FECHA_CONC,'%d/%M/%Y'), date_format(cre.FECHA_venci,'%d/%M/%Y'),cre.id_tipo_credito " +
                              "FROM credito cre " +
                              "INNER JOIN asigna_credito acre ON acre.COD_CREDITO = cre.COD_CREDITO " +
                              "INNER JOIN asigna_solicitud asol ON asol.ID_SOLICITUD = acre.ID_SOLICITUD " +
                              "INNER JOIN cliente cli ON cli.CODIGO_CLI = asol.codigo_cli " +
                              "WHERE cre.ESTADO='Activo'" + ConsulAdd +
                              "GROUP BY cre.COD_CREDITO";
            int cont, cant;

            datos = buscar(consulta);
            cant  = datos.Rows.Count;
            string fechahoy = DateTime.Now.Date.ToString("yyyy/MM/dd");
            RepEnc enca     = new RepEnc();

            enca.Titulo = titulo;
            for (cont = 0; cont < cant; cont++)
            {
                Credi_Activity detalle = new Credi_Activity();
                string         tipo    = datos.Rows[cont][6].ToString();
                string         codcre  = datos.Rows[cont][0].ToString();
                decimal        interes = cre.SaldoDeinteres(codcre, fechahoy, tipo, 0);
                if (interes < 0)
                {
                    interes = 0;
                }
                detalle.Credito  = int.Parse(datos.Rows[cont][0].ToString());
                detalle.Nombre   = datos.Rows[cont][1].ToString() + " " + datos.Rows[cont][2].ToString();
                detalle.Scapital = decimal.Parse(datos.Rows[cont][3].ToString());
                detalle.Sinteres = interes;
                detalle.Fcons    = datos.Rows[cont][4].ToString();
                detalle.Fvenc    = datos.Rows[cont][5].ToString();
                enca.DetalleActi.Add(detalle);
            }
            Credi_Activ Activos = new Credi_Activ();

            Activos.detalle = enca.DetalleActi;
            Activos.encabezado.Add(enca);
            Activos.Show();
        }
示例#2
0
        private void cambiar_estado()
        {
            string  tipo = "";
            string  fecha_conc = DtpConc.Value.ToString("yyyy/MM/dd");
            string  fecha_fin = "";
            int     dias = 0;
            string  solicitud = CboSoli.Text;
            string  monto = TxtMonto2.Text;
            string  plazo = TxtPlazo.Text;
            string  interes = TxtInteres.Text;
            string  estado = CboEstado.Text;
            decimal cuotaint = 0, cuotacapital;;

            if (CboTipo2.SelectedIndex == 0)
            {
                tipo      = "1";
                dias      = Convert.ToInt32(TxtPlazo.Text);
                fecha_fin = fechaf(fecha_conc, dias);
            }
            else if (CboTipo2.SelectedIndex == 1)
            {
                tipo      = "2";
                dias      = Convert.ToInt32(TxtPlazo.Text);
                fecha_fin = fechaf(fecha_conc, dias);
            }
            else if (CboTipo2.SelectedIndex == 2)
            {
                tipo      = "3";
                dias      = Convert.ToInt32(TxtPlazo.Text);
                fecha_fin = Convert.ToDateTime(fecha_conc).AddMonths(dias).ToString("yyyy/MM/dd");
            }
            else if (CboTipo2.SelectedIndex == 3)
            {
                tipo      = "4";
                dias      = Convert.ToInt32(TxtPlazo.Text);
                fecha_fin = Convert.ToDateTime(fecha_conc).AddMonths(dias).ToString("yyyy/MM/dd");
            }



            DataTable Creact  = new DataTable();
            int       cod_cli = sol.cod_cliente(CboSoli.Text);

            Creact = cre.creditos_act(Convert.ToString(cod_cli));
            int totalcre;

            totalcre = Creact.Rows.Count;
            string[] datos = new string[11];
            //Comprueba si cancelas creditos anteriores o se crea solamente un nuevo credito
            if (totalcre >= 1 && CboEstado.Text == "Autorizado")
            {
                if (MessageBox.Show("Existe(n) creditos activos de cliente \n¿Desea generar un refinanciamiento? \nSi(Refinanciar Credito)\nNo(Generar credito nuevo)", "Creditos anteriores", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    ListCred Lista = new ListCred();
                    Lista.cod_cli     = cod_cli.ToString();
                    Lista.nombre      = TxtNomSoli.Text;
                    Lista.Mostrarcre += new ListCred.permiso(cod_cred);
                    Lista.ShowDialog();
                    if (cod_credi == 0)
                    {
                        return;
                    }
                    LblRef.Text = "1";
                    DataTable datosint = new DataTable();
                    datosint = cre.datoscre(cod_credi.ToString(), DateTime.Now.ToString("yyyy/MM/dd"));
//                    datos = cre.cantcre(CboPresta.Text, DtpPago.Value.ToString());
                    string  nTipo   = cre.tipoC(cod_credi.ToString());
                    decimal SaldAnt = cre.saldoant(cod_cli.ToString(), cod_credi.ToString());
                    decimal IntAnt  = cre.SaldoDeinteres(cod_credi.ToString(), DateTime.Now.ToString("yyyy/MM/dd"), nTipo, 0);
                    if (IntAnt < 0)
                    {
                        IntAnt = 0;
                    }
                    salantes  = SaldAnt + IntAnt;
                    datos[0]  = solicitud;
                    datos[1]  = monto;
                    datos[2]  = plazo;
                    datos[3]  = interes;
                    datos[4]  = fecha_conc;
                    datos[5]  = fecha_fin;
                    datos[6]  = tipo;
                    datos[7]  = estado;
                    datos[8]  = salantes.ToString();
                    datos[9]  = totdias(fecha_conc, dias).ToString();
                    datos[10] = TxtGastos.Text;

                    DataTable datosfi = new DataTable();
                    //calculo de cuotas finales
                    cuotacapital = cre.saldoant(cod_cli.ToString(), cod_credi.ToString());
                    datosfi      = cre.cantcre(cod_credi.ToString(), DateTime.Now.ToString("dd/MM/yyyy"));
                    // cuotaint = cre.SaldoDeinteres(cod_credi.ToString(), DateTime.Now.ToString("dd/MM/yyyy"),nTipo, 0);
                    cuotaint = decimal.Parse(datosfi.Rows[0][5].ToString());
                    string[] pago = new string[8];
                    pago[0] = cod_credi.ToString();
                    pago[1] = "0";
                    pago[2] = "0";
                    if (cuotaint > 0)
                    {
                        pago[1] = cuotaint.ToString();
                    }
                    if (cuotacapital > 0)
                    {
                        pago[2] = cuotacapital.ToString();
                    }

                    pago[3] = (decimal.Parse(pago[1]) + decimal.Parse(pago[2])).ToString();
                    pago[4] = "";
                    pago[5] = "";
                    pago[6] = "";
                    pago[7] = cuotaint.ToString();


                    //Registrar pago
                    pagocancelacion(pago);

                    if (cre.cancelar_cre(cod_credi.ToString()))
                    {
                        MessageBox.Show("Se canceló el credito anterior: ", " cancelado");
                    }
                    else
                    {
                        //  MessageBox.Show("Credito: " + Creact.Rows[cont][0].ToString() + " cancelado");
                    }
                }
                else
                {
                    LblRef.Text = "0";
                    datos[0]    = solicitud;
                    datos[1]    = monto;
                    datos[2]    = plazo;
                    datos[3]    = interes;
                    datos[4]    = fecha_conc;
                    datos[5]    = fecha_fin;
                    datos[6]    = tipo;
                    datos[7]    = estado;
                    datos[8]    = "0";
                    datos[9]    = totdias(fecha_conc, dias).ToString();
                    datos[10]   = TxtGastos.Text;
                }
            }
            else if (totalcre >= 1 && CboEstado.Text == "Denegado")
            {
                if ((sol.denegarsol(solicitud)))
                {
                    MessageBox.Show("Se cancelo la solicitud de credito", " cancelado");
                }
                else
                {
                    //  MessageBox.Show("Credito: " + Creact.Rows[cont][0].ToString() + " cancelado");                }
                }
            }

            else
            {
                datos[0]  = solicitud;
                datos[1]  = monto;
                datos[2]  = plazo;
                datos[3]  = interes;
                datos[4]  = fecha_conc;
                datos[5]  = fecha_fin;
                datos[6]  = tipo;
                datos[7]  = estado;
                datos[8]  = "0";
                datos[9]  = totdias(fecha_conc, dias).ToString();
                datos[10] = TxtGastos.Text;
            }

            if (sol.camb_estado(datos))
            {
                if (estado == "Autorizado")
                {
                    MessageBox.Show("El credito ha sido autorizado con exito");
                    int credit = cre.id_credit(solicitud);
                    ingresocaja(credit.ToString());
                }
                else
                {
                    MessageBox.Show("El credito ha sido denegado");
                }

                hoja_pagos(datos[0], datos[6], datos[8]);
            }
            else
            {
                MessageBox.Show("El credito no ha podido ser autorizado");
            }
        }