[fea]
[shuttle]
[bus]
[绑定二维码]
This commit is contained in:
yangyakun
2024-10-16 12:01:53 +08:00
parent 4c27166aca
commit 1313696900
13 changed files with 209 additions and 51 deletions

View File

@@ -17,6 +17,7 @@ import com.mogo.och.weaknet.repository.db.repository.TaskSiteDb
import com.mogo.och.weaknet.ui.fragment.ShuttleFragment
import com.mogo.och.weaknet.model.LineModel
import com.mogo.och.weaknet.ui.bizswitch.SwitchBizView
import com.mogo.och.weaknet.ui.qr.QrOpenView
import com.mogo.och.weaknet.util.BusAnalyticsManager
/**
@@ -60,4 +61,10 @@ class ShuttleDriverProvider : CommonServiceImpl() {
SwitchBizView(it)
}
}
override fun createOchBindQRCodeView(context: Context?): View? {
return context?.let {
QrOpenView(it)
}
}
}

View File

@@ -137,27 +137,7 @@ class ShuttleFragment : MvpFragment<ShuttleFragment?, BusPresenter?>() {
fun changeOverview(eventLogout: EventLogout) {
when (eventLogout.messgae) {
EventLogout.SHOW_QR_TYPE-> { //显示二维码
d(
SceneConstant.M_BUS + TAG, "changeOverview Event qrcodesn = "
+ SharedPrefsMgr.getInstance().sn
)
val qrUrl = String.format(
FunctionBuildConfig.urlJson.bindDriverQRUrl,
SharedPrefsMgr.getInstance().sn
)
val bmQr = createQRCodeWithPicture(
BitmapFactory.decodeResource(resources, R.drawable.icon_qr_center_logo),
qrUrl, AutoSizeUtils.dp2px(context, 340f),
AutoSizeUtils.dp2px(context, 340f), true
)
if (bmQr != null) {
val builder = BindQRCodeDialog.Builder()
builder.title(getString(R.string.bind_driver_qr_title))
.cancelStr(getString(R.string.qr_cancel))
.qrBm(bmQr).build(AbsMogoApplication.getApp())!!.show()
} else {
d(SceneConstant.M_BUS + TAG, "bmQr = null ")
}
}
EventLogout.SHOW_WAIT_UPLOAD_TASK-> {
context?.let {

View File

@@ -0,0 +1,75 @@
package com.mogo.och.weaknet.ui.qr
import android.content.Context
import android.graphics.BitmapFactory
import android.util.AttributeSet
import androidx.appcompat.widget.AppCompatImageView
import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.och.common.module.utils.ResourcesUtils
import com.mogo.och.common.module.utils.createQRCodeWithPicture
import com.mogo.och.common.module.wigets.BindQRCodeDialog
import com.mogo.och.shuttle.weaknet.R
import me.jessyan.autosize.utils.AutoSizeUtils
class QrOpenView : AppCompatImageView {
private val TAG = "QrOpenView"
constructor(context: Context) : super(context)
constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet)
constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super(
context,
attributeSet,
defStyleAttr
)
private fun initView() {
setImageResource(R.drawable.bus_open_qr)
}
override fun onAttachedToWindow() {
super.onAttachedToWindow()
onClick {
d(
SceneConstant.M_BUS + TAG, "changeOverview Event qrcodesn = "
+ SharedPrefsMgr.getInstance().sn
)
val qrUrl = String.format(
FunctionBuildConfig.urlJson.bindDriverQRUrl,
SharedPrefsMgr.getInstance().sn
)
val bmQr = createQRCodeWithPicture(
BitmapFactory.decodeResource(resources, R.drawable.icon_qr_center_logo),
qrUrl, AutoSizeUtils.dp2px(context, 340f),
AutoSizeUtils.dp2px(context, 340f), true
)
if (bmQr != null) {
val builder = BindQRCodeDialog.Builder()
builder.title(ResourcesUtils.getString(R.string.bind_driver_qr_title))
.cancelStr(ResourcesUtils.getString(R.string.qr_cancel))
.qrBm(bmQr).build(AbsMogoApplication.getApp())!!.show()
} else {
d(SceneConstant.M_BUS + TAG, "bmQr = null ")
}
}
}
init {
try {
initView()
} catch (e: Exception) {
e.printStackTrace()
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB