From 0e8fc8d9e8764432ffa2ef574b979f003fe4503b Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期二, 25 七月 2017 13:52:56 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DataSynchronService.java | 106 ++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 85 insertions(+), 21 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DataSynchronService.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DataSynchronService.java index 50088a2..846b96a 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DataSynchronService.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/DataSynchronService.java @@ -1,15 +1,21 @@ package cn.com.basic.face.service; +import com.alibaba.fastjson.JSONArray; + import org.xutils.http.RequestParams; import org.xutils.x; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.List; import cn.com.basic.face.discern.common.BaseCommonCallBack; -import cn.com.basic.face.discern.common.CommonVariables; -import cn.com.basic.face.discern.query.condition.AttendanceQueryCondition; -import cn.com.basic.face.discern.query.item.AttendanceQueryItem; +import cn.com.basic.face.discern.common.SqliteSqlBean; +import cn.com.basic.face.service.sqlite.CompanyDao; +import cn.com.basic.face.service.sqlite.DeviceDao; +import cn.com.basic.face.service.sqlite.DictionaryDao; import cn.com.basic.face.util.AppApi; +import cn.com.basic.face.util.SqliteSqlUtil; /** @@ -21,25 +27,83 @@ public class DataSynchronService { - /** - * 鎵�鏈夋暟鎹氦浜掓柟寮� - */ - public void dataTransfer(){ - //鎷兼帴璇锋眰url - RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.Query.ATTENDANCE_QUERY); - //浼犻�掑弬鏁帮紝key涓篠tring锛寁alue涓簅bject - params.addBodyParameter(AttendanceQueryCondition.FieldNames.username, "娴嬭瘯"); - params.addBodyParameter(CommonVariables.Page.PAGE_NUM, "娴嬭瘯"); - params.addBodyParameter(CommonVariables.Page.PAGE_SIZE, CommonVariables.Page.DEFAULT_PAGE_SIZE); - //缁熶竴鍙戦�乸ost璇锋眰锛孊aseCommonCallBack浣滀负鍥炶皟 - x.http().post(params, new BaseCommonCallBack() { - public void success() { - //list鍒欎负杩斿洖瀵硅薄 - List<AttendanceQueryItem> list = getList(AttendanceQueryItem.class); - } - }); + public static DataSynchronService instance=new DataSynchronService(); - } + public static DataSynchronService getInstance(){ + return instance; + } + + + /*** + * 鍚戜笅鍚屾锛岃姹傛湇鍔$锛屾湰鍦版洿鏂板搴旂殑鏁版嵁搴� + * @param synDate 鍚屾鏃堕棿 + * @param tableName 琛ㄥ悕 + * @param deviceCompanyId 璁惧鎵�鍦ㄦ満鏋刬d + * @return + */ + public void serviceToClient(Date synDate, final String tableName, String deviceCompanyId){ + try{ + RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.DOWN_SYNCHRON); + params.addBodyParameter("tableName", tableName); + params.addBodyParameter("synDate",String.valueOf(synDate)); + params.addBodyParameter("deviceCompanyId",deviceCompanyId); + x.http().post(params, new BaseCommonCallBack() { + public void success() { + SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class)); + } + }); + }catch(Exception e){ + e.printStackTrace(); + } + + } + + + /*** + * 鍙屽悜鍚屾 + * @param synDate 鍚屾鏃堕棿 + * @param deviceCompanyId 璁惧鎵�鍦ㄦ満鏋刬d + * @param tableName 琛ㄥ悕 + */ + public void twoWaySynchron(Date synDate, final String deviceCompanyId, String tableName){ + try{ + RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.TWO_WAY_SYNCHRON); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + final String temp=tableName; + params.addBodyParameter("tableName", tableName); + params.addBodyParameter("synDate",sdf.format(synDate)); + if("company".equals(tableName)){ + params.addBodyParameter("data", JSONArray.toJSONString(CompanyDao.getInstance().getCompanyList(deviceCompanyId))); + } + if("device".equals(tableName)){ + params.addBodyParameter("data", JSONArray.toJSONString(DeviceDao.getInstance().getDeviceList(deviceCompanyId))); + } + if("dictionary".equals(tableName)){ + params.addBodyParameter("data", JSONArray.toJSONString(DictionaryDao.getInstance().getDictionayList(deviceCompanyId))); + } + params.addBodyParameter("deviceCompanyId",deviceCompanyId); + x.http().post(params, new BaseCommonCallBack() { + public void success() { + if("company".equals(temp)){ + CompanyDao.getInstance().delCompanyList(deviceCompanyId); + } + if("device".equals(temp)){ + DeviceDao.getInstance().delDevice(deviceCompanyId); + } + if("dictionary".equals(temp)){ + DictionaryDao.getInstance().delDictionary(deviceCompanyId); + } + + List<SqliteSqlBean> result= getExtraList(SqliteSqlBean.class); + SqliteSqlUtil.insert(getExtraList(SqliteSqlBean.class)); + } + }); + }catch(Exception e){ + e.printStackTrace(); + } + + } + } -- Gitblit v1.8.0