From 7e7f99a8c753e7a2a70fd854a79bf75b861bdc66 Mon Sep 17 00:00:00 2001
From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期四, 25 五月 2017 17:45:47 +0800
Subject: [PATCH] 

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java |  489 +++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 355 insertions(+), 134 deletions(-)

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 57fbcb4..6caf525 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
@@ -1,24 +1,40 @@
 package cn.com.basic.face.fragment;
 
 import android.app.Activity;
+import android.content.Context;
 import android.content.Intent;
-import android.database.Cursor;
 import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
 import android.net.Uri;
+import android.os.Environment;
 import android.provider.MediaStore;
 import android.util.Base64;
+import android.util.DisplayMetrics;
+import android.view.MotionEvent;
 import android.view.View;
+import android.view.WindowManager;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
+import android.widget.TextView;
 import android.widget.Toast;
 
 import com.bsk.zhangbo.demoforbsk.R;
+
+import cn.com.basic.face.adapter.SurveillanceFragment;
+import cn.com.basic.face.base.BaseApplication;
 import cn.com.basic.face.base.BaseFragment;
+import cn.com.basic.face.base.PictureTaker;
+import cn.com.basic.face.dialog.SurveillancePhotoDialog;
+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.SurveillanceQueryItem;
 import cn.com.basic.face.service.DictionaryMng;
 import cn.com.basic.face.service.RegisterMng;
+import cn.com.basic.face.service.SurveillanceMng;
+import cn.com.basic.face.util.BitmapUtil;
 import cn.com.basic.face.util.Constant;
+import cn.com.basic.face.util.NativeImg;
 import cn.com.basic.face.util.OkClickedListener;
 
 import cn.com.basic.face.util.AppApi;
@@ -28,7 +44,6 @@
 import cn.com.basic.face.widget.register.RegisterRightFieldTextView;
 import cn.com.basic.face.dialog.SelectDialog;
 
-import com.facebook.drawee.view.SimpleDraweeView;
 import com.lidroid.xutils.view.annotation.ViewInject;
 import com.lidroid.xutils.view.annotation.event.OnClick;
 
@@ -36,8 +51,10 @@
 
 import java.io.ByteArrayOutputStream;
 import java.io.File;
-import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 
 import cn.com.basic.face.base.MainActivity;
 
@@ -63,22 +80,42 @@
     private RegisterRightFieldTextView fragment_register_company;
     @ViewInject(R.id.fragment_register_remark)
     private RegisterRightFieldTextView fragment_register_remark;
-    @ViewInject(R.id.fragment_register_choose_photo)
-    private ImageView fragment_register_choose_photo;
-    @ViewInject(R.id.fragment_register_update_photo)
-    private ImageView fragment_register_update_photo;
+    @ViewInject(R.id.fragment_register_surveillance_photo)
+    private ImageView fragment_register_surveillance_photo;
+    @ViewInject(R.id.fragment_register_upload_custom_photo)
+    private ImageView fragment_register_upload_custom_photo;
     @ViewInject(R.id.fragment_register_id_card_photo)
     private ImageView fragment_register_id_card_photo;
     @ViewInject(R.id.fragment_register_linear_layout)
     private LinearLayout fragment_register_linear_layout;
+    @ViewInject(R.id.fragment_register_surveillance_photo_placeholder_image)
+    private ImageView fragment_register_surveillance_photo_placeholder_image;
+    @ViewInject(R.id.fragment_register_upload_custom_photo_placeholder_image)
+    private ImageView fragment_register_upload_custom_photo_placeholder_image;
+    @ViewInject(R.id.fragment_register_id_card_photo_placeholder_image)
+    private ImageView fragment_register_id_card_photo_placeholder_image;
+    @ViewInject(R.id.fragment_register_surveillance_photo_placeholder_text_view)
+    private TextView fragment_register_surveillance_photo_placeholder_text_view;
+    @ViewInject(R.id.fragment_register_upload_custom_photo_placeholder_text_view)
+    private TextView fragment_register_upload_custom_photo_placeholder_text_view;
+    @ViewInject(R.id.fragment_register_id_card_photo_placeholder_text_view)
+    private TextView fragment_register_id_card_photo_placeholder_text_view;
 
-    private static final int fragment_register_choose_photo_ = 1;
-    private static final int fragment_register_update_photo_ = 2;
+    private static final int fragment_register_surveillance_photo_ = 1;
+    private static final int fragment_register_upload_custom_photo_ = 2;
     private static final int fragment_register_id_card_photo_ = 3;
 
