示例#1
0
        public ContratoPersistente(string IdTarjeta)
        {
            DataHandler TempHandler = new DataHandler();

            aTarjeta  = TempHandler.BuscarTarjeta(IdTarjeta);
            aSevicios = TempHandler.ObtenerServiciosContratados(IdTarjeta);
        }
示例#2
0
 public Tarjeta(TarjetaPersistente tarjeta)
     : base(
         tarjeta.IdNumeroTarjeta,
         tarjeta.NoPin,
         tarjeta.NombrePropietario,
         tarjeta.Apellidos,
         tarjeta.NoSucursal,
         tarjeta.FechaOrdenImp,
         tarjeta.EstadoPin,
         tarjeta.Estado,
         tarjeta.Matriz,
         tarjeta.IdLote,
         tarjeta.IdCliente,
         tarjeta.TipoIdentificacion,
         tarjeta.Pais)
 {
 }
示例#3
0
    //REPORTE DE LOTES POR IMPRIMIR
    public Datoslote[] ObtenerLotesPorImprimir()
    {
        string funcionalidadOperadora = "";
        string idBanco, nombreSucursal, nombreBanco, operadora;

        if (GetUsuarioActual.Rol.Funcionalidades.Contains("Imprimir Pines"))
        {
            funcionalidadOperadora = "Imprimir Pines";
        }
        else
        if (GetUsuarioActual.Rol.Funcionalidades.Contains("Imprimir Tarjetas"))
        {
            funcionalidadOperadora = "Imprimir Tarjetas";
        }
        List <LotePersistente> lotes = GetUsuarioActual.ObtenerLotesPinORTarjetaPorImprimir(funcionalidadOperadora);

        if (lotes.Count == 0)
        {
            throw new Exception("1");
        }
        List <Datoslote>   datosLotesPorimprimir = new List <Datoslote>();
        Datoslote          dlote    = new Datoslote();
        TarjetaPersistente auxiliar = new TarjetaPersistente();

        foreach (LotePersistente lote in lotes)
        {
            if (lote.Tarjetas.Count == 0)
            {
                continue;
            }
            auxiliar       = lote.Tarjetas[0];                                                     //primera tarjeta de cada lote
            nombreSucursal = GetUsuarioActual.BuscarNombreSucursalDadoNumero(auxiliar.NoSucursal); //obtener nombre de la sucursal
            idBanco        = auxiliar.IdNumeroTarjeta.Substring(0, 2);
            nombreBanco    = GetUsuarioActual.GetBancoDadoID(idBanco);
            operadora      = GetUsuarioActual.Nombre;
            dlote          = new Datoslote(lote, nombreSucursal, nombreBanco, operadora);
            datosLotesPorimprimir.Add(dlote);
        }
        return(datosLotesPorimprimir.ToArray());
    }
    //***********************************************************************************************************
    public string EjecutarSolicitudesDeBajaDeTarjeta()
    {
        string noMatrices = "No existen matrices disponibles";
        string noWebService = "No se pudo establecer conexión con el Web Service del Banco";
        string mensaje; int desabilitadas = 0, pedidas = 0;

        List <BancoPersistente> bancos = new List <BancoPersistente>();

        try
        {
            bancos = Handler.ObtenerListaBanco();
        }
        catch (Exception)
        { return("No se pudo para obtener la lista de Bancos Asociados porque no hay conexión con la Base de datos"); }

        if (bancos.Count == 0)
        {
            Handler.GuardarNotificacion("No hay Bancos Asociados", "Administrador");
        }
        else
        {
            for (int i = 0; i < bancos.Count; i++)
            {
                List <TarjetaPersistente> lista = new List <TarjetaPersistente>();
                try
                {
                    lista = Handler.ConectWSBuscarTarjetasDarBaja(bancos[i]);
                }
                catch (Exception)
                {
                    Handler.GuardarNotificacion(noWebService + ": " + bancos[i].Nombre, "Administrador");
                }
                for (int j = 0; j < lista.Count; j++)
                {
                    TarjetaPersistente TempTarg = new TarjetaPersistente();
                    try
                    {
                        TempTarg = Handler.BuscarTarjeta(lista[j].IdNumeroTarjeta);
                    }
                    catch (Exception)
                    {
                        return("No se pudo verificar la existencia de la tarjeta del Banco: " + bancos[i].Nombre + " porque no hay conexión con la Base de Datos");
                    }

                    if (TempTarg.IdNumeroTarjeta != null)
                    {
                        string estadoanterior = TempTarg.Estado;
                        if (lista[j].Estado == "03")
                        {
                            TempTarg.Estado = "E";
                        }
                        //else
                        //    if (lista[j].Estado == "04")
                        //        TempTarg.Estado = "P";
                        if (estadoanterior != TempTarg.Estado)
                        {
                            try
                            {
                                Handler.ModificarTarjeta(TempTarg.IdNumeroTarjeta, TempTarg);
                            }
                            catch (Exception) { return("No se pudo modificar la tarjeta del Banco " + bancos[i].Nombre + " porque no hay conexión con la Base de Datos"); }
                        }
                    }
                }
                try
                {
                    //////desabilitadas = Handler.DeshabilitarTarjetas();
                }
                catch (Exception) { return("No se pudo desabilitar las tarjetas del Banco " + bancos[i].Nombre + " porque no hay conexión con la Base de Datos"); }

                List <TarjetaPersistente> tpedidas = new List <TarjetaPersistente>();
                try
                {
                    // tpedidas = Handler.BuscarTarjetasPorEstado("P");
                }
                catch (Exception) { return("No se pudo procesar las tarjetas en estado pedida del Banco " + bancos[i].Nombre + " porque no hay conexión con la Base de Datos"); }

                pedidas = 0;
                for (int j = 0; j < tpedidas.Count; j++)
                {
                    int matr = 0;
                    try
                    {
                        matr = Handler.CantidadDeMatricesDisponibles();
                    }
                    catch (Exception) { return("No se pudo verificar si existen matrices disponibles porque no hay conexión con la Base de Datos"); }
                    if (matr != 0)
                    {
                        try
                        {
                            Handler.GuardarTarjetaEnHistorico(tpedidas[j]);
                        }
                        catch (Exception) { return("No se pudo guardar los datos de la tarjeta del Banco; " + bancos[i].Nombre + "en el historico porque no hay conexión con la Base de Datos"); }

                        Random num = new Random();
                        tpedidas[j].NoPin         = num.Next(1000, 10000).ToString();
                        tpedidas[j].Matriz        = ObtenerNuevaMatriz();
                        tpedidas[j].Estado        = "C";
                        tpedidas[j].EstadoPin     = "C";
                        tpedidas[j].FechaOrdenImp = DateTime.Now;
                        try
                        {
                            Handler.ModificarTarjeta(tpedidas[j].IdNumeroTarjeta, tpedidas[j]);
                        }
                        catch (Exception) { return("No se pudo guardar los datos de la tarjeta del Banco; " + bancos[i].Nombre + " porque no hay conexión con la Base de Datos"); }
                        pedidas++;
                    }
                    else
                    {
                        Handler.GuardarNotificacion(noMatrices, "Administrador");
                        break;
                    }
                }
                if (desabilitadas != 0 || pedidas != 0)
                {
                    mensaje = "Se deshabilitó " + desabilitadas.ToString() + " tarjeta(s) y se cambió " + pedidas.ToString() + " tarjeta(s) por otras nuevas del banco: " + bancos[i].Nombre;
                }
                else
                {
                    mensaje = "No se deshabilitaron ni se cambiaron tarjetas por otras nuevas en el banco: " + bancos[i].Nombre;
                }
                try
                {
                    //Handler.GuardarNotificacion(mensaje, "Administrador");
                }
                catch (Exception) { return(mensaje); }
            }
            try
            {
                //desabilitadas = Handler.CantidadDeTarjetasCambiadasEnElDiaDadoEstado("D");
            }
            catch (Exception) { return("No se pudo obtener las cantidad de bajas procesadas porque no hay conexión con la Base de Datos"); }
            try
            {
                //pedidas = Handler.CantidadDeTarjetasCambiadasEnElDiaDadoEstado("P");
            }
            catch (Exception) { return("No se pudo obtener las cantidad de tarjeta pedidas porque no hay conexión con la Base de Datos"); }

            if (desabilitadas != 0 || pedidas != 0)
            {
                mensaje = "Se deshabilitó " + desabilitadas.ToString() + " tarjeta(s) y se cambió " + pedidas.ToString() + " tarjeta(s) por otras nuevas";
            }
            else
            {
                mensaje = "No se deshabilitaron ni se cambiaron tarjetas en el dia ";
            }
            try
            {
                //Handler.GuardarNotificacion(mensaje, "Administrador");
            }
            catch (Exception) { return(mensaje); }
        }
        return(null);
    }