From d343b71cd89f59a87e85c46ce7a04d47c357462d Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期二, 25 七月 2017 15:46:45 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java | 222 ++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 155 insertions(+), 67 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 4b9ce56..733bcf6 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 @@ -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,147 @@ fragment_attender_register_name.requestFocus(); return; } + String gender = fragment_attender_register_gender.getValue(); + if (gender.trim().length() <= 0) { + Toast.makeText(MainActivity.getInstance(), "鎬у埆涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show(); + fragment_attender_register_gender.callOnClick(); + return; + } + String post = fragment_attender_register_post.getValue(); + if (post.trim().length() <= 0) { + Toast.makeText(MainActivity.getInstance(), "鑱屽姟绫诲瀷涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show(); + fragment_attender_register_post.callOnClick(); + return; + } - 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()); + String department = fragment_attender_register_department.getValue(); + if (department.trim().length() <= 0) { + Toast.makeText(MainActivity.getInstance(), "閮ㄩ棬鐝骇涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show(); + fragment_attender_register_department.callOnClick(); + 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()); - 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) { + 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(); - 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 +446,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 +485,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 +556,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 +570,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() { -- Gitblit v1.8.0