From 83dc9220bca38cc681b0a310c93ab6b3fc5babe2 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期二, 25 四月 2017 10:50:15 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java                  |   35 +++--------------
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java                |   28 +++++++++++++-
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/SurveillanceQueryItem.java |   31 +++++++++++++++
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java             |    1 
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java                      |   11 ++++-
 5 files changed, 73 insertions(+), 33 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java
index 746d8de..c39767f 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java
@@ -95,6 +95,7 @@
                         RegisterFragment.getInstance().setRegisterInfo(getVo(item));
                         if(item.getBitmap() != null) {
                             RegisterFragment.getInstance().setChoosePhoto(item.getBitmap());
+                            RegisterFragment.getInstance().setSurveillanceQueryItem(item);
                         }
                     }
                 });
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/SurveillanceQueryItem.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/SurveillanceQueryItem.java
index b3a213b..951b54c 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/SurveillanceQueryItem.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/discern/query/item/SurveillanceQueryItem.java
@@ -24,6 +24,12 @@
     private Bitmap bitmap;
 
     private String warning;
+    //
+    private String base64Image;
+
+    private String width;
+
+    private String height;
 
 	/**
 	 * Get 浜哄憳涓婚敭
@@ -147,4 +153,29 @@
     public void setWarning(String warning) {
         this.warning = warning;
     }
+
+    public String getWidth() {
+        return width;
+    }
+
+    public void setWidth(String width) {
+        this.width = width;
+    }
+
+    public String getHeight() {
+        return height;
+    }
+
+    public void setHeight(String height) {
+        this.height = height;
+    }
+
+    public String getBase64Image() {
+        return base64Image;
+    }
+
+    public void setBase64Image(String base64Image) {
+        this.base64Image = base64Image;
+    }
+
 }
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java
index 9cf2842..9e8fd6a 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java
@@ -16,7 +16,9 @@
 import cn.com.basic.face.base.BaseFragment;
 import cn.com.basic.face.discern.common.CommonVariables;
 import cn.com.basic.face.discern.entity.Register;
+import cn.com.basic.face.discern.query.condition.SurveillanceQueryCondition;
 import cn.com.basic.face.discern.query.item.CheckInQueryItem;
+import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
 import cn.com.basic.face.service.DictionaryMng;
 import cn.com.basic.face.service.RegisterMng;
 import cn.com.basic.face.service.SurveillanceMng;
@@ -94,6 +96,8 @@
     private Bitmap fragment_register_surveillance_photo_img;
     private Bitmap fragment_register_upload_custom_photo_img;
     private Bitmap fragment_register_id_card_photo_img;
+
+    private SurveillanceQueryItem surveillanceQueryItem;
 
     private static RegisterFragment instance = new RegisterFragment();
 
@@ -183,6 +187,12 @@
         params.addBodyParameter(Register.FieldNames.companyId, company);
         params.addBodyParameter(Register.FieldNames.birthday, birthday);
 
+        if (surveillanceQueryItem != null) {
+            params.addBodyParameter("width", surveillanceQueryItem.getWidth());
+            params.addBodyParameter("height", surveillanceQueryItem.getHeight());
+            params.addBodyParameter("base64Image", surveillanceQueryItem.getBase64Image());
+        }
+
         if (fragment_register_surveillance_photo_img != null) {
             ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
             fragment_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
@@ -237,8 +247,17 @@
                 fragment_register_upload_custom_photo_placeholder_image.setVisibility(View.INVISIBLE);
                 fragment_register_upload_custom_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
 
-                List<Bitmap> bitmapList = new ArrayList<>();
-                bitmapList.add(0, bitmap);
+                List<SurveillanceQueryItem> bitmapList = new ArrayList<>();
+                SurveillanceQueryItem item = new SurveillanceQueryItem();
+                item.setBitmap(bitmap);
+                item.setWidth(bitmap.getWidth()+"");
+                item.setHeight(bitmap.getHeight()+"");
+
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                bitmap.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                byte[] imageBytes = byteArrayOutputStream.toByteArray();
+                String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
+                item.setBase64Image(encodedImage);
 
                 SurveillanceMng.getInstance().addBitmap(bitmapList, null, 0, CommonVariables.Camera.IN);
 
@@ -285,6 +304,7 @@
         fragment_register_upload_custom_photo_placeholder_text_view.setVisibility(View.VISIBLE);
         fragment_register_id_card_photo_placeholder_image.setVisibility(View.VISIBLE);
         fragment_register_id_card_photo_placeholder_text_view.setVisibility(View.VISIBLE);
+        this.surveillanceQueryItem = null;
     }
 
     @OnClick(R.id.fragment_register_country)
@@ -379,4 +399,8 @@
         fragment_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE);
     }
 
+    public void setSurveillanceQueryItem(SurveillanceQueryItem item) {
+        this.surveillanceQueryItem = item;
+    }
+
 }
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
index b15977c..b42df6c 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java
@@ -31,39 +31,12 @@
         if (!BaseApplication.deviceAvailable) {
             return;
         }
-//        RequestParams params = new RequestParams(AppApi.BASE_URL +AppApi.Query.SURVEILLANCE_QUERY);
-//        params.addBodyParameter(CommonVariables.Page.PAGE_NUM, "1");
-//        params.addBodyParameter(CommonVariables.Page.PAGE_SIZE, "10");
-//        x.http().post(params, new BaseCommonCallBack() {
-//            public void success() {
-//                List<SurveillanceQueryItem> list = getList(SurveillanceQueryItem.class);
-//                if (isVisit) {
-//                    int i = 0;
-//                    for (SurveillanceQueryItem item : list) {
-//                        if (i % 5 == 0) {
-//                            item.setRegisterOrCheckIn(CommonVariables.Surveillance.VISIT_REGISTER_ITEM_TYPE);
-//                        } else {
-//                            item.setRegisterOrCheckIn(CommonVariables.Surveillance.VISIT_CHECK_IN_ITEM_TYPE);
-//                        }
-//                        i++;
-//                    }
-//
-//                    List<SurveillanceQueryItem> doubleList = new ArrayList<SurveillanceQueryItem>();
-//                    fillBlank(list, doubleList);
-//
-//                    SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().show(doubleList, true);
-//                } else {
-//                    SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_attendance_list_view().show(list, true);
-//                }
-//            }
-//        });
     }
 
-    public void addBitmap(final List<Bitmap> bitmapList, byte[] byteArray, int len, String cameraInOrOut) {
+    public void addBitmap(final List<SurveillanceQueryItem> bitmapList, byte[] byteArray, int len, String cameraInOrOut) {
         if (!BaseApplication.deviceAvailable) {
             return;
         }
-        //final int cameraInOrOut = Integer.parseInt(CommonVariables.Camera.IN);
         RequestParams params = new RequestParams(AppApi.BASE_URL +AppApi.SURVEILLANCE_UPLOAD);
         params.addBodyParameter("base64Photo", Base64.encodeToString(byteArray, 0, len, Base64.DEFAULT));
         params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getDevice().getDeviceCompanyId());
@@ -84,7 +57,11 @@
                             ) {
                         newList.add(0, item);
                         if (i < bitmapList.size()) {
-                            item.setBitmap(bitmapList.get(i));
+                            SurveillanceQueryItem surveillanceQueryItem = bitmapList.get(i);
+                            item.setBitmap(surveillanceQueryItem.getBitmap());
+                            item.setBase64Image(surveillanceQueryItem.getBase64Image());
+                            item.setWidth(surveillanceQueryItem.getWidth());
+                            item.setHeight(surveillanceQueryItem.getHeight());
                         }
                     }
                 }
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 217bdb2..61fee8a 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
@@ -1,6 +1,7 @@
 package cn.com.basic.face.util;
 
 import android.graphics.Bitmap;
+import android.util.Base64;
 import android.util.Log;
 import android.view.Surface;
 
@@ -11,6 +12,7 @@
 import java.util.List;
 
 import cn.com.basic.face.base.MainActivity;
+import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
 import cn.com.basic.face.fragment.RegisterFragment;
 import cn.com.basic.face.service.SurveillanceMng;
 
@@ -98,15 +100,20 @@
         }
 
         try{
-            List<Bitmap> bitmapList = new ArrayList();
+            List<SurveillanceQueryItem> bitmapList = new ArrayList();
             for (int i = 0; i < faceImages.size(); i++) {
                 NativeImg item = faceImages.get(i);
+                SurveillanceQueryItem surveillanceQueryItem = new SurveillanceQueryItem();
                 int offset = 0;
                 int size = item.size;
                 Bitmap bitmap = Bitmap.createBitmap(item.width,item.height, Bitmap.Config.RGB_565);
                 ByteBuffer byteBuffer = ByteBuffer.wrap(item.image, offset, size);
                 bitmap.copyPixelsFromBuffer(byteBuffer);
-                bitmapList.add(bitmap);
+                surveillanceQueryItem.setBase64Bitmap(Base64.encodeToString(item.image, offset, size, Base64.DEFAULT));
+                surveillanceQueryItem.setBitmap(bitmap);
+                surveillanceQueryItem.setWidth(item.width+"");
+                surveillanceQueryItem.setHeight(item.height+"");
+                bitmapList.add(surveillanceQueryItem);
             }
             SurveillanceMng.getInstance().addBitmap(bitmapList, faceListPb.arr, s, cameraInOrOut+"");
 

--
Gitblit v1.8.0