private void Agregar_Click(object sender, EventArgs e) { try { servicioCheckDB coneccion = new servicioCheckDB(); EditText observaciones = Activity.FindViewById <EditText>(Resource.Id.txtObservaciones); servicioCheckDB.ReintentoNotificacion reintento = new servicioCheckDB.ReintentoNotificacion(); reintento.Descripcion = observaciones.Text; reintento.CodNotificacion = Convert.ToInt32(codigoNotificacionReintento); DateTime localDate = DateTime.Now; string output = localDate.ToString("o"); Console.WriteLine("HORA de reintento" + output); reintento.Fecha = Convert.ToDateTime(output); //reintento.Fecha = Convert.ToDateTime("2016 - 09 - 26T17: 06:03.537"); servicioCheckDB.OficialNotificador oficial = new servicioCheckDB.OficialNotificador(); oficial.CodNotificador = FragmentLogin.codNotificador; reintento.OficialNotificador = oficial; servicioCheckDB.GeoLocalizacion ubicacion = new servicioCheckDB.GeoLocalizacion(); ubicacion.Latitud = servicioLocalizacion.latitud; ubicacion.Longitud = servicioLocalizacion.longitud; ubicacion.Aproximado = true; reintento.Ubicacion = ubicacion; string json = Newtonsoft.Json.JsonConvert.SerializeObject(reintento); bool respuesta = coneccion.envioDatosWeb("https://pjgestionnotificacionmovilservicios.azurewebsites.net/api/ReintentoNotificacion/GuardarReintentoNotificacion", json, Activity); if (respuesta) { observaciones.Text = ""; Toast.MakeText(Activity, "Registro guardado correctamente.", ToastLength.Short).Show(); } else { Toast.MakeText(Activity, "Error al guardar el registro.", ToastLength.Short).Show(); } } catch (Exception ex) { //Se guarda el detalle del error Logs.saveLogError("ReintentoNotificacion.Agregar_click " + ex.Message + " " + ex.StackTrace); } }
public void cargarListaReintentos() { try { servicioCheckDB coneccion = new servicioCheckDB(); var listaReintentos = coneccion.ObtenerListaStrings("https://pjgestionnotificacionmovilservicios.azurewebsites.net/api/ReintentoNotificacion/ListarReintentosNotificacion?PCodNotificacion=" + codigoNotificacionReintento + "", Activity); if (listaReintentos != null) { TableLayout tablaReintentos = Activity.FindViewById <TableLayout>(Resource.Id.tbNotificadores); TableRow nuevaFila; TableLayout.LayoutParams layoutParams = new TableLayout.LayoutParams(TableLayout.LayoutParams.MatchParent, TableLayout.LayoutParams.MatchParent); for (int k = 0; k < listaReintentos.Count; k++) { nuevaFila = new TableRow(Activity); //Se instancia la nueva fila nuevaFila.LayoutParameters = layoutParams; //Se agregan los tamaños del layout nuevaFila.SetPadding(5, 5, 5, 5); //Se agregan los margenes de cada fila nuevaFila.SetBackgroundColor(Android.Graphics.Color.Argb(2, 1, 0, 5)); //Se cambia el color del fondo nuevaFila.Clickable = true; TextView descripcion = new TextView(Activity); descripcion.Text = listaReintentos[k]["Descripcion"].ToString(); nuevaFila.AddView(descripcion); TextView fecha = new TextView(Activity); fecha.Text = listaReintentos[k]["Fecha"].ToString(); nuevaFila.AddView(fecha); TextView nombre = new TextView(Activity); nombre.Text = listaReintentos[k]["OficialNotificador"]["NombreCompleto"].ToString(); nuevaFila.AddView(nombre); tablaReintentos.AddView(nuevaFila); } } }catch (Exception ex) { //Se guarda el detalle del error Logs.saveLogError("ReintentoNotificacion.cargarListaReintentos" + ex.Message + " " + ex.StackTrace); } }
private void HandleButtonClick(object sender, DialogClickEventArgs e) { try { //Se procede a cerrar la sesion, primero se procede a determinar la lista de las //notificaciones que se encuentran en estado notificandose. string consulta = @"https://pjgestionnotificacionmovilservicios.azurewebsites.net/api/Notificaciones/ListarNotificacionesPorNotificadorEstado?POficina=" + FragmentLogin.codOficina + "&PCodNotificador=" + FragmentLogin.codNotificador + "&PEstado=2&PJornada=3"; servicioCheckDB coneccion = new servicioCheckDB(); var resultados = coneccion.ObtenerListaStrings(consulta, this); if (resultados != null) { string fechaApertura = ""; DateTime localDate = DateTime.Now; //string fechalineal = localDate.ToString("yyyyMMdd"); string fechaCompleja = localDate.ToString("o"); List <string> notificacionesPendientes = new List <string>(); for (int k = 0; k < resultados.Count; k++) { notificacionesPendientes.Add(resultados[k]["CodNotificacion"].ToString()); } // se extrae de la base de datos la fecha de apertura ManejoBaseDatos.Abrir(); ICursor mCursor = ManejoBaseDatos.Seleccionar("SELECT FechaHoraApertura FROM Autenticacion"); if (mCursor.MoveToFirst() && mCursor.Count == 1) { do { fechaApertura = mCursor.GetString(0); Console.WriteLine("fecha de Apertura: " + fechaApertura); }while (mCursor.MoveToNext()); } else { //Se genera una fecha de apertura fechaApertura = fechaCompleja; } mCursor.Close(); ManejoBaseDatos.Cerrar(); //se crea la instancial de la clase cierreJornada CierreJornada cierre = new CierreJornada() { codigo = Guid.NewGuid().ToString(), Apertura = fechaApertura, OficialNotificador = new OficialNotificador { CodNotificador = FragmentLogin.codNotificador, }, Notificaciones = new List <NotificacionFisica>(), Justificacion = "", Cierre = fechaCompleja, }; foreach (var codigoNotificacion in notificacionesPendientes) { cierre.Notificaciones.Add(new NotificacionFisica { CodNotificacion = Convert.ToInt32(codigoNotificacion) }); } string requestCierre = @"https://pjgestionnotificacionmovilservicios.azurewebsites.net/api/OficialNotificador/CierreJornadaOficialNotificador"; string json = Newtonsoft.Json.JsonConvert.SerializeObject(cierre); Console.WriteLine("JSON: " + json); bool respuesta = coneccion.envioDatosWeb(requestCierre, json, this); if (respuesta) { //observaciones.Text = ""; Toast.MakeText(this, "Cierre de apertura exitoso.", ToastLength.Short).Show(); //Se dirige al usuario a la pagina de buzones donde podra realizar el inicio de apertura. } else { Toast.MakeText(this, "Error al intentar cerar apertura.", ToastLength.Short).Show(); } } } catch (Exception ex) { Console.WriteLine("Error en manejo de boton positivo: " + ex.ToString()); } }
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Use this to return your custom view for this Fragment // return inflater.Inflate(Resource.Layout.YourFragment, container, false); //return base.OnCreateView(inflater, container, savedInstanceState); View view = inflater.Inflate(Resource.Layout.fragmentLogin, container, false); ((MainActivity)Activity).habilitarMenuLateral(false); ((MainActivity)Activity).cambiarTituloAplicacion("Autenticación de usuario"); Button btnLogin = view.FindViewById <Button>(Resource.Id.btnLogin); EditText txtUsuario = view.FindViewById <EditText>(Resource.Id.txtUsuario); EditText txtContrasena = view.FindViewById <EditText>(Resource.Id.txtPassword); TextInputLayout passwordWrapper = view.FindViewById <TextInputLayout>(Resource.Id.txtInputLayoutPassword); string txtPassword = passwordWrapper.EditText.Text; Context context; context = view.Context; txtUsuario.Text = ""; txtContrasena.Text = ""; txtUsuario.TextChanged += (object sender, Android.Text.TextChangedEventArgs e) => { usuario = e.Text.ToString(); }; txtContrasena.TextChanged += (object sender, Android.Text.TextChangedEventArgs e) => { contrasena = e.Text.ToString(); }; if (!coneccionInternet.verificaConeccion(this.Context)) { AlertDialog.Builder alerta = new AlertDialog.Builder(this.Context); alerta.SetTitle("Mensaje de alerta"); alerta.SetIcon(Resource.Drawable.alertaNuevo); alerta.SetMessage("El servicio de Internet no se encuentra disponible, por favor revise su conexión e intente ingresar nuevamente"); alerta.SetNegativeButton("Salir", HandleButtonClick); alerta.SetCancelable(false); alerta.Create(); alerta.Show(); } //se limpia la tabla de Oficial Notificador ManejoBaseDatos.CrearDB(); ManejoBaseDatos.Abrir(); List <string> tablas = new List <string>(); tablas.Add("OficialNotificador"); ManejoBaseDatos.BorrarTablas(tablas); ManejoBaseDatos.Cerrar(); btnLogin.Click += (o, e) => { try { if (!string.IsNullOrEmpty(usuario) && (contrasena.Equals("12345", StringComparison.Ordinal)) && (usuario.Equals("supervisor", StringComparison.Ordinal) || usuario.Equals("demo", StringComparison.Ordinal))) { string query = @"https://pjgestionnotificacionmovilservicios.azurewebsites.net/api/OficialNotificador/ConsultarOficialNotificador?PCodNotificador=" + usuario + ""; if (coneccionInternet.verificaConeccion(this.Context)) { try { WebRequest request = HttpWebRequest.Create(query); request.ContentType = "application/json"; request.Method = "GET"; string content = ""; using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { if (response.StatusCode != HttpStatusCode.OK) { Console.Out.WriteLine("Error fetching data. Server returned status code: {0}", response.StatusCode); } using (StreamReader reader = new StreamReader(response.GetResponseStream())) { content = reader.ReadToEnd(); if (string.IsNullOrWhiteSpace(content)) { Console.Out.WriteLine("fzeledon -- Response contained empty body..."); } else { try { var jsonParsed = JObject.Parse(content); codOficina = jsonParsed["Oficinas"][0]["Codigo"].ToString(); supervisor = jsonParsed["Supervisor"].ToString(); rolNocturno = jsonParsed["RolNocturno"].ToString(); codNotificador = jsonParsed["CodNotificador"].ToString(); cuotaMinima = jsonParsed["Oficinas"][0]["CuotaMinima"].ToString(); ManejoBaseDatos.Abrir(); ManejoBaseDatos.Insertar("OficialNotificador", "Activo,CodigoNotificador,DespachoCodigo,Supervisor,RolNocturno", "'" + jsonParsed["Activo"].ToString() + "','" + jsonParsed["CodNotificador"].ToString() + "','" + jsonParsed["Oficinas"][0]["Codigo"].ToString() + "','" + jsonParsed["Supervisor"].ToString() + "','" + jsonParsed["RolNocturno"].ToString() + "'"); ManejoBaseDatos.Cerrar(); //se realiza la comprobacion si se tiene una sesion abierta servicioCheckDB coneccion = new servicioCheckDB(); var sesionAbierta = coneccion.ObtenerString("https://pjgestionnotificacionmovilservicios.azurewebsites.net/api/OficialNotificador/OficialConCierrePendiente?PCodNotificador=" + codNotificador + "", Activity); // "\"\"" if (!sesionAbierta.Equals("\"\"", StringComparison.Ordinal)) { Console.WriteLine("Sesion abierta"); AlertDialog.Builder alerta = new AlertDialog.Builder(this.Context); alerta.SetTitle("Mensaje de alerta"); alerta.SetIcon(Resource.Drawable.alertaNuevo); alerta.SetMessage("El usuario tiene una jornada abierta."); alerta.SetPositiveButton("Cerrar jornada", HandlePositiveButtonClick); alerta.SetNegativeButton("Continuar", HandleButonContinuar); alerta.SetCancelable(false); alerta.Create(); alerta.Show(); } else { // se inicia la carga de datos para la actividad de buzones(mailboxes) a traves de la actividad splash Toast.MakeText(this.Activity, "Cargando Datos ", ToastLength.Long).Show(); Intent intent = new Intent(this.Activity, typeof(SplashActivity)); StartActivity(intent); } } catch (Exception ex) { Console.WriteLine("Error descargando datos de usuario: " + ex.ToString()); } } } } } catch (WebException webEx) { Console.WriteLine("Error en solicitud Web: " + webEx.ToString()); } } else { AlertDialog.Builder alerta = new AlertDialog.Builder(this.Context); alerta.SetTitle("Mensaje de alerta"); alerta.SetIcon(Resource.Drawable.alertaNuevo); alerta.SetMessage("El servicio de Internet no se encuentra disponible, por favor revise su conexión e intente ingresar nuevamente"); alerta.SetNegativeButton("Salir", HandleButtonClick); alerta.SetCancelable(false); alerta.Create(); alerta.Show(); } } else { Toast.MakeText(this.Activity, "Usted ha digitado un usuario y contraseña incorrecta.", ToastLength.Short).Show(); } } catch (Exception ex) { Console.WriteLine("Error en autenticación " + ex.ToString()); } }; return(view); }