From 1c25ba497cb4b80c313367bcf141c97c92bdf585 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期三, 26 七月 2017 11:40:07 +0800
Subject: [PATCH]
---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/SyncUpAndDownThread.java | 3 +
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInRightVisitorCell.java | 8 +++
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/InternetAccessThread.java | 3 +
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/AttendanceDao.java | 10 +++--
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SurveillanceFragment.java | 4 +
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java | 2
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java | 11 ++++-
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java | 9 ++++
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java | 2
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/FileUtil.java | 16 ++++++++
10 files changed, 54 insertions(+), 14 deletions(-)
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java
index 5d7ca7d..936a023 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java
@@ -1,5 +1,6 @@
package cn.com.basic.face.adapter;
+import android.graphics.Bitmap;
import android.net.Uri;
import android.view.View;
import android.widget.LinearLayout;
@@ -15,6 +16,7 @@
import cn.com.basic.face.discern.common.CommonVariables;
import cn.com.basic.face.discern.query.item.CheckInQueryItem;
import cn.com.basic.face.util.AppApi;
+import cn.com.basic.face.util.FileUtil;
public class CheckInFragment {
@@ -75,7 +77,12 @@
CheckInQueryItem item = (CheckInQueryItem) data;
fragment_check_in_left_visitor_row_name.setText(item.getUsername());
if (item.getSurveillancePhoto() != null && !item.getSurveillancePhoto().equals("")) {
- fragment_check_in_left_visitor_row_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+ Bitmap bitmap = FileUtil.loadBitmap(item.getSurveillancePhoto());
+ if (bitmap != null) {
+ fragment_check_in_left_visitor_row_photo.setImageBitmap(bitmap);
+ } else {
+ fragment_check_in_left_visitor_row_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+ }
} else {
fragment_check_in_left_visitor_row_photo.setImageResource(R.drawable.u68);
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java
index 7c65248..9c5b7a2 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/common/CommonVariables.java
@@ -113,7 +113,7 @@
public static boolean FACE_SERVER = false;
public static boolean ID_CARD = false;
- public static boolean EMULATOR = true;
+ public static boolean EMULATOR = false;
public static boolean androidOffline() {
return true;
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SurveillanceFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SurveillanceFragment.java
index 4a342ae..6231b7e 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SurveillanceFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/SurveillanceFragment.java
@@ -178,7 +178,9 @@
}
fragment_supervisory_enter_camera.getHolder().addCallback(new SurfaceHolder.Callback() {
public void surfaceCreated(SurfaceHolder holder) {
- new SurveillancePhotoEmulateThread().start();
+ if (CommonVariables.EMULATOR) {
+ new SurveillancePhotoEmulateThread().start();
+ }
if (useNative) {
RtspFaceNative.setSurface(Integer.parseInt(CommonVariables.Camera.IN), fragment_supervisory_enter_camera.getHolder().getSurface());
RtspFaceNative.createPlayer(Integer.parseInt(CommonVariables.Camera.IN), DeviceMng.getInstance().getCamera1Address());
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/InternetAccessThread.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/InternetAccessThread.java
index 7236a70..c585089 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/InternetAccessThread.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/InternetAccessThread.java
@@ -81,7 +81,8 @@
bis.close();
is.close();
} catch (Exception e) {
- e.printStackTrace();
+ //e.printStackTrace();
+ System.out.println(e.getMessage());
return false;
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/AttendanceDao.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/AttendanceDao.java
index cc508c8..53b4900 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/AttendanceDao.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/AttendanceDao.java
@@ -42,23 +42,25 @@
ResultBean resultBean = new ResultBean();
SQLiteDatabase db = MainActivity.getInstance().db;
try {
+ String deviceCompanyId = BaseApplication.getInstance().getAndroidDevice().getCompanyId();
StringBuilder sb = new StringBuilder(40);
sb.append("SELECT b.register_id,").append(" b.username,").append(" b.surveillance_photo,")
- .append(" b.identify_num,").append(" e.post_name,").append(" d.`name` gender,")
+ .append(" b.identify_num,").append(" e.post_name,").append(" d.name gender,")
.append(" f.dept_name").append(" FROM ").append(" employee a ")
.append(" LEFT JOIN register b ON a.register_id = b.register_id ")
.append(" LEFT JOIN dictionary d ON d.dict_id = b.gender_id ")
.append(" LEFT JOIN post e ON e.post_id = b.post_id ")
.append(" LEFT JOIN department f ON f.dept_id = b.department_id ")
- .append(" WHERE ").append(" 1 = 1 ").append(" GROUP BY b.register_id ")
- .append(" ORDER BY b.username ");
- String deviceCompanyId = BaseApplication.getInstance().getAndroidDevice().getCompanyId();
+ .append(" WHERE ").append(" 1 = 1 ");
if(deviceCompanyId != null && !deviceCompanyId.trim().isEmpty()) {
sb.append(" AND a.device_company_id = ").append(deviceCompanyId);
}
if(searchText != null && !searchText.trim().isEmpty()) {
sb.append(" AND b.username LIKE '%").append(searchText).append("%'");
}
+ sb.append(" GROUP BY b.register_id ")
+ .append(" ORDER BY b.username ");
+
StringBuilder count = new StringBuilder(sb.length());
count.append("select count(*) as count from (").append(sb).append(" ) _table");
sb.append(" LIMIT ").append(getStartIndex(pageNum)).append(",").append(CommonVariables.Page.DEFAULT_PAGE_SIZE);
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
index 4d2e7a1..da49fc3 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sqlite/CheckInDao.java
@@ -55,7 +55,8 @@
"d.company_id," +
"e.post_name," +
"a.mobile_phone," +
- "a.warning" +
+ "a.warning," +
+ "a.company" +
" FROM" +
" register a" +
" LEFT JOIN company d ON d.company_id = a.company_id" +
@@ -66,9 +67,9 @@
" 1 = 1";
String deviceCompanyId = BaseApplication.getInstance().getAndroidDevice().getCompanyId();
if(isVisitorList) {
- sql += " AND f.device_company_id = " + deviceCompanyId;
- }else{
sql += " AND ( f.device_company_id != " + deviceCompanyId+" OR f.device_company_id IS NULL"+")";
+ }else{
+ sql += " AND f.device_company_id = " + deviceCompanyId;
}
if(searchText != null && !searchText.trim().isEmpty()) {
@@ -95,6 +96,10 @@
cqi.setCompanyId(c.getString(c.getColumnIndex("company_id")));
cqi.setPostName(c.getString(c.getColumnIndex("post_name")));
cqi.setMobilePhone(c.getString(c.getColumnIndex("mobile_phone")));
+ String company = c.getString(c.getColumnIndex("company"));
+ if (company != null && !"".equals(company)) {
+ cqi.setCompanyName(company);
+ }
cqi.setWarning(c.getString(c.getColumnIndex("warning")));
list.add(cqi);
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/SyncUpAndDownThread.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/SyncUpAndDownThread.java
index 25e3d63..ffce1d9 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/SyncUpAndDownThread.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/sync/SyncUpAndDownThread.java
@@ -2,6 +2,7 @@
import java.util.Date;
+import cn.com.basic.face.base.BaseApplication;
import cn.com.basic.face.service.InternetAccessThread.InternetAccess;
import cn.com.basic.face.service.sync.down.AttendanceDownSync;
import cn.com.basic.face.service.sync.down.CompanyDownSync;
@@ -86,7 +87,7 @@
Date now = new Date();
double minutes = (now.getTime() - lastTime.getTime())*1.0 / 1000 / 60;
if (minutes >= 0.3) {
- if (InternetAccess.getNetWorkInfo()) {
+ if (BaseApplication.getInstance().networkAvailable()) {
firstSync.setAllSyncComplete(false);
firstSync.sync();
lastTime = now;
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/FileUtil.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/FileUtil.java
index ce6381c..a9c3609 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/FileUtil.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/FileUtil.java
@@ -1,5 +1,8 @@
package cn.com.basic.face.util;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.File;
@@ -120,4 +123,17 @@
return "";
}
+ public static Bitmap loadBitmap(String fileName) {
+ String dir = MainActivity.getInstance().getFilesDir().getAbsolutePath();
+ File file = new File(dir, fileName);
+ if (file.exists()) {
+ BitmapFactory.Options options = new BitmapFactory.Options();
+ options.inPreferredConfig = Bitmap.Config.ARGB_8888;
+ Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath(), options);
+ return bitmap;
+ } else {
+ return null;
+ }
+ }
+
}
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
index 08e95c8..4a23111 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
@@ -158,7 +158,7 @@
if (BaseApplication.getInstance().networkAvailable()) {
SurveillanceMng.getInstance().addBitmap(bitmapList, faceListPb.arr, s, cameraIdx+"", new byte[]{});
} else {
- SurveillanceDao.getInstance().saveOfflineUnknownToLocal(bitmapList, faceListPb.arr, cameraIdx+"");
+ SurveillanceMng.getInstance().addOfflineBitmap(bitmapList, faceListPb.arr, CommonVariables.Camera.IN+"");
}
}catch(Exception e){
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInRightVisitorCell.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInRightVisitorCell.java
index 0d6b071..ae9090a 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInRightVisitorCell.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/widget/checkin/CheckInRightVisitorCell.java
@@ -28,6 +28,7 @@
import cn.com.basic.face.discern.query.item.CheckInQueryItem;
import cn.com.basic.face.util.AppApi;
import cn.com.basic.face.util.BitmapUtil;
+import cn.com.basic.face.util.FileUtil;
public class CheckInRightVisitorCell extends LinearLayout{
@@ -66,7 +67,12 @@
fragment_check_in_right_visitor_cell_mobile_phone.setText(item.getMobilePhone());
if (item.getSurveillancePhoto() != null && !item.getSurveillancePhoto().equals("")) {
fragment_check_in_right_visitor_cell_photo_placeholder.setVisibility(INVISIBLE);
- fragment_check_in_right_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+ Bitmap bitmap = FileUtil.loadBitmap(item.getSurveillancePhoto());
+ if (bitmap != null) {
+ fragment_check_in_right_visitor_cell_photo.setImageBitmap(bitmap);
+ } else {
+ fragment_check_in_right_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+ }
} else {
fragment_check_in_right_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + "u45.png"));
fragment_check_in_right_visitor_cell_photo_placeholder.setVisibility(INVISIBLE);
--
Gitblit v1.8.0