示例#1
0
        public DetailPage(Personas per, Usuarios usu, UltimaConexion ulti)
        {
            InitializeComponent();

            //SE INSTANCIAN LOS OBJETOS GLOBALES
            Persona        = new Personas().NewPersona(per);
            Usuario        = new Usuarios().NewUsuario(usu);
            UltimaConexion = new UltimaConexion().NewUltimaConexion(ulti);

            BindingContext = DatosPagina = new MasterDetailPageUserInfoViewModel(Persona, Usuario, UltimaConexion);
        }
示例#2
0
        //===============================================================================================
        //===============================================================================================
        //CONSTRUCTOR DE LA CLASE (APP STAND ALONE)
        public DetailPage(Personas per, Usuarios usu, UltimaConexion ulti)
        {
            InitializeComponent();

            //SE INSTANCIAN LOS OBJETOS Y SE EJECUTA EL ENLACE DE LA CLASE VISTA (VIEW) Y LA CLASE (VIEWMODEL)
            Persona        = new Personas().NewPersona(per);
            Usuario        = new Usuarios().NewUsuario(usu);
            UltimaConexion = new UltimaConexion().NewUltimaConexion(ulti);
            //SE INSTANCIA LOS DATOS DE LA PAGINA MEDIANTE EL LLAMADO DE LA CLASE "MasterDetailPageUserInfoViewModel.cs"
            //JUNTO CON LOS DATOS DEL USUARIO QUE SE ENCUENTRE LOGGEADO
            BindingContext = DatosPagina = new MasterDetailPageUserInfoViewModel(Persona, Usuario, UltimaConexion);
        }
示例#3
0
        //============================================================================================
        //============================================================================================
        //CONSTRUCTOR (APP STAND ALONE)
        public MasterPage(Personas per, Usuarios usu, UltimaConexion ultima)
        {
            InitializeComponent();

            //SE INSTANCIAN LOS OBJETOS Persona, Usuario y UltimaConexion PARA LUEGO LLENARLOS CON LOS DATOS
            //DEL USUARIO QUE SE ENCUENTRA NAVEGANDO
            Persona        = new Personas().NewPersona(per);
            Usuario        = new Usuarios().NewUsuario(usu);
            Ultimaconexion = new UltimaConexion().NewUltimaConexion(ultima);

            //SE INSTANCIA LOS DATOS DE LA PAGINA MEDIANTE EL LLAMADO DE LA CLASE "MasterDetailPageUserInfoViewModel.cs"
            //JUNTO CON LOS DATOS DEL USUARIO QUE SE ENCUENTRE LOGGEADO
            BindingContext = DatosPagina = new MasterDetailPageUserInfoViewModel(Persona, Usuario, Ultimaconexion);


            //CONFIGURACION DEL MENU DE OPCIONES DEPENDIENDO DEL NIVEL DEL USUARIO QUE SE ENCUENTRE LOGGEADO
            //EL MENU LATERAL LLENARA LAS OPCIONES Y CARGARA LA INFORMACION DE MANERA DISTINTA. EN OTRAS PALABRAS,
            //SE GENERO UNA LISTA DE OPCIONES PARA EL USUARIO ADMINISTRATOR Y OTRA PARA LOS USUARIOS DE BAJO NIVEL

            switch (Usuario.NivelUsuario)
            {
            //USUARIO INVITADO (GUEST)
            case 0:
                ListaNavegacion.ItemsSource = new OpcionesModel().OpcionesNivelGuest();
                break;

            //USUARIO DE BAJO NIVEL
            case 1:
                ListaNavegacion.ItemsSource = new OpcionesModel().OpcionesNivelBajo();
                break;

            //USUARIO DE MEDIO NIVEL
            case 5:
                ListaNavegacion.ItemsSource = new OpcionesModel().OpcionesNivelMedio();
                break;

            //USUARIO DE ALTO NIVEL
            case 8:
                ListaNavegacion.ItemsSource = new OpcionesModel().OpcionesNivelSuperior();
                break;

            //USUARIO ADMINISTRADOR
            case 10:
                ListaNavegacion.ItemsSource = new OpcionesModel().OpcionesAdministrator();
                break;
            }
        }
示例#4
0
        //===============================================================================================
        //===============================================================================================
        //CONSTRUCTOR DE LA CLASE

        public MasterDetailPageUserInfoModel(Personas Persona, Usuarios Usuario, UltimaConexion Ultima)
        {
            if (Persona.Cedula == Usuario.Cedula)
            {
                //SE CARGA LA INFORMACION QUE VA A SER DESPLEGADA
                username = Metodos.Mayuscula(Usuario.Username);

                if (Persona.Cedula == 0)
                {
                    fullname = "N/A.";
                }
                else
                {
                    fullname = Persona.Apellidos + ", " + Persona.Nombres + ".";
                }

                ultimaconexion = Ultima.UltimaCon.ToString();
                usericonfile   = "UserIcon.png";
            }
        }
 //===============================================================================================
 //===============================================================================================
 //CONSTRUCTOR DE LA CLASE (APP STAND ALONE)
 public MasterDetailPageUserInfoViewModel(Personas Persona, Usuarios Usuario, UltimaConexion ultimaconexion)
 {
     //SE INSTANCIA EL OBJETO MODEL DE LA CLASE "MasterDetailPageUserInfoModel.cs" CON LA
     //INFORMACION DEL USUARIO LOGGEADO
     MasterPageUserInfo = new MasterDetailPageUserInfoModel(Persona, Usuario, ultimaconexion);
 }
