From 1ecd33f0f4e6a908717b5b1ffd8e48137fd709dc Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期二, 25 七月 2017 13:42:49 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java              |   23 +++++++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/VisitorRegisterUpSync.java  |   10 +++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/AttenderRegisterUpSync.java |   13 ++++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/CheckInUpSync.java          |   82 +++++++++++++++++++++++++++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java                     |   17 -----
 5 files changed, 124 insertions(+), 21 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
index e811393..05370b0 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java
@@ -206,24 +206,7 @@
 
 
     public void sendOfflineCheckInToServer(Integer mysqlVisitorId, long sqliteVisitorId) {
-        RequestParams params = new RequestParams();
 
-        List<OfflineVisitItem> offlineVisitItems = CheckInDao.getInstance().readOfflineVisitItemFromLocal(sqliteVisitorId);
-        for (OfflineVisitItem item : offlineVisitItems) {
-            params.setUri(AppApi.BASE_URL +AppApi.VISIT_ADD);
-            params.addBodyParameter(Visit.FieldNames.deviceCompanyId, BaseApplication.getInstance().getAndroidDevice().getCompanyId());
-            x.http().post(params, new BaseCommonCallBack() {
-                @Override
-                public void success() {
-                    SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class));
-                    Toast.makeText(BaseApplication.getInstance(),"娣诲姞鎴愬姛", Toast.LENGTH_SHORT).show();
-                    CheckInFragment.getInstance().resetForm();
-//                    if (visitReasonId == null || "".equals(visitReasonId)) {
-//                        DictionaryMng.getInstance().loadVisitReasonList();
-//                    }
-                }
-            });
-        }
     }
 
     public boolean hasOfflineCheckInData() {
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
index 1a34519..4d2e7a1 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
@@ -181,7 +181,7 @@
         return resultBean;
     }
 
