xuxiuxi
2017-07-21 ec544e9cc330ce40aeb78e96aa362e245feecd4d
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/VisitorRegisterFragment.java
@@ -8,8 +8,10 @@
import android.net.Uri;
import android.os.Environment;
import android.provider.MediaStore;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.view.WindowManager;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -18,11 +20,13 @@
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.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.OfflineVisitorRegisterItem;
import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
import cn.com.basic.face.service.DictionaryMng;
import cn.com.basic.face.service.RegisterMng;
@@ -53,6 +57,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import cn.com.basic.face.base.MainActivity;
@@ -84,8 +89,8 @@
    private ImageView fragment_visitor_register_upload_custom_photo;
    @ViewInject(R.id.fragment_visitor_register_id_card_photo)
    private ImageView fragment_visitor_register_id_card_photo;
    @ViewInject(R.id.fragment_visitor_register_linear_layout)
    private LinearLayout fragment_visitor_register_linear_layout;
    @ViewInject(R.id.fragment_register_frame_layout)
    private FrameLayout fragment_visitor_register_linear_layout;
    @ViewInject(R.id.fragment_visitor_register_surveillance_photo_placeholder_image)
    private ImageView fragment_visitor_register_surveillance_photo_placeholder_image;
    @ViewInject(R.id.fragment_visitor_register_upload_custom_photo_placeholder_image)
