xuxiuxi
2017-05-02 c4a62d7bd683d94ae246bac811be47f93e38b5ef
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/RegisterFragment.java
@@ -2,7 +2,6 @@
import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.net.Uri;
import android.provider.MediaStore;
@@ -15,8 +14,11 @@
import com.bsk.zhangbo.demoforbsk.R;
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;
@@ -30,15 +32,12 @@
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.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -67,36 +66,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 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_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_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_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_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;
    private static RegisterFragment instance = new RegisterFragment();
@@ -108,11 +107,13 @@
        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();
        String name = fragment_register_name.getValue();
@@ -184,20 +185,27 @@
        params.addBodyParameter(Register.FieldNames.companyId, company);
        params.addBodyParameter(Register.FieldNames.birthday, birthday);
        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 (surveillanceQueryItem != null) {
            params.addBodyParameter("width", surveillanceQueryItem.getWidth());
            params.addBodyParameter("height", surveillanceQueryItem.getHeight());
            params.addBodyParameter("base64Image", surveillanceQueryItem.getBase64Image());
            fragment_register_surveillance_photo_img = surveillanceQueryItem.getBitmap();
        }
        if (fragment_register_update_photo_img != null) {
        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) {
@@ -205,7 +213,7 @@
            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);
@@ -214,34 +222,47 @@
    @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_choose_photo_placeholder_image.setVisibility(View.INVISIBLE);
                fragment_register_choose_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
                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_update_photo_placeholder_image.setVisibility(View.INVISIBLE);
                fragment_register_update_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
                fragment_register_upload_custom_photo_placeholder_image.setVisibility(View.INVISIBLE);
                fragment_register_upload_custom_photo_placeholder_text_view.setVisibility(View.INVISIBLE);
                List<Bitmap> bitmapList = new ArrayList<>();
                bitmapList.add(0, bitmap);
                List<SurveillanceQueryItem> bitmapList = new ArrayList<>();
                SurveillanceQueryItem item = new SurveillanceQueryItem();
                item.setBitmap(bitmap);
                item.setWidth(bitmap.getWidth()+"");
                item.setHeight(bitmap.getHeight()+"");
                SurveillanceMng.getInstance().addBitmap(bitmapList, null, 0);
                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();
@@ -264,16 +285,29 @@
    }
    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)
@@ -327,20 +361,20 @@
        MainActivity.selectPage(0);
    }
    @OnClick(R.id.fragment_register_choose_photo)
    public void fragment_register_choose_photo_click(View view) {
    @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_choose_photo_);
        startActivityForResult(Intent.createChooser(intent, "选择图片"), fragment_register_surveillance_photo_);
    }
    @OnClick(R.id.fragment_register_update_photo)
    public void fragment_register_update__photo_click(View view) {
    @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_update_photo_);
        startActivityForResult(Intent.createChooser(intent, "选择图片"), fragment_register_upload_custom_photo_);
    }
    @OnClick(R.id.fragment_register_id_card_photo)
@@ -355,17 +389,25 @@
    public void onClick(View v) {}
    public void setRegisterInfo(CheckInQueryItem item) {
        fragment_register_choose_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
        fragment_register_surveillance_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto()));
    }
    public ImageView get_fragment_register_choose_photo() {
        return fragment_register_choose_photo;
        return fragment_register_surveillance_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);
        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();
    }
}