dupengyue
2017-07-20 ecd2e0277d2eea8ddfb79bee0a84273a5871f14b
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
@@ -1,39 +1,23 @@
package cn.com.basic.face.service;
import android.os.AsyncTask;
import android.util.Base64;
import android.widget.Toast;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import org.xutils.http.RequestParams;
import org.xutils.x;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import cn.com.basic.face.base.BaseApplication;
import cn.com.basic.face.base.MainActivity;
import cn.com.basic.face.discern.common.BaseCommonCallBack;
import cn.com.basic.face.discern.common.CommonVariables;
import cn.com.basic.face.discern.common.ResultBean;
import cn.com.basic.face.discern.entity.Device;
import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
import cn.com.basic.face.fragment.RegisterFragment;
import cn.com.basic.face.fragment.SurveillanceFragment;
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.Constant;
import cn.com.basic.face.util.FileUtil;
import cn.com.basic.face.util.PostData;
import cn.com.basic.face.util.SurveillanceQueryItemUtil;
import cn.com.basic.face.util.Uploader;
import cn.com.basic.face.util.UnknownSurveillanceQueryItemUtil;
public class SurveillanceMng {
@@ -51,7 +35,11 @@
                    MainActivity.getInstance().runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            SurveillanceQueryItemUtil.getInstance().removeTimeoutItemAndShow();
                            if (BaseApplication.getInstance().networkAvailable()) {
                                SurveillanceQueryItemUtil.getInstance().removeTimeoutItemAndShow();
                            } else {
                                UnknownSurveillanceQueryItemUtil.getInstance().removeTimeoutItemAndShow();
                            }
                        }
                    });
                    Thread.sleep(1000*60*5);
@@ -102,7 +90,64 @@
                @Override
                public void success() {
                    try {
                        SurveillanceQueryItemUtil.getInstance().addItems(resultBean.getListBeanOfType(SurveillanceQueryItem.class), bitmapList);
                        SurveillanceQueryItemUtil.getInstance().addItems(resultBean.getList(SurveillanceQueryItem.class), bitmapList, cameraInOrOut);
                    } catch(Exception e) {
                        e.printStackTrace();
                    }
                }
            });
        }catch(Exception e) {
            e.printStackTrace();
        }
    }
    public void sendOfflineUnknownToServer() {
        if (!BaseApplication.deviceAvailable) {
            return;
        }
        UnknownQueryItem item = SurveillanceDao.getInstance().readOfflineUnknownFromLocal();
        if (item == null) {
            return;
        }
        syncOfflineData(item);
    }
    private void syncOfflineData(final UnknownQueryItem item) {
        try {
            if (fileIndex > 30) {
                fileIndex = 1;
            }
            fileIndex++;
            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_UNKNOWN_ITEM_TYPE+"");
            x.http().post(params, new BaseCommonCallBack() {
                @Override
                public void success() {
                    try {
                        if (1==1) {
                            SurveillanceDao.getInstance().removeLocalSqliteRecord(item);
                        }
                    } catch(Exception e) {
                        e.printStackTrace();
                    }