示例#6
0
        public UserMainPage(Personas Persona, Usuarios Usuario)
        {
            InitializeComponent();

            //====================================================================
            //====================================================================
            //SE GENERA UN NUEVO REGISTRO EN LA TABLA UltimaConexion

            UltimaConexion = new UltimaConexion().NewUltimaConexion(Persona, Usuario);

            //====================================================================
            //====================================================================
            //SE GENERA LA APAERTURA DE LA BASE DE DATOS
            using (SQLiteConnection connection = new SQLiteConnection(App.FileName))
            {
                //CREACION E INICIALIZACION DE VARIABLES USADAS DENTRO DE LA CONEXION CON LA BASE DE DATOS
                List <UltimaConexion> UltimaConexionUsuario = new List <UltimaConexion>();

                //DE NO EXISTIR SE CREA LA TABLA "UltimaConexion"
                connection.CreateTable <UltimaConexion>();

                //INSERTAMOS EL NUEVO REGISTRO
                connection.Insert(UltimaConexion);

                //RECORREMOS CADA UNO DE LOS REGISTRO DENTRO DE LA TABLA "UltimaConexion"
                foreach (UltimaConexion registro in connection.Table <UltimaConexion>().ToList())
                {
                    //EVALUAMOS SI LA CEDULA DEL REGISTRO EN EL QUE NOS ENCONTRAMOS ES IGUAL A LA CEDULA DEL USUARIO QUE ACABA DE INGRESAR
                    if (registro.Cedula == Usuario.Cedula)
                    {
                        //SI LA CEDULA DEL REGISTRO ES IGUAL A LA CEDULA DEL USUARIO LOGGEADO SE AGREGA A LA LISTA "UltimaConexionUsuario"
                        UltimaConexionUsuario.Add(registro);
                    }
                }

                //EVALUAMOS LA LISTA "UltimaConexionUsuario"
                if (UltimaConexionUsuario.Any() &&   //SE EVALUA SI HAY REGISTROS DENTRO DE LA LISTA
                    UltimaConexionUsuario.Count > 1) //SE EVALUA SI HAY MAS DE UN REGISTRO DENTRO DE LA LISTA
                {
                    //CREAMOS E INICIALIZAMOD UNA VARIABLE CONTADOR
                    int cont = 0;
                    //RECORREMOS TODOS LOS REGISTROS DENTRO DE LA LISTA "UltimaConexionUsuario"
                    foreach (UltimaConexion registro in UltimaConexionUsuario)
                    {
                        //SI NOS ENCONTRAMOS EN LA PENULTIMA POSICION O EL PENULTIMO REGISTRO DETENEMOS EL RECORRIDO
                        //TOMAMOS LA INFORMACION DE ESE REGISTRO Y CERRAMOS EL CICLO
                        if (cont == (UltimaConexionUsuario.Count() - 2))
                        {
                            //LA VARIABLE "UltimaConexionAux" ALMACENA ESTE REGISTRO Y LO ENVIA COMO PARAMETRO PARA LA PAGINA "DetailPage.xaml.cs"
                            UltimaConexionAux = new UltimaConexion().NewUltimaConexion(registro);
                            //PARAMOS EL CICLO
                            break;
                        }
                        //EL CONTADOR CRECE EN UNA UNIDAD
                        cont++;
                    }
                }
                else
                {
                    //NO EXISTE NINGUN REGISTRO DEL USUARIO LOGGEADO DENTRO DE LA TABLA "UltimaConexion", SE ENVIA COMO PARAMETRO
                    //LA VARIABLE "UltimaConexionAux".
                    UltimaConexionAux = new UltimaConexion().NewUltimaConexion(UltimaConexion);
                }
            }

            //SE INDICAN E INICIALIZAN QUIENES VAN A SER LAS PAGINAS MasterPage y DetailPage, ADEMAS DE ENVIAR LOS PARAMETROS
            //SOLICITADOS AL CONSTRUCTOR DE CADA PAGINA

            //SE NOTIFICA A LA APLICACION QUE LA PAGINA ORIGEN DE LAS PAGINAS "MasterPage.xaml.cs" Y "DetailPage.xaml.cs"
            App.MasterDetail = this;

            //SE INDICA E INVOCA LAS PAGINAS QUE FUNCIONARAN COMO "MasterPage.xaml.cs" Y "DetailPage.xaml.cs"
            this.Master = new MasterPage(Persona, Usuario, UltimaConexion);
            this.Detail = new NavigationPage(new DetailPage(Persona, Usuario, UltimaConexionAux));

            //SE GENERA EL MENSAJE "Bienvenido" AL MOMENTO DE INGRESAR
            Toast.MakeText(Android.App.Application.Context, "Bienvenido " + Usuario.Username, ToastLength.Short).Show();
        }