From 603cb36a5123e46656b06a5deb8d7ac7ff81307f Mon Sep 17 00:00:00 2001 From: 554325746@qq.com <554325746@qq.com> Date: 星期三, 25 十二月 2019 08:48:51 +0800 Subject: [PATCH] a --- app/src/main/java/com/basic/security/manager/BaseManager.java | 128 +++++++++++++++++++++++++++++++++--------- 1 files changed, 101 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/com/basic/security/manager/BaseManager.java b/app/src/main/java/com/basic/security/manager/BaseManager.java index cba76a2..6fe68fd 100644 --- a/app/src/main/java/com/basic/security/manager/BaseManager.java +++ b/app/src/main/java/com/basic/security/manager/BaseManager.java @@ -6,43 +6,83 @@ import com.basic.security.model.ModelAdapter; import com.basic.security.model.Person; -import com.basic.security.model.PersonA; import com.basic.security.model.Sync; import com.basic.security.utils.Base64Util; import com.basic.security.utils.Constants; -import com.basic.security.utils.FaceId; import com.basic.security.utils.FrameUtil; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.UUID; //sqlite鏁版嵁搴撴搷浣滅殑鍏叡鍩虹绫� public class BaseManager { public static Map<String, List<String>> tableColumnNames = new HashMap<>(); - public static List<String> syncTableNames = new ArrayList<>(); + public static Set<String> syncTableNames = new HashSet<>(); + + static { + syncTableNames.addAll(Arrays.asList( +// "base_setting", +// "business", +// "business_apply_device", +// "business_person", +// "cluster", +// "cluster_node", +// "cluster_setting", +// "confirm", +// "device", +// "guest", +// "hint_door_access", +// "hint_recognize_message", +// "hint_sign_up", +// "id_card", +// "identity", +// "Log", +// "OfficeDevice", + "org", +// "outdoor", + "person", + "person_identity", +// "temporary_person", +// "time", +// "user", + "dbtablepersons", + "dbTables", + "visit" + )); + } public static void save(ModelAdapter modelAdapter) { + String insertSql = ""; try { if (modelAdapter != null) { + String table = modelAdapter.getString(Constants.TABLE); + if (table == null) { + table = ""; + } + PersonCameraImagePathManager.updateCameraImagePathExist(modelAdapter); GetInsertOrUpdateSql getInsertOrUpdateSql = new GetInsertOrUpdateSql(modelAdapter).invoke(); - String table = getInsertOrUpdateSql.getTable(); - String insertSql = getInsertOrUpdateSql.getInsertSql(); - if (syncTableNames.contains(table) && !Constants.FALSE.equals(modelAdapter.getString(Sync.needSync))) { + insertSql = getInsertOrUpdateSql.getInsertSql(); + if ( + syncTableNames.contains(table) && + !Constants.FALSE.equals(modelAdapter.getString(Sync.needSync))) { +// System1.out.println("BaseManager.save table=" + table + " " + syncTableNames.contains(table) + " " + !Constants.FALSE.equals(modelAdapter.getString(Sync.needSync)) + " " + syncTableNames); if (table.equals("person")) { - if ("1".equals(modelAdapter.getString("all_device"))) { - ClusterSerfSyncManager.sendData(insertSql); + if ("1".equals(modelAdapter.getString("all_device")) || 1 == 1) { + ClusterSerfSyncManager.sendData(RowToSerfManager.buildRowToSerf(modelAdapter, insertSql)); PersonAManager.savePersonAFromPerson(modelAdapter); } } else { - ClusterSerfSyncManager.sendData(insertSql); + ClusterSerfSyncManager.sendData(RowToSerfManager.buildRowToSerf(modelAdapter, insertSql)); } } if (Constants.printSql) { - System.out.println("insertsql=" + insertSql + " " + FrameUtil.getFrames()); + System1.out.println("insertsql=" + insertSql + " " + FrameUtil.getFrames()); } DatabaseManager.execSQL(insertSql); // if (table.equals("visit")) { @@ -52,15 +92,42 @@ } } catch (Exception e) { e.printStackTrace(); + System.out.println("BaseManager.save sql=" + insertSql); + } + } + + public static void deleteWithDelFlag(ModelAdapter modelAdapter) { + try { + + String table = modelAdapter.getString("table"); + String id = modelAdapter.getString("id"); + String del_flag = "1"; + if (syncTableNames.contains(table)) { + id = Base64Util.encodeToString(table, "id", id); + del_flag = Base64Util.encodeToString(table, "del_flag", del_flag); + } + String sql = "update " + table + " set del_flag='" + del_flag + "' where id='" + id + "'"; + if (Constants.printSql) { + System1.out.println("deletesql=" + sql + " " + FrameUtil.getFrames()); + } + if ( + syncTableNames.contains(table) && + !Constants.FALSE.equals(modelAdapter.getString(Sync.needSync)) + ) { + ClusterSerfSyncManager.sendData(RowToSerfManager.buildRowToSerf(modelAdapter, sql)); + } + DatabaseManager.execSQL(sql); + } catch (Exception e) { + e.printStackTrace(); } } public static void delete(ModelAdapter modelAdapter) { // 鍋囧垹闄� - if (Constants.deletePersonPhysical) { - deletePhysically(modelAdapter); - } else { - try { - if (modelAdapter != null) { + if (modelAdapter != null) { + if (Constants.deletePersonPhysical) { + deletePhysically(modelAdapter); + } else { + try { String table = modelAdapter.getString("table"); String id = modelAdapter.getString("id"); String del_flag = "1"; @@ -70,15 +137,18 @@ } String sql = "update " + table + " set del_flag='" + del_flag + "' where id='" + id + "'"; if (Constants.printSql) { - System.out.println("deletesql=" + sql + " " + FrameUtil.getFrames()); + System1.out.println("deletesql=" + sql + " " + FrameUtil.getFrames()); } - if (syncTableNames.contains(table)) { - ClusterSerfSyncManager.sendData(sql); + if ( + syncTableNames.contains(table) && + !Constants.FALSE.equals(modelAdapter.getString(Sync.needSync)) + ) { + ClusterSerfSyncManager.sendData(RowToSerfManager.buildRowToSerf(modelAdapter, sql)); } DatabaseManager.execSQL(sql); + } catch (Exception e) { + e.printStackTrace(); } - } catch (Exception e) { - e.printStackTrace(); } } } @@ -90,15 +160,19 @@ String id = modelAdapter.getString("id"); String sql = "delete from " + table + " where id='" + id + "'"; if (Constants.printSql) { - System.out.println("deletesql=" + sql + " " + FrameUtil.getFrames()); + System1.out.println("deletesql=" + sql + " " + FrameUtil.getFrames()); } - if (syncTableNames.contains(table)) { - ClusterSerfSyncManager.sendData(sql); + if ( + syncTableNames.contains(table) && + !Constants.FALSE.equals(modelAdapter.getString(Sync.needSync)) + ) { +// System.out.println("BaseManager.deletePhysically sql=" + sql); + ClusterSerfSyncManager.sendData(RowToSerfManager.buildRowToSerf(modelAdapter, sql)); } try { DatabaseManager.execSQL(sql); } catch (SQLException e) { - System.out.println("sql=" + sql); + System1.out.println("sql=" + sql); e.printStackTrace(); } } @@ -169,7 +243,7 @@ Cursor cursor = null; try { if (Constants.printSql) { - System.out.println("findOne sql=" + sql + " " + FrameUtil.getFrames()); + System1.out.println("findOne sql=" + sql + " " + FrameUtil.getFrames()); } cursor = DatabaseManager.getDatabase().rawQuery(sql, null); if (cursor.moveToFirst()) { @@ -203,7 +277,7 @@ Cursor cursor = null; try { if (Constants.printSql) { - System.out.println("sql=" + sql + " " + FrameUtil.getFrames() + System1.out.println("sql=" + sql + " " + FrameUtil.getFrames() ); } cursor = DatabaseManager.getDatabase(databasePath).rawQuery(sql, null); @@ -225,7 +299,7 @@ public static void deleteList(List<ModelAdapter> modelAdapterList) { for (ModelAdapter modelAdapter : modelAdapterList) { - FaceId.instance.removeFeatureFromDb(modelAdapter.getString(Person.id)); + FeatureManager.removeFeature(modelAdapter.getString(Person.id)); deletePhysically(modelAdapter); } } -- Gitblit v1.8.0