| | |
| | | import cn.com.basic.face.service.SurveillanceMng;
|
| | | 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.NativeImg;
|
| | | import cn.com.basic.face.util.OkClickedListener;
|
| | |
|
| | |
| | | import cn.com.basic.face.widget.register.RegisterRightFieldTextView;
|
| | | import cn.com.basic.face.dialog.SelectDialog;
|
| | |
|
| | | import com.facebook.common.file.FileUtils;
|
| | | import com.ivsign.android.IDCReader.IDCReaderSDK;
|
| | | import com.lidroid.xutils.view.annotation.ViewInject;
|
| | | import com.lidroid.xutils.view.annotation.event.OnClick;
|
| | |
|
| | | import org.xutils.common.util.FileUtil;
|
| | | import org.xutils.common.util.IOUtil;
|
| | | import org.xutils.http.RequestParams;
|
| | |
|
| | | import java.io.BufferedOutputStream;
|
| | |
| | | resetForm();
|
| | | }
|
| | |
|
| | | private File writeToFile(String fileName, byte[] fileBytes) {
|
| | | try {
|
| | | String dir = MainActivity.getInstance().getFilesDir().getAbsolutePath();
|
| | |
|
| | | File file = new File(dir, fileName);
|
| | | if (file.exists()) {
|
| | | file.delete();
|
| | | }
|
| | | file.createNewFile();
|
| | | BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(new File(dir, fileName)));
|
| | | bos.write(fileBytes);
|
| | | bos.flush();
|
| | | bos.close();
|
| | | return new File(dir, fileName);
|
| | | }catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | return null;
|
| | | }
|
| | |
|
| | | @OnClick(R.id.fragment_register_save)
|
| | | public void fragment_register_save_click(View v) {
|
| | | RequestParams params = new RequestParams();
|
| | |
| | | fragment_register_phone.requestFocus();
|
| | | return;
|
| | | }
|
| | | String gender = fragment_register_gender.getValue();
|
| | | if (gender.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "性别不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_gender.callOnClick();
|
| | | return;
|
| | | }
|
| | | String id_class = fragment_register_id_class.getValue();
|
| | | if (id_class.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "证件类型不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_id_class.callOnClick();
|
| | | return;
|
| | | }
|
| | | String country = fragment_register_country.getValue();
|
| | | if (country.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "国籍不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_country.callOnClick();
|
| | | return;
|
| | | }
|
| | | String id_num = fragment_register_id_num.getValue();
|
| | | if (id_num.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "证件编号不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_id_num.requestFocus();
|
| | | return;
|
| | | }
|
| | | String birthday = fragment_register_birthday.getValue();
|
| | | if (birthday.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "出生日期不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_birthday.callOnClick();
|
| | | return;
|
| | | }
|
| | | String company = fragment_register_company.getValue();
|
| | | if (company.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "公司名称不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_company.requestFocus();
|
| | | return;
|
| | | }
|
| | | String remark = fragment_register_remark.getValue();
|
| | | if (remark.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "备注不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_remark.requestFocus();
|
| | | return;
|
| | | }
|
| | | String visitor_class = fragment_register_visitor_class.getValue();
|
| | | if (visitor_class.trim().length() <= 0) {
|
| | | String visitor_type = fragment_register_visitor_class.getValue();
|
| | | if (visitor_type.trim().length() <= 0) {
|
| | | Toast.makeText(MainActivity.getInstance(), "访客类型不能为空", Toast.LENGTH_SHORT).show();
|
| | | fragment_register_visitor_class.callOnClick();
|
| | | return;
|
| | | }
|
| | | final PostData pd = new PostData();
|
| | |
|
| | | pd.addValue(Register.FieldNames.username, name);
|
| | | pd.addValue(Register.FieldNames.mobilePhone, phone);
|
| | | pd.addValue(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(gender));
|
| | | pd.addValue(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(id_class));
|
| | | pd.addValue(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(country));
|
| | | pd.addValue(Register.FieldNames.visitorTypeId, DictionaryMng.getInstance().getId(visitor_class));
|
| | | pd.addValue(Register.FieldNames.identifyNum, id_num);
|
| | | pd.addValue(Register.FieldNames.companyId, company);
|
| | | pd.addValue(Register.FieldNames.birthday, birthday);
|
| | |
|
| | |
|
| | | params.addBodyParameter(Register.FieldNames.username, name);
|
| | | params.addBodyParameter(Register.FieldNames.mobilePhone, phone);
|
| | | params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(gender));
|
| | | params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(id_class));
|
| | | params.addBodyParameter(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(country));
|
| | | params.addBodyParameter(Register.FieldNames.visitorTypeId, DictionaryMng.getInstance().getId(visitor_class));
|
| | | params.addBodyParameter(Register.FieldNames.identifyNum, id_num);
|
| | | params.addBodyParameter(Register.FieldNames.genderId, DictionaryMng.getInstance().getId(fragment_register_gender.getValue()));
|
| | | params.addBodyParameter(Register.FieldNames.identityTypeId, DictionaryMng.getInstance().getId(fragment_register_id_class.getValue()));
|
| | | params.addBodyParameter(Register.FieldNames.countryId, DictionaryMng.getInstance().getId(fragment_register_country.getValue()));
|
| | | params.addBodyParameter(Register.FieldNames.visitorTypeId, DictionaryMng.getInstance().getId(visitor_type));
|
| | | params.addBodyParameter(Register.FieldNames.identifyNum, fragment_register_id_num.getValue());
|
| | | params.addBodyParameter(Register.FieldNames.companyId, company);
|
| | | params.addBodyParameter(Register.FieldNames.birthday, birthday);
|
| | |
|
| | | params.addBodyParameter(Register.FieldNames.birthday, fragment_register_birthday.getValue());
|
| | | params.addBodyParameter(Register.FieldNames.remark, fragment_register_remark.getValue());
|
| | |
|
| | | if (surveillanceQueryItem_selectPhoto != null) {
|
| | | params.addBodyParameter("width", surveillanceQueryItem_selectPhoto.getWidth());
|
| | |
| | | for (int i = 0; i < nativeImg.size; i++) {
|
| | | imageBytes[i] = nativeImg.image[i];
|
| | | }
|
| | | pd.addData("rawSurveillancePhoto", "application/octet-stream", imageBytes);
|
| | |
|
| | | params.addBodyParameter("rawSurveillancePhoto", writeToFile("rawSurveillancePhoto", imageBytes));
|
| | | params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", imageBytes));
|
| | | } else {
|
| | | params.addBodyParameter("rawSurveillancePhoto", writeToFile("rawSurveillancePhoto", new byte[]{}));
|
| | | params.addBodyParameter("rawSurveillancePhoto", FileUtil.writeToFile("rawSurveillancePhoto", new byte[]{}));
|
| | | }
|
| | |
|
| | | if (fragment_register_surveillance_photo_img != null) {
|
| | | ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
|
| | | fragment_register_surveillance_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
|
| | | byte[] imageBytes = byteArrayOutputStream.toByteArray();
|
| | | pd.addData(Register.FieldNames.surveillancePhoto, "application/octet-stream", imageBytes);
|
| | |
|
| | | params.addBodyParameter("surveillancePhoto", writeToFile("surveillancePhoto", imageBytes));
|
| | | params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", imageBytes));
|
| | | } else {
|
| | | params.addBodyParameter("surveillancePhoto", writeToFile("surveillancePhoto", new byte[]{}));
|
| | | params.addBodyParameter("surveillancePhoto", FileUtil.writeToFile("surveillancePhoto", new byte[]{}));
|
| | | }
|
| | |
|
| | | if (fragment_register_upload_custom_photo_img != null) {
|
| | | ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
|
| | | fragment_register_upload_custom_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
|
| | | byte[] imageBytes = byteArrayOutputStream.toByteArray();
|
| | | pd.addData(Register.FieldNames.uploadCustomPhoto, "application/octet-stream", imageBytes);
|
| | |
|
| | | params.addBodyParameter("uploadCustomPhoto", writeToFile("uploadCustomPhoto", imageBytes));
|
| | | params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", imageBytes));
|
| | | } else {
|
| | | params.addBodyParameter("uploadCustomPhoto", writeToFile("uploadCustomPhoto", new byte[]{}));
|
| | | params.addBodyParameter("uploadCustomPhoto", FileUtil.writeToFile("uploadCustomPhoto", new byte[]{}));
|
| | | }
|
| | |
|
| | | if (fragment_register_id_card_photo_img != null) {
|
| | | ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
|
| | | fragment_register_id_card_photo_img.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream);
|
| | | byte[] imageBytes = byteArrayOutputStream.toByteArray();
|
| | | pd.addData(Register.FieldNames.idCardPhoto, "application/octet-stream", imageBytes);
|
| | |
|
| | | params.addBodyParameter("idCardPhoto", writeToFile("idCardPhoto", imageBytes));
|
| | | params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", imageBytes));
|
| | | } else {
|
| | | params.addBodyParameter("idCardPhoto", writeToFile("idCardPhoto", new byte[]{}));
|
| | | params.addBodyParameter("idCardPhoto", FileUtil.writeToFile("idCardPhoto", new byte[]{}));
|
| | | }
|
| | | RegisterMng.getInstance().add(params, idCardHeadPhotoPath);
|
| | | }
|
| | |
| | | public void run() {
|
| | | while(true) {
|
| | | try{
|
| | | Thread.sleep(1000);
|
| | | Thread.sleep(2000);
|
| | | readIdCard();
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | |
| | |
|
| | | public void readIdCard() {
|
| | | try {
|
| | | if (!registerFragmentVisible) {
|
| | | if (!registerFragmentVisible || !RegisterFragment.getInstance().isVisible()) {
|
| | | return;
|
| | | }
|
| | |
|
| | | RFIDReader idCardReader = RFIDReader.getInstance(BaseApplication.getInstance(), "uart");
|
| | | idCardReader.setUartDeviceName("/dev/ttyS1");
|
| | | idCardReader.setUartDeviceName("/dev/ttyS4");
|
| | | ByteArrayInputStream type = new ByteArrayInputStream("uart".getBytes());
|
| | | idCardReader.control(ReaderExtra.CONNECT, type);
|
| | |
|