From d2f697fa887e28b86d38332e2fbde930c54fb43f Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 20 四月 2017 10:16:49 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/service/SurveillanceMng.java | 91 +++++++++++++++++++++++++++++++++------------ 1 files changed, 66 insertions(+), 25 deletions(-) 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 1594897..a33156f 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 @@ -1,13 +1,20 @@ package cn.com.basic.face.service; +import android.graphics.Bitmap; +import android.util.Base64; + import org.xutils.http.RequestParams; import org.xutils.x; +import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; +import cn.com.basic.face.base.BaseApplication; import cn.com.basic.face.discern.common.BaseCommonCallBack; +import cn.com.basic.face.discern.common.CommonVariables; 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.util.AppApi; import cn.com.basic.face.util.Constant; @@ -20,10 +27,13 @@ return instance; } - public void findSupervisoryBottomList(final boolean isVisit) { - + public void findSurveillanceBottomList(final boolean isVisit) { + if (!BaseApplication.deviceAvailable) { + return; + } RequestParams params = new RequestParams(AppApi.BASE_URL +AppApi.Query.SURVEILLANCE_QUERY); -// params.addBodyParameter(VisitorQueryCondition.FieldNames.notCompanyId, BaseApplication.getInstance().getPlace().getCompanyId()); + 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); @@ -31,9 +41,9 @@ int i = 0; for (SurveillanceQueryItem item : list) { if (i % 5 == 0) { - item.setType(Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE); + item.setType(CommonVariables.Surveillance.VISIT_REGISTER_ITEM_TYPE); } else { - item.setType(Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE); + item.setType(CommonVariables.Surveillance.VISIT_CHECK_IN_ITEM_TYPE); } i++; } @@ -47,51 +57,82 @@ } } }); + } + public void addBitmap(final List<Bitmap> bitmapList, byte[] byteArray, int len) { + if (!BaseApplication.deviceAvailable) { + return; + } + 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()); + params.addBodyParameter("deviceId", BaseApplication.getInstance().getDevice().getDeviceId()); + params.addBodyParameter("enterOrExit", CommonVariables.EnterOrExit.ENTER+""); + x.http().post(params, new BaseCommonCallBack() { + public void success() { + SurveillanceQueryItem item = getBean(SurveillanceQueryItem.class); + if (item.getType() == CommonVariables.Surveillance.VISIT_REGISTER_ITEM_TYPE + || item.getType() == CommonVariables.Surveillance.VISIT_CHECK_IN_ITEM_TYPE + ) { + if (bitmapList != null && bitmapList.size() > 0) { + item.setBitmap(bitmapList.get(0)); + } + + List<SurveillanceQueryItem> doubleList = new ArrayList<SurveillanceQueryItem>(); + + List list = SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().getPrevList(); + list.add(0, item); + + fillBlank(list, doubleList); + + SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_visit_list_view().show(doubleList, true); + } + + } + }); } private void fillBlank(List<SurveillanceQueryItem> list, List<SurveillanceQueryItem> doubleList) { + doubleList.clear(); List<SurveillanceQueryItem> registerList = new ArrayList<SurveillanceQueryItem>(); List<SurveillanceQueryItem> checkInList = new ArrayList<SurveillanceQueryItem>(); - for (SurveillanceQueryItem item : list) { - if (item.getType() == Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE) { + if (item.getType() == Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE) { registerList.add(item); } - if (item.getType() == Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE) { + if (item.getType() == Constant.Surveillance.VISIT_CHECK_IN_ITEM_TYPE) { checkInList.add(item); } } - List<SurveillanceQueryItem> blenderList = new ArrayList<SurveillanceQueryItem>(); + int max = registerList.size() > checkInList.size() ? registerList.size() : checkInList.size(); - int i = 0, m = 0, n = 0; - for (i = 0; i < registerList.size() + checkInList.size(); i++) { + int m = 0, n = 0; + for (int i = 0; i < max * 2; i++) { SurveillanceQueryItem item; - if (i % 2 == 0 && m < registerList.size()) { - item = registerList.get(m); + if (i % 2 == 0) { + if (m < registerList.size()) { + item = registerList.get(m); + } else { + item = getBlankItem(); + } m++; } else { - item = checkInList.get(n); + if (n < checkInList.size()) { + item = checkInList.get(n); + } else { + item = getBlankItem(); + } n++; - } - blenderList.add(item); - } - - for (SurveillanceQueryItem item : blenderList) { - if (doubleList.size() % 2 == 0 && item.getType() != Constant.Supervisory.VISIT_REGISTER_ITEM_TYPE) { - doubleList.add(getBlankItem()); - } - if (doubleList.size() % 2 != 0 && item.getType() != Constant.Supervisory.VISIT_CHECK_IN_ITEM_TYPE) { - doubleList.add(getBlankItem()); } doubleList.add(item); } + } private SurveillanceQueryItem getBlankItem() { SurveillanceQueryItem blankItem = new SurveillanceQueryItem(); - blankItem.setType(Constant.Supervisory.VISIT_BLANK_ITEM_TYPE); + blankItem.setType(Constant.Surveillance.VISIT_BLANK_ITEM_TYPE); return blankItem; } -- Gitblit v1.8.0