xuxiuxi
2017-07-24 61a09a058a4963aa203ae2ef4f67477370a35ca2
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java
@@ -24,12 +24,17 @@
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.AttenderRegisterSelectPhotoDialog;
import cn.com.basic.face.dialog.AttenderRegisterUploadPhotoDialog;
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.OfflineAttenderRegisterItem;
import cn.com.basic.face.discern.query.item.SurveillanceQueryItem;
import cn.com.basic.face.service.DepartmentMng;
import cn.com.basic.face.service.DictionaryMng;
import cn.com.basic.face.service.PostMng;
import cn.com.basic.face.service.RegisterMng;
import cn.com.basic.face.util.BitmapUtil;
import cn.com.basic.face.util.Constant;
@@ -58,6 +63,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import cn.com.basic.face.base.MainActivity;
@@ -149,63 +155,128 @@
            fragment_attender_register_name.requestFocus();
            return;
        }
        OfflineAttenderRegisterItem offlineAttenderRegisterItem = new OfflineAttenderRegisterItem();
        if(BaseApplication.getInstance().networkAvailable()) {
            params.addBodyParameter(Register.FieldNames.username, name);
            params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_attender_register_gender.getValue()));
            params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_attender_register_id_class.getValue()));
            params.addBodyParameter(Register.FieldNames.postId, DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue()));
            params.addBodyParameter(Register.FieldNames.post, fragment_attender_register_post.getValue());
            params.addBodyParameter(Register.FieldNames.identifyNum, fragment_attender_register_id_num.getValue());
            params.addBodyParameter(Register.FieldNames.departmentId, DictionaryMng.getInstance().getId(fragment_attender_register_department.getValue()));
            params.addBodyParameter(Register.FieldNames.department, fragment_attender_register_department.getValue());
            params.addBodyParameter(Register.FieldNames.remark, fragment_attender_register_remark.getValue());
        params.addBodyParameter(Register.FieldNames.username, name);
        params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_attender_register_gender.getValue()));
        params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_attender_register_id_class.getValue()));
        params.addBodyParameter(Register.FieldNames.postId, DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue()));
        params.addBodyParameter(Register.FieldNames.post, fragment_attender_register_post.getValue());
        params.addBodyParameter(Register.FieldNames.identifyNum, fragment_attender_register_id_num.getValue());
        params.addBodyParameter(Register.FieldNames.departmentId, DictionaryMng.getInstance().getId(fragment_attender_register_department.getValue()));
        params.addBodyParameter(Register.FieldNames.department, fragment_attender_register_department.getValue());
        params.addBodyParameter(Register.FieldNames.remark, fragment_attender_register_remark.getValue());
        params.addBodyParameter("deviceCompanyId", BaseApplication.getInstance().getAndroidDevice().getCompanyId());
            if (surveillanceQueryItem_selectPhoto != null) {
                params.addBodyParameter("rawSurveillancePhotoWidth", surveillanceQueryItem_selectPhoto.getWidth());
                params.addBodyParameter("rawSurveillancePhotoHeight", surveillanceQueryItem_selectPhoto.getHeight());
                params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
                params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
                fragment_attender_register_surveillance_photo_img = surveillanceQueryItem_selectPhoto.getBitmap();
        if (surveillanceQueryItem_selectPhoto != null) {
            params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
            params.addBodyParameter("height", surveillanceQueryItem_selectPhoto.getHeight());
            fragment_attender_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_attender", imageBytes));
            } else {
                params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", new byte[]{}));
            }
            params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", imageBytes));
            if (fragment_attender_register_surveillance_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_attender_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                byte[] imageBytes = byteArrayOutputStream.toByteArray();
                params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", imageBytes));
            } else {
                params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", new byte[]{}));
            }
            if (fragment_attender_register_upload_custom_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_attender_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                byte[] imageBytes = byteArrayOutputStream.toByteArray();
                params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", imageBytes));
            } else {
                params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", new byte[]{}));
            }
            if (fragment_attender_register_id_card_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_attender_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                byte[] imageBytes = byteArrayOutputStream.toByteArray();
                params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", imageBytes));
            } else {
                params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", new byte[]{}));
            }
        } else {
            params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", new byte[]{}));
            offlineAttenderRegisterItem.setRegisterId(UUID.randomUUID().toString());
            offlineAttenderRegisterItem.setUsername(name);
            offlineAttenderRegisterItem.setGenderId(DictionaryMng.getInstance().getId(fragment_attender_register_gender.getValue()));
            offlineAttenderRegisterItem.setIdentityTypeId(DictionaryMng.getInstance().getId(fragment_attender_register_id_class.getValue()));
            offlineAttenderRegisterItem.setPostId(PostMng.getInstance().getId(fragment_attender_register_post.getValue()));
            offlineAttenderRegisterItem.setIdentifyNum(fragment_attender_register_id_num.getValue());
            offlineAttenderRegisterItem.setDepartmentId(DepartmentMng.getInstance().getId(fragment_attender_register_department.getValue()));
            offlineAttenderRegisterItem.setRemark(fragment_attender_register_remark.getValue());
            offlineAttenderRegisterItem.setDeviceCompanyId(BaseApplication.getInstance().getAndroidDevice().getCompanyId());
            offlineAttenderRegisterItem.setIsSynchron("N");
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            offlineAttenderRegisterItem.setCreateTime(sdf.format(new Date()));
            String rawSurveillancePhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] rawSurveillancePhotoBytes = new byte[]{};
            if (surveillanceQueryItem_selectPhoto != null) {
                offlineAttenderRegisterItem.setRawSurveillancePhotoWidth(surveillanceQueryItem_selectPhoto.getWidth());
                offlineAttenderRegisterItem.setRawSurveillancePhotoHeight(surveillanceQueryItem_selectPhoto.getHeight());
                fragment_attender_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);
            offlineAttenderRegisterItem.setRawSurveillancePhotoPath(rawSurveillancePhotoPath);
            String surveillancePhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] surveillancePhotoBytes = new byte[]{};
            if (fragment_attender_register_surveillance_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_attender_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                surveillancePhotoBytes = byteArrayOutputStream.toByteArray();
            }
            FileUtil.writeToFile(surveillancePhotoPath, surveillancePhotoBytes);
            offlineAttenderRegisterItem.setSurveillancePhoto(surveillancePhotoPath);
            String uploadCustomPhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] uploadCustomPhotoBytes = new byte[]{};
            if (fragment_attender_register_upload_custom_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_attender_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                uploadCustomPhotoBytes = byteArrayOutputStream.toByteArray();
            }
            FileUtil.writeToFile(uploadCustomPhotoPath, uploadCustomPhotoBytes);
            offlineAttenderRegisterItem.setUploadCustomPhoto(uploadCustomPhotoPath);
            String idCardPhotoPath = UUID.randomUUID().toString()+".bmp";
            byte[] idCardPhotoBytes = new byte[]{};
            if (fragment_attender_register_id_card_photo_img != null) {
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                fragment_attender_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
                idCardPhotoBytes = byteArrayOutputStream.toByteArray();
            }
            FileUtil.writeToFile(idCardPhotoPath, idCardPhotoBytes);
            offlineAttenderRegisterItem.setIdCardPhoto(idCardPhotoPath);
        }
        if (fragment_attender_register_surveillance_photo_img != null) {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            fragment_attender_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
            byte[] imageBytes = byteArrayOutputStream.toByteArray();
            params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", imageBytes));
        } else {
            params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto_attender", new byte[]{}));
        }
        if (fragment_attender_register_upload_custom_photo_img != null) {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            fragment_attender_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
            byte[] imageBytes = byteArrayOutputStream.toByteArray();
            params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", imageBytes));
        } else {
            params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto_attender", new byte[]{}));
        }
        if (fragment_attender_register_id_card_photo_img != null) {
            ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
            fragment_attender_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
            byte[] imageBytes = byteArrayOutputStream.toByteArray();
            params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", imageBytes));
        } else {
            params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto_attender", new byte[]{}));
        }
        RegisterMng.getInstance().addAttender(params, idCardHeadPath);
        RegisterMng.getInstance().addAttender(params, idCardHeadPath, offlineAttenderRegisterItem);
    }
    public void set_fragment_attender_register_surveillance_photo(SurveillanceQueryItem item) {
@@ -356,11 +427,13 @@
    //@OnClick(R.id.fragment_attender_register_country)
    public void fragment_attender_register_country_click(View view) {
        new CountryDialog(fragment_attender_register_linear_layout, new OkClickedListener() {
            public void onSelected(String value) {
                fragment_attender_register_post.setValue(value);
            }
        },fragment_attender_register_post.getValue());
        if (CountryDialog.hasCountries()) {
            new CountryDialog(fragment_attender_register_linear_layout, new OkClickedListener() {
                public void onSelected(String value) {
                    fragment_attender_register_post.setValue(value);
                }
            }, fragment_attender_register_post.getValue());
        }
    }
    //@OnClick(R.id.fragment_attender_register_gender)
@@ -393,20 +466,17 @@
    @OnClick(R.id.fragment_attender_register_surveillance_photo)
    public void fragment_attender_register_surveillance_photo_click(View view) {
        SurveillanceFragment.SurveillancePhotoSelectListViewAdapter.selectPhotoOrUploadPhoto = CommonVariables.SelectPhotoType.SELECT_PHOTO;
        new SurveillancePhotoDialog(fragment_attender_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() {
            public void onSelected(String value) {
            }
        }, selectedSurveillancePhotoId);
        AttenderRegisterSelectPhotoDialog.getInstance().show();
    }
    public FrameLayout get_fragment_attender_register_linear_layout() {
        return fragment_attender_register_linear_layout;
    }
    @OnClick(R.id.fragment_attender_register_upload_custom_photo)
    public void fragment_attender_register_upload_custom_photo_click(View view) {
        SurveillanceFragment.SurveillancePhotoSelectListViewAdapter.selectPhotoOrUploadPhoto = CommonVariables.SelectPhotoType.UPLOAD_PHOTO;
        new SurveillancePhotoDialog(fragment_attender_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() {
            public void onSelected(String value) {
            }
        }, selectedCustomPhotoId);
        AttenderRegisterUploadPhotoDialog.getInstance().show();
    }
    @OnClick(R.id.fragment_attender_register_id_card_photo)
@@ -467,12 +537,12 @@
        }
    }
    private boolean registerFragmentVisible = false;
    public boolean attenderRegisterFragmentVisible = false;
    @Override
    public void setMenuVisibility(boolean menuVisible) {
        super.setMenuVisibility(menuVisible);
        registerFragmentVisible = menuVisible;
        attenderRegisterFragmentVisible = menuVisible;
    }
    @OnClick(R.id.fragment_visitor_register_to_visitor_register)
@@ -481,7 +551,6 @@
        fragment.getChildFragmentManager().popBackStackImmediate();
        CommonVariables.Register.VISITOR_REGISTER_SELECTED = true;
    }
    public void fragment_attender_register_post_click(View view) {
        new SelectDialog(fragment_attender_register_linear_layout, Constant.DialogSelectType.POST, new OkClickedListener() {