From 70125903eb0c58b81b37bc6e590b87ad92d9bce5 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期日, 23 七月 2017 17:50:52 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java |  164 ++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 114 insertions(+), 50 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java
index f57d577..32eed25 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java
@@ -30,6 +30,7 @@
 import cn.com.basic.face.discern.common.CommonVariables;
 import cn.com.basic.face.discern.entity.Register;
 import cn.com.basic.face.discern.query.item.CheckInQueryItem;
+import cn.com.basic.face.discern.query.item.OfflineAttenderRegisterItem;
 import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
 import cn.com.basic.face.service.DictionaryMng;
 import cn.com.basic.face.service.RegisterMng;
@@ -60,6 +61,7 @@
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.UUID;
 
 import cn.com.basic.face.base.MainActivity;
 
@@ -151,63 +153,125 @@
             fragment_attender_register_name.requestFocus();
             return;
         }
+        OfflineAttenderRegisterItem offlineAttenderRegisterItem = new OfflineAttenderRegisterItem();
+        if(BaseApplication.getInstance().networkAvailable()) {
+            offlineAttenderRegisterItem.setUsername(name);
+            offlineAttenderRegisterItem.setGenderId(DictionaryMng.getInstance().getId(fragment_attender_register_gender.getValue()));
+            offlineAttenderRegisterItem.setIdentityTypeId(DictionaryMng.getInstance().getId(fragment_attender_register_id_class.getValue()));
+            offlineAttenderRegisterItem.setPostId(DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue()));
+            offlineAttenderRegisterItem.setPostId(fragment_attender_register_post.getValue());
+            offlineAttenderRegisterItem.setIdentifyNum(fragment_attender_register_id_num.getValue());
+            offlineAttenderRegisterItem.setDepartmentId(DictionaryMng.getInstance().getId(fragment_attender_register_department.getValue()));
+            offlineAttenderRegisterItem.setDepartmentId(fragment_attender_register_department.getValue());
+            offlineAttenderRegisterItem.setRemark(fragment_attender_register_remark.getValue());
+            offlineAttenderRegisterItem.setDeviceCompanyId(BaseApplication.getInstance().getAndroidDevice().getCompanyId());
 
-        params.addBodyParameter(Register.FieldNames.username, name);
-        params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_attender_register_gender.getValue()));
-        params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_attender_register_id_class.getValue()));
-        params.addBodyParameter(Register.FieldNames.postId, DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue()));
-        params.addBodyParameter(Register.FieldNames.post, fragment_attender_register_post.getValue());
-        params.addBodyParameter(Register.FieldNames.identifyNum, fragment_attender_register_id_num.getValue());
-        params.addBodyParameter(Register.FieldNames.departmentId, DictionaryMng.getInstance().getId(fragment_attender_register_department.getValue()));
-        params.addBodyParameter(Register.FieldNames.department, fragment_attender_register_department.getValue());
-        params.addBodyParameter(Register.FieldNames.remark, fragment_attender_register_remark.getValue());
-        params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+            String rawSurveillancePhotoPath = UUID.randomUUID().toString()+".bmp";
+            byte[] rawSurveillancePhotoBytes = new byte[]{};
 
