diff --git a/app/src/main/java/kz/istt/locust/DbOpenHelper.java b/app/src/main/java/kz/istt/locust/DbOpenHelper.java index 3207ae5..37f9e27 100644 --- a/app/src/main/java/kz/istt/locust/DbOpenHelper.java +++ b/app/src/main/java/kz/istt/locust/DbOpenHelper.java @@ -1631,11 +1631,20 @@ public class DbOpenHelper extends SQLiteOpenHelper //Переписываем значения существующих полей и выполняем запросы while(tbl.ReadNextRecord()) { - if(tbl.name.equals("frmlocustdel")){ + if(tbl.name.equals("frmlocustdel_locations")){ Log.i("igor","tbl.name="+tbl.name); } - String sql="select 1 from "+tbl.name+" where id = ?"; - String[] par = new String[] { tbl.getRowByName("id").getStrVal() }; + String sql=null; + String[] par=null; + if(tbl.getRowByName("id")!=null){ + sql="select 1 from "+tbl.name+" where id = ?"; + par = new String[] { tbl.getRowByName("id").getStrVal() }; + }else if(tbl.getRowByName("uid")!=null){ + sql="select 1 from "+tbl.name+" where uid = ?"; + par = new String[] { tbl.getRowByName("uid").getStrVal() }; + } + if(sql==null) + return false; boolean exists=false; SQLiteDatabase rdb=null; @@ -1691,7 +1700,13 @@ public class DbOpenHelper extends SQLiteOpenHelper wdb = this.getWritableDatabase(); wdb.beginTransaction(); //Вроде как защита от многопоточности (для сервиса) try { - wdb.update(tbl.name, cv, "id = ?", new String[] { tbl.getRowByName("id").getStrVal() }); + if(tbl.getRowByName("id")!=null){ + wdb.update(tbl.name, cv, "id = ?", new String[] { tbl.getRowByName("id").getStrVal() }); + }else if(tbl.getRowByName("uid")!=null){ + wdb.update(tbl.name, cv, "uid = ?", new String[] { tbl.getRowByName("uid").getStrVal() }); + }else + return false; + wdb.setTransactionSuccessful(); }catch(Exception ex){ ex.printStackTrace(); @@ -1706,7 +1721,6 @@ public class DbOpenHelper extends SQLiteOpenHelper } } - //Для дебага вывожу сколько строк в каждой таблице // SQLiteDatabase rdb=null; // try { diff --git a/app/src/main/java/kz/istt/locust/LocustDelListActivity.java b/app/src/main/java/kz/istt/locust/LocustDelListActivity.java index 853cdb5..15bf68f 100644 --- a/app/src/main/java/kz/istt/locust/LocustDelListActivity.java +++ b/app/src/main/java/kz/istt/locust/LocustDelListActivity.java @@ -623,7 +623,8 @@ public class LocustDelListActivity extends AppCompatActivity cursor = rdb.rawQuery("select uid, coalesce(district,'') || ' ' || coalesce(terrain,'') terrain, date from frmlocustdel where del=0 and send=1 and device_id='"+android_id+"'", null); //Отправленные break; default: - cursor = rdb.rawQuery("select uid, coalesce(district,'') || ' ' || coalesce(terrain,'') terrain, date from frmlocustdel where del=0 and device_id='"+android_id+"'", null); //Все + //cursor = rdb.rawQuery("select uid, coalesce(district,'') || ' ' || coalesce(terrain,'') terrain, date from frmlocustdel where del=0 and device_id='"+android_id+"'", null); //Все + cursor = rdb.rawQuery("select uid, coalesce(district,'') || ' ' || coalesce(terrain,'') terrain, date from frmlocustdel where del=0", null); //Все break; } diff --git a/app/src/main/java/kz/istt/locust/LocustHealthActivity.java b/app/src/main/java/kz/istt/locust/LocustHealthActivity.java index 6b42205..dac6451 100644 --- a/app/src/main/java/kz/istt/locust/LocustHealthActivity.java +++ b/app/src/main/java/kz/istt/locust/LocustHealthActivity.java @@ -2801,20 +2801,21 @@ public class LocustHealthActivity extends FragmentActivity implements LocationLi // } // }); // -// btnOnMap = (View) findViewById(R.id.btnOnMap); -// OnClickListener oclBtnOnMap = new OnClickListener() -// { -// @Override -// public void onClick(View v) -// { -// Intent intent = new Intent(LocustHealthActivity.this, MapsActivity.class); -// intent.putParcelableArrayListExtra("LatLon", ((LatLonAdapter)latlonList.getAdapter()).latlonList); -// intent.putExtra("uid", uid); -// startActivityForResult(intent,4); -// } -// }; -// btnOnMap.setOnClickListener(oclBtnOnMap); -// + btnOnMap = (View) findViewById(R.id.btnOnMap); + OnClickListener oclBtnOnMap = new OnClickListener() + { + @Override + public void onClick(View v) + { + Intent intent = new Intent(LocustHealthActivity.this, MapsActivity.class); + intent.putParcelableArrayListExtra("LatLon", ((LatLonAdapter)latlonList.getAdapter()).latlonList); + intent.putExtra("uid", frmlocustdel_uid); + startActivityForResult(intent,4); + startActivity(intent); + } + }; + btnOnMap.setOnClickListener(oclBtnOnMap); + btnOk = (View) findViewById(R.id.btnOk); OnClickListener oclBtnOk = new OnClickListener() diff --git a/app/src/main/java/kz/istt/locust/MySynchronizationOld.java b/app/src/main/java/kz/istt/locust/MySynchronizationOld.java index aedfec8..78befdc 100644 --- a/app/src/main/java/kz/istt/locust/MySynchronizationOld.java +++ b/app/src/main/java/kz/istt/locust/MySynchronizationOld.java @@ -206,15 +206,15 @@ public class MySynchronizationOld String fname; fname=cursor.getString(cursor.getColumnIndex("image_name1")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic1",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name2")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic2",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name3")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic2",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); xml=""; xml+=""; @@ -245,7 +245,7 @@ public class MySynchronizationOld cursor2.close(); xml+=""; - rid_sendFrmLocust = myThread.addRequest(MySynchronizationOld.URL+"/get/", xml, null,null); + rid_sendFrmLocust = myThread.addRequest("sendFrmLocust",MySynchronizationOld.URL+"/get/", xml, null,null); }while (cursor.moveToNext()); } @@ -281,15 +281,15 @@ public class MySynchronizationOld String fname; fname=cursor.getString(cursor.getColumnIndex("image_name1")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic1",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name2")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic2",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name3")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic3",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); xml=""; @@ -320,7 +320,7 @@ public class MySynchronizationOld cursor2.close(); xml+=""; - rid_sendFrmLocust = myThread.addRequest(MySynchronizationOld.URL+"/get/", xml, null,null); + rid_sendFrmLocust = myThread.addRequest("sendFrmLocust",MySynchronizationOld.URL+"/get/", xml, null,null); //Отправляю данные координат отдельно (без подтверждения доставки, потом нужно добавить поле send boolean и отправлять отдельно от frmlocustdel) /* Cursor cursor3 = rdb.rawQuery("select uid,del,seq,frmlocustdel_uid,pos,lon,lat from frmlocustdel_locations where frmlocustdel_uid=? order by pos", new String[] { String.valueOf(uid) }); @@ -354,8 +354,7 @@ public class MySynchronizationOld } cursor3.close(); //Отправляю пакет данных на сервер для вставки либо обновления - myThread.addRequest(MySynchronizationOld.URL+"/asdc/tctable/", null, null, outStream.toByteArray()); - + myThread.addRequest(tbl.name,MySynchronizationOld.URL+"/asdc/tctable/", null, null, outStream.toByteArray()); }while (cursor.moveToNext()); } @@ -391,19 +390,19 @@ public class MySynchronizationOld String fname; fname=cursor.getString(cursor.getColumnIndex("image_name1")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic1",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name2")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic2",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name3")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic3",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name4")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic4",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); fname = cursor.getString(cursor.getColumnIndex("image_name5")); if(fname!=null && !fname.equals("")) - myThread.addRequest(MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); + myThread.addRequest("pic5",MySynchronizationOld.URL+"/get/?fn=6", null, Environment.getExternalStorageDirectory().getAbsolutePath() + "/Pictures/Locust/" + fname,null); for(int i=0;i