From 9e5babf9db52e64bdae60137be7696e56241fca6 Mon Sep 17 00:00:00 2001
From: xingzilong <xingzilong@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期五, 18 八月 2017 18:12:17 +0800
Subject: [PATCH] H264 NALU解析  并在RTSPServer判断

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/OfflineSurveillanceUpSync.java |   94 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 93 insertions(+), 1 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/OfflineSurveillanceUpSync.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/OfflineSurveillanceUpSync.java
index 6f11149..de84af2 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/OfflineSurveillanceUpSync.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/up/OfflineSurveillanceUpSync.java
@@ -1,5 +1,22 @@
 package cn.com.basic.face.service.sync.up;
 
+import com.alibaba.fastjson.JSONArray;
+
+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.CommonVariables;
+import cn.com.basic.face.discern.query.item.UnknownQueryItem;
+import cn.com.basic.face.service.sqlite.SurveillanceDao;
+import cn.com.basic.face.util.AppApi;
+import cn.com.basic.face.util.FileUtil;
+
 public class OfflineSurveillanceUpSync extends BaseSync {
 
     private static OfflineSurveillanceUpSync instance = new OfflineSurveillanceUpSync();
@@ -7,13 +24,88 @@
         return instance;
     }
 
+
+    public void upSync() {
+        final UnknownQueryItem item = SurveillanceDao.getInstance().readOfflineUnknownFromLocal();
+        try {
+            RequestParams params = new RequestParams();
+
+            File rawSurveillancePhotoFile = FileUtil.getFile(item.getRawDataPath());
+
+            params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+            params.addBodyParameter("InOrOutCamera", item.getCameraInOrOut() + "");
+            params.addBodyParameter("deviceId", BaseApplication.getInstance().getAndroidDevice().getDeviceId());
+            params.addBodyParameter("rawSurveillancePhoto", rawSurveillancePhotoFile);
+
+            File path = BaseApplication.getInstance().getFilesDir();
+            File f0 = new File(path, "f0");
+            if (!f0.exists()) {
+                f0.createNewFile();
+            }
+
+            FileWriter fw0 = new FileWriter(f0);
+            fw0.write("test1");
+            fw0.close();
+            params.setUri(AppApi.BASE_URL + AppApi.SURVEILLANCE_UPLOAD);
+            params.addBodyParameter("f0", f0);
+            params.addBodyParameter("rawSurveillancePhoto", rawSurveillancePhotoFile);
+            params.addBodyParameter("androidCreateTime", item.getCreateTime());
+            params.addBodyParameter("offlineUnknown", CommonVariables.Surveillance.OFFLINE_SURVEILLANCE_ITEM_TYPE +"");
+            params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+            x.http().post(params, new BaseCommonCallBack() {
+                @Override
+                public void success() {
+                    try {
+                        if (1==1) {
+                            SurveillanceDao.getInstance().removeLocalSqliteRecord(item);
+                        }
+                        sync();
+                    } catch(Exception e) {
+                        e.printStackTrace();
+                    }
+                }
+            });
+        }catch(Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     *offline_surveillance琛ㄥ悜涓婂悓姝�
+     */
     @Override
     public void doSync() {
+        try{
+            final String tableName = "offline_surveillance";
+            RequestParams params = new RequestParams(AppApi.BASE_URL + AppApi.UP_SYNCHRON);
+            params.addBodyParameter("tableName", tableName);
+            final List list = SurveillanceDao.getInstance().getSurveillanceList();
+            params.addBodyParameter("data", JSONArray.toJSONString(list));
+            params.addBodyParameter("deviceCompanyId",BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+            x.http().post(params, new BaseCommonCallBack() {
+                public void success() {
+                    SurveillanceDao.getInstance().delSurllanceList(list);
+                    sync();
+                }
+            });
 
+        }catch(Exception e){
+            e.printStackTrace();
+        }
     }
+
 
     @Override
     public boolean hasMore() {
-        return false;
+        int count= SurveillanceDao.getInstance().getSynDataCount();
+        if(count==0){
+            return false;
+        }
+        return true;
     }
+
+    public boolean More() {
+        return SurveillanceDao.getInstance().hasMoreOfflineSurveillance();
+    }
+
 }

--
Gitblit v1.8.0