From 1a10d546c76f474d33e23c5958c08aa0afcdae67 Mon Sep 17 00:00:00 2001 From: sujinwen <sujinwen@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 24 七月 2017 11:46:45 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java | 295 +++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 188 insertions(+), 107 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java index 21130f6..32eed25 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java @@ -8,8 +8,12 @@ import android.net.Uri; import android.os.Environment; import android.provider.MediaStore; +import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentManager; +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 +22,15 @@ 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.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.DictionaryMng; import cn.com.basic.face.service.RegisterMng; @@ -53,33 +61,49 @@ 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 AttenderRegisterFragment extends BaseFragment implements View.OnClickListener{ + private static AttenderRegisterFragment instance = new AttenderRegisterFragment(); + + public static AttenderRegisterFragment getInstance() { + return instance; + } + @Override + protected int getLayoutId() { + return R.layout.fragment_attender_register; + } + + @Override + public void onClick(View v) {} + @ViewInject(R.id.fragment_attender_register_name) private RegisterRightFieldTextView fragment_attender_register_name; @ViewInject(R.id.fragment_attender_register_gender) private RegisterRightFieldLabelView fragment_attender_register_gender; + @ViewInject(R.id.fragment_attender_register_id_class) + private RegisterRightFieldLabelView fragment_attender_register_id_class; + @ViewInject(R.id.fragment_attender_register_remark) + private RegisterRightFieldTextView fragment_attender_register_remark; + @ViewInject(R.id.fragment_attender_register_post) private RegisterRightFieldLabelView fragment_attender_register_post; @ViewInject(R.id.fragment_attender_register_department) private RegisterRightFieldLabelView fragment_attender_register_department; - @ViewInject(R.id.fragment_attender_register_id_class) - private RegisterRightFieldLabelView fragment_attender_register_id_class; @ViewInject(R.id.fragment_attender_register_id_num) private RegisterRightFieldTextView fragment_attender_register_id_num; - @ViewInject(R.id.fragment_attender_register_remark) - private RegisterRightFieldTextView fragment_attender_register_remark; + @ViewInject(R.id.fragment_attender_register_surveillance_photo) private ImageView fragment_attender_register_surveillance_photo; @ViewInject(R.id.fragment_attender_register_upload_custom_photo) private ImageView fragment_attender_register_upload_custom_photo; @ViewInject(R.id.fragment_attender_register_id_card_photo) private ImageView fragment_attender_register_id_card_photo; - @ViewInject(R.id.fragment_attender_register_linear_layout) - private LinearLayout fragment_attender_register_linear_layout; + @ViewInject(R.id.fragment_register_frame_layout) + private FrameLayout fragment_attender_register_linear_layout; @ViewInject(R.id.fragment_attender_register_surveillance_photo_placeholder_image) private ImageView fragment_attender_register_surveillance_photo_placeholder_image; @ViewInject(R.id.fragment_attender_register_upload_custom_photo_placeholder_image) @@ -113,15 +137,6 @@ private String idCardHeadPath = ""; - private static AttenderRegisterFragment instance = new AttenderRegisterFragment(); - - public static AttenderRegisterFragment getInstance() { - return instance; - } - @Override - protected int getLayoutId() { - return R.layout.fragment_attender_register; - } @OnClick(R.id.fragment_attender_register_add) public void fragment_attender_register_add_click(View view) { @@ -138,60 +153,125 @@ fragment_attender_register_name.requestFocus(); return; } + OfflineAttenderRegisterItem offlineAttenderRegisterItem = new OfflineAttenderRegisterItem(); + if(BaseApplication.getInstance().networkAvailable()) { + 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(DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue())); + offlineAttenderRegisterItem.setPostId(fragment_attender_register_post.getValue()); + offlineAttenderRegisterItem.setIdentifyNum(fragment_attender_register_id_num.getValue()); + offlineAttenderRegisterItem.setDepartmentId(DictionaryMng.getInstance().getId(fragment_attender_register_department.getValue())); + offlineAttenderRegisterItem.setDepartmentId(fragment_attender_register_department.getValue()); + offlineAttenderRegisterItem.setRemark(fragment_attender_register_remark.getValue()); + offlineAttenderRegisterItem.setDeviceCompanyId(BaseApplication.getInstance().getAndroidDevice().getCompanyId()); - 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.countryId, DictionaryMng.getInstance().getId(fragment_attender_register_post.getValue())); - params.addBodyParameter(Register.FieldNames.identifyNum, fragment_attender_register_id_num.getValue()); - params.addBodyParameter(Register.FieldNames.birthday, fragment_attender_register_department.getValue()); - params.addBodyParameter(Register.FieldNames.remark, fragment_attender_register_remark.getValue()); + String rawSurveillancePhotoPath = UUID.randomUUID().toString()+".bmp"; + byte[] rawSurveillancePhotoBytes = new byte[]{}; - 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(); + 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]; + 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; } - params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", 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); } else { - params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", new byte[]{})); + 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("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]; + } + params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", imageBytes)); + } else { + params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto_attender", 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); + 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[]{})); + } } - 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", imageBytes)); - } else { - params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", 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", imageBytes)); - } else { - params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", 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", imageBytes)); - } else { - params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", new byte[]{})); - } - RegisterMng.getInstance().add(params, idCardHeadPath); + RegisterMng.getInstance().addAttender(params, idCardHeadPath, offlineAttenderRegisterItem); } public void set_fragment_attender_register_surveillance_photo(SurveillanceQueryItem item) { @@ -312,18 +392,18 @@ idCardHeadPath = ""; - fragment_attender_register_name.setValue("寰愪慨婧�"+Math.random()); - fragment_attender_register_id_num.setValue("36041419292222222"); - fragment_attender_register_department.setValue("1985-08-12"); - fragment_attender_register_remark.setValue("澶囨敞"); + fragment_attender_register_name.setValue(""); + fragment_attender_register_post.setValue(""); + fragment_attender_register_gender.setValue(""); + fragment_attender_register_department.setValue(""); + fragment_attender_register_id_class.setValue(""); + fragment_attender_register_id_num.setValue(""); + fragment_attender_register_remark.setValue(""); fragment_attender_register_name.setValue(""); fragment_attender_register_id_num.setValue(""); fragment_attender_register_department.setValue(""); - fragment_attender_register_gender.setValue("鐢�"); - fragment_attender_register_id_class.setValue("韬唤璇�"); - fragment_attender_register_post.setValue("涓浗"); fragment_attender_register_surveillance_photo_img = null; fragment_attender_register_upload_custom_photo_img = null; fragment_attender_register_id_card_photo_img = null; @@ -342,11 +422,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) @@ -361,22 +443,6 @@ //@OnClick(R.id.fragment_attender_register_birthday) public void fragment_attender_register_birthday_click(View view) { String birthdayStr = fragment_attender_register_department.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_attender_register_department.setValue(value); - } - }, birthday); } //@OnClick(R.id.fragment_attender_register_id_class) @@ -395,20 +461,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) @@ -419,9 +482,6 @@ intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(idCardImageCaptureFile)); startActivityForResult(intent, fragment_attender_register_id_card_photo_); } - - @Override - public void onClick(View v) {} public void setRegisterInfo(CheckInQueryItem item) { fragment_attender_register_surveillance_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getSurveillancePhoto())); @@ -456,10 +516,8 @@ fragment_attender_register_name.setValue(idCard.getName()); fragment_attender_register_id_num.setValue(idCard.getCardNumber()); - SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); - SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd"); - fragment_attender_register_department.setValue(sdf1.format(sdf.parse(idCard.getBirthday()))); + fragment_attender_register_department.setValue(""); fragment_attender_register_gender.setValue(idCard.getGender()); fragment_attender_register_id_class.setValue("韬唤璇�"); BitmapFactory.Options options = new BitmapFactory.Options(); @@ -474,12 +532,35 @@ } } - 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) + public void fragment_visitor_register_to_visitor_register_click(View view) { + Fragment fragment = MainActivity.getInstance().myFragmentPagerAdapter.getItem(1); + 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() { + public void onSelected(String value) { + fragment_attender_register_post.setValue(value); + } + }, fragment_attender_register_post.getValue()); + } + + public void fragment_attender_register_department_click(View view) { + new SelectDialog(fragment_attender_register_linear_layout, Constant.DialogSelectType.DEPARTMENT, new OkClickedListener() { + public void onSelected(String value) { + fragment_attender_register_department.setValue(value); + } + }, fragment_attender_register_department.getValue()); } } -- Gitblit v1.8.0