@@ -163,62 +168,118 @@
            return;
        }
        params.addBodyParameter(Register.FieldNames.username, name);
        params.addBodyParameter(Register.FieldNames.mobilePhone, phone);
        params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_visitor_register_gender.getValue()));
        params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_visitor_register_id_class.getValue()));
        params.addBodyParameter(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(fragment_visitor_register_country.getValue()));
        params.addBodyParameter(Register.FieldNames.visitorTypeId, DictionaryMng.getInstance().getId(visitor_type));
        params.addBodyParameter(Register.FieldNames.identifyNum, fragment_visitor_register_id_num.getValue());
        params.addBodyParameter(Register.FieldNames.companyId, company);
        params.addBodyParameter(Register.FieldNames.birthday, fragment_visitor_register_birthday.getValue());
        params.addBodyParameter(Register.FieldNames.remark, fragment_visitor_register_remark.getValue());
        OfflineVisitorRegisterItem offlineVisitorRegisterItem = new OfflineVisitorRegisterItem();
        if (BaseApplication.getInstance().networkAvailable()) {
            params.addBodyParameter(Register.FieldNames.username, name);
            params.addBodyParameter(Register.FieldNames.mobilePhone, phone);
            params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_visitor_register_gender.getValue()));
            params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_visitor_register_id_class.getValue()));
            params.addBodyParameter(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(fragment_visitor_register_country.getValue()));
            params.addBodyParameter(Register.FieldNames.visitorTypeId, DictionaryMng.getInstance().getId(visitor_type));
            params.addBodyParameter(Register.FieldNames.identifyNum, fragment_visitor_register_id_num.getValue());
            params.addBodyParameter(Register.FieldNames.companyId, company);
            params.addBodyParameter(Register.FieldNames.birthday, fragment_visitor_register_birthday.getValue());
            params.addBodyParameter(Register.FieldNames.remark, fragment_visitor_register_remark.getValue());
        if (surveillanceQueryItem_selectPhoto != null) {
            params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
            params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
            fragment_visitor_register_surveillance_photo_img = surveillanceQueryItem_selectPhoto.getBitmap();
            if (surveillanceQueryItem_selectPhoto != null) {
                params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
                params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
                fragment_visitor_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];
                }
                params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", imageBytes));
            } else {
                params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", new byte[]{}));
            }
            params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", imageBytes));
            if (fragment_visitor_register_surveillance_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_visitor_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", byteArrayOutputStream.toByteArray()));
            } else {
                params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", new byte[]{}));
            }
            if (fragment_visitor_register_upload_custom_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_visitor_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", byteArrayOutputStream.toByteArray()));
            } else {
                params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", new byte[]{}));
            }
            if (fragment_visitor_register_id_card_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_visitor_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", byteArrayOutputStream.toByteArray()));
            } else {
                params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", new byte[]{}));
            }
        } else {
            params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", new byte[]{}));
            offlineVisitorRegisterItem.setUsername(name);
            offlineVisitorRegisterItem.setMobilePhone(phone);
            offlineVisitorRegisterItem.setGenderId(DictionaryMng.getInstance().getId(fragment_visitor_register_gender.getValue()));
            offlineVisitorRegisterItem.setIdentityTypeId(DictionaryMng.getInstance().getId(fragment_visitor_register_id_class.getValue()));
            offlineVisitorRegisterItem.setCountryId(DictionaryMng.getInstance().getId(fragment_visitor_register_country.getValue()));
            offlineVisitorRegisterItem.setVisitorTypeId(DictionaryMng.getInstance().getId(visitor_type));
            offlineVisitorRegisterItem.setIdentifyNum(fragment_visitor_register_id_num.getValue());
            offlineVisitorRegisterItem.setCompanyId(company);
            offlineVisitorRegisterItem.setBirthday(fragment_visitor_register_birthday.getValue());
            offlineVisitorRegisterItem.setRemark(fragment_visitor_register_remark.getValue());
            String rawSurveillancePhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] rawSurveillancePhotoBytes = new byte[]{};
            if (surveillanceQueryItem_selectPhoto != null) {
                offlineVisitorRegisterItem.setRawSurveillancePhotoWidth(surveillanceQueryItem_selectPhoto.getWidth());
                offlineVisitorRegisterItem.setRawSurveillancePhotoHeight(surveillanceQueryItem_selectPhoto.getHeight());
                fragment_visitor_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];
                }
                rawSurveillancePhotoBytes = imageBytes;
            }
            FileUtil.writeToFile(rawSurveillancePhotoPath, rawSurveillancePhotoBytes);
            offlineVisitorRegisterItem.setRawSurveillancePhotoPath(rawSurveillancePhotoPath);
            String surveillancePhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] surveillancePhotoBytes = new byte[]{};
            if (fragment_visitor_register_surveillance_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_visitor_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                surveillancePhotoBytes = byteArrayOutputStream.toByteArray();
            }
            FileUtil.writeToFile(surveillancePhotoPath, surveillancePhotoBytes);
            offlineVisitorRegisterItem.setSurveillancePhotoPath(surveillancePhotoPath);
            String uploadCustomPhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] uploadCustomPhotoBytes = new byte[]{};
            if (fragment_visitor_register_upload_custom_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_visitor_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                uploadCustomPhotoBytes = byteArrayOutputStream.toByteArray();
            }
            FileUtil.writeToFile(uploadCustomPhotoPath, uploadCustomPhotoBytes);
            offlineVisitorRegisterItem.setUploadCustomPhotoPath(uploadCustomPhotoPath);
            String idCardPhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] idCardPhotoBytes = new byte[]{};
            if (fragment_visitor_register_id_card_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_visitor_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                idCardPhotoBytes = byteArrayOutputStream.toByteArray();
            }
            FileUtil.writeToFile(idCardPhotoPath, idCardPhotoBytes);
            offlineVisitorRegisterItem.setIdCardPhotoPath(idCardPhotoPath);
        }
        if (fragment_visitor_register_surveillance_photo_img != null) {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            fragment_visitor_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
            byte[] imageBytes = byteArrayOutputStream.toByteArray();
            params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", imageBytes));
        } else {
            params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", new byte[]{}));
        }
        if (fragment_visitor_register_upload_custom_photo_img != null) {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            fragment_visitor_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
            byte[] imageBytes = byteArrayOutputStream.toByteArray();
            params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", imageBytes));
        } else {
            params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", new byte[]{}));
        }
        if (fragment_visitor_register_id_card_photo_img != null) {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            fragment_visitor_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
            byte[] imageBytes = byteArrayOutputStream.toByteArray();
            params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", imageBytes));
        } else {
            params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", new byte[]{}));
        }
        RegisterMng.getInstance().add(params, idCardHeadPath);
        RegisterMng.getInstance().add(params, idCardHeadPath, offlineVisitorRegisterItem);
    }
    public void set_fragment_visitor_register_surveillance_photo(SurveillanceQueryItem item) {
@@ -341,21 +402,21 @@
        idCardHeadPath = "";
        fragment_visitor_register_name.setValue("徐修溪"+Math.random());
        fragment_visitor_register_phone.setValue("13691348767");
        fragment_visitor_register_id_num.setValue("36041419292222222");
        fragment_visitor_register_birthday.setValue("1985-08-12");
        fragment_visitor_register_company.setValue("贝思科");
        fragment_visitor_register_remark.setValue("备注");
        fragment_visitor_register_name.setValue("");
        fragment_visitor_register_phone.setValue("");
        fragment_visitor_register_id_num.setValue("");
        fragment_visitor_register_birthday.setValue("");
        fragment_visitor_register_company.setValue("");
        fragment_visitor_register_remark.setValue("");
        fragment_visitor_register_name.setValue("");
        fragment_visitor_register_id_num.setValue("");
        fragment_visitor_register_birthday.setValue("");
        fragment_visitor_register_gender.setValue("男");
        fragment_visitor_register_id_class.setValue("身份证");
        fragment_visitor_register_country.setValue("中国");
        fragment_visitor_register_visitor_class.setValue("普通访客");
        fragment_visitor_register_gender.setValue("");
        fragment_visitor_register_id_class.setValue("");
        fragment_visitor_register_country.setValue("");
        fragment_visitor_register_visitor_class.setValue("");
        fragment_visitor_register_surveillance_photo_img = null;
        fragment_visitor_register_upload_custom_photo_img = null;
        fragment_visitor_register_id_card_photo_img = null;
@@ -515,15 +576,24 @@
        }
    }
    private boolean registerFragmentVisible = false;
    public boolean visitorRegisterFragmentVisible = false;
    @Override
    public void setMenuVisibility(boolean menuVisible) {
        super.setMenuVisibility(menuVisible);
        registerFragmentVisible = menuVisible;
        visitorRegisterFragmentVisible = menuVisible;
    }
    @OnClick(R.id.fragment_visitor_register_to_attender_register)
    private void fragment_visitor_register_to_attender_register_click(View view) {
        AttenderRegisterFragment attenderRegisterFragment = AttenderRegisterFragment.getInstance();
        FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
        transaction.addToBackStack(null);
        transaction.replace(R.id.fragment_register_frame_layout, attenderRegisterFragment).commit();
        CommonVariables.Register.VISITOR_REGISTER_SELECTED = false;
    }
}