From 056a11e1e1846731e959719cfa4604fc0596519b Mon Sep 17 00:00:00 2001 From: sergio-incaser Date: Tue, 30 Dec 2014 19:22:13 +0100 Subject: [PATCH] [ADD] External library tools --- .idea/modules.xml | 1 + .../incaser/apps/stockcontrol/DbAdapter.java | 27 ++++++++++++++- .../apps/stockcontrol/MainActivity.java | 34 ++++++++++++++++--- .../incaser/apps/stockcontrol/SyncData.java | 1 + 4 files changed, 58 insertions(+), 5 deletions(-) diff --git a/.idea/modules.xml b/.idea/modules.xml index eb5affa..7305f75 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -5,6 +5,7 @@ + diff --git a/app/src/main/java/es/incaser/apps/stockcontrol/DbAdapter.java b/app/src/main/java/es/incaser/apps/stockcontrol/DbAdapter.java index f669de3..610e8eb 100644 --- a/app/src/main/java/es/incaser/apps/stockcontrol/DbAdapter.java +++ b/app/src/main/java/es/incaser/apps/stockcontrol/DbAdapter.java @@ -29,7 +29,7 @@ public class DbAdapter extends SQLiteOpenHelper { {"MovimientoStock", "SELECT * FROM MovimientoStock", "AcumuladoStock=0"}, //{"INC_Incidencias", "SELECT * FROM INC_Incidencias", "INC_PendienteSync <> 0"}, //Fin Tablas a importar - {"MovimientosArticuloSerie", "SELECT * FROM MovimientosArticuloSerie", "(FechaRegistro > { fn NOW() } - 3)"}, + {"MovimientosArticuloSerie", "SELECT * FROM MovimientosArticuloSerie", "(FechaRegistro > GETDATE() - 3)"}, }; public static int tablesToImport = 4; // Modificar en caso de aƱadir mas tablas public static int tablesToExport = 4; // Exportar tablas a partir de este indice @@ -112,6 +112,31 @@ public void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion) { onUpgrade(db, oldVersion, newVersion); } + public void recreateDb(){ + for (String[] query : QUERY_LIST) { + db.execSQL("DROP TABLE IF EXISTS " + query[0]); + } + onCreate(db); + } + + public boolean checkTables(){ + String tableList = ""; + int i = 0; + for (String[] query : QUERY_LIST) { + if (i > 0){ + tableList = tableList + ","; + } + tableList = tableList + "'" + query + "'"; + i ++; + } + Cursor curtmp = getCursor("Select * from sqlite_master WHERE name IN (" + tableList + ")"); + if (curtmp.getCount() == i){ + return true; + }else { + return false; + } + } + public void emptyTables() { for (String[] query : QUERY_LIST) { db.execSQL("DELETE FROM " + query[0]); diff --git a/app/src/main/java/es/incaser/apps/stockcontrol/MainActivity.java b/app/src/main/java/es/incaser/apps/stockcontrol/MainActivity.java index 09faaf1..d360e27 100644 --- a/app/src/main/java/es/incaser/apps/stockcontrol/MainActivity.java +++ b/app/src/main/java/es/incaser/apps/stockcontrol/MainActivity.java @@ -1,8 +1,11 @@ package es.incaser.apps.stockcontrol; +import android.app.Activity; import android.content.Intent; +import android.content.SharedPreferences; import android.os.Handler; import android.os.Message; +import android.preference.PreferenceManager; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.Menu; @@ -14,13 +17,13 @@ public class MainActivity extends ActionBarActivity { - + Timer timer = new Timer(); + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - - launchHardSync(); + ReadPreferences(this); } @Override @@ -50,6 +53,9 @@ public void onClickButtons(View view){ switch (view.getId()){ case R.id.btn_sync: //forzamos el proceso de sincronizacion de los movimientos + //DbAdapter dbAdapter = new DbAdapter(getApplicationContext()); + //dbAdapter.recreateDb(); + launchHardSync(); break; case R.id.btn_entradas_previstas: break; @@ -80,7 +86,6 @@ public void handleMessage(Message msg) { private void launchHardSync(){ TimerTaskHard timerTaskHard = new TimerTaskHard(handler, getApplicationContext()); - Timer timer = new Timer(); timer.schedule(timerTaskHard, 1500, 5000); } @@ -89,4 +94,25 @@ private void launchHardSync(){ // Timer timer = new Timer(); // timer.schedule(timerTaskHard, 1500, 5000); // } + + + + public static void ReadPreferences(Activity act) { + SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(act); + if (pref.getBoolean("pref_out_office", false)) { + SQLConnection.host = pref.getString("pref_sql_host_remote", ""); + } else { + SQLConnection.host = pref.getString("pref_sql_host", ""); + } + SQLConnection.port = pref.getString("pref_sql_port", ""); + SQLConnection.user = pref.getString("pref_sql_user", ""); + SQLConnection.password = pref.getString("pref_sql_password", ""); + SQLConnection.database = pref.getString("pref_sql_database", ""); + } + + @Override + protected void onDestroy() { + timer.cancel(); + super.onDestroy(); + } } \ No newline at end of file diff --git a/app/src/main/java/es/incaser/apps/stockcontrol/SyncData.java b/app/src/main/java/es/incaser/apps/stockcontrol/SyncData.java index e874e4a..cf9ec8d 100644 --- a/app/src/main/java/es/incaser/apps/stockcontrol/SyncData.java +++ b/app/src/main/java/es/incaser/apps/stockcontrol/SyncData.java @@ -18,6 +18,7 @@ import static es.incaser.apps.tools.Tools.str2date; + /** * Created by sergio on 23/09/14. */