From e09e9f8a34cbc99a33dfa9ef1792b0025575c3a8 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期二, 01 八月 2017 11:41:19 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/CheckInMng.java |   90 ++++++++++++++++++++++++++++++++++----------
 1 files changed, 69 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 f37ac81..588f975 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
@@ -1,5 +1,7 @@
 package cn.com.basic.face.service;
 
+import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
 import android.widget.Toast;
 
 import cn.com.basic.face.base.BaseApplication;
@@ -31,6 +33,7 @@
 import cn.com.basic.face.discern.common.BaseCommonCallBack;
 import cn.com.basic.face.discern.query.item.CheckInQueryItem;
 import cn.com.basic.face.util.CharacterParser;
+import cn.com.basic.face.util.DateUtil;
 import cn.com.basic.face.util.SqliteSqlUtil;
 
 //鐧昏
@@ -61,10 +64,22 @@
                 }
             });
         } else {
-            CheckInDao.getInstance().addOfflineVisit(offlineVisitItem);
-            if (visitReasonId == null || "".equals(visitReasonId)) {
-                DictionaryMng.getInstance().loadVisitReasonList();
-            }
+            final long result = CheckInDao.getInstance().addOfflineVisit(offlineVisitItem);
+
+            MainActivity.getInstance().runOnUiThread(new Runnable() {
+                @Override
+                public void run() {
+                    if (result > 0) {
+                        Toast.makeText(BaseApplication.getInstance(), "娣诲姞鎴愬姛", Toast.LENGTH_SHORT).show();
+                        if (visitReasonId == null || "".equals(visitReasonId)) {
+                            DictionaryMng.getInstance().loadVisitReasonList();
+                        }
+                        CheckInFragment.getInstance().resetForm();
+                    } else {
+                        Toast.makeText(BaseApplication.getInstance(), "娣诲姞澶辫触", Toast.LENGTH_SHORT).show();
+                    }
+                }
+            });
         }
     }
 
@@ -194,27 +209,60 @@
 
 
     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() {
         return CheckInDao.getInstance().hasOfflineCheckInData();
     }
+
+    public void removeVisitorLastMonthData() {
+        try {
+            SQLiteDatabase db = MainActivity.getInstance().db;
+            String sql="SELECT" +
+                    " a.register_id," +
+                    "a.username," +
+                    "a.surveillance_photo," +
+                    "d.company_name," +
+                    "a.tel," +
+                    "a.identify_num," +
+                    "b.dept_name," +
+                    "d.company_id," +
+                    "e.post_name," +
+                    "a.mobile_phone," +
+                    "a.warning," +
+                    "a.company" +
+                    " FROM" +
+                    " register a" +
+                    " LEFT JOIN company d ON d.company_id = a.company_id" +
+                    " LEFT JOIN department b ON a.department_id = b.dept_id" +
+                    " LEFT JOIN post e ON e.post_id = a.post_id" +
+                    " LEFT JOIN ( SELECT register_id, device_company_id from employee  ) f ON f.register_id = a.register_id" +
+                    " WHERE" +
+                    " 1 = 1";
+            String deviceCompanyId = BaseApplication.getInstance().getAndroidDevice().getCompanyId();
+            sql +=  " AND ( f.device_company_id != " + deviceCompanyId+" OR f.device_company_id IS NULL"+")";
+
+            sql+=" order by a.name_en";
+
+            String count = "select count(*) as count from (" + sql + " ) _table";
+            sql += " LIMIT 0, 100000";
+            List<CheckInQueryItem> list = new ArrayList<CheckInQueryItem>();
+            int b = list.size();
+            CheckInQueryItem cqi = null;
+            Cursor c = db.rawQuery(sql,new String[]{});
+            while (c.moveToNext()) {
+                cqi = new CheckInQueryItem();
+                cqi.setRegisterId(c.getString(c.getColumnIndex("register_id")));
+                list.add(cqi);
+            }
+            for (CheckInQueryItem item : list) {
+                String sql1 = "delete from register where 1=1 and register_id = '" + item.getRegisterId() + "'";
+                MainActivity.getInstance().db.execSQL(sql1);
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
 }

--
Gitblit v1.8.0