-        if (surveillanceQueryItem_selectPhoto != null) {
-            params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
-            params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
-            fragment_attender_register_surveillance_photo_img = surveillanceQueryItem_selectPhoto.getBitmap();
+            if (surveillanceQueryItem_selectPhoto != null) {
+                offlineAttenderRegisterItem.setRawSurveillancePhotoWidth(surveillanceQueryItem_selectPhoto.getWidth());
+                offlineAttenderRegisterItem.setRawSurveillancePhotoHeight(surveillanceQueryItem_selectPhoto.getHeight());
+                fragment_attender_register_surveillance_photo_img = surveillanceQueryItem_selectPhoto.getBitmap();
 
-            NativeImg nativeImg = surveillanceQueryItem_selectPhoto.getNativeImg();
-            byte[] imageBytes = new byte[nativeImg.size];
-            for (int i = 0; i < nativeImg.size; i++) {
-                imageBytes[i] = nativeImg.image[i];
+                NativeImg nativeImg = surveillanceQueryItem_selectPhoto.getNativeImg();
+                byte[] imageBytes = new byte[nativeImg.size];
+                for (int i = 0; i < nativeImg.size; i++) {
+                    imageBytes[i] = nativeImg.image[i];
+                }
+                rawSurveillancePhotoBytes = imageBytes;
             }
-            params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", imageBytes));
+            FileUtil.writeToFile(rawSurveillancePhotoPath, rawSurveillancePhotoBytes);
+            offlineAttenderRegisterItem.setRawSurveillancePhotoPath(rawSurveillancePhotoPath);
+
+            String surveillancePhotoPath = UUID.randomUUID().toString()+".bmp";
+            byte[] surveillancePhotoBytes = new byte[]{};
+            if (fragment_attender_register_surveillance_photo_img != null) {
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                fragment_attender_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                surveillancePhotoBytes = byteArrayOutputStream.toByteArray();
+            }
+            FileUtil.writeToFile(surveillancePhotoPath, surveillancePhotoBytes);
+            offlineAttenderRegisterItem.setSurveillancePhoto(surveillancePhotoPath);
+
+            String uploadCustomPhotoPath = UUID.randomUUID().toString()+".bmp";
+            byte[] uploadCustomPhotoBytes = new byte[]{};
+            if (fragment_attender_register_upload_custom_photo_img != null) {
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                fragment_attender_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                uploadCustomPhotoBytes = byteArrayOutputStream.toByteArray();
+            }
+            FileUtil.writeToFile(uploadCustomPhotoPath, uploadCustomPhotoBytes);
+            offlineAttenderRegisterItem.setUploadCustomPhoto(uploadCustomPhotoPath);
+
+            String idCardPhotoPath = UUID.randomUUID().toString()+".bmp";
+            byte[] idCardPhotoBytes = new byte[]{};
+            if (fragment_attender_register_id_card_photo_img != null) {
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                fragment_attender_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                idCardPhotoBytes = byteArrayOutputStream.toByteArray();
+            }
+            FileUtil.writeToFile(idCardPhotoPath, idCardPhotoBytes);
+            offlineAttenderRegisterItem.setIdCardPhoto(idCardPhotoPath);
         } else {
-            params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", new byte[]{}));
+            params.addBodyParameter(Register.FieldNames.username, name);
+            params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_attender_register_gender.getValue()));
+            params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_attender_register_id_class.getValue()));
+            params.addBodyParameter(Register.FieldNames.postId, DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue()));
+            params.addBodyParameter(Register.FieldNames.post, fragment_attender_register_post.getValue());
+            params.addBodyParameter(Register.FieldNames.identifyNum, fragment_attender_register_id_num.getValue());
+            params.addBodyParameter(Register.FieldNames.departmentId, DictionaryMng.getInstance().getId(fragment_attender_register_department.getValue()));
+            params.addBodyParameter(Register.FieldNames.department, fragment_attender_register_department.getValue());
+            params.addBodyParameter(Register.FieldNames.remark, fragment_attender_register_remark.getValue());
+            params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId());
+
+            if (surveillanceQueryItem_selectPhoto != null) {
+                params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
+                params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
+                fragment_attender_register_surveillance_photo_img = surveillanceQueryItem_selectPhoto.getBitmap();
+
+                NativeImg nativeImg = surveillanceQueryItem_selectPhoto.getNativeImg();
+                byte[] imageBytes = new byte[nativeImg.size];
+                for (int i = 0; i < nativeImg.size; i++) {
+                    imageBytes[i] = nativeImg.image[i];
+                }
+                params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", imageBytes));
+            } else {
+                params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", new byte[]{}));
+            }
+
+            if (fragment_attender_register_surveillance_photo_img != null) {
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                fragment_attender_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                byte[] imageBytes = byteArrayOutputStream.toByteArray();
+
+                params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", imageBytes));
+            } else {
+                params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", new byte[]{}));
+            }
+
+            if (fragment_attender_register_upload_custom_photo_img != null) {
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                fragment_attender_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                byte[] imageBytes = byteArrayOutputStream.toByteArray();
+
+                params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", imageBytes));
+            } else {
+                params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", new byte[]{}));
+            }
+
+            if (fragment_attender_register_id_card_photo_img != null) {
+                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+                fragment_attender_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+                byte[] imageBytes = byteArrayOutputStream.toByteArray();
+
+                params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", imageBytes));
+            } else {
+                params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", new byte[]{}));
+            }
         }
 
-        if (fragment_attender_register_surveillance_photo_img != null) {
-            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-            fragment_attender_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
-            byte[] imageBytes = byteArrayOutputStream.toByteArray();
-
-            params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", imageBytes));
-        } else {
-            params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", new byte[]{}));
-        }
-
-        if (fragment_attender_register_upload_custom_photo_img != null) {
-            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-            fragment_attender_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
-            byte[] imageBytes = byteArrayOutputStream.toByteArray();
-
-            params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", imageBytes));
-        } else {
-            params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", new byte[]{}));
-        }
-
-        if (fragment_attender_register_id_card_photo_img != null) {
-            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-            fragment_attender_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
-            byte[] imageBytes = byteArrayOutputStream.toByteArray();
-
-            params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", imageBytes));
-        } else {
-            params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", new byte[]{}));
-        }
-        RegisterMng.getInstance().addAttender(params, idCardHeadPath);
+        RegisterMng.getInstance().addAttender(params, idCardHeadPath, offlineAttenderRegisterItem);
     }
 
     public void set_fragment_attender_register_surveillance_photo(SurveillanceQueryItem item) {

--
Gitblit v1.8.0