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