Guest User

Untitled

a guest
Sep 8th, 2018
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.88 KB | None | 0 0
  1. public class WSUsuarios {
  2.  
  3. final String URL = "URL WEB SERVICE";
  4. String REQUEST_TAG = "cne.desarrollo.facturacion.WebServices";
  5.  
  6. // VARIABLE QUE VA A RESCATAR LOS DATOS QUE TRAEL EL USUARIO LOGEADO
  7. ArrayList<Usuarios> usuarioLogeadoDatos = new ArrayList<>();
  8.  
  9. // VARIABLE RUTURN
  10. Boolean respuesta;
  11.  
  12. public Boolean GetUsuarios(final Context context, String username, String password, String rut)
  13. {
  14. // REVISAMOS SI LA DB EXISTE EN CASO CONTRARIO LA CREAMOS
  15. final ConexionSQLiteHelper conn = new ConexionSQLiteHelper(context,"database",null,1);
  16.  
  17. String usuarioBD = username;
  18. final String Userbase64 = Base64.encodeToString(usuarioBD.getBytes(), Base64.DEFAULT);
  19.  
  20. String passwordBD = password;
  21. final String Passwordbase64 = Base64.encodeToString(passwordBD.getBytes(), Base64.DEFAULT);
  22.  
  23. String rutEmpresaBD = rut;
  24. final String rutEmpresabase64 = Base64.encodeToString(rutEmpresaBD.getBytes(), Base64.DEFAULT);
  25.  
  26. HashMap<String, String> params = new HashMap<String, String>();
  27. params.put("usuario", Userbase64);
  28. params.put("password", Passwordbase64);
  29. params.put("rut_empresa", rutEmpresabase64);
  30.  
  31. JsonObjectRequest req = new JsonObjectRequest(URL, new JSONObject(params),
  32. new Response.Listener<JSONObject>() {
  33. @Override
  34. public void onResponse(JSONObject response) {
  35. //RECIBIENDO LOS DATOS DESDE EL SERVIDOR
  36.  
  37. try{
  38. //DECLARAMOS LAS VARIABLES TIPO JSONARRAY
  39. JSONArray Registros = null;
  40. JSONArray ResgitrosOne[] = null;
  41. JSONArray[] usuarios = {null};
  42.  
  43. // SI LOS TADOS ENVIADOS SON INCORRECTOS SE ENVIA UN MENSAJE DE ERROR
  44. if ( response.getString("Glosa").equals("Problema con usuario y contrasena") ){
  45. Toast.makeText(context, "Usuario/Contraseña incorrectos", Toast.LENGTH_LONG).show();
  46. respuesta = false;
  47. }
  48. // LOS DATOS ENVIADOS COINCIDEN CON EL WEB SERVICE
  49. else{
  50. JSONArray jsonArray = response.getJSONArray("USUARIOS");
  51.  
  52. // RECORRER EL JSONARRAY Y GUARDARLO EN UNA VARIABLE TIPO ARRAYLIST<USUARIOS>
  53. for (int i = 0; i < jsonArray.length(); i++) {
  54. usuarioLogeadoDatos.add(new Usuarios(jsonArray.getJSONObject(i)));
  55. }
  56.  
  57. // AGREGAMOS LOS USUARIOS A LA DATABASE INTERNA
  58. SQLiteDatabase db = conn.getWritableDatabase();
  59. ContentValues values = new ContentValues();
  60.  
  61. // RECORREMOS LOS DATOS TRAIDOS DESDE EL JSONARRAY Y LOS INSERTAMOS EN LA BD
  62. for (int i = 0; i < jsonArray.length(); i++){
  63. values.put(Utilidades.CAMPO_ID_USUARIOS,usuarioLogeadoDatos.get(i).getId());
  64. values.put(Utilidades.CAMPO_RUT_USUARIOS,usuarioLogeadoDatos.get(i).getRut());
  65. values.put(Utilidades.CAMPO_USERNAME_USUARIOS,usuarioLogeadoDatos.get(i).getUsuario());
  66. values.put(Utilidades.CAMPO_PASSWORD_USUARIOS,usuarioLogeadoDatos.get(i).getPassword());
  67. values.put(Utilidades.CAMPO_ID_EMPRESA_USUARIOS,usuarioLogeadoDatos.get(i).getId_empresa());
  68.  
  69. // INSERTA LOS DATOS EN LA BASE DE DATOS SQLITE
  70. db.insert(Utilidades.TABLA_USUARIOS,Utilidades.CAMPO_ID_USUARIOS,values);
  71. }
  72.  
  73. // CERRAMOS LA CONEXION A LA DB
  74. db.close();
  75.  
  76. respuesta = true;
  77.  
  78. }
  79.  
  80. }catch (JSONException e){
  81. e.printStackTrace();
  82. respuesta = true;
  83. }
  84.  
  85. }
  86. }, new Response.ErrorListener() {
  87. @Override
  88. public void onErrorResponse(VolleyError error) {
  89. VolleyLog.e("Error: ", error.getMessage());
  90. respuesta = true;
  91. }
  92. });
  93.  
  94. AppSingleton.getInstance(context).addToRequestQueue(req,REQUEST_TAG);
  95.  
  96. return respuesta;
  97. }
  98.  
  99. public class LoginActivity extends AppCompatActivity {
  100.  
  101. public Button btnLogin;
  102.  
  103. public EditText password;
  104. public AutoCompleteTextView username,rut;
  105.  
  106. @Override
  107. protected void onCreate(Bundle savedInstanceState) {
  108. super.onCreate(savedInstanceState);
  109. setContentView(R.layout.activity_login);
  110.  
  111. // RECOGER LOS DATOS DEL FORMULARIO
  112. btnLogin = (Button) findViewById(R.id.btnLogin);
  113. username = (AutoCompleteTextView)findViewById(R.id.txtUsername);
  114. rut = (AutoCompleteTextView)findViewById(R.id.txtRutEmpresa);
  115. password = (EditText)findViewById(R.id.txtPassword);
  116.  
  117. // btnLogin
  118. btnLogin.setOnClickListener(new View.OnClickListener() {
  119. @Override
  120. public void onClick(View view) {
  121.  
  122. // PRIMER LOGIN, RESCATAR LOS DATOS DEL WEB SERVICE Y DESCARGARLOS A LA BASE DE DATOS LOCAL
  123. WSUsuarios objWSUsuarios = new WSUsuarios();
  124. Boolean rescatarUsurios = objWSUsuarios.GetUsuarios(LoginActivity.this,username.getText().toString(),password.getText().toString(),rut.getText().toString());
  125.  
  126. }
  127. });
  128. }
Add Comment
Please, Sign In to add comment