From e8ceda6276728449f11dbd768cacd122a23eb721 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期六, 22 七月 2017 15:25:14 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/OfflineVisitItem.java |  160 ++++++++++++++++++++++++++++++++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java           |   57 ++++++++---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java            |   48 ++++++---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java                  |   20 ---
 4 files changed, 236 insertions(+), 49 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/OfflineVisitItem.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/OfflineVisitItem.java
index 8fe3a20..f66fc2c 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/OfflineVisitItem.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/OfflineVisitItem.java
@@ -2,6 +2,166 @@
 
 public class OfflineVisitItem {
 
+    private String visitId;
+    private String visitReasonId;
+    private String remark;
+    private String enterTime;
+    private String exitTime;
+    private String visitorTypeId;
+    private String visitorId;
+    private String visitorCompanyId;
+    private String visiteeId;
+    private String visiteeCompanyId;
+    private String currentStateId;
+    private String warning;
+    private String updateTime;
+    private String isSynchron;
+    private String deviceCompanyId;
+    private String visitReason;
+    private String createTime;
+    private String deviceId;
 
+    public String getVisitId() {
+        return visitId;
+    }
 
+    public void setVisitId(String visitId) {
+        this.visitId = visitId;
+    }
+
+    public String getVisitReasonId() {
+        return visitReasonId;
+    }
+
+    public void setVisitReasonId(String visitReasonId) {
+        this.visitReasonId = visitReasonId;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public String getEnterTime() {
+        return enterTime;
+    }
+
+    public void setEnterTime(String enterTime) {
+        this.enterTime = enterTime;
+    }
+
+    public String getExitTime() {
+        return exitTime;
+    }
+
+    public void setExitTime(String exitTime) {
+        this.exitTime = exitTime;
+    }
+
+    public String getVisitorTypeId() {
+        return visitorTypeId;
+    }
+
+    public void setVisitorTypeId(String visitorTypeId) {
+        this.visitorTypeId = visitorTypeId;
+    }
+
+    public String getVisitorId() {
+        return visitorId;
+    }
+
+    public void setVisitorId(String visitorId) {
+        this.visitorId = visitorId;
+    }
+
+    public String getVisitorCompanyId() {
+        return visitorCompanyId;
+    }
+
+    public void setVisitorCompanyId(String visitorCompanyId) {
+        this.visitorCompanyId = visitorCompanyId;
+    }
+
+    public String getVisiteeId() {
+        return visiteeId;
+    }
+
+    public void setVisiteeId(String visiteeId) {
+        this.visiteeId = visiteeId;
+    }
+
+    public String getVisiteeCompanyId() {
+        return visiteeCompanyId;
+    }
+
+    public void setVisiteeCompanyId(String visiteeCompanyId) {
+        this.visiteeCompanyId = visiteeCompanyId;
+    }
+
+    public String getCurrentStateId() {
+        return currentStateId;
+    }
+
+    public void setCurrentStateId(String currentStateId) {
+        this.currentStateId = currentStateId;
+    }
+
+    public String getWarning() {
+        return warning;
+    }
+
+    public void setWarning(String warning) {
+        this.warning = warning;
+    }
+
+    public String getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(String updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public String getIsSynchron() {
+        return isSynchron;
+    }
+
+    public void setIsSynchron(String isSynchron) {
+        this.isSynchron = isSynchron;
+    }
+
+    public String getDeviceCompanyId() {
+        return deviceCompanyId;
+    }
+
+    public void setDeviceCompanyId(String deviceCompanyId) {
+        this.deviceCompanyId = deviceCompanyId;
+    }
+
+    public String getVisitReason() {
+        return visitReason;
+    }
+
+    public void setVisitReason(String visitReason) {
+        this.visitReason = visitReason;
+    }
+
+    public String getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(String createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getDeviceId() {
+        return deviceId;
+    }
+
+    public void setDeviceId(String deviceId) {
+        this.deviceId = deviceId;
+    }
 }
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java
index 11d8f56..43067ba 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/CheckInFragment.java
@@ -17,6 +17,7 @@
 import cn.com.basic.face.base.LeftRightBaseFragment;
 import cn.com.basic.face.dialog.SelectDialog;
 import cn.com.basic.face.discern.entity.VisitDetail;
+import cn.com.basic.face.discern.query.item.OfflineVisitItem;
 import cn.com.basic.face.util.Constant;
 import cn.com.basic.face.util.OkClickedListener;
 import cn.com.basic.face.service.DictionaryMng;
@@ -201,23 +202,40 @@
             return;
         }
         RequestParams params = new RequestParams();
+        OfflineVisitItem offlineVisitItem = new OfflineVisitItem();
         String visitReasonId = DictionaryMng.getInstance().getId(fragment_check_in_right_visitor_reason.getText().toString());
-        params.addBodyParameter(Visit.FieldNames.visitReasonId, visitReasonId);
-        params.addBodyParameter(Visit.FieldNames.visitReason, fragment_check_in_right_visitor_reason.getText().toString());
-        params.addBodyParameter(Visit.FieldNames.remark, fragment_check_in_right_remark.getText().toString());
-        params.addBodyParameter(Visit.FieldNames.visitorId, visitor.getRegisterId());
-        params.addBodyParameter(Visit.FieldNames.visiteeId, interviewee.getRegisterId());
-        params.addBodyParameter(Visit.FieldNames.visitorCompanyId, visitor.getCompanyId());
-        params.addBodyParameter(Visit.FieldNames.visiteeCompanyId, interviewee.getCompanyId());
-        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        params.addBodyParameter(Visit.FieldNames.enterTime, sdf.format(new Date()));
-        params.addBodyParameter(Visit.FieldNames.currentStateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
-        params.addBodyParameter(Visit.FieldNames.warning, visitor.getWarning());
+        if(BaseApplication.getInstance().networkAvailable()) {
+            params.addBodyParameter(Visit.FieldNames.visitReasonId, visitReasonId);
+            params.addBodyParameter(Visit.FieldNames.visitReason, fragment_check_in_right_visitor_reason.getText().toString());
+            params.addBodyParameter(Visit.FieldNames.remark, fragment_check_in_right_remark.getText().toString());
+            params.addBodyParameter(Visit.FieldNames.visitorId, visitor.getRegisterId());
+            params.addBodyParameter(Visit.FieldNames.visiteeId, interviewee.getRegisterId());
+            params.addBodyParameter(Visit.FieldNames.visitorCompanyId, visitor.getCompanyId());
+            params.addBodyParameter(Visit.FieldNames.visiteeCompanyId, interviewee.getCompanyId());
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            params.addBodyParameter(Visit.FieldNames.enterTime, sdf.format(new Date()));
+            params.addBodyParameter(Visit.FieldNames.currentStateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
+            params.addBodyParameter(Visit.FieldNames.warning, visitor.getWarning());
 
-        params.addBodyParameter(VisitDetail.FieldNames.stateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
-        params.addBodyParameter(VisitDetail.FieldNames.createTime, sdf.format(new Date()));
-        params.addBodyParameter(VisitDetail.FieldNames.deviceId, BaseApplication.getInstance().getAndroidDevice().getDeviceId());
-        CheckInMng.getInstance().add(params, visitReasonId);
+            params.addBodyParameter(VisitDetail.FieldNames.stateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
+            params.addBodyParameter(VisitDetail.FieldNames.createTime, sdf.format(new Date()));
+            params.addBodyParameter(VisitDetail.FieldNames.deviceId, BaseApplication.getInstance().getAndroidDevice().getDeviceId());
+        } else {
+            offlineVisitItem.setVisitReasonId(visitReasonId);
+            offlineVisitItem.setVisitReason(fragment_check_in_right_visitor_reason.getText().toString());
+            offlineVisitItem.setRemark(fragment_check_in_right_remark.getText().toString());
+            offlineVisitItem.setVisitorId(visitor.getRegisterId());
+            offlineVisitItem.setVisiteeId(interviewee.getRegisterId());
+            offlineVisitItem.setVisitorCompanyId(visitor.getCompanyId());
+            offlineVisitItem.setVisiteeCompanyId(interviewee.getCompanyId());
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            offlineVisitItem.setEnterTime(sdf.format(new Date()));
+            offlineVisitItem.setCurrentStateId(""+CommonVariables.VisitType.VISITOR_ENTERED);
+            offlineVisitItem.setWarning(visitor.getWarning());
+            offlineVisitItem.setCreateTime(sdf.format(new Date()));
+            offlineVisitItem.setDeviceId(BaseApplication.getInstance().getAndroidDevice().getDeviceId());
+        }
+        CheckInMng.getInstance().add(params, visitReasonId, offlineVisitItem);
     }
 
     @OnClick(R.id.fragment_check_in_right_visitor_reason_text_view)
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 918349f..f3940ac 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
@@ -10,6 +10,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.OfflineVisitItem;
 import cn.com.basic.face.fragment.CheckInFragment;
 import cn.com.basic.face.service.sqlite.CheckInDao;
 import cn.com.basic.face.service.sqlite.DictionaryDao;
@@ -39,7 +40,7 @@
         return instance;
     }
 
-    public void add(RequestParams params, final String visitReasonId) {
+    public void add(RequestParams params, final String visitReasonId, OfflineVisitItem offlineVisitItem) {
         if (!BaseApplication.deviceAvailable) {
             return;
         }
@@ -58,22 +59,7 @@
                 }
             });
         } else {
-//            params.addBodyParameter(Visit.FieldNames.visitReasonId, visitReasonId);
-//            params.addBodyParameter(Visit.FieldNames.visitReason, fragment_check_in_right_visitor_reason.getText().toString());
-//            params.addBodyParameter(Visit.FieldNames.remark, fragment_check_in_right_remark.getText().toString());
-//            params.addBodyParameter(Visit.FieldNames.visitorId, visitor.getRegisterId());
-//            params.addBodyParameter(Visit.FieldNames.visiteeId, interviewee.getRegisterId());
-//            params.addBodyParameter(Visit.FieldNames.visitorCompanyId, visitor.getCompanyId());
-//            params.addBodyParameter(Visit.FieldNames.visiteeCompanyId, interviewee.getCompanyId());
-//            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-//            params.addBodyParameter(Visit.FieldNames.enterTime, sdf.format(new Date()));
-//            params.addBodyParameter(Visit.FieldNames.currentStateId, ""+ CommonVariables.VisitType.VISITOR_ENTERED);
-//            params.addBodyParameter(Visit.FieldNames.warning, visitor.getWarning());
-//
-//            params.addBodyParameter(VisitDetail.FieldNames.stateId, ""+CommonVariables.VisitType.VISITOR_ENTERED);
-//            params.addBodyParameter(VisitDetail.FieldNames.createTime, sdf.format(new Date()));
-//            params.addBodyParameter(VisitDetail.FieldNames.deviceId, BaseApplication.getInstance().getAndroidDevice().getDeviceId());
-            CheckInDao.getInstance().add(params);
+            CheckInDao.getInstance().add(offlineVisitItem);
             if (visitReasonId == null || "".equals(visitReasonId)) {
                 DictionaryMng.getInstance().loadVisitReasonList();
             }
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 617a886..58159d4 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
@@ -16,7 +16,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.OfflineVisitItem;
 
 
 public class CheckInDao  extends BaseDao{
@@ -113,26 +113,49 @@
 
     /**
      * 娣诲姞璁垮璁板綍
-     * @param params
      */
-    public void add(RequestParams params) {
-        params.getStringParameter(Visit.FieldNames.visitReasonId);
-        params.getStringParameter(Visit.FieldNames.visitReason);
-        params.getStringParameter(Visit.FieldNames.remark);
-        params.getStringParameter(Visit.FieldNames.visitorId);
-        params.getStringParameter(Visit.FieldNames.visiteeId);
-        params.getStringParameter(Visit.FieldNames.visitorCompanyId);
-        params.getStringParameter(Visit.FieldNames.visiteeCompanyId);
-        params.getStringParameter(Visit.FieldNames.enterTime);
-        params.getStringParameter(Visit.FieldNames.currentStateId);
-        params.getStringParameter(Visit.FieldNames.warning);
-        params.getStringParameter(VisitDetail.FieldNames.stateId);
-        params.getStringParameter(VisitDetail.FieldNames.createTime);
-        params.getStringParameter(VisitDetail.FieldNames.deviceId);
+    public void add(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()+"', "+
+                        " '"+entity.getIsSynchron()+"', "+
+                        " '"+entity.getDeviceCompanyId()+"' "+
+                        "	)";
+        MainActivity.getInstance().db.execSQL(sql);
     }
 
     public boolean hasOfflineCheckInData() {
-        Cursor c = Config.sqlMap.getDb().rawQuery("select count(*) from visit", new String[]{});
+        Cursor c = MainActivity.getInstance().db.rawQuery("select count(*) from visit", new String[]{});
         c.moveToFirst();
         return c.getInt(0) > 0 ? true : false;
     }

--
Gitblit v1.8.0