-    private Bitmap fragment_register_choose_photo_img;
-    private Bitmap fragment_register_update_photo_img;
+    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_selectPhoto;
+    private SurveillanceQueryItem surveillanceQueryItem_uploadPhoto;
+
+    public static long selectedSurveillancePhotoId = -1;
+    public static long selectedCustomPhotoId = -1;
+
+    private File idCardImageCaptureFile = null;
 
     private static RegisterFragment instance = new RegisterFragment();
 
@@ -90,96 +127,130 @@
         return R.layout.fragment_register;
     }
 
-    @OnClick(R.id.fragment_register_save)
-    public void fragment_register_save_click(View view) { }
-
     @OnClick(R.id.fragment_register_add)
-    public void fragment_register_add_click(View v) {
+    public void fragment_register_add_click(View view) {
+        resetForm();
+    }
+
+    @OnClick(R.id.fragment_register_save)
+    public void fragment_register_save_click(View v) {
         RequestParams params = new RequestParams();
+        DisplayMetrics metrics = getActivity().getResources().getDisplayMetrics();
 
-//        String name = fragment_register_name.getValue();
-//        if (name.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "濮撳悕涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_name.requestFocus();
-//            return;
-//        }
-//        String phone = fragment_register_phone.getValue();
-//        if (phone.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "鐢佃瘽涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_phone.requestFocus();
-//            return;
-//        }
-//        String gender = fragment_register_gender.getValue();
-//        if (gender.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "鎬у埆涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_gender.callOnClick();
-//            return;
-//        }
-//        String id_class = fragment_register_id_class.getValue();
-//        if (id_class.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "璇佷欢绫诲瀷涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_id_class.callOnClick();
-//            return;
-//        }
-//        String country = fragment_register_country.getValue();
-//        if (country.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "鍥界睄涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_country.callOnClick();
-//            return;
-//        }
-//        String id_num = fragment_register_id_num.getValue();
-//        if (id_num.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "璇佷欢缂栧彿涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_id_num.requestFocus();
-//            return;
-//        }
-//        String birthday = fragment_register_birthday.getValue();
-//        if (birthday.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "鍑虹敓鏃ユ湡涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_birthday.callOnClick();
-//            return;
-//        }
-//        String company = fragment_register_company.getValue();
-//        if (company.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "鍏徃鍚嶇О涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_company.requestFocus();
-//            return;
-//        }
-//        String remark = fragment_register_remark.getValue();
-//        if (remark.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "澶囨敞涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_remark.requestFocus();
-//            return;
-//        }
-//        String visitor_class = fragment_register_visitor_class.getValue();
-//        if (visitor_class.trim().length() <= 0) {
-//            Toast.makeText(MainActivity.getInstance(), "璁垮绫诲瀷涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
-//            fragment_register_visitor_class.callOnClick();
-//            return;
-//        }
-//        params.addBodyParameter(Register.FieldNames.username, name);
-//        params.addBodyParameter(Register.FieldNames.mobilePhone, phone);
-//        params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(gender));
-//        params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(id_class));
-//        params.addBodyParameter(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(country));
-//        params.addBodyParameter(Register.FieldNames.identifyNum, id_num);
-//        params.addBodyParameter(Register.FieldNames.companyId, company);
-//        params.addBodyParameter(Register.FieldNames.birthday, birthday);
+        int h1 = fragment_register_surveillance_photo.getHeight();
+        int h2 = fragment_register_upload_custom_photo.getHeight();
+        int h3 = fragment_register_id_card_photo.getHeight();
 
-        if (fragment_register_choose_photo_img != null) {
-            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-            fragment_register_choose_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
-            byte[] imageBytes = byteArrayOutputStream.toByteArray();
-            String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
-            params.addBodyParameter("choosePhoto", encodedImage);
+        DisplayMetrics displayMetrics = BaseApplication.getInstance().getResources().getDisplayMetrics();
+        float dpHeight = displayMetrics.heightPixels / displayMetrics.density;
+        float dpWidth = displayMetrics.widthPixels / displayMetrics.density;
+
+        String name = fragment_register_name.getValue();
+        if (name.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "濮撳悕涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_name.requestFocus();
+            return;
+        }
+        String phone = fragment_register_phone.getValue();
+        if (phone.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "鐢佃瘽涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_phone.requestFocus();
+            return;
+        }
+        String gender = fragment_register_gender.getValue();
+        if (gender.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "鎬у埆涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_gender.callOnClick();
+            return;
+        }
+        String id_class = fragment_register_id_class.getValue();
+        if (id_class.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "璇佷欢绫诲瀷涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_id_class.callOnClick();
+            return;
+        }
+        String country = fragment_register_country.getValue();
+        if (country.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "鍥界睄涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_country.callOnClick();
+            return;
+        }
+        String id_num = fragment_register_id_num.getValue();
+        if (id_num.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "璇佷欢缂栧彿涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_id_num.requestFocus();
+            return;
+        }
+        String birthday = fragment_register_birthday.getValue();
+        if (birthday.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "鍑虹敓鏃ユ湡涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_birthday.callOnClick();
+            return;
+        }
+        String company = fragment_register_company.getValue();
+        if (company.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "鍏徃鍚嶇О涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_company.requestFocus();
+            return;
+        }
+        String remark = fragment_register_remark.getValue();
+        if (remark.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "澶囨敞涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_remark.requestFocus();
+            return;
+        }
+        String visitor_class = fragment_register_visitor_class.getValue();
+        if (visitor_class.trim().length() <= 0) {
+            Toast.makeText(MainActivity.getInstance(), "璁垮绫诲瀷涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show();
+            fragment_register_visitor_class.callOnClick();
+            return;
+        }
+        params.addBodyParameter(Register.FieldNames.username, name);
+        params.addBodyParameter(Register.FieldNames.mobilePhone, phone);
+        params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(gender));
+        params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(id_class));
+        params.addBodyParameter(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(country));
+        params.addBodyParameter(Register.FieldNames.visitorTypeId, DictionaryMng.getInstance().getId(visitor_class));
+        params.addBodyParameter(Register.FieldNames.identifyNum, id_num);
+        params.addBodyParameter(Register.FieldNames.companyId, company);
+        params.addBodyParameter(Register.FieldNames.birthday, birthday);
+
+        if (surveillanceQueryItem_selectPhoto != null) {
+            params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
+            params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
+            fragment_register_surveillance_photo_img = surveillanceQueryItem_selectPhoto.getBitmap();
+
+            NativeImg nativeImg = surveillanceQueryItem_selectPhoto.getNativeImg();
+            String str = Base64.encodeToString(nativeImg.image, 0, nativeImg.size, Base64.DEFAULT);
+
+            params.addBodyParameter("base64Image", str);
         }
 
-        if (fragment_register_update_photo_img != null) {
+        if (surveillanceQueryItem_uploadPhoto != null) {
+//            params.addBodyParameter("width", surveillanceQueryItem_uploadPhoto.getWidth());
+//            params.addBodyParameter("height", surveillanceQueryItem_uploadPhoto.getHeight());
+//            fragment_register_surveillance_photo_img = surveillanceQueryItem_uploadPhoto.getBitmap();
+//
+//            NativeImg nativeImg = surveillanceQueryItem_uploadPhoto.getNativeImg();
+//            String str = Base64.encodeToString(nativeImg.image, 0, nativeImg.size, Base64.DEFAULT);
+//
+//            params.addBodyParameter("base64Image", str);
+        }
+
+        if (fragment_register_surveillance_photo_img != null) {
             ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-            fragment_register_update_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+            fragment_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
             byte[] imageBytes = byteArrayOutputStream.toByteArray();
             String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
-            params.addBodyParameter("uploadPhoto", encodedImage);
+            params.addBodyParameter(Register.FieldNames.surveillancePhoto, encodedImage);
+        }
+
+        if (fragment_register_upload_custom_photo_img != null) {
+            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+            fragment_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
+            byte[] imageBytes = byteArrayOutputStream.toByteArray();
+            String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
+            params.addBodyParameter(Register.FieldNames.uploadCustomPhoto, encodedImage);
         }
 
         if (fragment_register_id_card_photo_img != null) {
@@ -187,41 +258,127 @@
             fragment_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
             byte[] imageBytes = byteArrayOutputStream.toByteArray();
             String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT);
-            params.addBodyParameter("idPhoto", encodedImage);
+            params.addBodyParameter(Register.FieldNames.idCardPhoto, encodedImage);
         }
 
         RegisterMng.getInstance().add(params);
     }
 
+    public void set_fragment_register_surveillance_photo(SurveillanceQueryItem item) {
+        surveillanceQueryItem_selectPhoto = item;
+        fragment_register_surveillance_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
+                (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
+        fragment_register_surveillance_photo_img = item.getBitmap();
+        fragment_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE);
+        fragment_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+    }
+
+    public void set_fragment_register_upload_custom_photo(SurveillanceQueryItem item) {
+        surveillanceQueryItem_uploadPhoto = item;
+        fragment_register_upload_custom_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(),
+                (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
+        fragment_register_upload_custom_photo_img = item.getBitmap();
+
+        fragment_register_upload_custom_photo_placeholder_image.setVisibility(View.INVISIBLE);
+        fragment_register_upload_custom_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+    }
+
     @Override
     public void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
-        if (requestCode == fragment_register_choose_photo_ && resultCode == Activity.RESULT_OK && data != null && data.getData() != null) {
+        if (requestCode == fragment_register_surveillance_photo_ && resultCode == Activity.RESULT_OK && data != null && data.getData() != null) {
             Uri uri = data.getData();
             try {
                 Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), uri);
-                fragment_register_choose_photo.setImageBitmap(bitmap);
-                fragment_register_choose_photo_img = bitmap;
+                fragment_register_surveillance_photo.setImageBitmap(bitmap);
+                fragment_register_surveillance_photo_img = bitmap;
+
+                fragment_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE);
+                fragment_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+
             } catch (Exception e) {
                 e.printStackTrace();
             }
         }
