From d585985fbcbc7d9a33c13b0e62152c695c7e6d06 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期日, 23 七月 2017 18:11:25 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/res/values/strings.xml                                |    2 
 VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db                             |    0 
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java |   96 ++++++++++++++++++++++++++++++++++++++++++++++++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java        |   20 +++++++++
 4 files changed, 116 insertions(+), 2 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db b/VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db
index c6e2779..ffabb9d 100644
--- a/VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db
+++ b/VisitFace/DemoForBsk/app/src/main/assets/db/aibatis_test_db
Binary files differ
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 540bacf..3a3c14d 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
@@ -11,6 +11,7 @@
 import cn.com.basic.face.discern.entity.VisitDetail;
 import cn.com.basic.face.discern.query.condition.AttendanceQueryCondition;
 import cn.com.basic.face.discern.query.condition.CheckInQueryCondition;
+import cn.com.basic.face.discern.query.item.OfflineAttenderRegisterItem;
 import cn.com.basic.face.discern.query.item.OfflineVisitItem;
 import cn.com.basic.face.fragment.CheckInFragment;
 import cn.com.basic.face.service.sqlite.CheckInDao;
@@ -186,8 +187,25 @@
     }
 
 
-    public void sendOfflineCheckInToServer() {
+    public void sendOfflineCheckInToServer(Integer mysqlVisitorId, long sqliteVisitorId) {
+        RequestParams params = new RequestParams();
 
+        List<OfflineAttenderRegisterItem> offlineAttenderRegisterItems = CheckInDao.getInstance().readOfflineAttenderFromLocal(sqliteVisitorId);
+        for (OfflineAttenderRegisterItem item : offlineAttenderRegisterItems) {
+            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 84311c6..3cf4048 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
@@ -17,6 +17,7 @@
 import cn.com.basic.face.discern.entity.Visit;
 import cn.com.basic.face.discern.entity.VisitDetail;
 import cn.com.basic.face.discern.query.item.CheckInQueryItem;
+import cn.com.basic.face.discern.query.item.OfflineAttenderRegisterItem;
 import cn.com.basic.face.discern.query.item.OfflineVisitItem;
 
 
@@ -221,4 +222,99 @@
         }
         return resultBean;
     }
+
+    public List<OfflineVisitItem> readOfflineVisitItemFromLocal(long registerId) {
+        String sql = "SELECT\n" +
+                        "	a.visit_id,\n" +
+                        "	a.visit_reason_id,\n" +
+                        "	a.remark,\n" +
+                        "	a.enter_time,\n" +
+                        "	a.exit_time,\n" +
+                        "	a.visitor_type_id,\n" +
+                        "	a.visitor_id,\n" +
+                        "	a.visitor_company_id,\n" +
+                        "	a.visitee_id,\n" +
+                        "	a.visitee_company_id,\n" +
+                        "	a.current_state_id,\n" +
+                        "	a.warning,\n" +
+                        "	a.update_time,\n" +
+                        "	a.is_synchron,\n" +
+                        "	a.create_time,\n" +
+                        "	a.device_company_id\n" +
+                        "FROM\n" +
+                        "	visit a\n" +
+                        "WHERE\n" +
+                        "	1 = 1\n" +
+                        "AND a.is_synchron = 'N'\n" +
+                        "AND visitor_id = '"+registerId+"'";
+        List<OfflineVisitItem> items = new ArrayList<>();
+        Cursor c = MainActivity.getInstance().db.rawQuery(sql, new String[]{});
+        while (c.moveToNext()) {
+            OfflineVisitItem item = new OfflineVisitItem();
+            item.setVisitId(c.getString(c.getColumnIndex("visit_id")));
+            item.setVisitReasonId(c.getString(c.getColumnIndex("visit_reason_id")));
+            item.setRemark(c.getString(c.getColumnIndex("remark")));
+            item.setEnterTime(c.getString(c.getColumnIndex("enter_time")));
+            item.setExitTime(c.getString(c.getColumnIndex("exit_time")));
+            item.setVisitorTypeId(c.getString(c.getColumnIndex("visitor_type_id")));
+            item.setVisitorId(c.getString(c.getColumnIndex("visitor_id")));
+            item.setVisitorCompanyId(c.getString(c.getColumnIndex("visitor_company_id")));
+            item.setVisiteeId(c.getString(c.getColumnIndex("visitee_id")));
+            item.setVisiteeCompanyId(c.getString(c.getColumnIndex("visitee_company_id")));
+            item.setCurrentStateId(c.getString(c.getColumnIndex("current_state_id")));
+            item.setWarning(c.getString(c.getColumnIndex("warning")));
+            item.setUpdateTime(c.getString(c.getColumnIndex("update_time")));
+            item.setIsSynchron(c.getString(c.getColumnIndex("is_synchron")));
+            item.setDeviceCompanyId(c.getString(c.getColumnIndex("device_company_id")));
+            item.setCreateTime(c.getString(c.getColumnIndex("create_time")));
+            items.add(item);
+        }
+        return items;
+    }
+
+    /**
+     * 绂荤嚎瀛樺偍璁垮鐧昏淇℃伅
+     * @param entity
+     */
+    public void addOfflineVisit(OfflineVisitItem entity) {
+        String sql =
+                "INSERT INTO visit (\n" +
+                        "	visit_id,\n" +
+                        "	visit_reason_id,\n" +
+                        "	remark,\n" +
+                        "	enter_time,\n" +
+                        "	exit_time,\n" +
+                        "	visitor_type_id,\n" +
+                        "	visitor_id,\n" +
+                        "	visitor_company_id,\n" +
+                        "	visitee_id,\n" +
+                        "	visitee_company_id,\n" +
+                        "	current_state_id,\n" +
+                        "	warning,\n" +
+                        "	update_time,\n" +
+                        "	is_synchron,\n" +
+                        "	device_company_id\n" +
+                        ")\n" +
+                        "VALUES\n" +
+                        "	(\n" +
+                        " '"+entity.getVisitId()+"', "+
+                        " '"+entity.getVisitReasonId()+"', "+
+                        " '"+entity.getRemark()+"', "+
+                        " '"+entity.getEnterTime()+"', "+
+                        " '"+entity.getExitTime()+"', "+
+                        " '"+entity.getVisitorTypeId()+"', "+
+                        " '"+entity.getVisitorId()+"', "+
+                        " '"+entity.getVisitorCompanyId()+"', "+
+                        " '"+entity.getVisiteeId()+"', "+
+                        " '"+entity.getVisiteeCompanyId()+"', "+
+                        " '"+entity.getCurrentStateId()+"', "+
+                        " '"+entity.getWarning()+"', "+
+                        " '"+entity.getUpdateTime()+"', "+
+                        " 'N', "+
+                        " '"+entity.getDeviceCompanyId()+"' "+
+                        "	)";
+        MainActivity.getInstance().db.execSQL(sql);
+    }
+
+
 }
diff --git a/VisitFace/DemoForBsk/app/src/main/res/values/strings.xml b/VisitFace/DemoForBsk/app/src/main/res/values/strings.xml
index 1c652fb..884ce40 100644
--- a/VisitFace/DemoForBsk/app/src/main/res/values/strings.xml
+++ b/VisitFace/DemoForBsk/app/src/main/res/values/strings.xml
@@ -32,7 +32,7 @@
     <string name="base_information">鍩烘湰淇℃伅</string>
     <string name="visitor_information">鏉ヨ淇℃伅</string>
     <string name="number">搴忓彿</string>
-    <string name="attendance_time">鑰冨嫟鏃堕棿</string>
+    <string name="attendance_time">鏃堕棿</string>
     <string name="attendance_address">鍦扮偣</string>
     <string name="attendance_type">鑰冨嫟绫诲瀷</string>
     <string name="device_set">鏈満绯荤粺璁剧疆</string>

--
Gitblit v1.8.0