From d00ea6bb3daa0ee1be1c7f8dbe57cc7a16342474 Mon Sep 17 00:00:00 2001
From: sujinwen <sujinwen@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期二, 25 七月 2017 12:00:12 +0800
Subject: [PATCH] Failed commit: Default

---
 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