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