-        if (requestCode == fragment_register_update_photo_ && resultCode == Activity.RESULT_OK && data != null && data.getData() != null) {
+        if (requestCode == fragment_register_upload_custom_photo_ && resultCode == Activity.RESULT_OK && data != null && data.getData() != null) {
             Uri uri = data.getData();
             try {
                 Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), uri);
-                fragment_register_update_photo.setImageBitmap(bitmap);
-                fragment_register_update_photo_img = bitmap;
+                fragment_register_upload_custom_photo.setImageBitmap(bitmap);
+                //fragment_register_upload_custom_photo_img = bitmap;
+
+                fragment_register_upload_custom_photo_placeholder_image.setVisibility(View.INVISIBLE);
+                fragment_register_upload_custom_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+
+                List<SurveillanceQueryItem> bitmapList = new ArrayList<>();
+                SurveillanceQueryItem item = new SurveillanceQueryItem();
+//                item.setBitmap(bitmap);
+                item.setWidth(bitmap.getWidth()+"");
+                item.setHeight(bitmap.getHeight()+"");
+                item.setLocalUri(uri);
+
+//                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);
+                setSurveillanceQueryItem_selectPhoto(item);
+                bitmapList.add(item);
+                bitmapList.add(item);
+                bitmapList.add(item);
+
+                SurveillanceMng.getInstance().addBitmap(bitmapList, null, 0, CommonVariables.Camera.IN);
+
             } catch (Exception e) {
                 e.printStackTrace();
             }
         }
