From b7fd23fb1b9d04eb8fa0d97a5d9747e145605612 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期三, 03 五月 2017 14:33:42 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java | 246 +++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 206 insertions(+), 40 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 a0b1145..36303ea 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 @@ -5,17 +5,26 @@ import android.graphics.Bitmap; import android.net.Uri; import android.provider.MediaStore; +import android.util.Base64; +import android.util.DisplayMetrics; import android.view.View; 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.base.BaseApplication; 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; import cn.com.basic.face.util.Constant; import cn.com.basic.face.util.OkClickedListener; @@ -26,14 +35,15 @@ 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; import org.xutils.http.RequestParams; -import java.io.IOException; +import java.io.ByteArrayOutputStream; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import cn.com.basic.face.base.MainActivity; @@ -59,14 +69,36 @@ private RegisterRightFieldTextView fragment_register_company; @ViewInject(R.id.fragment_register_remark) private RegisterRightFieldTextView fragment_register_remark; - @ViewInject(R.id.fragment_register_choose_photo) - private SimpleDraweeView 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 PICK_IMAGE_REQUEST = 1; + 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_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(); @@ -78,12 +110,27 @@ 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(); + + int h1 = fragment_register_surveillance_photo.getHeight(); + int h2 = fragment_register_upload_custom_photo.getHeight(); + int h3 = fragment_register_id_card_photo.getHeight(); + + DisplayMetrics displayMetrics = BaseApplication.getInstance().getResources().getDisplayMetrics(); + float dpHeight = displayMetrics.heightPixels / displayMetrics.density; + float dpWidth = displayMetrics.widthPixels / displayMetrics.density; + + if (1==1) { + //return; + } String name = fragment_register_name.getValue(); if (name.trim().length() <= 0) { @@ -154,35 +201,130 @@ 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()); + fragment_register_surveillance_photo_img = surveillanceQueryItem.getBitmap(); + 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); + byte[] imageBytes = byteArrayOutputStream.toByteArray(); + String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT); + 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) { + ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); + 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(Register.FieldNames.idCardPhoto, encodedImage); + } + RegisterMng.getInstance().add(params); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); - - if (requestCode == PICK_IMAGE_REQUEST && 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_update__photo.setImageBitmap(bitmap); - } catch (IOException e) { + 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_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_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(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(); + try { + Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), uri); + fragment_register_id_card_photo.setImageBitmap(bitmap); + fragment_register_id_card_photo_img = bitmap; + + fragment_register_id_card_photo_placeholder_image.setVisibility(View.INVISIBLE); + fragment_register_id_card_photo_placeholder_text_view.setVisibility(View.INVISIBLE); + + } catch (Exception e) { e.printStackTrace(); } } } public void resetForm() { - 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_name.setValue("寰愪慨婧�"+Math.random()); + fragment_register_phone.setValue("13691348767"); + fragment_register_gender.setValue("鐢�"); + fragment_register_id_class.setValue("韬唤璇�"); + fragment_register_country.setValue("涓浗"); + fragment_register_id_num.setValue("36041419292222222"); + fragment_register_birthday.setValue("1985-08-12"); + fragment_register_company.setValue("璐濇�濈"); + fragment_register_remark.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 = null; } @OnClick(R.id.fragment_register_country) @@ -231,34 +373,58 @@ }); } - @OnClick(R.id.fragment_register_choose_photo) - public void fragment_register_choose_photo_click(View view) { - Toast.makeText(getActivity(), "閫夋嫨浜虹墿蹇収", Toast.LENGTH_SHORT).show(); - } - - @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, "閫夋嫨鍥剧墖"), PICK_IMAGE_REQUEST); - } - @OnClick(R.id.fragment_register_back) public void fragment_register_back_click(View view) { MainActivity.selectPage(0); } + @OnClick(R.id.fragment_register_surveillance_photo) + public void fragment_register_surveillance_photo_click(View view) { + Intent intent = new Intent(); + intent.setType("image/*"); + intent.setAction(Intent.ACTION_GET_CONTENT); + startActivityForResult(Intent.createChooser(intent, "閫夋嫨鍥剧墖"), fragment_register_surveillance_photo_); + } + + @OnClick(R.id.fragment_register_upload_custom_photo) + public void fragment_register_upload_custom_photo_click(View view) { + Intent intent = new Intent(); + intent.setType("image/*"); + intent.setAction(Intent.ACTION_GET_CONTENT); + startActivityForResult(Intent.createChooser(intent, "閫夋嫨鍥剧墖"), fragment_register_upload_custom_photo_); + } + @OnClick(R.id.fragment_register_id_card_photo) public void fragment_register_id_card_photo_click(View view) { - Toast.makeText(getActivity(), "璇佷欢蹇収", Toast.LENGTH_SHORT).show(); + Intent intent = new Intent(); + intent.setType("image/*"); + intent.setAction(Intent.ACTION_GET_CONTENT); + startActivityForResult(Intent.createChooser(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(bitmap); + fragment_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE); + fragment_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE); + } + + public void setSurveillanceQueryItem(SurveillanceQueryItem item) { + this.surveillanceQueryItem = item; + } + + @Override + protected void initData() { + resetForm(); + } } -- Gitblit v1.8.0