package cn.com.basic.face.fragment; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; 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.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.dialog.VisitorRegisterSelectPhotoDialog; import cn.com.basic.face.dialog.VisitorRegisterUploadPhotoDialog; 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.SurveillanceQueryItem; import cn.com.basic.face.service.DictionaryMng; import cn.com.basic.face.service.RegisterMng; import cn.com.basic.face.util.BitmapUtil; import cn.com.basic.face.util.Constant; import cn.com.basic.face.util.FileUtil; import cn.com.basic.face.util.IdCard; import cn.com.basic.face.thread.IdCardReaderThread; import cn.com.basic.face.util.NativeImg; import cn.com.basic.face.util.OkClickedListener; import cn.com.basic.face.util.AppApi; import cn.com.basic.face.dialog.DateSelectDialog; import cn.com.basic.face.dialog.CountryDialog; import cn.com.basic.face.widget.register.RegisterRightFieldLabelView; import cn.com.basic.face.widget.register.RegisterRightFieldTextView; import cn.com.basic.face.dialog.SelectDialog; 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.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.UUID; import cn.com.basic.face.base.MainActivity; public class VisitorRegisterFragment extends BaseFragment implements View.OnClickListener{ @ViewInject(R.id.fragment_visitor_register_name) private RegisterRightFieldTextView fragment_visitor_register_name; @ViewInject(R.id.fragment_visitor_register_gender) private RegisterRightFieldLabelView fragment_visitor_register_gender; @ViewInject(R.id.fragment_visitor_register_country) private RegisterRightFieldLabelView fragment_visitor_register_country; @ViewInject(R.id.fragment_visitor_register_birthday) private RegisterRightFieldLabelView fragment_visitor_register_birthday; @ViewInject(R.id.fragment_visitor_register_visitor_class) private RegisterRightFieldLabelView fragment_visitor_register_visitor_class; @ViewInject(R.id.fragment_visitor_register_phone) private RegisterRightFieldTextView fragment_visitor_register_phone; @ViewInject(R.id.fragment_visitor_register_id_class) private RegisterRightFieldLabelView fragment_visitor_register_id_class; @ViewInject(R.id.fragment_visitor_register_id_num) private RegisterRightFieldTextView fragment_visitor_register_id_num; @ViewInject(R.id.fragment_visitor_register_company) private RegisterRightFieldTextView fragment_visitor_register_company; @ViewInject(R.id.fragment_visitor_register_remark) private RegisterRightFieldTextView fragment_visitor_register_remark; @ViewInject(R.id.fragment_visitor_register_surveillance_photo) private ImageView fragment_visitor_register_surveillance_photo; @ViewInject(R.id.fragment_visitor_register_upload_custom_photo) 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_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) private ImageView fragment_visitor_register_upload_custom_photo_placeholder_image; @ViewInject(R.id.fragment_visitor_register_id_card_photo_placeholder_image) private ImageView fragment_visitor_register_id_card_photo_placeholder_image; @ViewInject(R.id.fragment_visitor_register_surveillance_photo_placeholder_text_view) private TextView fragment_visitor_register_surveillance_photo_placeholder_text_view; @ViewInject(R.id.fragment_visitor_register_upload_custom_photo_placeholder_text_view) private TextView fragment_visitor_register_upload_custom_photo_placeholder_text_view; @ViewInject(R.id.fragment_visitor_register_id_card_photo_placeholder_text_view) private TextView fragment_visitor_register_id_card_photo_placeholder_text_view; private static final int fragment_visitor_register_surveillance_photo_ = 1; private static final int fragment_visitor_register_upload_custom_photo_ = 2; private static final int fragment_visitor_register_id_card_photo_ = 3; private Bitmap fragment_visitor_register_surveillance_photo_img; private Bitmap fragment_visitor_register_upload_custom_photo_img; private Bitmap fragment_visitor_register_id_card_photo_img; private SurveillanceQueryItem surveillanceQueryItem_selectPhoto; private SurveillanceQueryItem surveillanceQueryItem_uploadPhoto; public static long selectedSurveillancePhotoId = -1; public static long selectedCustomPhotoId = -1; private File idCardImageCaptureFile = null; private IdCardReaderThread idCardReaderThread = null; private String idCardHeadPath = ""; private static VisitorRegisterFragment instance = new VisitorRegisterFragment(); public static VisitorRegisterFragment getInstance() { return instance; } @Override protected int getLayoutId() { return R.layout.fragment_visitor_register; } @OnClick(R.id.fragment_visitor_register_add) public void fragment_visitor_register_add_click(View view) { resetForm(); } @OnClick(R.id.fragment_visitor_register_save) public void fragment_visitor_register_save_click(View v) { RequestParams params = new RequestParams(); if (surveillanceQueryItem_selectPhoto == null) { Toast.makeText(MainActivity.getInstance(), "请选择照片", Toast.LENGTH_SHORT).show(); return; } String name = fragment_visitor_register_name.getValue(); if (name.trim().length() <= 0) { Toast.makeText(MainActivity.getInstance(), "姓名不能为空", Toast.LENGTH_SHORT).show(); fragment_visitor_register_name.requestFocus(); return; } String phone = fragment_visitor_register_phone.getValue(); if (phone.trim().length() <= 0) { Toast.makeText(MainActivity.getInstance(), "电话不能为空", Toast.LENGTH_SHORT).show(); fragment_visitor_register_phone.requestFocus(); return; } String company = fragment_visitor_register_company.getValue(); if (company.trim().length() <= 0) { Toast.makeText(MainActivity.getInstance(), "公司名称不能为空", Toast.LENGTH_SHORT).show(); fragment_visitor_register_company.requestFocus(); return; } String visitor_type = fragment_visitor_register_visitor_class.getValue(); if (visitor_type.trim().length() <= 0) { Toast.makeText(MainActivity.getInstance(), "访客类型不能为空", Toast.LENGTH_SHORT).show(); fragment_visitor_register_visitor_class.callOnClick(); return; } Register offlineVisitorRegisterItem = new Register(); 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, null); params.addBodyParameter(Register.FieldNames.company, 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(); 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[]{})); } 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 { offlineVisitorRegisterItem.setRegisterId(UUID.randomUUID().toString()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); offlineVisitorRegisterItem.setDeviceCompanyId(BaseApplication.getInstance().getAndroidDevice().getCompanyId()); offlineVisitorRegisterItem.setIsSynchron("N"); offlineVisitorRegisterItem.setCreateTime(sdf.format(new Date())); 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(null); offlineVisitorRegisterItem.setCompany(company); offlineVisitorRegisterItem.setBirthday(fragment_visitor_register_birthday.getValue()); offlineVisitorRegisterItem.setRemark(fragment_visitor_register_remark.getValue()); String rawSurveillancePhotoPath = UUID.randomUUID().toString()+""; 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()+""; 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.setSurveillancePhoto(surveillancePhotoPath); String uploadCustomPhotoPath = UUID.randomUUID().toString()+""; 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.setUploadCustomPhoto(uploadCustomPhotoPath); String idCardPhotoPath = UUID.randomUUID().toString()+""; 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.setIdCardPhoto(idCardPhotoPath); } RegisterMng.getInstance().addVisitor(params, idCardHeadPath, offlineVisitorRegisterItem); } public void set_fragment_visitor_register_surveillance_photo(SurveillanceQueryItem item) { surveillanceQueryItem_selectPhoto = item; fragment_visitor_register_surveillance_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(), (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp))); fragment_visitor_register_surveillance_photo_img = item.getBitmap(); fragment_visitor_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE); } public void set_fragment_visitor_register_upload_custom_photo(SurveillanceQueryItem item) { surveillanceQueryItem_uploadPhoto = item; fragment_visitor_register_upload_custom_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(item.getBitmap(), (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp))); fragment_visitor_register_upload_custom_photo_img = item.getBitmap(); fragment_visitor_register_upload_custom_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_upload_custom_photo_placeholder_text_view.setVisibility(View.INVISIBLE); } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == fragment_visitor_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_visitor_register_surveillance_photo.setImageBitmap(bitmap); fragment_visitor_register_surveillance_photo_img = bitmap; fragment_visitor_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE); } catch (Exception e) { e.printStackTrace(); } } if (requestCode == fragment_visitor_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_visitor_register_upload_custom_photo.setImageBitmap(bitmap); fragment_visitor_register_upload_custom_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_upload_custom_photo_placeholder_text_view.setVisibility(View.INVISIBLE); List bitmapList = new ArrayList<>(); SurveillanceQueryItem item = new SurveillanceQueryItem(); item.setWidth(bitmap.getWidth()+""); item.setHeight(bitmap.getHeight()+""); item.setLocalUri(uri); setSurveillanceQueryItem_selectPhoto(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_visitor_register_id_card_photo_ && resultCode == Activity.RESULT_OK) { try { if (data != null && data.getData() != null) { Uri uri = data.getData(); Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), uri); fragment_visitor_register_id_card_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(bitmap, (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp))); fragment_visitor_register_id_card_photo_img = bitmap; MainActivity.getInstance().getContentResolver().delete(uri, null, null); fragment_visitor_register_id_card_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_id_card_photo_placeholder_text_view.setVisibility(View.INVISIBLE); } else if (idCardImageCaptureFile != null){ if (idCardImageCaptureFile.exists()) { BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeFile(idCardImageCaptureFile.getAbsolutePath(), options); int width = options.outWidth; int height = options.outHeight; WindowManager wm = (WindowManager) MainActivity.getInstance().getSystemService(Context.WINDOW_SERVICE); int screenWidth = wm.getDefaultDisplay().getWidth(); int screenHeight = wm.getDefaultDisplay().getHeight(); int dx = width / screenWidth; int dy = height / screenHeight; int scale = 1; if (dx > dy && dy >= 1) { scale = dx; } if (dy > dx && dx >= 1) { scale = dy; } options.inSampleSize = scale; options.inJustDecodeBounds = false; Bitmap bitmap = BitmapFactory.decodeFile(idCardImageCaptureFile.getAbsolutePath(), options); fragment_visitor_register_id_card_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(bitmap, (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp))); fragment_visitor_register_id_card_photo_img = bitmap; MainActivity.getInstance().getContentResolver().delete(Uri.fromFile(idCardImageCaptureFile), null, null); fragment_visitor_register_id_card_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_id_card_photo_placeholder_text_view.setVisibility(View.INVISIBLE); idCardImageCaptureFile = null; } } } catch (Exception e) { e.printStackTrace(); } } } public void resetForm() { selectedCustomPhotoId = -1; selectedSurveillancePhotoId = -1; idCardHeadPath = ""; 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_surveillance_photo_img = null; fragment_visitor_register_upload_custom_photo_img = null; fragment_visitor_register_id_card_photo_img = null; fragment_visitor_register_surveillance_photo.setImageBitmap(null); fragment_visitor_register_upload_custom_photo.setImageBitmap(null); fragment_visitor_register_id_card_photo.setImageBitmap(null); fragment_visitor_register_surveillance_photo_placeholder_image.setVisibility(View.VISIBLE); fragment_visitor_register_surveillance_photo_placeholder_text_view.setVisibility(View.VISIBLE); fragment_visitor_register_upload_custom_photo_placeholder_image.setVisibility(View.VISIBLE); fragment_visitor_register_upload_custom_photo_placeholder_text_view.setVisibility(View.VISIBLE); fragment_visitor_register_id_card_photo_placeholder_image.setVisibility(View.VISIBLE); fragment_visitor_register_id_card_photo_placeholder_text_view.setVisibility(View.VISIBLE); this.surveillanceQueryItem_selectPhoto = null; this.surveillanceQueryItem_uploadPhoto = null; } //@OnClick(R.id.fragment_visitor_register_country) public void fragment_visitor_register_country_click(View view) { if (CountryDialog.hasCountries()) { new CountryDialog(fragment_visitor_register_linear_layout, new OkClickedListener() { public void onSelected(String value) { fragment_visitor_register_country.setValue(value); } }, fragment_visitor_register_country.getValue()); } } //@OnClick(R.id.fragment_visitor_register_gender) public void fragment_visitor_register_gender_click(View view) { new SelectDialog(fragment_visitor_register_linear_layout, Constant.DialogSelectType.GENDER, new OkClickedListener() { public void onSelected(String value) { fragment_visitor_register_gender.setValue(value); } }, fragment_visitor_register_gender.getValue()); } //@OnClick(R.id.fragment_visitor_register_birthday) public void fragment_visitor_register_birthday_click(View view) { String birthdayStr = fragment_visitor_register_birthday.getValue(); Date birthday = new Date(); if (birthdayStr != null && !"".equals(birthdayStr)) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { birthday = sdf.parse(birthdayStr); } catch (Exception e) { e.printStackTrace(); } } new DateSelectDialog( new OkClickedListener(){ public void onSelected(String value) { fragment_visitor_register_birthday.setValue(value); } }, birthday); } //@OnClick(R.id.fragment_visitor_register_visitor_class) public void fragment_visitor_register_visitor_class_click(View view) { new SelectDialog(fragment_visitor_register_linear_layout, Constant.DialogSelectType.VISITOR_TYPE, new OkClickedListener() { public void onSelected(String value) { fragment_visitor_register_visitor_class.setValue(value); } }, fragment_visitor_register_visitor_class.getValue()); } //@OnClick(R.id.fragment_visitor_register_id_class) public void fragment_visitor_register_id_class_click(View view) { new SelectDialog(fragment_visitor_register_linear_layout, Constant.DialogSelectType.ID_TYPE, new OkClickedListener() { public void onSelected(String value) { fragment_visitor_register_id_class.setValue(value); } }, fragment_visitor_register_id_class.getValue()); } @OnClick(R.id.fragment_visitor_register_back) public void fragment_visitor_register_back_click(View view) { MainActivity.selectPage(0); } @OnClick(R.id.fragment_visitor_register_surveillance_photo) public void fragment_visitor_register_surveillance_photo_click(View view) { VisitorRegisterSelectPhotoDialog.getInstance().show(); } public FrameLayout get_fragment_visitor_register_linear_layout() { return fragment_visitor_register_linear_layout; } @OnClick(R.id.fragment_visitor_register_upload_custom_photo) public void fragment_visitor_register_upload_custom_photo_click(View view) { VisitorRegisterUploadPhotoDialog.getInstance().show(); } @OnClick(R.id.fragment_visitor_register_id_card_photo) public void fragment_visitor_register_id_card_photo_click(View view) { Intent intent = new Intent(); intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE); idCardImageCaptureFile = new File(Environment.getExternalStorageDirectory(), System.currentTimeMillis()+".jpg"); intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(idCardImageCaptureFile)); startActivityForResult(intent, fragment_visitor_register_id_card_photo_); } @Override public void onClick(View v) {} public void setRegisterInfo(CheckInQueryItem item) { fragment_visitor_register_surveillance_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto())); } public ImageView get_fragment_visitor_register_choose_photo() { return fragment_visitor_register_surveillance_photo; } public void setChoosePhoto(Bitmap bitmap) { fragment_visitor_register_surveillance_photo.setImageBitmap(BitmapUtil.getRoundedCornerBitmap(bitmap, (int)MainActivity.getInstance().getResources().getDimension(R.dimen.w10dp))); fragment_visitor_register_surveillance_photo_placeholder_text_view.setVisibility(View.INVISIBLE); fragment_visitor_register_surveillance_photo_placeholder_image.setVisibility(View.INVISIBLE); } public void setSurveillanceQueryItem_selectPhoto(SurveillanceQueryItem item) { this.surveillanceQueryItem_selectPhoto = item; } @Override protected void initData() { resetForm(); if (CommonVariables.ID_CARD) { idCardReaderThread = new IdCardReaderThread(); idCardReaderThread.start(); } setupUI(getView()); } public void fillFormWithIdCard(IdCard idCard) { try { fragment_visitor_register_name.setValue(idCard.getName()); fragment_visitor_register_id_num.setValue(idCard.getCardNumber()); SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd"); fragment_visitor_register_birthday.setValue(sdf1.format(sdf.parse(idCard.getBirthday()))); fragment_visitor_register_gender.setValue(idCard.getGender()); fragment_visitor_register_id_class.setValue("身份证"); BitmapFactory.Options options = new BitmapFactory.Options(); options.inPreferredConfig = Bitmap.Config.ARGB_8888; Bitmap bitmap = BitmapFactory.decodeFile(idCard.getHeadPath(), options); fragment_visitor_register_id_card_photo.setImageBitmap(bitmap); fragment_visitor_register_id_card_photo_placeholder_image.setVisibility(View.INVISIBLE); fragment_visitor_register_id_card_photo_placeholder_text_view.setVisibility(View.INVISIBLE); idCardHeadPath = idCard.getHeadPath(); } catch (Exception e) { e.printStackTrace(); } } public boolean visitorRegisterFragmentVisible = false; @Override public void setMenuVisibility(boolean menuVisible) { super.setMenuVisibility(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; } }