-    public List<OfflineVisitItem> readOfflineVisitItemFromLocal(long registerId) {
+    public List<OfflineVisitItem> readOfflineVisitItemFromLocal() {
         String sql = "SELECT\n" +
                         "	a.visit_id,\n" +
                         "	a.visit_reason_id,\n" +
@@ -204,7 +204,8 @@
                         "WHERE\n" +
                         "	1 = 1\n" +
                         "AND a.is_synchron = 'N'\n" +
-                        "AND visitor_id = '"+registerId+"'";
+                        " limit 1";
+//                        "AND visitor_id = '"+registerId+"'";
         List<OfflineVisitItem> items = new ArrayList<>();
         Cursor c = MainActivity.getInstance().db.rawQuery(sql, new String[]{});
         while (c.moveToNext()) {
@@ -258,4 +259,22 @@
     }
 
 
+    public void updateVisitorId(String sqliteVisitorId, String mysqlVisitorId) {
+        if (sqliteVisitorId == null || "".equals(sqliteVisitorId.trim())
+                || mysqlVisitorId == null || "".equals(mysqlVisitorId.trim())
+                ) {
+            return;
+        }
+        MainActivity.getInstance().db.execSQL("update visit set visitor_id='"+mysqlVisitorId+"' where 1=1 and visitor_id='"+sqliteVisitorId+"'");
+    }
+
+    public void updateVisiteeId(String sqliteVisiteeId, String mysqlVisiteeId) {
+        if (sqliteVisiteeId == null || "".equals(sqliteVisiteeId.trim())
+                || mysqlVisiteeId == null || "".equals(mysqlVisiteeId.trim())
+                ) {
+            return;
+        }
+        MainActivity.getInstance().db.execSQL("update visit set visitee_id='"+mysqlVisiteeId+"' where 1=1 and visitee_id='"+sqliteVisiteeId+"'");
+    }
+
 }
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/AttenderRegisterUpSync.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/AttenderRegisterUpSync.java
index 03db381..8016685 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/AttenderRegisterUpSync.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/AttenderRegisterUpSync.java
@@ -7,11 +7,15 @@
 
 import java.io.File;
 import java.io.FileWriter;
+import java.util.List;
 
 import cn.com.basic.face.base.BaseApplication;
 import cn.com.basic.face.discern.common.BaseCommonCallBack;
 import cn.com.basic.face.discern.common.SqliteSqlBean;
+import cn.com.basic.face.discern.query.item.OfflineAttenderRegisterItem;
+import cn.com.basic.face.discern.query.item.OfflineVisitorRegisterItem;
 import cn.com.basic.face.fragment.AttenderRegisterFragment;
+import cn.com.basic.face.service.sqlite.CheckInDao;
 import cn.com.basic.face.service.sqlite.RegisterDao;
 import cn.com.basic.face.util.AppApi;
 import cn.com.basic.face.util.SqliteSqlUtil;
@@ -25,6 +29,7 @@
 
     public void doSync() {
         try {
+            final OfflineAttenderRegisterItem item = RegisterDao.getInstance().readOfflineAttenderRegister();
             RequestParams params = new RequestParams();
             File path = BaseApplication.getInstance().getFilesDir();
             File rawSurveillancePhotoFile = new File(path, "rawSurveillancePhoto_attender");
@@ -61,7 +66,13 @@
             x.http().post(params, new BaseCommonCallBack() {
                 @Override
                 public void success() {
-                    SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class));
+                    List<SqliteSqlBean> list = getExtraList(SqliteSqlBean.class);
+                    SqliteSqlUtil.insert(list);
+                    for (SqliteSqlBean sqliteSqlBean : list) {
+                        if ("register".equals(sqliteSqlBean.getTableName())) {
+                            CheckInDao.getInstance().updateVisiteeId(item.getRegisterId(), sqliteSqlBean.getPrimaryKeyValue());
+                        }
+                    }
                     sync();
                 }
             });
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/CheckInUpSync.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/CheckInUpSync.java
index 8c99dac..a74cf9c 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/CheckInUpSync.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/CheckInUpSync.java
@@ -1,6 +1,23 @@
 package cn.com.basic.face.service.sync.up;
 
+import android.widget.Toast;
+
+import org.xutils.http.RequestParams;
+import org.xutils.x;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.util.List;
+
+import cn.com.basic.face.base.BaseApplication;
+import cn.com.basic.face.discern.common.BaseCommonCallBack;
+import cn.com.basic.face.discern.common.SqliteSqlBean;
+import cn.com.basic.face.discern.entity.Visit;
+import cn.com.basic.face.discern.query.item.OfflineVisitItem;
+import cn.com.basic.face.fragment.CheckInFragment;
 import cn.com.basic.face.service.sqlite.CheckInDao;
+import cn.com.basic.face.util.AppApi;
+import cn.com.basic.face.util.SqliteSqlUtil;
 
 public class CheckInUpSync extends BaseSync {
 
@@ -12,7 +29,72 @@
 
     @Override
     public void doSync() {
+        try {
 
+            RequestParams params = new RequestParams();
+
+            List<OfflineVisitItem> offlineVisitItems = CheckInDao.getInstance().readOfflineVisitItemFromLocal();
+            for (OfflineVisitItem item : offlineVisitItems) {
+                params.setUri(AppApi.BASE_URL +AppApi.VISIT_ADD);
+                params.addBodyParameter(Visit.FieldNames.deviceCompanyId, BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+                x.http().post(params, new BaseCommonCallBack() {
+                    @Override
+                    public void success() {
+                        SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class));
+                        Toast.makeText(BaseApplication.getInstance(),"娣诲姞鎴愬姛", Toast.LENGTH_SHORT).show();
+                        CheckInFragment.getInstance().resetForm();
+//                    if (visitReasonId == null || "".equals(visitReasonId)) {
+//                        DictionaryMng.getInstance().loadVisitReasonList();
+//                    }
+                    }
+                });
+            }
+
+
+            /*
+            RequestParams params = new RequestParams();
+            File path = BaseApplication.getInstance().getFilesDir();
+            File rawSurveillancePhotoFile = new File(path, "rawSurveillancePhoto_attender");
+            if (!rawSurveillancePhotoFile.exists()) {
+                rawSurveillancePhotoFile.createNewFile();
+            }
+            File f0 = new File(path, "f0");
+            if (!f0.exists()) {
+                f0.createNewFile();
+            }
+            File surveillancePhotoFile = new File(path, "surveillancePhoto_attender");
+            if (!surveillancePhotoFile.exists()) {
+                surveillancePhotoFile.createNewFile();
+            }
+            File uploadCustomPhotoFile = new File(path, "uploadCustomPhoto_attender");
+            if (!uploadCustomPhotoFile.exists()) {
+                uploadCustomPhotoFile.createNewFile();
+            }
+            File idCardPhotoFile = new File(path, "idCardPhoto_attender");
+            if (!idCardPhotoFile.exists()) {
+                idCardPhotoFile.createNewFile();
+            }
+
+            FileWriter fw0 = new FileWriter(f0);
+            fw0.write("test1");
+            fw0.close();
+            params.setUri(AppApi.BASE_URL +AppApi.ATTENDER_REGISTER_ADD);
+            params.addBodyParameter("f0", f0);
+            params.addBodyParameter("rawSurveillancePhoto", rawSurveillancePhotoFile);
+            params.addBodyParameter("surveillancePhoto", surveillancePhotoFile);
+            params.addBodyParameter("uploadCustomPhoto", uploadCustomPhotoFile);
+            params.addBodyParameter("idCardPhoto", idCardPhotoFile);
+            params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+            x.http().post(params, new BaseCommonCallBack() {
+                @Override
+                public void success() {
+                    SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class));
+                    sync();
+                }
+            });*/
+        }catch(Exception e) {
+            e.printStackTrace();
+        }
     }
 
     @Override
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/VisitorRegisterUpSync.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/VisitorRegisterUpSync.java
index 19ef5ff..3b7bec4 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/VisitorRegisterUpSync.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/VisitorRegisterUpSync.java
@@ -5,12 +5,14 @@
 
 import java.io.File;
 import java.io.FileWriter;
+import java.util.List;
 
 import cn.com.basic.face.base.BaseApplication;
 import cn.com.basic.face.discern.common.BaseCommonCallBack;
 import cn.com.basic.face.discern.common.SqliteSqlBean;
 import cn.com.basic.face.discern.entity.Register;
 import cn.com.basic.face.discern.query.item.OfflineVisitorRegisterItem;
+import cn.com.basic.face.service.sqlite.CheckInDao;
 import cn.com.basic.face.service.sqlite.RegisterDao;
 import cn.com.basic.face.util.AppApi;
 import cn.com.basic.face.util.SqliteSqlUtil;
@@ -60,7 +62,13 @@
             x.http().post(params, new BaseCommonCallBack() {
                 @Override
                 public void success() {
-                    SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class));
+                    List<SqliteSqlBean> list = getExtraList(SqliteSqlBean.class);
+                    SqliteSqlUtil.insert(list);
+                    for (SqliteSqlBean sqliteSqlBean : list) {
+                        if ("register".equals(sqliteSqlBean.getTableName())) {
+                            CheckInDao.getInstance().updateVisitorId(item.getRegisterId(), sqliteSqlBean.getPrimaryKeyValue());
+                        }
+                    }
                     RegisterDao.getInstance().removeOfflineVisitorRegister(item);
                     sync();
                 }

--
Gitblit v1.8.0