public IEnumerable <TemaItem> convierteTemaToTemaItem() { var cliente = MainVistaModelo.getInstancia().getWS(); temaModelo[] aTema = null; try { aTema = cliente.getTema(idCurso); } catch (Exception) { } List <temaModelo> lTema = null; if (aTema == null) { ListaVacia = true; lTema = new List <temaModelo>(); this.Proceso = false; } else { ListaVacia = false; lTema = aTema.ToList <temaModelo>(); } return(lTema.Select(l => new TemaItem { idTema = l.idTema, curso = l.curso, nombre = l.nombre }).OrderBy(x => x.idTema)); }
public async void cargaCursos() { this.Proceso = true; this.usuario = MainVistaModelo.getInstancia().usuarioCurso; await Task.Run(() => { this.Cursos = new ObservableCollection <MenuVistaModelo>(convierteCursoAMenuVistaModelo()); this.Proceso = false; }); }
private async void EliminaCurso() { bool res = await Application.Current.MainPage.DisplayAlert("¡ATENCIÓN!", "Esta a punto de eliminar todo el curso" + this.NombreCurso, "ACEPTAR", "CANCELAR"); if (res) { this.Proceso = true; var main = MainVistaModelo.getInstancia(); var cliente = main.getWS(); bool resS = false; try { await Task.Run(() => { try { resS = cliente.eliminaCurso(new cursoModelo { idCurso = this.idCurso }); } catch (Exception) { } }); if (!resS) { string mensaje = string.Format("No se ha podido eliminar el curso{0}Pruebe " + "con borrar las actividades de este curso{0}", Environment.NewLine); Util.mensaje(1, mensaje); } else { usuarioModelo usuarioM = null; usuarioModelo usuarioN = main.usuarioCurso; await Task.Run(() => { usuarioM = cliente.login(usuarioN.nickname, usuarioN.contrasena, true); main.usuarioCurso = usuarioM; HomeVistaModelo.getInstancia().cargaCursos(); }); Util.mensaje(0, "Curso Eliminado"); VMenu.getInstancia().irAlInicio(); } } catch (Exception) { Util.mensaje(1, "No se ha podido eliminar el curso"); } } this.Proceso = false; }
public async void GuardaArchivo() { if (archivo == null) { Util.mensaje(1, "El archivo no ha sido cargado"); return; } this.Proceso = true; var conexion = await new APIServicio().verificaConexion(); if (!conexion.IsSuccess) { this.Proceso = false; Util.mensaje(1, conexion.Mensaje); return; } int indiceExtension = archivo.FileName.IndexOf(".") + 1; archivoM = new archivoModelo(); archivoM.bufferArchivo = archivo.DataArray; archivoM.actividad = new actividadModelo { idActividad = this.actividad.idActividad }; archivoM.usuario = MainVistaModelo.getInstancia().usuarioCurso; archivoM.extension = archivo.FileName.Substring(indiceExtension); archivoM.nombre = archivo.FileName.Substring(0, indiceExtension); var cliente = MainVistaModelo.getInstancia().getWS(); bool res = false; await Task.Run(() => res = cliente.agregaActualizaArchivo(archivoM)); if (!res) { Util.mensaje(1, "EL archivo no pudo ser cargado"); } else { //Mostrar una imagen de OK Util.mensaje(1, "Archivo Agregado Correctamente"); this.CargaArchivo(); } this.Proceso = false; }
private async void RegistraTema() { if (string.IsNullOrEmpty(Nombre)) { Util.mensaje(1, "El nombre esta vacío"); return; } this.Proceso = true; var conexion = await this.apiServicio.verificaConexion(); if (!conexion.IsSuccess) { this.Proceso = false; Util.mensaje(1, conexion.Mensaje); return; } var client = MainVistaModelo.getInstancia().getWS(); client.Timeout = 10000; cursoModelo cursoN = new cursoModelo { idCurso = this.idCurso }; temaModelo tema = new temaModelo { nombre = this.Nombre, curso = cursoN }; bool res = false; await Task.Run(() => res = client.agregaTema(tema)); if (!res) { Util.mensaje(1, "El tema no pudo ser creado"); this.Proceso = false; return; } CursoVistaModelo.getInstancia().cargaTemas(); this.Proceso = false; Util.pantallaAnterior(); }
public IEnumerable <ActividadItem> convierteActividadToActividadItem() { var cliente = MainVistaModelo.getInstancia().getWS(); cliente.Timeout = 10000; actividadModelo[] aActividad = null; try { aActividad = cliente.getActividad(this.tema.idTema); } catch (Exception) { } List <actividadModelo> lActividadN = null; if (aActividad == null) { this.ListaVacia = true; lActividadN = new List <actividadModelo>(); this.Proceso = false; } else { this.ListaVacia = false; lActividadN = aActividad.ToList <actividadModelo>(); } return(lActividadN.Select(l => new ActividadItem { idActividad = l.idActividad, fechaFin = l.fechaFin, fechaInicio = l.fechaInicio, horaFin = l.horaFin, horaInicio = l.horaInicio, nombre = l.nombre, valor = l.valor, descripcion = l.descripcion }).OrderBy(x => x.idActividad)); }
public async void EliminarTema() { bool res = await Application.Current.MainPage.DisplayAlert("¡ATENCIÓN!", "Esta a punto de eliminar el tema '" + this.tema.nombre + "'", "ACEPTAR", "CANCELAR"); if (res) { this.Proceso = true; var cliente = MainVistaModelo.getInstancia().getWS(); bool resS = false; await Task.Run(() => { try { resS = cliente.eliminaTema(new temaModelo { idTema = this.tema.idTema }); } catch (Exception e) { Util.mensaje(1, e.Message); } }); if (!resS) { Util.mensaje(1, "No se ha podido eliminar el tema"); } else { CursoVistaModelo.getInstancia().cargaTemas(); this.Proceso = false; Util.pantallaAnterior(); } } }
private async void CargaArchivo() { this.Proceso = true; var main = MainVistaModelo.getInstancia(); var cliente = main.getWS(); await Task.Run(() => archivoM = cliente.getArchivo( this.actividad.idActividad, main.usuarioCurso.idPersona)); if (archivoM != null) { this.RutaImagen = archivoM.extension + ".png"; this.BotonActivo = false; this.ImagenVisible = true; this.CargarArchivo = false; } else { this.CargarArchivo = true; } this.Proceso = false; }
public async void RegistraCurso() { if (string.IsNullOrEmpty(NombreCurso)) { Util.mensaje(1, "Nombre del curso vacío"); return; } if (string.IsNullOrEmpty(Periodo)) { Util.mensaje(1, "Seleccione un periodo"); return; } this.Proceso = true; var conexion = await new APIServicio().verificaConexion(); if (!conexion.IsSuccess) { this.Proceso = false; Util.mensaje(1, conexion.Mensaje); return; } cursoModelo curso = new cursoModelo { anio = 2018, nombre = NombreCurso, periodo = Periodo }; List <cursoModelo> lCurso = new List <cursoModelo>(); var main = MainVistaModelo.getInstancia(); usuarioModelo usuario = main.usuarioCurso; lCurso = (usuario.cursos != null) ? usuario.cursos.ToList <cursoModelo>() : lCurso; lCurso.Add(curso); usuario.cursos = lCurso.ToArray(); bool res = main.getWS().registro(usuario); if (!res) { Util.mensaje(1, "El curso no ha podido ser creado"); } else { usuarioModelo usuarioM = null; await Task.Run(() => { usuarioM = main.getWS().login(usuario.nickname, usuario.contrasena, true); main.usuarioCurso = usuarioM; HomeVistaModelo.getInstancia().cargaCursos(); }); Util.mensaje(0, "Curso creado"); } this.Proceso = false; this.Periodo = null; this.NombreCurso = string.Empty; }
public void RedireccionaRegistroActividad() { MainVistaModelo.getInstancia().Actividad = new ActividadVistaModelo(this.tema, null); Util.muestraPantalla(new VActividad("Registrar nueva Actividad")); }
private void RedireccionaRegistroTema() { MainVistaModelo.getInstancia().Tema = new TemaVistaModelo(0, null, this.idCurso); Util.muestraPantalla(new VTema("Registrar nuevo tema")); }
/** * Instancia unica del Main * */ public static MainVistaModelo getInstancia() { return((mainVistaModelo == null) ? mainVistaModelo = new MainVistaModelo() : mainVistaModelo); }
/** * El constructor solo se inicializa una vez entonces * el Login es el principal que se debe de mostrar * */ public MainVistaModelo() { mainVistaModelo = this; this.Login = new LoginVistaModelo(); }
public async void Iniciar() { if (string.IsNullOrEmpty(Nombre)) { Util.mensaje(1, "Nombre vacío"); return; } if (string.IsNullOrEmpty(Correo)) { Util.mensaje(1, "Correo vacío"); return; } if (string.IsNullOrEmpty(Nickname)) { Util.mensaje(1, "Nickname vacío"); return; } if (string.IsNullOrEmpty(Contrasena)) { Util.mensaje(1, "Contrasena vacía"); return; } if (string.IsNullOrEmpty(Contrasena1)) { Util.mensaje(1, "Contraseña vacía"); return; } if (!Contrasena1.Equals(Contrasena)) { Util.mensaje(1, "Las contraseñas no coinciden"); return; } this.Proceso = true; usuarioModelo usuario = new usuarioModelo(); rolModelo rol = new rolModelo { idRol = (this.soyProfesor.Equals("Soy Profesor")) ? 1 : 2 }; usuario.nombre = this.Nombre; usuario.correo = this.Correo; usuario.nickname = this.Nickname; usuario.contrasena = this.Contrasena; usuario.rol = rol; try { var mainVistaM = MainVistaModelo.getInstancia(); var cliente = mainVistaM.getWS(); cliente.Timeout = 6000; bool res = false; await Task.Run(() => res = cliente.registro(usuario)); if (!res) { Util.mensaje(1, "Nickname o correo no disponibles"); } else { usuarioModelo usuarioM = null; await Task.Run(() => usuarioM = cliente.login(usuario.nickname, usuario.contrasena, true)); mainVistaM.usuarioCurso = usuarioM; mainVistaM.Home = new HomeVistaModelo(); Util.muestraPantalla(new VMenu()); } this.Proceso = false; } catch { this.Proceso = false; } }
public async void RegistrarActividad() { if (string.IsNullOrEmpty(Nombre)) { Util.mensaje(1, "El nombre esta vacío"); return; } this.Proceso = true; var conexion = await new APIServicio().verificaConexion(); if (!conexion.IsSuccess) { this.Proceso = false; Util.mensaje(1, conexion.Mensaje); return; } var client = MainVistaModelo.getInstancia().getWS(); client.Timeout = 10000; actividadModelo actividad = new actividadModelo { nombre = this.Nombre, descripcion = this.Descripcion, fechaInicio = this.FechaInicio.ToString("yyyy-MM-dd"), fechaFin = this.FechaFin.ToString("yyyy-MM-dd"), horaInicio = this.HoraInicio.ToString("hh:mm tt"), horaFin = this.HoraFin.ToString("hh:mm tt"), valor = this.Valor, tema = new temaModelo { idTema = tema.idTema } }; bool res = false; await Task.Run(() => { try { res = client.agregaActividad(actividad); } catch (Exception e) { Util.mensaje(1, e.Message); } }); if (!res) { Util.mensaje(1, "La actividad no pudo ser creada"); this.Proceso = false; return; } TemaVistaModelo.getInstancia().cargaActividades(); this.Proceso = false; Util.pantallaAnterior(); }
public void Registrar() { MainVistaModelo.getInstancia().Registro = new RegistroVistaModelo(); Util.muestraPantalla(new VRegistro()); }
public async void Iniciar() { if (string.IsNullOrEmpty(this.Email)) { Util.mensaje(1, "Email vacío"); return; } if (string.IsNullOrEmpty(this.Password)) { Util.mensaje(1, "Password vacío"); return; } this.BtnActivo = false; this.Proceso = true; bool correo = this.Email.Contains("@"); var conexion = await this.apiServicio.verificaConexion(); if (!conexion.IsSuccess) { this.BtnActivo = true; this.Proceso = false; Util.mensaje(1, conexion.Mensaje); return; } usuarioModelo usuario = null; try { var client = MainVistaModelo.getInstancia().getWS(); client.Timeout = 10000; await Task.Run(() => usuario = client.login(Email, Password, correo)); usuario = client.login(Email, Password, correo); this.limpiaPantalla(); if (usuario == null) { this.BtnActivo = true; this.Proceso = false; Util.mensaje(1, "Usuario o contraseña incorrectos"); return; } MainVistaModelo.getInstancia().usuarioCurso = usuario; MainVistaModelo.getInstancia().Home = new HomeVistaModelo(); this.BtnActivo = true; this.Proceso = false; Util.muestraPantalla(new VMenu()); } catch (Exception e) { limpiaPantalla(); Util.mensaje(1, e.Message); } }