Guest User

Untitled

a guest
Feb 15th, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.62 KB | None | 0 0
  1. class DataLoaders (context: Context, activity:Activity){
  2. private var context:Context = context
  3. private var activity:Activity = activity
  4. /**
  5. * Carga o actualización de empleados
  6. * Genera el registro de empleados que pueden acceder a la app y los guarda en BD SQLite
  7. * en el caso de que no haya registros consulta al API de PHP de forma recursiva
  8. * @param update identificador para reconocer si la app se está ejecutando para la carga de empleados o para actualizar los registros
  9. */
  10. fun loadEmployees(update: String = "no") {
  11. /* Obtener el número de registros de empleados registrados en la base de datos */
  12. this.context.let {
  13. val rowEmployeesCount: Int = this.context.database.use {
  14. query("employees", arrayOf("*"), null, null, null, null, null, null).count
  15. }
  16. it.doAsync {
  17. activity.activityUiThreadWithContext {
  18. // Verificar si el número de empleados es 0 o se necesita una actualización de registros
  19. if (rowEmployeesCount != null) {
  20. if (rowEmployeesCount < 1 || update != "no") {
  21. // Obtener los registros de empleados que se cargaron de server y recorrer los registros para guardarlos en base de datos local
  22. dumpData.loadEmployeesFromApi({ sellersList ->
  23. if (!sellersList.isEmpty()) {
  24. sellersList.forEach { item ->
  25. database.use {
  26. val values = android.content.ContentValues()
  27. item.let {
  28. values.put("id", item.id)
  29. values.put("name", item.nombre)
  30. values.put("username", item.usuario)
  31. values.put("password", item.contrasenia)
  32. this.insert("employees", null, values)
  33. }
  34. }
  35. }
  36. } else {
  37. longToast("No hay registros de vendedores actualmente")
  38. }
  39. }, { errorMessage ->
  40. longToast(errorMessage)
  41. })
  42. }
  43. }
  44. }
  45.  
  46. }
  47. }
  48. }
  49.  
  50. }
Add Comment
Please, Sign In to add comment