diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d974c74..5a9cf45 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -250,6 +250,11 @@
android:configChanges="keyboardHidden|orientation|locale"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan|stateHidden" />
+
@@ -347,7 +352,7 @@
android:windowSoftInputMode="adjustPan|stateHidden" />
@@ -391,10 +396,11 @@
+ android:launchMode="singleTask"
+ android:screenOrientation="portrait">
+
diff --git a/app/src/main/java/com/dahe/gldriver/bean/OcrBean.kt b/app/src/main/java/com/dahe/gldriver/bean/OcrBean.kt
index 98913db..c27f1c3 100644
--- a/app/src/main/java/com/dahe/gldriver/bean/OcrBean.kt
+++ b/app/src/main/java/com/dahe/gldriver/bean/OcrBean.kt
@@ -18,6 +18,7 @@ data class OcrPersonBean(
data class Data(
val face: Face,
val back: Back,
+ val info: List,
//银行卡
val bankName: String,
@@ -59,6 +60,15 @@ data class Face(
)
+data class CarInfo(
+ val key: String,
+ val key_loc: String,
+ val key_prob: String,
+ val value: String,
+ val value_loc: String,
+ val value_prob: String
+)
+
data class DataX(
var address: String = "",
val birthDate: String = "",
diff --git a/app/src/main/java/com/dahe/gldriver/callback/OnOcrPicResultListener.kt b/app/src/main/java/com/dahe/gldriver/callback/OnOcrPicResultListener.kt
index a112025..d6e79cc 100644
--- a/app/src/main/java/com/dahe/gldriver/callback/OnOcrPicResultListener.kt
+++ b/app/src/main/java/com/dahe/gldriver/callback/OnOcrPicResultListener.kt
@@ -13,6 +13,11 @@ fun interface OnOcrPicResultListener {
fun onSuccResult(picPath: PicPath, result: OcrPersonBean?)
}
+
+fun interface OnOcrCarNumListener {
+ fun onSuccResult(carNum: String)
+}
+
data class PicPath(
var locPic: String, var picPath: String
)
\ No newline at end of file
diff --git a/app/src/main/java/com/dahe/gldriver/ui/account/authteam/EditCaTeamActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/account/authteam/EditCaTeamActivity.kt
new file mode 100644
index 0000000..1c6f599
--- /dev/null
+++ b/app/src/main/java/com/dahe/gldriver/ui/account/authteam/EditCaTeamActivity.kt
@@ -0,0 +1,456 @@
+package com.dahe.gldriver.ui.account.authteam
+
+import android.os.Bundle
+import android.view.View
+import com.dahe.gldriver.R
+import com.dahe.gldriver.bean.AuthTeamBean
+import com.dahe.gldriver.bean.OcrPersonBean
+import com.dahe.gldriver.databinding.ActivityAuthTeamBinding
+import com.dahe.gldriver.net.BaseObserver
+import com.dahe.gldriver.net.DataManager
+import com.dahe.gldriver.net.RxHttpCallBack
+import com.dahe.gldriver.oss.OssServiceUtil
+import com.dahe.gldriver.ui.HomeActivity
+import com.dahe.gldriver.utils.OcrUtils
+import com.dahe.mylibrary.base.BaseActivity
+import com.dahe.mylibrary.net.CommonResponseBean
+import com.dahe.mylibrary.utils.ActivityUtils
+import com.dahe.mylibrary.utils.ImageLoader
+import com.dahe.mylibrary.utils.PickerUtils
+import com.dahe.mylibrary.utils.PopsUtils
+import com.dahe.mylibrary.utils.TimeUtil
+import com.dahe.mylibrary.utils.ToastUtils
+import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
+import io.reactivex.rxjava3.schedulers.Schedulers
+
+/**
+ * @ClassName AuthTeamActivity
+ * @Author john
+ * @Date 2024/1/25 16:44
+ * @Description 个人车队-编辑
+ */
+class EditCaTeamActivity : BaseActivity(), View.OnClickListener {
+ private var checkTeamType = 1 //1代表运输公司,0代表个人车队
+
+ var ossServiceUtil: OssServiceUtil = OssServiceUtil.getInstance()
+
+ var upComInfoBean: AuthTeamBean = AuthTeamBean("1")//企业车队
+ var upPerInfoBean: AuthTeamBean = AuthTeamBean("0")//个人车队
+
+ override fun initView(savedInstanceState: Bundle?) {
+ setStatusBarColor(R.color.white)
+ setTitleBar("身份认证", true)
+ binding.run {
+ rgTeam.setOnCheckedChangeListener { _, i ->
+ changeTeamType(if (i == binding.rbCom.id) 1 else 0)
+ }
+ //营业执照选择。ocr识别
+ ivBusiness.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrBusinessCard(mContext, this@EditCaTeamActivity) { picPath, result ->
+ upComInfoBean.businessLicensePhoneUrl = picPath.picPath
+
+ result?.data?.run {
+ upComInfoBean.businessLicenseCreditCode = creditCode
+ upComInfoBean.businessLicenseEffectiveStart =
+ TimeUtil.changeDateNoneFormat(validFromDate)
+ upComInfoBean.businessLicenseEffectiveEnd =
+ TimeUtil.changeDateNoneFormat(validToDate)
+ }
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivBusiness)
+ }
+ }
+
+ //运输公司 本人身份证
+ ivComFront.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrPerson(mContext, this@EditCaTeamActivity) { picPath, result ->
+ if (result?.data?.face == null) {
+ ToastUtils.showToast(mContext, "请选择正确证件照片")
+ return@ocrPerson
+ }
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivComFront)
+ result?.data?.face?.data?.run {
+ etName.setText(name)
+ etId.setText(idNumber)
+ upComInfoBean.run {
+ idcardNo = idNumber
+ idcardName = name
+ idcardSex = if (sex == "男") "1" else "2"
+ idcardEthnicity = ethnicity
+ idcardFrontUrl = picPath.picPath
+ idcardAddress = address
+ }
+ }
+ }
+ }
+
+ ivComBack.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrPerson(mContext, this@EditCaTeamActivity) { picPath, result ->
+ if (result?.data?.back == null) {
+ ToastUtils.showToast(mContext, "请选择正确证件照片")
+ return@ocrPerson
+ }
+
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivComBack)
+ result?.data?.back?.data?.run {
+ upComInfoBean.run {
+// idcardEffectiveStart = TimeUtil.changeDateFormat(split[0])
+// idcardEffectiveEnd = if (split.size == 2) TimeUtil.changeDateFormat(split[1]) else ""
+ idcardBackUrl = picPath.picPath
+ }
+ if (validPeriod.contains("-")) {
+ val split = validPeriod.split("-")
+ tvStart.text = TimeUtil.changeDateFormat(split[0])
+ tvEnd.text =
+ if (split.size == 2) TimeUtil.changeDateFormat(split[1]) else ""
+ }
+ if (validPeriod?.contains("长期") == true) {
+ val split = validPeriod.split("长期")
+ binding.run {
+ tvStart.text =
+ TimeUtil.changeDateFormat(split[0])
+ tvEnd.text = "长期"
+ }
+ }
+ }
+ }
+ }
+ //个人车队 本人身份证
+ ivFront.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrPerson(mContext, this@EditCaTeamActivity) { picPath, result ->
+ if (result?.data?.face == null) {
+ ToastUtils.showToast(mContext, "请选择正确证件照片")
+ return@ocrPerson
+ }
+
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivFront)
+ result?.data?.face?.data?.run {
+ etPerName.setText(name)
+ etPerId.setText(idNumber)
+
+ upPerInfoBean.run {
+ idcardNo = idNumber
+ idcardName = name
+ idcardSex = if (sex == "男") "1" else "2"
+ idcardEthnicity = ethnicity
+ idcardFrontUrl = picPath.picPath
+ idcardAddress = address
+ }
+ }
+ }
+ }
+
+ //个人车队 本人身份证
+ ivBack.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrPerson(mContext, this@EditCaTeamActivity) { picPath, result ->
+ if (result?.data?.back == null) {
+ ToastUtils.showToast(mContext, "请选择正确证件照片")
+ return@ocrPerson
+ }
+
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivBack)
+ result?.data?.back?.data?.run {
+ upPerInfoBean.run {
+ idcardBackUrl = picPath.picPath
+ }
+ if (validPeriod.contains("-")) {
+ val split = validPeriod.split("-")
+ tvPerStart.text = TimeUtil.changeDateFormat(split[0])
+ tvPerEnd.text =
+ if (split.size == 2) TimeUtil.changeDateFormat(split[1]) else ""
+ }
+
+ if (validPeriod?.contains("长期") == true) {
+ val split = validPeriod.split("长期")
+ binding.run {
+ tvPerStart.text =
+ TimeUtil.changeDateFormat(split[0])
+ tvPerEnd.text = "长期"
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * 个人银行卡
+ */
+ ivBank.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrBankCard(mContext, this@EditCaTeamActivity) { picPath, result ->
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivBank)
+ result?.data?.run {
+ etPerBankId.setText(cardNumber)
+ tvPerBankName.setText(bankName)
+ upPerInfoBean.run {
+ captainBankcardNumber = cardNumber
+ captainBankcardPhotoUrl = picPath.picPath
+ }
+ }
+ }
+ }
+ //道路运输许可证
+ ivRoad.setOnClickListener {
+ OcrUtils.getInstance()
+ .noOcrUpPic(mContext, this@EditCaTeamActivity) { picPath, ocrResult ->
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivRoad)
+ upComInfoBean.roadLicensePhotoUrl = picPath.picPath
+ }
+ }
+
+ //公司银行卡
+ ivComBank.setOnClickListener {
+ OcrUtils.getInstance()
+ .ocrBankCard(mContext, this@EditCaTeamActivity) { picPath, result ->
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, picPath.locPic, 12, ivComBank)
+ result?.data?.run {
+ binding.let {
+ it.etComBankId.setText(cardNumber)
+ it.etComBankName.setText(bankName)
+ }
+ upComInfoBean.run {
+ captainBankcardNumber = cardNumber
+ captainBankcardName = bankName
+ captainBankcardPhotoUrl = picPath.picPath
+ }
+ }
+ }
+ }
+
+ tvComDate.setOnClickListener {
+ PickerUtils.getInstance()
+ .showDateSim(this@EditCaTeamActivity, "请选择有效期至") { date ->
+ tvComDate.text = date
+ }
+ }
+
+ tvPerStart.setOnClickListener {
+ PickerUtils.getInstance()
+ .showDate(this@EditCaTeamActivity, "请选择起始日期") { date ->
+ tvPerStart.text = date
+ }
+ }
+
+ tvPerEnd.setOnClickListener {
+ PickerUtils.getInstance()
+ .showDateSim(this@EditCaTeamActivity, "请选择有效期至") { date ->
+ tvPerEnd.text = date
+ }
+ }
+
+ btnOk.setOnClickListener(this@EditCaTeamActivity)
+
+ /**
+ * 运输公司身份证开始日期
+ */
+ tvStart.setOnClickListener {
+ PickerUtils.getInstance()
+ .showDate(this@EditCaTeamActivity, "请选择起始日期") { date ->
+ tvStart.text = date
+ }
+ }
+
+ /**
+ * 运输公司身份证截止日期
+ */
+ tvEnd.setOnClickListener {
+ PickerUtils.getInstance().showDateSim(this@EditCaTeamActivity, "请选择有效期至") {
+ tvEnd.text = it
+ }
+ }
+ }
+ }
+
+ override fun initDate() {
+ }
+
+ private fun changeTeamType(type: Int) {
+ checkTeamType = type
+ if (1 == checkTeamType) {
+ binding.llCom.visibility = View.VISIBLE
+ binding.llPerson.visibility = View.GONE
+ } else {
+ binding.llCom.visibility = View.GONE
+ binding.llPerson.visibility = View.VISIBLE
+ }
+ }
+
+ override fun onClick(view: View?) {
+ super.onClick(view)
+ when (view?.id) {
+ binding.btnOk.id -> {
+ subMit()
+ }
+
+// binding.ivBusiness.id -> {}
+// binding.ivComFront.id -> {}
+// binding.ivComBack.id -> {}
+// binding.ivComBank.id -> {}
+// binding.tvComDate.id -> {}
+// binding.tvPerStart.id -> {}
+// binding.ivFront.id -> {}
+// binding.ivBack.id -> {}
+// binding.ivBank.id -> {}
+// binding.ivRoad.id -> {}
+
+ }
+ }
+
+ private fun subMit() {
+ binding.run {
+ if (checkTeamType == 1) {//运输公司
+ //道路运输相关
+ upComInfoBean.roadLicense = etRootId.text.toString().trim()
+ upComInfoBean.roadLicenseValidity = tvComDate.text.toString().trim()
+ //银行卡相关信息
+ upComInfoBean.captainBankcardNumber = etComBankId.text.toString().trim()
+ upComInfoBean.captainBankcardName = etComBankName.text.toString().trim()
+ //身份证相关信息
+ upComInfoBean.idcardName = etName.text.toString().trim()
+ upComInfoBean.idcardNo = etId.text.toString().trim()
+ upComInfoBean.idcardEffectiveStart = tvStart.text.toString().trim()
+ if ("长期" == tvEnd.text.toString().trim()) {
+ upComInfoBean.idcardIsEndless = "1"
+ } else {
+ upComInfoBean.idcardEffectiveEnd = tvEnd.text.toString().trim()
+ }
+
+ if (upComInfoBean.roadLicense.isNullOrEmpty() || upComInfoBean.roadLicenseValidity.isNullOrEmpty() ||
+ upComInfoBean.businessLicensePhoneUrl.isNullOrEmpty() || upComInfoBean.roadLicensePhotoUrl.isNullOrEmpty() ||
+ upComInfoBean.captainBankcardPhotoUrl.isNullOrEmpty() || upComInfoBean.idcardFrontUrl.isNullOrEmpty() ||
+ upComInfoBean.idcardBackUrl.isNullOrEmpty() ||
+ upComInfoBean.captainBankcardNumber.isNullOrEmpty() || upComInfoBean.captainBankcardName.isNullOrEmpty() ||
+ upComInfoBean.idcardName.isNullOrEmpty() || upComInfoBean.idcardNo.isNullOrEmpty() ||
+ upComInfoBean.idcardEffectiveStart.isNullOrEmpty()
+ ) {
+ ToastUtils.showToast(mContext, "请完善信息")
+ return@run
+ }
+
+ } else {
+ //身份证相关信息
+ upPerInfoBean.idcardNo = etPerId.text.toString().trim()
+ upPerInfoBean.idcardName = etPerName.text.toString().trim()
+ upPerInfoBean.idcardEffectiveStart = tvPerStart.text.toString().trim()
+ if ("长期" == tvPerEnd.text.toString().trim()) {
+ upPerInfoBean.idcardIsEndless = "1"
+ } else {
+ upPerInfoBean.idcardEffectiveEnd = tvEnd.text.toString().trim()
+ }
+ //银行卡相关信息
+ upPerInfoBean.captainBankcardNumber = etPerBankId.text.toString().trim()
+ upPerInfoBean.captainBankcardName = tvPerBankName.text.toString().trim()
+
+
+ if (upPerInfoBean.idcardNo.isNullOrEmpty() || upPerInfoBean.idcardName.isNullOrEmpty() ||
+ upPerInfoBean.idcardEffectiveStart.isNullOrEmpty() || upPerInfoBean.captainBankcardPhotoUrl.isNullOrEmpty() ||
+ upPerInfoBean.idcardFrontUrl.isNullOrEmpty() || upPerInfoBean.idcardBackUrl.isNullOrEmpty() ||
+ upPerInfoBean.captainBankcardNumber.isNullOrEmpty() || upPerInfoBean.captainBankcardName.isNullOrEmpty()
+ ) {
+ ToastUtils.showToast(mContext, "请完善信息")
+ return@run
+ }
+ }
+
+ DataManager.getInstance()
+ .authenticationCaptain(if (checkTeamType == 1) upComInfoBean else upPerInfoBean)
+ .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
+ .subscribe(
+ BaseObserver(
+ mContext,
+ object : RxHttpCallBack(this@EditCaTeamActivity) {
+ override fun onSuccess(t: CommonResponseBean) {
+ super.onSuccess(t)
+ ActivityUtils.startActivity(mContext, HomeActivity::class.java)
+ }
+ })
+ )
+ }
+
+ }
+
+
+ private fun selBankPic(picType: Int = 0) {
+ PopsUtils.getInstance().showSimSelPic(mContext) { it ->
+ ossServiceUtil.run {
+ asyncPutImage(it[0].realPath, this@EditCaTeamActivity)
+ setResultCallBack { data, oldPath ->
+ DataManager.getInstance().recognizeBankCard(oldPath)
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(
+ BaseObserver(mContext,
+ object : RxHttpCallBack(this@EditCaTeamActivity) {
+ override fun onSuccess(t: CommonResponseBean) {
+ super.onSuccess(t)
+ t.data.data?.run {
+// bankInfo.driverBankcardPhotoUrl = oldPath
+
+ binding.let {
+ it.etComBankId.setText(cardNumber)
+ it.etComBankName.setText(bankName)
+ }
+ }
+
+ }
+ })
+ )
+
+ }
+ }
+ ImageLoader.getInstance()
+ .loadRoundImage(mContext, it[0].realPath, 12, binding.ivComBank)
+ }
+ }
+
+ private fun selPerPic() {
+ PopsUtils.getInstance().showSimSelPic(mContext) {
+
+ ImageLoader.getInstance().loadRoundImage(mContext, it[0].realPath, 12, binding.ivFront)
+
+ ossServiceUtil.run {
+ asyncPutImage(it[0].realPath, this@EditCaTeamActivity)
+ setResultCallBack { data, oldPath ->
+ DataManager.getInstance().recognizeIdcard(oldPath)
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(
+ BaseObserver(mContext,
+ object : RxHttpCallBack(this@EditCaTeamActivity) {
+ override fun onSuccess(t: CommonResponseBean) {
+ super.onSuccess(t)
+ t.data.data.face?.data.let {
+ it?.run {
+// perInfoBean.run {
+// idcardNo = idNumber
+// idcardName = name
+// idcardSex = if (sex == "男") "1" else "2"
+// }
+ }
+ binding.run {
+ etName.setText(it?.idNumber)
+ etId.setText(it?.name)
+ }
+ }
+
+ }
+ })
+ )
+ }
+ }
+ }
+ }
+}
+
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt
index fbe7d6b..f301119 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt
@@ -6,12 +6,14 @@ import com.dahe.gldriver.R
import com.dahe.gldriver.adapter.GridItemAdapter
import com.dahe.gldriver.base.WebActivity
import com.dahe.gldriver.bean.GridBean
+import com.dahe.gldriver.bean.OcrPersonBean
import com.dahe.gldriver.databinding.FragmentMineBinding
import com.dahe.gldriver.net.BaseObserver
import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack
+import com.dahe.gldriver.oss.OssServiceUtil
import com.dahe.gldriver.ui.account.authperson.AuthPartyActivity
-import com.dahe.gldriver.ui.mine.activity.CarTeamActivity
+import com.dahe.gldriver.ui.mine.activity.CarTeamManActivity
import com.dahe.gldriver.ui.mine.activity.CarsManActivity
import com.dahe.gldriver.ui.mine.activity.ComProActivity
import com.dahe.gldriver.ui.mine.activity.DriverTeamsActivity
@@ -29,14 +31,12 @@ import com.dahe.mylibrary.base.BaseFragment
import com.dahe.mylibrary.callback.RefreshCallBack
import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ActivityUtils
-import com.dahe.mylibrary.utils.BaseUtils
import com.dahe.mylibrary.utils.ImageLoader
import com.dahe.mylibrary.utils.PhoneFormatCheckUtils
+import com.dahe.mylibrary.utils.PopsUtils
import com.dahe.mylibrary.utils.ToastUtils
-import com.tencent.bugly.crashreport.CrashReport
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.schedulers.Schedulers
-import kotlin.system.exitProcess
class MineFragment : BaseFragment(), View.OnClickListener, RefreshCallBack {
private val tools = mutableListOf(
@@ -107,7 +107,7 @@ class MineFragment : BaseFragment(), View.OnClickListener,
when (pos) {
0 -> {
if (SPUtils.instance.getUserInfo(mContext)?.isCarCaptain == "1") {//车队长
- ActivityUtils.startActivity(mContext, CarTeamActivity::class.java)
+ ActivityUtils.startActivity(mContext, CarTeamManActivity::class.java)
} else {//司机
ActivityUtils.startActivity(mContext, DriverTeamsActivity::class.java)
}
@@ -176,7 +176,6 @@ class MineFragment : BaseFragment(), View.OnClickListener,
7 -> {
ActivityUtils.startActivity(mContext,SettingActivity::class.java)
-// exitProcess(0)
}
}
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt
similarity index 95%
rename from app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt
rename to app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt
index 50145c5..782217a 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamActivity.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarTeamManActivity.kt
@@ -15,13 +15,11 @@ import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.ui.mine.InviteRecordActivity
import com.dahe.gldriver.ui.mine.fragment.CarsManFragment
import com.dahe.gldriver.ui.mine.fragment.DriversManFragment
-import com.dahe.gldriver.ui.waybill.fragment.AllWaybillFragment
import com.dahe.gldriver.utils.SPUtils
import com.dahe.mylibrary.base.BaseActivity
import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ActivityUtils
import com.dahe.mylibrary.utils.ImageLoader
-import com.dahe.mylibrary.utils.ToastUtils
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.schedulers.Schedulers
import net.lucode.hackware.magicindicator.FragmentContainerHelper
@@ -40,7 +38,7 @@ import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.ColorT
* @Date 2024/2/6 16:38
* @Description 车队长-车队管理
*/
-class CarTeamActivity : BaseActivity() {
+class CarTeamManActivity : BaseActivity() {
private val mFragmentContainerHelper = FragmentContainerHelper()
var mFragments = mutableListOf()
@@ -127,7 +125,8 @@ class CarTeamActivity : BaseActivity() {
val data = t.data
binding.run {
tvCapName.text = data.captainName
- tvStatu.text = if (data.isRealname == "0") "未实名" else "已实名"
+ tvStatu.text =
+ if (data.auditStatus == "100002") "审核中" else if (data.auditStatus == "100003") "审核通过" else if (data.auditStatus == "100001") "待认证" else "待认证"
ImageLoader.getInstance().loadCircleImage(mContext, data.avatar, ivHead)
}
}
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt
index bf26bdd..4450e12 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/CarsManActivity.kt
@@ -10,10 +10,12 @@ import com.dahe.gldriver.R
import com.dahe.gldriver.adapter.CarsAdapter
import com.dahe.gldriver.base.AppConfig
import com.dahe.gldriver.bean.CarBean
+import com.dahe.gldriver.bean.OcrPersonBean
import com.dahe.gldriver.databinding.ActivityCarsManBinding
import com.dahe.gldriver.net.BaseObserver
import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack
+import com.dahe.gldriver.oss.OssServiceUtil
import com.dahe.gldriver.ui.account.authperson.AuthDrivingActivity
import com.dahe.gldriver.utils.CommonPopUtils
import com.dahe.mylibrary.base.BaseActivity
@@ -21,7 +23,9 @@ import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
import com.dahe.mylibrary.utils.ActivityUtils
import com.dahe.mylibrary.utils.ConvertUtils
+import com.dahe.mylibrary.utils.ImageLoader
import com.dahe.mylibrary.utils.PopsUtils
+import com.dahe.mylibrary.utils.ToastUtils
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.schedulers.Schedulers
@@ -83,18 +87,6 @@ class CarsManActivity : BaseActivity() {
}
btnOk.setOnClickListener {
-// PopsUtils.getInstance().showSimSelPic(mContext){
- // DataManager.getInstance().recognizeCarNumber(oldPath)
-// .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
-// .subscribe(BaseObserver(mContext,object : RxHttpCallBack(){
-// override fun onSuccess(t: CommonResponseBean) {
-// super.onSuccess(t)
-// println("fff")
-// }
-// }))
-// }
-
-
ActivityUtils.startActivity(mContext, AuthDrivingActivity::class.java)
}
}
diff --git a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt
index b785e93..ba4dd35 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/waybill/activity/WaybillUpPicActivity.kt
@@ -15,6 +15,7 @@ import com.dahe.gldriver.net.DataManager
import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.oss.OssServiceUtil
import com.dahe.gldriver.utils.GDLocationUtils
+import com.dahe.gldriver.utils.OcrUtils
import com.dahe.gldriver.utils.OrderUtils
import com.dahe.mylibrary.adapter.GridImageAdapter
import com.dahe.mylibrary.adapter.GridImageAdapter.OnItemClickListener
@@ -23,6 +24,7 @@ import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ActivityUtils
import com.dahe.mylibrary.utils.LoadingUtils
import com.dahe.mylibrary.utils.PopsUtils
+import com.dahe.mylibrary.utils.ToastUtils
import com.dahe.mylibrary.weight.FullyGridLayoutManager
import com.dahe.mylibrary.weight.GlideEngine
import com.luck.picture.lib.basic.PictureSelector
@@ -92,25 +94,25 @@ class WaybillUpPicActivity : BaseActivity() {
OssServiceUtil.getInstance().run {
asyncPutImage(it[0].realPath, this@WaybillUpPicActivity)
setResultCallBack { data, oldPath ->
-// DataManager.getInstance().recognizeCarNumber(oldPath)
-// .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
-// .subscribe(BaseObserver(mContext,object : RxHttpCallBack(){
-// override fun onSuccess(t: CommonResponseBean) {
-// super.onSuccess(t)
-// println("fff")
-// }
-// }))
-
- picBean = WaybillPhoto()
- picBean.run {
- photoUrl = oldPath
- this.type = if (type == 1) "1" else "2"
- }
- if (upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" } == null) {
- upBean.waybillPhotoList.add(picBean)
- } else {
- upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" }!!.photoUrl =
- oldPath
+ OcrUtils.getInstance().ocrCarNumber(mContext, oldPath, this@WaybillUpPicActivity) { carNum ->
+ if (!carNum.isNullOrEmpty()) {
+ picBean = WaybillPhoto()
+ picBean.run {
+ photoUrl = oldPath
+ this.type = if (type == 1) "1" else "2"
+ }
+ if (upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" } == null) {
+ upBean.waybillPhotoList.add(picBean)
+ } else {
+ upBean.waybillPhotoList.find { it.type == if (type == 1) "1" else "2" }!!.photoUrl =
+ oldPath
+ }
+ } else {
+ ToastUtils.showToast(
+ mContext,
+ "未识别出车牌号码,请重新拍摄"
+ )
+ }
}
}
}
@@ -266,7 +268,8 @@ class WaybillUpPicActivity : BaseActivity() {
ActivityUtils.startActivity(
mContext,
WaybillSuccActivity::class.java,
- intent.extras)
+ intent.extras
+ )
//装货成功-开启轨迹上传
OrderUtils.getInstance().upLocation(mContext)
} else {
@@ -274,7 +277,8 @@ class WaybillUpPicActivity : BaseActivity() {
ActivityUtils.startActivity(
mContext,
WaybillSuccActivity::class.java,
- intent.extras)
+ intent.extras
+ )
}
}
}))
diff --git a/app/src/main/java/com/dahe/gldriver/utils/OcrUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/OcrUtils.kt
index e3f96e6..e833e87 100644
--- a/app/src/main/java/com/dahe/gldriver/utils/OcrUtils.kt
+++ b/app/src/main/java/com/dahe/gldriver/utils/OcrUtils.kt
@@ -3,6 +3,7 @@ package com.dahe.gldriver.utils
import android.content.Context
import androidx.appcompat.app.AppCompatActivity
import com.dahe.gldriver.bean.OcrPersonBean
+import com.dahe.gldriver.callback.OnOcrCarNumListener
import com.dahe.gldriver.callback.OnOcrPicResultListener
import com.dahe.gldriver.callback.PicPath
import com.dahe.gldriver.net.BaseObserver
@@ -60,7 +61,7 @@ class OcrUtils private constructor() {
LoadingUtils.instance.dissLoading()
if (t.code == 500) {
// if (t.msg.contains("code: 400, The image type does not match the API operation")) {
- ToastUtils.showToast(mContext, "图片识别失败,请重新上传")
+ ToastUtils.showToast(mContext, "图片识别失败,请重新上传")
// } else {
// ToastUtils.showToast(mContext, t.msg)
// }
@@ -109,10 +110,10 @@ class OcrUtils private constructor() {
LoadingUtils.instance.dissLoading()
if (t.code == 500) {
// if (t.msg.contains("code: 400, The image type does not match the API operation")) {
- ToastUtils.showToast(
- mContext,
- "图片识别失败,请重新上传"
- )
+ ToastUtils.showToast(
+ mContext,
+ "图片识别失败,请重新上传"
+ )
// } else {
// ToastUtils.showToast(mContext, t.msg)
// }
@@ -167,10 +168,10 @@ class OcrUtils private constructor() {
LoadingUtils.instance.dissLoading()
if (t.code == 500) {
// if (t.msg.contains("code: 400, The image type does not match the API operation")) {
- ToastUtils.showToast(
- mContext,
- "图片识别失败,请重新上传"
- )
+ ToastUtils.showToast(
+ mContext,
+ "图片识别失败,请重新上传"
+ )
// } else {
// ToastUtils.showToast(mContext, t.msg)
// }
@@ -223,10 +224,10 @@ class OcrUtils private constructor() {
LoadingUtils.instance.dissLoading()
if (t.code == 500) {
// if (t.msg.contains("code: 400, The image type does not match the API operation")) {
- ToastUtils.showToast(
- mContext,
- "图片识别失败,请重新上传"
- )
+ ToastUtils.showToast(
+ mContext,
+ "图片识别失败,请重新上传"
+ )
// } else {
// ToastUtils.showToast(mContext, t.msg)
// }
@@ -279,10 +280,10 @@ class OcrUtils private constructor() {
LoadingUtils.instance.dissLoading()
if (t.code == 500) {
// if (t.msg.contains("code: 400, The image type does not match the API operation")) {
- ToastUtils.showToast(
- mContext,
- "图片识别失败,请重新上传"
- )
+ ToastUtils.showToast(
+ mContext,
+ "图片识别失败,请重新上传"
+ )
// } else {
// ToastUtils.showToast(mContext, t.msg)
// }
@@ -300,54 +301,37 @@ class OcrUtils private constructor() {
* */
fun ocrCarNumber(
context: Context,
+ picPath: String,
activity: AppCompatActivity,
- listener: OnOcrPicResultListener
+ listener: OnOcrCarNumListener
) {
- PopsUtils.getInstance().showSimSelPic(context) { result ->
- //上传oss得到图片地址
- OssServiceUtil.getInstance().run {
- asyncPutImage(result[0].realPath, activity)
- setResultCallBack { data, oldPath ->
- DataManager.getInstance().recognizeCarNumber(oldPath)
- .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
- .subscribe(
- BaseObserver(
- context,
- object : RxHttpCallBack(activity) {
- override fun onSuccess(t: CommonResponseBean) {
- super.onSuccess(t)
- t.data?.let {
- listener.onSuccResult(
- PicPath(
- result[0].realPath,
- oldPath
- ), it
- )
- }
- }
+ DataManager.getInstance().recognizeCarNumber(picPath)
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(
+ BaseObserver(activity,
+ object : RxHttpCallBack() {
+ override fun onSuccess(t: CommonResponseBean) {
+ super.onSuccess(t)
+ if (t.data.data.info != null && t.data.data.info.isNotEmpty())
+ listener.onSuccResult(t.data.data.info[0].value)
+ }
- override fun onCodeError(
- mContext: Context?,
- t: CommonResponseBean
- ) {
+ override fun onCodeError(
+ mContext: Context?,
+ t: CommonResponseBean
+ ) {
// super.onCodeError(mContext, t)
- LoadingUtils.instance.dissLoading()
- if (t.code == 500) {
-// if (t.msg.contains("code: 400, The image type does not match the API operation")) {
- ToastUtils.showToast(
- mContext,
- "图片识别失败,请重新上传"
- )
-// } else {
-// ToastUtils.showToast(mContext, t.msg)
-// }
- }
- }
- })
- )
- }
- }
- }
+ LoadingUtils.instance.dissLoading()
+ if (t.code == 500) {
+ ToastUtils.showToast(
+ mContext,
+ "图片识别失败,请重新上传"
+ )
+ }
+ }
+ })
+ )
}
diff --git a/app/src/main/res/layout/activity_auth_team_edit.xml b/app/src/main/res/layout/activity_auth_team_edit.xml
new file mode 100644
index 0000000..6c52002
--- /dev/null
+++ b/app/src/main/res/layout/activity_auth_team_edit.xml
@@ -0,0 +1,754 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_mine.xml b/app/src/main/res/layout/fragment_mine.xml
index 2a16650..0d7819a 100644
--- a/app/src/main/res/layout/fragment_mine.xml
+++ b/app/src/main/res/layout/fragment_mine.xml
@@ -55,7 +55,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
- android:text="张学友"
+ tools:text="张学友"
android:textColor="@color/black"
android:textSize="@dimen/sp_18"
android:textStyle="bold" />