From d9ffa50c7e8d6b8c3157690aef8e2a70af1d1695 Mon Sep 17 00:00:00 2001
From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 09 八月 2017 13:58:01 +0800
Subject: [PATCH] rtps server (not ok)
---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/SurveillanceDao.java | 128 +++++++++++++++++++++++++++++++++++-------
1 files changed, 107 insertions(+), 21 deletions(-)
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/SurveillanceDao.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/SurveillanceDao.java
index 1ba34a1..6cc0f26 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/SurveillanceDao.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/SurveillanceDao.java
@@ -1,14 +1,20 @@
package cn.com.basic.face.service.sqlite;
-import android.graphics.Bitmap;
+import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
+import java.io.File;
import java.text.SimpleDateFormat;
+import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
-import cn.com.basic.face.discern.query.item.SurveillancePhotoQueryItem;
+import cn.com.basic.face.base.BaseApplication;
+import cn.com.basic.face.base.MainActivity;
+import cn.com.basic.face.discern.entity.OfflineSurveillance;
import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
+import cn.com.basic.face.discern.query.item.UnknownQueryItem;
import cn.com.basic.face.util.FileUtil;
public class SurveillanceDao {
@@ -17,35 +23,115 @@
public static SurveillanceDao getInstance() {
return instance;
}
-
+ //companyId
//offline_ (headPicture, cameraInOrOut, createTime, visitId)
- public void addBitmap(final List<SurveillanceQueryItem> bitmapList, final byte[] byteArray, int len, final String cameraInOrOut, byte[] surveillancePhotoBytes) {
+ public void saveOfflineUnknownToLocal(final List<SurveillanceQueryItem> bitmapList, final byte[] rawData, final String cameraInOrOut) {
+ if (bitmapList == null || bitmapList.size() == 0) {
+ return;
+ }
+ SQLiteDatabase db = null;
+ try {
+ String rawDataFileName = UUID.randomUUID().toString() + "";
+ FileUtil.writeToFile(rawDataFileName, rawData);
+ String headPicture = "";
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ String createTime = sdf.format(new Date());
+ String surveillanceId = UUID.randomUUID().toString();
+ String deviceId = BaseApplication.getInstance().getAndroidDevice().getDeviceId();
+ MainActivity.getInstance().db.execSQL(
+ "insert into offline_surveillance(surveillance_id,device_id,raw_data_path, camera_in_or_out, create_time,device_company_id) values('" +
+ surveillanceId + "','" +
+ deviceId + "','" +
+ rawDataFileName + "','" +
+ cameraInOrOut + "','" +
+ createTime + "','" +
+ BaseApplication.getInstance().getAndroidDevice().getCompanyId() + "'" +")"
+ );
-
- for (SurveillanceQueryItem item : bitmapList) {
- Bitmap bitmap = item.getBitmap();
- String fileName = UUID.randomUUID().toString()+".bmp";
- FileUtil.writeToFile(fileName, new byte[]{});
-
+ } catch (Exception e) {
+ e.printStackTrace();
}
- String headPicture = "";
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- String createTime = sdf.format(new Date());
- String sql = "insert offline_temp(head_picture, camera_in_or_out, create_time, visit_id) values('"+
- headPicture+"','"+
- cameraInOrOut+"','"+
- createTime+"','"+
- "null" +"')";
- //瀛樺叆鏁版嵁搴�
- //鎶婂浘鐗囧瓨鍏ユ湰鍦版枃浠�
//浜哄憳娉ㄥ唽鍙互閫夋嫨鏈湴鍥剧墖
//鍚屾涓存椂琛�
//鍚屾璁垮鐧昏琛�
//鍒犻櫎鏈湴鏂囦欢锛堝惊鐜垹闄わ級
-
}
+ public UnknownQueryItem readOfflineUnknownFromLocal() {
+ UnknownQueryItem item = null;
+ Cursor c = MainActivity.getInstance().db.rawQuery("select raw_data_path,camera_in_or_out,create_time from offline_surveillance order by create_time limit 1", new String[]{});
+ if (c.moveToFirst()) {
+ item = new UnknownQueryItem();
+ item.setRawDataPath(c.getString(c.getColumnIndex("raw_data_path")));
+ item.setCameraInOrOut(c.getString(c.getColumnIndex("camera_in_or_out")));
+ item.setCreateTime(c.getString(c.getColumnIndex("create_time")));
+ }
+ return item;
+ }
+
+ public void removeLocalSqliteRecord(UnknownQueryItem item) {
+ try {
+ File file = FileUtil.getFile(item.getRawDataPath());
+ if (file.exists()) {
+ file.delete();
+ }
+ MainActivity.getInstance().db.execSQL("delete from offline_surveillance where raw_data_path='"+item.getRawDataPath()+"'");
+ }
+ catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public boolean hasMoreOfflineSurveillance() {
+ boolean hasMore = false;
+ String sql = "select count(*) from offline_surveillance order by create_time ";
+ Cursor c = MainActivity.getInstance().db.rawQuery(sql, new String[]{});
+ if (c.moveToFirst()) {
+ hasMore = c.getInt(0) > 0;
+ }
+ return hasMore;
+ }
+
+ /**
+ * 鍔犺浇OfflineSurllance琛�
+ * @return
+ */
+ public List<OfflineSurveillance> getSurveillanceList(){
+ String sql="select surveillance_id,raw_data_path,camera_in_or_out,create_time,device_id from offline_surveillance limit 0, 10";
+ List<OfflineSurveillance> list=new ArrayList<OfflineSurveillance>();
+ OfflineSurveillance result=null;
+ Cursor c =MainActivity.getInstance().db.rawQuery(sql,new String[]{});
+ String deviceCompanyId = BaseApplication.getInstance().getAndroidDevice().getCompanyId();
+ String deviceId = BaseApplication.getInstance().getAndroidDevice().getDeviceId();
+ while (c.moveToNext()) {
+ result=new OfflineSurveillance();
+ result.setDeviceCompanyId(deviceCompanyId);
+ result.setDeviceId(deviceId);
+ result.setCameraInOrOut(c.getString(c.getColumnIndex("camera_in_or_out")));
+ result.setCreateTime(c.getString(c.getColumnIndex("create_time")));
+ result.setRawDataPath(c.getString(c.getColumnIndex("raw_data_path")));
+ result.setSurveillanceId(c.getString(c.getColumnIndex("surveillance_id")));
+ list.add(result);
+ }
+ return list;
+ }
+
+ //鍒犻櫎宸蹭笂浼犵粰鏈嶅姟鍣ㄧ殑鏁版嵁
+ public void delSurllanceList(List<OfflineSurveillance> list){
+ for (OfflineSurveillance item : list) {
+ String sql="delete from offline_surveillance where 1=1 and surveillance_id='"+item.getSurveillanceId()+"'";
+ MainActivity.getInstance().db.execSQL(sql);
+ }
+ }
+
+ //鑾峰彇鏈悓姝ユ暟鎹�绘暟
+ public int getSynDataCount(){
+ String sql="select count(*) from offline_surveillance";
+ Cursor c =MainActivity.getInstance().db.rawQuery(sql,new String[]{});
+ c.moveToFirst();
+ return c.getInt(0);
+ }
}
--
Gitblit v1.8.0