From e09e9f8a34cbc99a33dfa9ef1792b0025575c3a8 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期二, 01 八月 2017 11:41:19 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/fragment/AttenderRegisterFragment.java | 207 +++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 151 insertions(+), 56 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 f57d577..cfa3bd3 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 @@ -9,13 +9,13 @@ 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.MotionEvent; import android.view.View; +import android.view.ViewGroup; import android.view.WindowManager; +import android.widget.EditText; import android.widget.FrameLayout; import android.widget.ImageView; -import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; @@ -26,24 +26,26 @@ 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; import cn.com.basic.face.util.FileUtil; import cn.com.basic.face.util.IdCard; -import cn.com.basic.face.util.IdCardReaderThread; +import cn.com.basic.face.thread.IdCardReaderThread; +import cn.com.basic.face.util.KeyboardUtil; 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; @@ -60,6 +62,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.UUID; import cn.com.basic.face.base.MainActivity; @@ -145,69 +148,159 @@ public void fragment_attender_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_attender_register_name.getValue(); if (name.trim().length() <= 0) { Toast.makeText(MainActivity.getInstance(), "濮撳悕涓嶈兘涓虹┖", Toast.LENGTH_SHORT).show(); 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; + } - 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 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; + } - 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(); + 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()); - NativeImg nativeImg = surveillanceQueryItem_selectPhoto.getNativeImg(); - byte[] imageBytes = new byte[nativeImg.size]; - for (int i = 0; i < nativeImg.size; i++) { - imageBytes[i] = nativeImg.image[i]; + 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]; + } + 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()+""; + 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()+""; + 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()+""; + 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()+""; + 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) { @@ -445,6 +538,7 @@ idCardReaderThread = new IdCardReaderThread(); idCardReaderThread.start(); } + setupUI(getView()); } public void fillFormWithIdCard(IdCard idCard) { @@ -499,4 +593,5 @@ }, fragment_attender_register_department.getValue()); } + } -- Gitblit v1.8.0