diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 0000000..0c0c338 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/migrations.xml b/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index f97c5e0..9482bae 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -4,10 +4,18 @@ + + + + \ No newline at end of file diff --git a/app/release/output.json b/app/release/output.json index 35c69c4..a904cc7 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":6,"versionName":"1.0.5","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":9,"versionName":"1.0.9","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}] \ No newline at end of file diff --git a/build.gradle b/build.gradle index 0ea9b6c..2a48f90 100755 --- a/build.gradle +++ b/build.gradle @@ -39,8 +39,8 @@ ext { gCompileSdkVersion = 28 gMinSdkVersion = 16 gTargetSdkVersion = 28 - gVersionCode = 6 - gVersionName = '1.0.5' + gVersionCode = 9 + gVersionName = '1.0.9' //Router编译版本 gRouterApiVersion = '1.4.1' gRouterCompileVersion = '1.2.2' diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/AddPersonActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/AddPersonActivity.java index ce16fed..aa858c6 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/AddPersonActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/AddPersonActivity.java @@ -122,7 +122,7 @@ public class AddPersonActivity extends BaseActivity { mKey = getIntent().getIntExtra("key", -1); //从添加车辆页面进入 mCarId = getIntent().getStringExtra("carId"); - initReadCard(); +// TODO initReadCard(); } /** diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckIntoRecordActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckIntoRecordActivity.java index 8a2b921..d465fb5 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckIntoRecordActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckIntoRecordActivity.java @@ -116,25 +116,25 @@ public class CheckIntoRecordActivity extends BaseActivity { mTvBaseTitle.setText("进监记录"); refreshView(STATE_LOAD_SUCCESS); refreshState(123); - uiHandler = new MyHandler(this); - // 设备注册 - mNfcAdapter = NfcAdapter.getDefaultAdapter(getApplicationContext()); - // 判断设备是否可用 - if (mNfcAdapter == null) { - ToastUtils.showShort("该设备不支持nfc!"); - return; - } - if ((null != mNfcAdapter) && !mNfcAdapter.isEnabled()) { - ToastUtils.showShort("请在系统设置中先启用NFC功能"); - startActivity(new Intent(Settings.ACTION_NFC_SETTINGS)); - finish(); - return; - } - mNfcPendingIntent = PendingIntent.getActivity(this, 0, new Intent(this, - getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP), 0); - - mNFCReaderHelper = new NFCReaderHelper(getApplicationContext(), uiHandler, appKey, - appSecret, true); +// TODO uiHandler = new MyHandler(this); +// // 设备注册 +// mNfcAdapter = NfcAdapter.getDefaultAdapter(getApplicationContext()); +// // 判断设备是否可用 +// if (mNfcAdapter == null) { +// ToastUtils.showShort("该设备不支持nfc!"); +// return; +// } +// if ((null != mNfcAdapter) && !mNfcAdapter.isEnabled()) { +// ToastUtils.showShort("请在系统设置中先启用NFC功能"); +// startActivity(new Intent(Settings.ACTION_NFC_SETTINGS)); +// finish(); +// return; +// } +// mNfcPendingIntent = PendingIntent.getActivity(this, 0, new Intent(this, +// getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP), 0); +// +// mNFCReaderHelper = new NFCReaderHelper(getApplicationContext(), uiHandler, appKey, +// appSecret, true); mBtnSearch.setOnClickListener(v -> { String identity = mEtSearch.getText().toString().trim(); if (!TextUtils.isEmpty(identity) && IDCard.IDCardValidate(identity)) { diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordDetailActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordDetailActivity.java index b792abf..97dfe81 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordDetailActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordDetailActivity.java @@ -73,12 +73,14 @@ public class CheckRecordDetailActivity extends BaseActivity { TextView mTvEndTime; @BindView(R2.id.tv_manager_user) TextView mTvManagerUser; - @BindView(R2.id.iv_photo) - ImageView mIvPhoto; + // @BindView(R2.id.iv_photo) +// ImageView mIvPhoto; // @BindView(R2.id.tv_per) // TextView mTvPer; @BindView(R2.id.tv_status) TextView mTvStatus; + @BindView(R2.id.rlv_photo) + RecyclerView mRlvPhoto; @BindView(R2.id.rlv_list) RecyclerView mRlvList; @BindView(R2.id.tv_field_name) @@ -183,7 +185,7 @@ public class CheckRecordDetailActivity extends BaseActivity { showCarDetail(bean.getId(), bean.getBatchNumber()); } }); - }else{ + } else { //人员 mAdapter.addOnItemClickListener(bean -> { ArrayList list = new ArrayList<>(); @@ -288,20 +290,37 @@ public class CheckRecordDetailActivity extends BaseActivity { } else { mTvPro.setText("无需进入"); } - Glide.with(mActivity) - .load(BaseUrlApi.BASE_URL + data.getPhotoRecordPath()) - .apply(new RequestOptions() - .error(R.drawable.ic_car_person_default) - .placeholder(R.drawable.ic_car_person_default)) - .into(mIvPhoto); - mIvPhoto.setOnClickListener(v -> { - ArrayList list = new ArrayList<>(); - list.add(data.getPhotoRecordPath()); - ARouter.getInstance() - .build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) - .withStringArrayList("imgUrls", list) - .navigation(); - }); +// TODO Glide.with(mActivity) +// .load(BaseUrlApi.BASE_URL + data.getPhotoRecordPath()) +// .apply(new RequestOptions() +// .error(R.drawable.ic_car_person_default) +// .placeholder(R.drawable.ic_car_person_default)) +// .into(mIvPhoto); +// mIvPhoto.setOnClickListener(v -> { +// ArrayList list = new ArrayList<>(); +// list.add(data.getPhotoRecordPath()); +// ARouter.getInstance() +// .build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) +// .withStringArrayList("imgUrls", list) +// .navigation(); +// }); + if (data.getPhotoRecordIdList() != null && data.getPhotoRecordIdList().size() > 0) { + mRlvPhoto.setVisibility(View.VISIBLE); + List photos = new ArrayList(); + for (int i = 0; i < data.getPhotoRecordIdList().size(); i++) { + photos.add(data.getPhotoRecordIdList().get(i).getPath()); + } + BaseShowPhotoAdapter photoAdapter = new BaseShowPhotoAdapter(mActivity, photos); + GridLayoutManager manager = new GridLayoutManager(mActivity, 4, GridLayoutManager.VERTICAL, + false); + mRlvPhoto.setLayoutManager(manager); + mRlvPhoto.setAdapter(photoAdapter); + photoAdapter.addOnItemClickListener(photoBean -> ARouter.getInstance().build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) + .withSerializable("imgUrls", new ArrayList<>(photoAdapter.getData())) + .navigation()); + } else { + mRlvPhoto.setVisibility(View.GONE); + } if (TextUtils.isEmpty(data.getType())) { mTvType.setText("未知"); @@ -309,12 +328,12 @@ public class CheckRecordDetailActivity extends BaseActivity { if ("1".equals(data.getType())) { mLlCop.setVisibility(View.VISIBLE); mRlvTools.setVisibility(View.GONE); - mTvColHint.setText("驾驶员照片"); - mTvTools.setText( data.getCarryTools());//"装载货物 : " + + mTvColHint.setText("车辆以及车辆货物照片"); + mTvTools.setText(data.getCarryTools());//"装载货物 mTvType.setText("车辆进出"); if (!TextUtils.isEmpty(data.getCertificatesPhotoPath())) { mTvColCarHint.setVisibility(View.VISIBLE); - mTvColCarHint.setText("车辆证件照(货物来源证明)"); + mTvColCarHint.setText("车辆证件照"); mIvCarCard.setVisibility(View.VISIBLE); Glide.with(mActivity) .load(BaseUrlApi.BASE_URL + data.getCertificatesPhotoPath()) @@ -335,7 +354,7 @@ public class CheckRecordDetailActivity extends BaseActivity { mIvCarCard.setVisibility(View.GONE); } if (!TextUtils.isEmpty(data.getFollowCarUserName())) { - mTvCop.setText( data.getFollowCarUserName()); + mTvCop.setText(data.getFollowCarUserName()); } else { mTvCop.setText("无"); } @@ -344,7 +363,7 @@ public class CheckRecordDetailActivity extends BaseActivity { mIvCarCard.setVisibility(View.GONE); mTvColCarHint.setVisibility(View.GONE); mTvColHint.setText("人员照片"); - mTvTools.setText( data.getCarryTools()); + mTvTools.setText(data.getCarryTools()); mTvType.setText("人员进出"); mRlvTools.setVisibility(View.VISIBLE); //TODO 携带工具数据回显 diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordListActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordListActivity.java index bd75e37..7532b76 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordListActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRecordListActivity.java @@ -10,6 +10,7 @@ import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.ProgressBar; +import android.widget.Switch; import android.widget.TextView; import com.alibaba.android.arouter.facade.annotation.Route; @@ -27,6 +28,7 @@ import com.sucstepsoft.cm_utils.core.retrofit_net.conver.RxTransformer; import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity; import com.sucstepsoft.cm_utils.core.widget.views.ItemSplitDivider; import com.sucstepsoft.cm_utils.utils.LogUtils; +import com.sucstepsoft.cm_utils.utils.TimeUtils; import com.sucstepsoft.modulecheck.R; import com.sucstepsoft.modulecheck.R2; import com.sucstepsoft.modulecheck.data.beans.CheckRecordBean; @@ -36,6 +38,7 @@ import com.sucstepsoft.modulecheck.widget.adapter.enterexamine.CheckRecordAdapte import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -81,6 +84,10 @@ public class CheckRecordListActivity extends BaseActivity { Button mBtnOpenSearch; @BindView(R2.id.dl_content) DrawerLayout mDlContent; + @BindView(R2.id.tv_all) + TextView mTvAll; + @BindView(R2.id.sw_change) + Switch mSwChange; private Unbinder mBind; private int mType = -1; @@ -150,6 +157,24 @@ public class CheckRecordListActivity extends BaseActivity { mDlContent.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED); mBtnOpenSearch.setOnClickListener(v -> mDlContent.openDrawer(Gravity.RIGHT)); mBtnCancel.setOnClickListener(v -> mDlContent.closeDrawer(Gravity.RIGHT)); + mSwChange.setOnCheckedChangeListener((compoundButton, b) -> { + if (b) { + mTvAll.setText("当天"); + Date nowDate = TimeUtils.getNowDate(); + mStartTime = mDateFormat.format(nowDate); + mEndTime = mStartTime; + requestDatas(-1, mStartTime, mEndTime, "", "1"); + } else { + mTvAll.setText("全部"); + requestDatas(-1, "", "", "", "1"); + + } + }); + LogUtils.e("测试"); + Date nowDate = TimeUtils.getNowDate(); + mStartTime = mDateFormat.format(nowDate); + mEndTime = mStartTime; + requestDatas(-1, mStartTime, mEndTime, "", "1"); } private void resetCondition() { @@ -162,6 +187,7 @@ public class CheckRecordListActivity extends BaseActivity { mEtSearch.setText(""); mCurrentPageNo = 1; mDatas.clear(); + mSwChange.setChecked(false); hideSoftKeyboard(); requestDatas(-1, "", "", "", "1"); } @@ -235,8 +261,8 @@ public class CheckRecordListActivity extends BaseActivity { @Override protected void onResume() { super.onResume(); - mCurrentPageNo = 1; - requestDatas(-1, "", "", "", "1"); +// mCurrentPageNo = 1; +// requestDatas(-1, "", "", "", "1"); } /** diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterActivity.java index 4f22711..494dead 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterActivity.java @@ -308,7 +308,7 @@ public class CheckRegisterActivity extends BaseActivity { mBtnSubmit.setOnClickListener(v -> checkComplete()); mIvPhoto.setOnClickListener(v -> takePhoto()); initTextChange(); - initReadCard(); +// TODO initReadCard(); //判断是否显示防疫措施 LogUtils.e(UserInfoSPUtils.getPersonIsShow()); if (UserInfoSPUtils.getPersonIsShow()) { diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterCarActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterCarActivity.java index 095ede9..9f34a6a 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterCarActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/CheckRegisterCarActivity.java @@ -8,6 +8,7 @@ import android.net.Uri; import android.os.Build; import android.provider.MediaStore; import android.support.v4.content.FileProvider; +import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.text.TextUtils; @@ -61,6 +62,8 @@ import com.sucstepsoft.modulecheck.widget.adapter.enterexamine.PersonShowAdapter import com.sucstepsoft.modulecheck.widget.adapter.other.MultiCCarAdapter; import com.sucstepsoft.modulecheck.widget.adapter.other.MultiCLeaderAdapter; import com.sucstepsoft.modulecheck.widget.adapter.other.MultiCPersonAdapter; +import com.sucstepsoft.modulesupertools.adapter.AddPhotoAdapter; +import com.sucstepsoft.modulesupertools.data.beans.AddPhotoBean; import java.io.File; import java.lang.reflect.Type; @@ -117,14 +120,14 @@ public class CheckRegisterCarActivity extends BaseActivity { Button mBtnCarSubmit; @BindView(R2.id.tv_car_cop) TextView mTvCarCop; - @BindView(R2.id.iv_car_person_photo) - ImageView mIvCarPersonPhoto; @BindView(R2.id.et_car_carry) EditText mEtCarCarry; @BindView(R2.id.ic_car_cred) ImageView mIvCarCard; @BindView(R2.id.et_car_remark) EditText mEtInformation; + @BindView(R2.id.rlv_driver) + RecyclerView mRlvDriver; private Unbinder mBind; private String startTime = ""; private String endTime = ""; @@ -164,6 +167,11 @@ public class CheckRegisterCarActivity extends BaseActivity { private String mBeanId; private String isNeedInto = "1"; + private List mPhotos = new ArrayList<>(); + private AddPhotoAdapter mPhotoAdapter; + private AddPhotoBean mCurrentBean; + private String mPhotoIds = ""; + @Override protected int setLayoutId() { return R.layout.activity_check_register_car; @@ -211,6 +219,40 @@ public class CheckRegisterCarActivity extends BaseActivity { //默认带领人选择当前登录人 mTvCarLeadCop.setText(UserInfoSPUtils.getName()); mLeadId = UserInfoSPUtils.getUserId(); + mPhotos.add(new AddPhotoBean()); + mPhotoAdapter = new AddPhotoAdapter(mActivity, mPhotos); + GridLayoutManager gridLayoutManager = new GridLayoutManager(mActivity, 4) { + @Override + public boolean canScrollHorizontally() { + return false; + } + + @Override + public boolean canScrollVertically() { + return false; + } + }; + mRlvDriver.setLayoutManager(gridLayoutManager); + mRlvDriver.setAdapter(mPhotoAdapter); + mPhotoAdapter.addOnDeleteListener(((bean, i) -> { + //TODO 删除照片 + mPhotoAdapter.removeItem(bean); + mPhotoIds = mPhotoIds.replace(bean.getId() + ",", ""); + })); + mPhotoAdapter.addOnItemClickListener(bean -> { + if (TextUtils.isEmpty(bean.getPath())) { + //空数据 + takeDriverPhoto(bean); + } else { + //预览 + ArrayList list = new ArrayList<>(); + list.add(bean.getPath()); + ARouter.getInstance() + .build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) + .withStringArrayList("imgUrls", list) + .navigation(); + } + }); } else { refreshView(STATE_LOAD_LOADING); requestDetailDataById(mBeanId); @@ -229,7 +271,6 @@ public class CheckRegisterCarActivity extends BaseActivity { mTvCarCop.setOnClickListener(v -> showCarCopPicker()); mBtnCarSubmit.setEnabled(false); mBtnCarSubmit.setOnClickListener(v -> checkComplete()); - mIvCarPersonPhoto.setOnClickListener(v -> takePhoto(1)); mIvCarCard.setOnClickListener(v -> takePhoto(2)); initTextChange(); //是否显示疫情防疫 @@ -280,12 +321,12 @@ public class CheckRegisterCarActivity extends BaseActivity { .into(mIvCarCard); } mPhotoCarId = detailBean.getPhotoRecordId(); - Glide.with(mActivity) - .load(BaseUrlApi.BASE_URL + detailBean.getPhotoRecordPath()) - .apply(new RequestOptions() - .error(R.drawable.ic_car_person_default) - .placeholder(R.drawable.ic_car_person_default)) - .into(mIvCarPersonPhoto); +// Glide.with(mActivity) +// .load(BaseUrlApi.BASE_URL + detailBean.getPhotoRecordPath()) +// .apply(new RequestOptions() +// .error(R.drawable.ic_car_person_default) +// .placeholder(R.drawable.ic_car_person_default)) +// .into(mIvCarPersonPhoto); } /** @@ -384,6 +425,26 @@ public class CheckRegisterCarActivity extends BaseActivity { startActivityForResult(intent, CAMERA_REQUEST); } + /** + * 拍摄驾驶员相片 + */ + private void takeDriverPhoto(AddPhotoBean bean) { + mTakePhotoType = 1; + mCurrentBean = bean; + mPicPath = PathConfig.CATCH_PATH + System.currentTimeMillis() + ".jpg"; + File file = new File(mPicPath); + Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); + // 下面这句指定调用相机拍照后的照片存储的路径 + Uri uri; + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M) { + uri = Uri.fromFile(file); + } else { + uri = FileProvider.getUriForFile(mActivity, ProiderUtil.getFileProviderName(mActivity), file); + } + intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); + startActivityForResult(intent, CAMERA_REQUEST); + } + @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (resultCode == RESULT_OK) { @@ -446,13 +507,17 @@ public class CheckRegisterCarActivity extends BaseActivity { if (uploadBean != null) { ToastUtils.showShort("图片上传成功"); if (mTakePhotoType == 1) { - mPhotoCarId = uploadBean.getId(); - Glide.with(mActivity) - .load(BaseUrlApi.BASE_URL + uploadBean.getPath()) - .apply(new RequestOptions() - .error(R.drawable.ic_car_person_default) - .placeholder(R.drawable.ic_car_person_default)) - .into(mIvCarPersonPhoto); + //TODO 上传驾驶员相片 + mPhotoIds += (uploadBean.getId() + ","); + mPhotoCarId = mPhotoIds; + mCurrentBean.setId(uploadBean.getId()); + mCurrentBean.setPath(BaseUrlApi.BASE_URL + uploadBean.getPath()); + if (mPhotos.size() < 4) { + mPhotos.add(new AddPhotoBean()); + } + mPhotoAdapter.notifyDataSetChanged(); + mCurrentBean = null; + ToastUtils.showShort("上传成功."); } else { mCarCardPhotoId = uploadBean.getId(); Glide.with(mActivity) @@ -467,30 +532,7 @@ public class CheckRegisterCarActivity extends BaseActivity { } } }); -// Luban.with(mActivity) -//// .load(picPath) -//// .ignoreBy(100) -//// .setTargetDir(PathConfig.CATCH_PATH) -//// .filter(path -> !(TextUtils.isEmpty(path) || path.toLowerCase().endsWith(".gif"))) -//// .setCompressListener(new OnCompressListener() { -//// @Override -//// public void onStart() { -//// -//// } -//// -//// @Override -//// public void onSuccess(File file) { -//// ToastUtils.showLong(TimeUtils.getNowString()); -//// -//// } -//// -//// @Override -//// public void onError(Throwable e) { -//// dialog.disDialog(); -//// ToastUtils.showShort("图片上传失败,请稍后重试"); -//// } -//// }) -//// .launch(); + } @@ -1135,7 +1177,7 @@ public class CheckRegisterCarActivity extends BaseActivity { return false; } if (TextUtils.isEmpty(mPhotoCarId)) { - ToastUtils.showShort("请上传驾驶员照片"); + ToastUtils.showShort("请上传车辆以及车辆货物照片"); return false; } String trim = mEtCarCarry.getText().toString().trim(); @@ -1252,6 +1294,7 @@ public class CheckRegisterCarActivity extends BaseActivity { String strangCarId = sb.toString(); strangCarId = strangCarId.substring(0, strangCarId.length() - 1); params.put("strangerOrCarId", strangCarId); + mPhotoCarId = mPhotoCarId.substring(0, mPhotoIds.length() - 1); params.put("photoRecord", mPhotoCarId); return params; } diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/FlowTransactActivity.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/FlowTransactActivity.java index 1f050dd..75a435d 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/FlowTransactActivity.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/activitys/enteroutexamine/FlowTransactActivity.java @@ -1,7 +1,9 @@ package com.sucstepsoft.modulecheck.activitys.enteroutexamine; +import android.annotation.SuppressLint; import android.app.AlertDialog; import android.app.ProgressDialog; +import android.graphics.Color; import android.support.v7.widget.GridLayoutManager; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; @@ -19,6 +21,8 @@ import com.alibaba.android.arouter.launcher.ARouter; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; import com.cjt2325.cameralibrary.videorecord.AudioRecordButton; +import com.jakewharton.rxbinding2.widget.RxTextView; +import com.jcodecraeer.xrecyclerview.XRecyclerView; import com.sucstepsoft.cm_utils.constant.PathConfig; import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi; import com.sucstepsoft.cm_utils.core.retrofit_net.RetrofitManager; @@ -28,6 +32,10 @@ import com.sucstepsoft.cm_utils.core.retrofit_net.conver.BaseObserver; import com.sucstepsoft.cm_utils.core.retrofit_net.conver.RxTransformer; import com.sucstepsoft.cm_utils.core.widget.base.BaseActivity; import com.sucstepsoft.cm_utils.core.widget.base.BaseShowPhotoAdapter; +import com.sucstepsoft.cm_utils.core.widget.views.BaseListDialog; +import com.sucstepsoft.cm_utils.core.widget.views.CustomPickerBuilder; +import com.sucstepsoft.cm_utils.core.widget.views.CustomPickerView; +import com.sucstepsoft.cm_utils.core.widget.views.ItemSplitDivider; import com.sucstepsoft.cm_utils.core.widget.views.LoadingDialog; import com.sucstepsoft.cm_utils.utils.LogUtils; import com.sucstepsoft.cm_utils.utils.ToastUtils; @@ -35,20 +43,29 @@ import com.sucstepsoft.cm_utils.utils.UIUtil; import com.sucstepsoft.cm_utils.utils.UserInfoSPUtils; import com.sucstepsoft.modulecheck.R; import com.sucstepsoft.modulecheck.R2; +import com.sucstepsoft.modulecheck.data.beans.CarFollowBean; +import com.sucstepsoft.modulecheck.data.beans.CheckCarBean; import com.sucstepsoft.modulecheck.data.beans.CheckRecordDetailBean; +import com.sucstepsoft.modulecheck.data.beans.CheckRecordDetailListBean; +import com.sucstepsoft.modulecheck.data.beans.LeadBean; import com.sucstepsoft.modulecheck.data.beans.ProcessBean; import com.sucstepsoft.modulecheck.data.net.CheckApiService; +import com.sucstepsoft.modulecheck.widget.adapter.enterexamine.CarFollowAdapter; import com.sucstepsoft.modulecheck.widget.adapter.enterexamine.FlowProcessAdapter; +import com.sucstepsoft.modulecheck.widget.adapter.enterexamine.RecordDetailAdapter; +import com.sucstepsoft.modulecheck.widget.adapter.other.MultiCLeaderAdapter; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.TimeUnit; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.Unbinder; +import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.Disposable; /** @@ -93,8 +110,8 @@ public class FlowTransactActivity extends BaseActivity { TextView mTvFieldName; @BindView(R2.id.tv_cop) TextView mTvCop; - @BindView(R2.id.iv_photo) - ImageView mIvPhoto; + // @BindView(R2.id.iv_photo) +// ImageView mIvPhoto; @BindView(R2.id.iv_car_card) ImageView mIvCarCard; @BindView(R2.id.iv_col_car_hint) @@ -107,16 +124,40 @@ public class FlowTransactActivity extends BaseActivity { TextView mTvInfo; @BindView(R2.id.tv_pro) TextView mTvPro; + @BindView(R2.id.rlv_photo) + RecyclerView mRlvPhoto; @BindView(R2.id.ll_examine) LinearLayout mLlExamine;//审核人 + @BindView(R2.id.tv_examine) + TextView mTvExamine; + @BindView(R2.id.rlv_list) + RecyclerView mRlvList; private Unbinder mBind; private List mProcessBeans = new ArrayList<>(); private FlowProcessAdapter mAdapter; + + private List mData = new ArrayList<>(); + private RecordDetailAdapter mCarPersonAdapter; private String mProcessId; private String mId; private Disposable mD; private Disposable mDisposable; + private int mExamineCurrentPageNo = 1; + private CustomPickerView mExaminePicker; + private XRecyclerView mExamineRlv; + private MultiCLeaderAdapter mExamineAdapter; + + private ArrayList mExamines = new ArrayList<>(); + private String mExamineId = ""; + private boolean mIsShowExamine = false; + + + @Override + protected int setLayoutId() { + return R.layout.activity_flow_transact; + } + @Override public void initData() { super.initData(); @@ -126,6 +167,16 @@ public class FlowTransactActivity extends BaseActivity { mProcessId = getIntent().getStringExtra("processId"); mId = getIntent().getStringExtra("id"); int type = getIntent().getIntExtra("type", -1); + mCarPersonAdapter = new RecordDetailAdapter(mActivity, mData); + mRlvList.setLayoutManager(new LinearLayoutManager(mActivity) { + @Override + public boolean canScrollVertically() { + return false; + } + }); + mRlvList.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL)); + mRlvList.setAdapter(mCarPersonAdapter); + doRequestProcessById(mProcessId); doDetailInfoByProcessId(mProcessId); mAdapter = new FlowProcessAdapter(mActivity, mProcessBeans); @@ -155,10 +206,139 @@ public class FlowTransactActivity extends BaseActivity { /** * 选择审核人 */ + @SuppressLint("CheckResult") private void showExaminePerson() { + mExaminePicker = new CustomPickerBuilder(mActivity, (p1, p2, p3, v) -> { + }) + .setLayoutRes(R.layout.picker_custom_car_type, v -> { + TextView mTvFinish = v.findViewById(R.id.tv_finish); + TextView mTvCancel = v.findViewById(R.id.tv_cancel); + EditText mEtSearch = v.findViewById(R.id.et_search); + mExamineRlv = v.findViewById(R.id.rlv_choose); + if (!TextUtils.isEmpty(mExamineId)) { + for (int i = 0; i < mExamines.size(); i++) { + if (mExamines.get(i).getUsername().equals(mExamineId)) { + mExamines.get(i).setCheck(true); + } else { + mExamines.get(i).setCheck(false); + } + } + } + mExamineAdapter = new MultiCLeaderAdapter(mActivity, mExamines, true); + mExamineRlv.setLayoutManager(new LinearLayoutManager(mActivity)); + mExamineRlv.addItemDecoration(new ItemSplitDivider(mActivity, LinearLayoutManager.VERTICAL, 3, + Color.parseColor("#F5F5F5"))); + mExamineRlv.setAdapter(mExamineAdapter); + mExamineRlv.setPullRefreshEnabled(false); + mExamineRlv.setFootViewText(getResources().getString(R.string.loading), + getResources().getString(R.string.nomore_data)); + mExamineRlv.setLoadingListener(new XRecyclerView.LoadingListener() { + @Override + public void onRefresh() { + } + + @Override + public void onLoadMore() { + LogUtils.e(mExamineCurrentPageNo + ""); + String content = mEtSearch.getText().toString().trim(); + requestLeadDatas(content, mExamineCurrentPageNo); + } + }); + mTvFinish.setOnClickListener(v1 -> { + List chooseData = mExamineAdapter.getChooseData(); + if (chooseData != null && chooseData.size() > 0) { + LeadBean mLeadBean = chooseData.get(0); + mTvExamine.setText(mLeadBean.getName()); + mExamineId = mLeadBean.getUsername(); + mExaminePicker.dismiss(); + } else { + ToastUtils.showShort("请选择审核人."); + } + }); + mTvCancel.setText("取消"); + mTvCancel.setOnClickListener(v1 -> mExaminePicker.dismiss()); + RxTextView.textChanges(mEtSearch) + .debounce(1, TimeUnit.SECONDS) + .skip(1) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(charSequence -> { + if (!TextUtils.isEmpty(charSequence)) { + requestLeadDatas(charSequence.toString(), 1); + } else { + requestLeadDatas("", 1); + } + }); + }) + .isDialog(true) + .build(); + mExaminePicker.show(); + if (mExamines.size() <= 0) { + requestLeadDatas("", 1); + } } + /** + * 获取带领人数据 + */ + private void requestLeadDatas(String keyWord, int s) { + mExamineCurrentPageNo = s; + Map params = new HashMap<>(); + params.put("pageNo", s + ""); + params.put("type", "2"); + if (!TextUtils.isEmpty(keyWord)) { + params.put("query", keyWord); + } + RetrofitManager.getInstance() + .create(CheckApiService.class) + .getLeadList(params) + .compose(RxTransformer.getListTransformer()) + .subscribe(new BaseObserver>() { + @Override + public void error(ApiException e) { + if ("202".equals(e.getCode())) { + reStartApp(); + } + LogUtils.e(e.getErrorMsg()); + } + + @Override + public void onSubscribe(Disposable d) { + + } + + @Override + public void onNext(List leadBeans) { + LogUtils.e(leadBeans.size()); + if (leadBeans != null && leadBeans.size() > 0) { + if (mExamineCurrentPageNo == 1) { + mExamines = new ArrayList<>(leadBeans); + } else { + mExamines.addAll(leadBeans); + } + mExamineAdapter.setData(mExamines); + mExamineRlv.setNoMore(false); + } else { + mExamineRlv.setNoMore(true); + if (mExamineCurrentPageNo == 1) { + ToastUtils.showShort("未查询到相关信息."); + } + } + if (!TextUtils.isEmpty(mExamineId)) { + for (int i = 0; i < mExamines.size(); i++) { + if (mExamines.get(i).getUserId().equals(mExamineId)) { + mExamines.get(i).setCheck(true); + } else { + mExamines.get(i).setCheck(false); + } + } + } + mExamineCurrentPageNo++; + } + }); + } + + /** * 完成审批 * @@ -179,7 +359,12 @@ public class FlowTransactActivity extends BaseActivity { break; } } - + if ("同意".equals(opinion) && mIsShowExamine) { + if (TextUtils.isEmpty(mExamineId)) { + ToastUtils.showShort("请选择审核人"); + return; + } + } LoadingDialog dialog = new LoadingDialog(mActivity); dialog.showDialog(); Map params = new HashMap<>(); @@ -187,6 +372,7 @@ public class FlowTransactActivity extends BaseActivity { params.put("id", mId); params.put("opinion", opinion); params.put("state", i + ""); + params.put("assignee", mExamineId); RetrofitManager.getInstance() .create(CheckApiService.class) .doSaveHandle(params) @@ -227,11 +413,12 @@ public class FlowTransactActivity extends BaseActivity { RetrofitManager.getInstance() .create(CheckApiService.class) .getDataByProcessId(processId) - .compose(RxTransformer.getDataTransformer()) - .subscribe(new BaseObserver() { + .compose(RxTransformer.getBaseBeanTransformer()) + .subscribe(new BaseObserver>() { @Override public void error(ApiException e) { dialog.dismiss(); + refreshView(STATE_LOAD_ERROR); if ("202".equals(e.getCode())) { reStartApp(); } @@ -244,20 +431,95 @@ public class FlowTransactActivity extends BaseActivity { } @Override - public void onNext(CheckRecordDetailBean checkRecordDetailBean) { + public void onNext(BaseResponseBean baseBean) { dialog.dismiss(); - setDataToView(checkRecordDetailBean); + setDataToView(baseBean); + if (baseBean.getList() != null && baseBean.getList().size() > 0) { + mData = baseBean.getList(); + mCarPersonAdapter.setData(mData); + if ("1".equals(baseBean.getData().getType())) { + //车辆 + mCarPersonAdapter.addOnItemClickListener(bean -> { + if (TextUtils.isEmpty(bean.getBatchNumber())) { + ToastUtils.showShort("数据有误"); + } else { + showCarDetail(bean.getId(), bean.getBatchNumber()); + } + }); + } else { + //人员 + mCarPersonAdapter.addOnItemClickListener(bean -> { + ArrayList list = new ArrayList<>(); + list.add(bean.getFrontPhotoPath()); + ARouter.getInstance() + .build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) + .withStringArrayList("imgUrls", list) + .navigation(); + }); + } + } } }); } + + /** + * 根据批次号获取车辆详情 + * + * @param batchNumber + */ + private void showCarDetail(String id, String batchNumber) { + LoadingDialog dialog = new LoadingDialog(mActivity); + dialog.showDialog(); + Map params = new HashMap<>(); + params.put("id", id); + params.put("batchNumber", batchNumber); + RetrofitManager.getInstance() + .create(CheckApiService.class) + .getCarDetailById(params) + .compose(RxTransformer.getBaseBeanTransformer()) + .subscribe(new BaseObserver>() { + @Override + public void error(ApiException e) { + dialog.disDialog(); + mTvPublish.setVisibility(View.GONE); + if ("202".equals(e.getCode())) { + reStartApp(); + } + } + + @Override + public void onSubscribe(Disposable d) { + + } + + @Override + public void onNext(BaseResponseBean beans) { + dialog.disDialog(); + if (beans.getList() != null && beans.getList().size() > 0) { + showFollowPerson(beans.getList()); + } else { + ToastUtils.showShort("未查询到该车辆信息"); + } + } + }); + } + + private void showFollowPerson(List list) { + CarFollowAdapter adapter = new CarFollowAdapter(mActivity, list); + BaseListDialog detailDialog = new BaseListDialog(mActivity, adapter); + detailDialog.show(); + } + /** * 显示数据 * - * @param baseBean + * @param data */ - private void setDataToView(CheckRecordDetailBean baseBean) { - if (baseBean != null) { + private void setDataToView(BaseResponseBean data) { + + if (data != null) { + CheckRecordDetailBean baseBean = data.getData(); mTvCause.setText("进出事由 : " + baseBean.getCause()); mTvEndTime.setText("授权结束时间 : " + baseBean.getEndTime()); mTvStartTime.setText("授权开始时间 : " + baseBean.getStartTime()); @@ -269,29 +531,23 @@ public class FlowTransactActivity extends BaseActivity { mTvPro.setText("是否需要进入生产区域:无需进入"); } -// if (TextUtils.isEmpty(baseBean.getInform())) { -// mTvPer.setText("注意事项 : 未告知"); -// } else { -// if ("1".equals(baseBean.getInform())) { -// mTvPer.setText("注意事项 : 已告知"); -// } else { -// mTvPer.setText("注意事项 : 未告知"); -// } -// } - Glide.with(mActivity) - .load(BaseUrlApi.BASE_URL + baseBean.getPhotoRecordPath()) - .apply(new RequestOptions() - .error(R.drawable.ic_car_person_default) - .placeholder(R.drawable.ic_car_person_default)) - .into(mIvPhoto); - mIvPhoto.setOnClickListener(v -> { - ArrayList list = new ArrayList<>(); - list.add(baseBean.getPhotoRecordPath()); - ARouter.getInstance() - .build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) - .withStringArrayList("imgUrls", list) - .navigation(); - }); + if (baseBean.getPhotoRecordIdList() != null && baseBean.getPhotoRecordIdList().size() > 0) { + mRlvPhoto.setVisibility(View.VISIBLE); + List photos = new ArrayList(); + for (int i = 0; i < baseBean.getPhotoRecordIdList().size(); i++) { + photos.add(baseBean.getPhotoRecordIdList().get(i).getPath()); + } + BaseShowPhotoAdapter photoAdapter = new BaseShowPhotoAdapter(mActivity, photos); + GridLayoutManager manager = new GridLayoutManager(mActivity, 4, GridLayoutManager.VERTICAL, + false); + mRlvPhoto.setLayoutManager(manager); + mRlvPhoto.setAdapter(photoAdapter); + photoAdapter.addOnItemClickListener(photoBean -> ARouter.getInstance().build(PathConfig.PATH_MODULE_CMUTILS_PHOTO_SHOW) + .withSerializable("imgUrls", new ArrayList<>(photoAdapter.getData())) + .navigation()); + } else { + mRlvPhoto.setVisibility(View.GONE); + } if (TextUtils.isEmpty(baseBean.getType())) { mTvType.setText("进出类型 : 未知"); } else { @@ -299,7 +555,7 @@ public class FlowTransactActivity extends BaseActivity { mTvFieldName.setVisibility(View.VISIBLE); mTvFieldName.setText("进入监区 : " + baseBean.getFieldnNames()); mRlvTools.setVisibility(View.GONE); - mTvColHint.setText("驾驶员照片"); + mTvColHint.setText("车辆以及车辆货物照片"); mTvType.setText("进出类型 : 车辆进出"); mTvTools.setText("装载货物 : " + baseBean.getCarryTools()); mTvCop.setVisibility(View.VISIBLE); @@ -413,6 +669,14 @@ public class FlowTransactActivity extends BaseActivity { @Override public void onNext(List processBeans) { if (processBeans != null && processBeans.size() > 0) { + mIsShowExamine = false; + for (int i = 0; i < processBeans.size(); i++) { + ProcessBean processBean = processBeans.get(i); + if (processBean.getOrder() == 1 && "狱政科审批".equals(processBean.getActName())) { + mIsShowExamine = true; + } + } + mLlExamine.setVisibility(mIsShowExamine ? View.VISIBLE : View.GONE); refreshView(STATE_LOAD_SUCCESS); Collections.sort(processBeans, new ProcessBean()); mAdapter.setData(processBeans); @@ -439,10 +703,6 @@ public class FlowTransactActivity extends BaseActivity { alertDialog.show(); } - @Override - protected int setLayoutId() { - return R.layout.activity_flow_transact; - } @Override protected void onDestroy() { diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/AlreadyFlowBean.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/AlreadyFlowBean.java index 02f0cea..718a6fa 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/AlreadyFlowBean.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/AlreadyFlowBean.java @@ -12,6 +12,24 @@ public class AlreadyFlowBean { private String dgrmResourceName; private String id; private String processId; + private String initatorName; + private String assigneeNames; + + public String getInitatorName() { + return initatorName; + } + + public void setInitatorName(String initatorName) { + this.initatorName = initatorName; + } + + public String getAssigneeNames() { + return assigneeNames; + } + + public void setAssigneeNames(String assigneeNames) { + this.assigneeNames = assigneeNames; + } public int getOrder() { return order; diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CarPhotosListBean.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CarPhotosListBean.java new file mode 100644 index 0000000..6b6994d --- /dev/null +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CarPhotosListBean.java @@ -0,0 +1,38 @@ +package com.sucstepsoft.modulecheck.data.beans; + +public class CarPhotosListBean { + + /** + * path : uploadFiles/20240706/ed1fda12d8324904ac02f17bc0487ed1.jpeg + * id : 1084a5c660f04c629c06d00057fa698d + * type : 1 + */ + + private String path; + private String id; + private String type; + + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } +} diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CheckRecordDetailBean.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CheckRecordDetailBean.java index 09d6689..7274ed1 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CheckRecordDetailBean.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/CheckRecordDetailBean.java @@ -55,6 +55,15 @@ public class CheckRecordDetailBean implements Serializable { private String certificatesPhotoId; private String certificatesPhotoPath; private String production; + private List photoRecordIdList; + + public List getPhotoRecordIdList() { + return photoRecordIdList; + } + + public void setPhotoRecordIdList(List photoRecordIdList) { + this.photoRecordIdList = photoRecordIdList; + } public String getProduction() { return production; diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/FinishFlowBean.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/FinishFlowBean.java index 8a81b67..7a6150c 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/FinishFlowBean.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/FinishFlowBean.java @@ -29,6 +29,25 @@ public class FinishFlowBean { private String startTime; private String endTime; private int order; + private String initatorName; + private String assigneeNames; + + public String getInitatorName() { + return initatorName; + } + + public void setInitatorName(String initatorName) { + this.initatorName = initatorName; + } + + public String getAssigneeNames() { + return assigneeNames; + } + + public void setAssigneeNames(String assigneeNames) { + this.assigneeNames = assigneeNames; + } + public String getInitator() { return initator; diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/WaitFlowBean.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/WaitFlowBean.java index de9ba60..5b809bc 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/WaitFlowBean.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/beans/WaitFlowBean.java @@ -13,6 +13,15 @@ public class WaitFlowBean { private String dgrmResourceName; private String id; private String processId; + private String initatorName; + + public String getInitatorName() { + return initatorName; + } + + public void setInitatorName(String initatorName) { + this.initatorName = initatorName; + } public int getOrder() { return order; diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/net/CheckApiService.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/net/CheckApiService.java index aeb9f82..cff3519 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/net/CheckApiService.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/data/net/CheckApiService.java @@ -89,7 +89,7 @@ public interface CheckApiService { @Headers({"base_url_name:check"}) @FormUrlEncoded @POST("appRegisterRecord/getDataByProcessId") - Observable> getDataByProcessId(@Field("processId") String id); + Observable> getDataByProcessId(@Field("processId") String id); @Headers({"base_url_name:check"}) @FormUrlEncoded diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/AlreadyFlowAdapter.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/AlreadyFlowAdapter.java index 4274f02..ab78025 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/AlreadyFlowAdapter.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/AlreadyFlowAdapter.java @@ -34,8 +34,8 @@ public class AlreadyFlowAdapter extends BaseRecyclerAdapter } holer.mTvName.setText(String.format(mContext.getResources().getString(R.string.car_name), mData.get(i).getCompany())); holer.mTvCarNumber.setText(String.format(mContext.getResources().getString(R.string.car_number), mData.get(i).getPlateNumber())); + RequestOptions options = new RequestOptions() + .error(com.sucstepsoft.cm_utils.R.drawable.ic_img_default) + .placeholder(com.sucstepsoft.cm_utils.R.drawable.ic_loading); + Glide.with(mContext) + .load(BaseUrlApi.BASE_URL + mData.get(i).getCarFrontPhotoPath()) + .apply(options) + .into(holer.mIvImg); if (mOnItemEditOrDelete != null) { holer.mBtnDel.setOnClickListener(v -> mOnItemEditOrDelete.onDelete(mData.get(i), i)); holer.mBtnDel.setVisibility(View.GONE); diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/CarShowAdapter.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/CarShowAdapter.java index 6fe3252..f027ce7 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/CarShowAdapter.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/CarShowAdapter.java @@ -6,6 +6,9 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.bumptech.glide.Glide; +import com.bumptech.glide.request.RequestOptions; +import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi; import com.sucstepsoft.cm_utils.core.widget.base.BaseRecyclerAdapter; import com.sucstepsoft.modulecheck.R; import com.sucstepsoft.modulecheck.data.beans.CheckCarBean; @@ -48,6 +51,13 @@ public class CarShowAdapter extends BaseRecyclerAdapter // } else { // holer.mTvCreateTime.setText(String.format(mContext.getResources().getString(R.string.remark_1), mData.get(i).getRemark())); // } + RequestOptions options = new RequestOptions() + .error(com.sucstepsoft.cm_utils.R.drawable.ic_img_default) + .placeholder(com.sucstepsoft.cm_utils.R.drawable.ic_loading); + Glide.with(mContext) + .load(BaseUrlApi.BASE_URL + mData.get(i).getCarFrontPhotoPath()) + .apply(options) + .into(holer.mIvImg); holer.mTvName.setText(String.format(mContext.getResources().getString(R.string.car_name), mData.get(i).getCompany())); holer.mTvCarNumber.setText(String.format(mContext.getResources().getString(R.string.car_number), mData.get(i).getPlateNumber())); if (mType == 1) { diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/FinishFlowAdapter.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/FinishFlowAdapter.java index b52708f..3c17e55 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/FinishFlowAdapter.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/FinishFlowAdapter.java @@ -34,7 +34,7 @@ public class FinishFlowAdapter extends BaseRecyclerAdapter mOnDeleteListener.onDelete(mData.get(i), i)); } } + RequestOptions options = new RequestOptions() + .error(com.sucstepsoft.cm_utils.R.drawable.ic_img_default) + .placeholder(com.sucstepsoft.cm_utils.R.drawable.ic_loading); + Glide.with(mContext) + .load(BaseUrlApi.BASE_URL + mData.get(i).getFrontPhotoPath()) + .apply(options) + .into(holder.mIvImg); holder.mTvCadNumber.setText(String.format(mContext.getResources().getString(R.string.card_number), mData.get(i).getIdentity())); } diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/PersonShowAdapter.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/PersonShowAdapter.java index 5f53d94..b1b8573 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/PersonShowAdapter.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/enterexamine/PersonShowAdapter.java @@ -6,6 +6,9 @@ import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.bumptech.glide.Glide; +import com.bumptech.glide.request.RequestOptions; +import com.sucstepsoft.cm_utils.core.retrofit_net.BaseUrlApi; import com.sucstepsoft.cm_utils.core.widget.base.BaseRecyclerAdapter; import com.sucstepsoft.modulecheck.R; import com.sucstepsoft.modulecheck.data.beans.CheckPersonBean; @@ -55,7 +58,13 @@ public class PersonShowAdapter extends BaseRecyclerAdapter mData.get(i).setCheck(isChecked)); + RequestOptions options = new RequestOptions() + .error(com.sucstepsoft.cm_utils.R.drawable.ic_img_default) + .placeholder(com.sucstepsoft.cm_utils.R.drawable.ic_loading); + Glide.with(mContext) + .load(BaseUrlApi.BASE_URL + mData.get(i).getCarFrontPhotoPath()) + .apply(options) + .into(holder.mIvImg); if (mData.get(i).isCheck()) { holder.mCbChoose.setChecked(true); } diff --git a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/other/MultiCLeaderAdapter.java b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/other/MultiCLeaderAdapter.java index 7b25f57..891430e 100755 --- a/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/other/MultiCLeaderAdapter.java +++ b/modulecheck/src/main/java/com/sucstepsoft/modulecheck/widget/adapter/other/MultiCLeaderAdapter.java @@ -38,6 +38,7 @@ public class MultiCLeaderAdapter extends BaseRecyclerAdapter - - + android:textSize="18sp" + android:textColor="@color/black" + android:text="车辆证件照" /> + android:layout_marginTop="10dp" + android:textSize="18sp" + android:textColor="@color/black" + tools:text="车辆以及车辆货物照片" /> + + + -