-        if (requestCode == fragment_register_id_card_photo_ && resultCode == Activity.RESULT_OK && data != null && data.getData() != null) {
-            Uri uri = data.getData();
+        if (requestCode == fragment_register_id_card_photo_ && resultCode == Activity.RESULT_OK) {
+
             try {
-                Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), uri);
-                fragment_register_id_card_photo.setImageBitmap(bitmap);
-                fragment_register_id_card_photo_img = bitmap;
+                if (data != null && data.getData() != null) {
+                    Uri uri = data.getData();
+                    Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), uri);
+                    fragment_register_id_card_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(bitmap,
+                            (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
+                    fragment_register_id_card_photo_img = bitmap;
+                    MainActivity.getInstance().getContentResolver().delete(uri, null, null);
+
+                    fragment_register_id_card_photo_placeholder_image.setVisibility(View.INVISIBLE);
+                    fragment_register_id_card_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+                } else if (idCardImageCaptureFile != null){
+                    if (idCardImageCaptureFile.exists()) {
+                        BitmapFactory.Options options = new BitmapFactory.Options();
+                        options.inJustDecodeBounds = true;
+                        BitmapFactory.decodeFile(idCardImageCaptureFile.getAbsolutePath(), options);
+                        int width = options.outWidth;
+                        int height = options.outHeight;
+                        WindowManager wm = (WindowManager) MainActivity.getInstance().getSystemService(Context.WINDOW_SERVICE);
+                        int screenWidth = wm.getDefaultDisplay().getWidth();
+                        int screenHeight = wm.getDefaultDisplay().getHeight();
+                        int dx = width / screenWidth;
+                        int dy = height / screenHeight;
+                        int scale = 1;
+                        if (dx > dy && dy >= 1) {
+                            scale = dx;
+                        }
+                        if (dy > dx && dx >= 1) {
+                            scale = dy;
+                        }
+                        options.inSampleSize = scale;
+                        options.inJustDecodeBounds = false;
+                        Bitmap bitmap = BitmapFactory.decodeFile(idCardImageCaptureFile.getAbsolutePath(), options);
+
+                        fragment_register_id_card_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(bitmap,
+                                (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
+                        fragment_register_id_card_photo_img = bitmap;
+                        MainActivity.getInstance().getContentResolver().delete(Uri.fromFile(idCardImageCaptureFile), null, null);
+
+                        fragment_register_id_card_photo_placeholder_image.setVisibility(View.INVISIBLE);
+                        fragment_register_id_card_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+                        idCardImageCaptureFile = null;
+                    }
+                }
             } catch (Exception e) {
                 e.printStackTrace();
             }
@@ -229,62 +386,98 @@
     }
 
     public void resetForm() {
+        selectedCustomPhotoId = -1;
+        selectedSurveillancePhotoId = -1;
+
+        fragment_register_name.setValue("寰愪慨婧�"+Math.random());
+        fragment_register_phone.setValue("13691348767");
+        fragment_register_id_num.setValue("36041419292222222");
+        fragment_register_birthday.setValue("1985-08-12");
+        fragment_register_company.setValue("璐濇�濈");
+        fragment_register_remark.setValue("澶囨敞");
+
         fragment_register_name.setValue("");
         fragment_register_phone.setValue("");
-        fragment_register_gender.setValue("");
-        fragment_register_id_class.setValue("");
-        fragment_register_country.setValue("");
         fragment_register_id_num.setValue("");
         fragment_register_birthday.setValue("");
         fragment_register_company.setValue("");
         fragment_register_remark.setValue("");
-        fragment_register_visitor_class.setValue("");
+
+        fragment_register_gender.setValue("鐢�");
+        fragment_register_id_class.setValue("韬唤璇�");
+        fragment_register_country.setValue("涓浗");
+        fragment_register_visitor_class.setValue("鏅�氳瀹�");
+        fragment_register_surveillance_photo_img = null;
+        fragment_register_upload_custom_photo_img = null;
+        fragment_register_id_card_photo_img = null;
+        fragment_register_surveillance_photo.setImageBitmap(null);
+        fragment_register_upload_custom_photo.setImageBitmap(null);
+        fragment_register_id_card_photo.setImageBitmap(null);
+        fragment_register_surveillance_photo_placeholder_image.setVisibility(View.VISIBLE);
+        fragment_register_surveillance_photo_placeholder_text_view.setVisibility(View.VISIBLE);
+        fragment_register_upload_custom_photo_placeholder_image.setVisibility(View.VISIBLE);
+        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_selectPhoto = null;
+        this.surveillanceQueryItem_uploadPhoto = null;
     }
 
-    @OnClick(R.id.fragment_register_country)
+    //@OnClick(R.id.fragment_register_country)
     public void fragment_register_country_click(View view) {
         new CountryDialog(fragment_register_linear_layout, new OkClickedListener() {
             public void onSelected(String value) {
                 fragment_register_country.setValue(value);
             }
-        });
+        },fragment_register_country.getValue());
     }
 
