From c34f11fb7407594f7c1eb69b11f84a45d13cfa1a Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 24 四月 2017 11:55:11 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java | 406 +++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 288 insertions(+), 118 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 b8a298c..5d30323 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 @@ -2,20 +2,24 @@ import android.app.Activity; import android.content.Intent; +import android.database.Cursor; import android.graphics.Bitmap; import android.net.Uri; -import android.os.Bundle; import android.provider.MediaStore; +import android.util.Base64; 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.BaseFragment; +import cn.com.basic.face.discern.entity.Register; import cn.com.basic.face.discern.query.item.CheckInQueryItem; 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; @@ -27,48 +31,72 @@ import cn.com.basic.face.dialog.SelectDialog; import com.facebook.drawee.view.SimpleDraweeView; -import com.lidroid.xutils.ViewUtils; import com.lidroid.xutils.view.annotation.ViewInject; import com.lidroid.xutils.view.annotation.event.OnClick; import org.xutils.http.RequestParams; +import java.io.ByteArrayOutputStream; +import java.io.File; import java.io.IOException; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import cn.com.basic.face.base.MainActivity; -import cn.com.basic.face.discern.entity.Person; -import cn.com.basic.face.discern.entity.VisitPersonType; public class RegisterFragment extends BaseFragment implements View.OnClickListener{ - @ViewInject(R.id.register_name) - private RegisterRightFieldTextView register_name; - @ViewInject(R.id.register_gender) - private RegisterRightFieldLabelView register_gender; - @ViewInject(R.id.register_country) - private RegisterRightFieldLabelView register_country; - @ViewInject(R.id.register_birthday) - private RegisterRightFieldLabelView register_birthday; - @ViewInject(R.id.register_visitor_class) - private RegisterRightFieldLabelView register_visitor_class; - @ViewInject(R.id.register_phone) - private RegisterRightFieldLabelView register_phone; - @ViewInject(R.id.register_id_class) - private RegisterRightFieldLabelView register_id_class; - @ViewInject(R.id.register_id_num) - private RegisterRightFieldLabelView register_id_num; - @ViewInject(R.id.register_company) - private RegisterRightFieldLabelView register_company; - @ViewInject(R.id.register_remark) - private RegisterRightFieldLabelView register_remark; + @ViewInject(R.id.fragment_register_name) + private RegisterRightFieldTextView fragment_register_name; + @ViewInject(R.id.fragment_register_gender) + private RegisterRightFieldLabelView fragment_register_gender; + @ViewInject(R.id.fragment_register_country) + private RegisterRightFieldLabelView fragment_register_country; + @ViewInject(R.id.fragment_register_birthday) + private RegisterRightFieldLabelView fragment_register_birthday; + @ViewInject(R.id.fragment_register_visitor_class) + private RegisterRightFieldLabelView fragment_register_visitor_class; + @ViewInject(R.id.fragment_register_phone) + private RegisterRightFieldTextView fragment_register_phone; + @ViewInject(R.id.fragment_register_id_class) + private RegisterRightFieldLabelView fragment_register_id_class; + @ViewInject(R.id.fragment_register_id_num) + private RegisterRightFieldTextView fragment_register_id_num; + @ViewInject(R.id.fragment_register_company) + 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; - - private static final int PICK_IMAGE_REQUEST = 1; + private ImageView fragment_register_choose_photo; + @ViewInject(R.id.fragment_register_update_photo) + private ImageView fragment_register_update_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_choose_photo_placeholder_image) + private ImageView fragment_register_choose_photo_placeholder_image; + @ViewInject(R.id.fragment_register_update_photo_placeholder_image) + private ImageView fragment_register_update_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_choose_photo_placeholder_text_view) + private TextView fragment_register_choose_photo_placeholder_text_view; + @ViewInject(R.id.fragment_register_update_photo_placeholder_text_view) + private TextView fragment_register_update_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_id_card_photo_ = 3; + + private Bitmap fragment_register_choose_photo_img; + private Bitmap fragment_register_update_photo_img; + private Bitmap fragment_register_id_card_photo_img; private static RegisterFragment instance = new RegisterFragment(); @@ -80,12 +108,6 @@ return R.layout.fragment_register; } - @Override - protected void initViews(View view, Bundle savedInstanceState) { - fragment_register_linear_layout = (LinearLayout) view.findViewById(R.id.fragment_register_linear_layout); - ViewUtils.inject(this, fragment_register_linear_layout); - } - @OnClick(R.id.fragment_register_save) public void fragment_register_save_click(View view) { } @@ -93,109 +115,257 @@ public void fragment_register_add_click(View v) { RequestParams params = new RequestParams(); - params.addBodyParameter(Person.FieldNames.name, register_name.getValue()); - params.addBodyParameter(Person.FieldNames.phone, register_phone.getValue()); - params.addBodyParameter(Person.FieldNames.gender, DictionaryMng.getInstance().getId(register_gender.getValue())); - params.addBodyParameter(Person.FieldNames.identityType, DictionaryMng.getInstance().getId(register_id_class.getValue())); - params.addBodyParameter(Person.FieldNames.country, DictionaryMng.getInstance().getId(register_country.getValue())); - params.addBodyParameter(Person.FieldNames.identify, register_id_num.getValue()); - params.addBodyParameter(Person.FieldNames.birthday, register_birthday.getValue()); - params.addBodyParameter("companyName", register_company.getValue()); +// 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); - params.addBodyParameter(VisitPersonType.FieldNames.registerCompanyId, "0"); + 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); + } + + if (fragment_register_update_photo_img != null) { + ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); + fragment_register_update_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream); + byte[] imageBytes = byteArrayOutputStream.toByteArray(); + String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT); + params.addBodyParameter("uploadPhoto", 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("idPhoto", encodedImage); + } RegisterMng.getInstance().add(params); - } - - @OnClick(R.id.register_country) - public void register_country_click(View view) { - new CountryDialog(fragment_register_linear_layout, new OkClickedListener() { - public void onSelected(String value) { - register_country.setValue(value); - } - }); - } - - @OnClick(R.id.register_gender) - public void register_gender_click(View view) { - new SelectDialog(fragment_register_linear_layout, Constant.DialogSelectType.GENDER, new OkClickedListener() { - public void onSelected(String value) { - register_gender.setValue(value); - } - }); - } - - @OnClick(R.id.register_birthday) - public void register_birthday_click(View view) { - new DateSelectDialog( - new OkClickedListener(){ - public void onSelected(String value) { - register_birthday.setValue(value); - } - },new Date()); - } - - @OnClick(R.id.register_visitor_class) - public void register_visitor_class_click(View view) { - new SelectDialog(fragment_register_linear_layout, Constant.DialogSelectType.VISITOR_TYPE, new OkClickedListener() { - public void onSelected(String value) { - register_visitor_class.setValue(value); - } - }); - } - - @OnClick(R.id.register_id_class) - public void register_id_class_click(View view) { - new SelectDialog(fragment_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() { - public void onSelected(String value) { - register_id_class.setValue(value); - } - }); - } - - @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 back(View view) { - MainActivity.selectPage(0); - } - - @OnClick(R.id.fragment_register_idcard_photo) - public void identityPhoto(View view) { - Toast.makeText(getActivity(), "璇佷欢蹇収", Toast.LENGTH_SHORT).show(); } @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_choose_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_choose_photo.setImageBitmap(bitmap); + fragment_register_choose_photo_img = bitmap; + + fragment_register_choose_photo_placeholder_image.setVisibility(View.INVISIBLE); + fragment_register_choose_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) { + 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_update_photo_placeholder_image.setVisibility(View.INVISIBLE); + fragment_register_update_photo_placeholder_text_view.setVisibility(View.INVISIBLE); + + List<Bitmap> bitmapList = new ArrayList<>(); + bitmapList.add(0, bitmap); + + SurveillanceMng.getInstance().addBitmap(bitmapList, null, 0); + + } 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(""); + } + + @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); + } + }); + } + + @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); + } + }); + } + + @OnClick(R.id.fragment_register_birthday) + public void fragment_register_birthday_click(View view) { + new DateSelectDialog( + new OkClickedListener(){ + public void onSelected(String value) { + fragment_register_birthday.setValue(value); + } + },new Date()); + } + + @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); + } + }); + } + + @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); + } + }); + } + + @OnClick(R.id.fragment_register_back) + public void fragment_register_back_click(View view) { + 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_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_id_card_photo) + public void fragment_register_id_card_photo_click(View view) { + 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.IMAGEURL_BASE + item.getImagePath())); + fragment_register_choose_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto())); + } + + public ImageView get_fragment_register_choose_photo() { + return fragment_register_choose_photo; + } + + public void setChoosePhoto(Bitmap bitmap) { + fragment_register_choose_photo.setImageBitmap(bitmap); + fragment_register_choose_photo_placeholder_text_view.setVisibility(View.INVISIBLE); + fragment_register_choose_photo_placeholder_image.setVisibility(View.INVISIBLE); } } -- Gitblit v1.8.0