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