-    @OnClick(R.id.fragment_register_gender)
+    //@OnClick(R.id.fragment_register_gender)
     public void fragment_register_gender_click(View view) {
         new SelectDialog(fragment_register_linear_layout, Constant.DialogSelectType.GENDER, new OkClickedListener() {
             public void onSelected(String value) {
                 fragment_register_gender.setValue(value);
             }
-        });
+        }, fragment_register_gender.getValue());
     }
 
-    @OnClick(R.id.fragment_register_birthday)
+    //@OnClick(R.id.fragment_register_birthday)
     public void fragment_register_birthday_click(View view) {
+        String birthdayStr = fragment_register_birthday.getValue();
+        Date birthday = new Date();
+        if (birthdayStr != null && !"".equals(birthdayStr)) {
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+            try {
+                birthday = sdf.parse(birthdayStr);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+
         new DateSelectDialog(
                 new OkClickedListener(){
                     public void onSelected(String value) {
                         fragment_register_birthday.setValue(value);
                     }
-                },new Date());
+                }, birthday);
     }
 
-    @OnClick(R.id.fragment_register_visitor_class)
+    //@OnClick(R.id.fragment_register_visitor_class)
     public void fragment_register_visitor_class_click(View view) {
         new SelectDialog(fragment_register_linear_layout, Constant.DialogSelectType.VISITOR_TYPE, new OkClickedListener() {
             public void onSelected(String value) {
                 fragment_register_visitor_class.setValue(value);
             }
-        });
+        }, fragment_register_visitor_class.getValue());
     }
 
-    @OnClick(R.id.fragment_register_id_class)
+    //@OnClick(R.id.fragment_register_id_class)
     public void fragment_register_id_class_click(View view) {
         new SelectDialog(fragment_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() {
             public void onSelected(String value) {
                 fragment_register_id_class.setValue(value);
             }
-        });
+        }, fragment_register_id_class.getValue());
     }
 
     @OnClick(R.id.fragment_register_back)
@@ -292,35 +485,63 @@
         MainActivity.selectPage(0);
     }
 
-    @OnClick(R.id.fragment_register_choose_photo)
-    public void fragment_register_choose_photo_click(View view) {
-        Intent intent = new Intent();
-        intent.setType("image/*");
-        intent.setAction(Intent.ACTION_GET_CONTENT);
-        startActivityForResult(Intent.createChooser(intent, "閫夋嫨鍥剧墖"), fragment_register_choose_photo_);
+    @OnClick(R.id.fragment_register_surveillance_photo)
+    public void fragment_register_surveillance_photo_click(View view) {
+        SurveillanceFragment.SurveillancePhotoSelectListViewAdapter.selectPhotoOrUploadPhoto = CommonVariables.SelectPhotoType.SELECT_PHOTO;
+        new SurveillancePhotoDialog(fragment_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() {
+            public void onSelected(String value) {
+            }
+        }, selectedSurveillancePhotoId);
     }
 
-    @OnClick(R.id.fragment_register_update_photo)
-    public void fragment_register_update__photo_click(View view) {
-        Intent intent = new Intent();
-        intent.setType("image/*");
-        intent.setAction(Intent.ACTION_GET_CONTENT);
-        startActivityForResult(Intent.createChooser(intent, "閫夋嫨鍥剧墖"), fragment_register_update_photo_);
+    @OnClick(R.id.fragment_register_upload_custom_photo)
+    public void fragment_register_upload_custom_photo_click(View view) {
+        SurveillanceFragment.SurveillancePhotoSelectListViewAdapter.selectPhotoOrUploadPhoto = CommonVariables.SelectPhotoType.UPLOAD_PHOTO;
+        new SurveillancePhotoDialog(fragment_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() {
+            public void onSelected(String value) {
+            }
+        }, selectedCustomPhotoId);
     }
 
     @OnClick(R.id.fragment_register_id_card_photo)
     public void fragment_register_id_card_photo_click(View view) {
+//        Intent takePicture = new Intent(MainActivity.getInstance(), PictureTaker.class);
+//        startActivityForResult(takePicture, fragment_register_id_card_photo_);
+//        Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
+//        startActivityForResult(takePicture, fragment_register_id_card_photo_);
+
         Intent intent = new Intent();
-        intent.setType("image/*");
-        intent.setAction(Intent.ACTION_GET_CONTENT);
-        startActivityForResult(Intent.createChooser(intent, "閫夋嫨鍥剧墖"), fragment_register_id_card_photo_);
+        intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);
+        idCardImageCaptureFile = new File(Environment.getExternalStorageDirectory(), System.currentTimeMillis()+".jpg");
+        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(idCardImageCaptureFile));
+        startActivityForResult(intent, fragment_register_id_card_photo_);
     }
 
     @Override
     public void onClick(View v) {}
 
     public void setRegisterInfo(CheckInQueryItem item) {
-        fragment_register_choose_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getImagePath()));
+        fragment_register_surveillance_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
+    }
+
+    public ImageView get_fragment_register_choose_photo() {
+        return fragment_register_surveillance_photo;
+    }
+
+    public void setChoosePhoto(Bitmap bitmap) {
+        fragment_register_surveillance_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(bitmap,
+                (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp)));
+        fragment_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
+        fragment_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE);
+    }
+
+    public void setSurveillanceQueryItem_selectPhoto(SurveillanceQueryItem item) {
+        this.surveillanceQueryItem_selectPhoto = item;
+    }
+
+    @Override
+    protected void initData() {
+        resetForm();
     }
 
 }

--
Gitblit v1.8.0