Merge branch 'dev_20230708_unmanned_3.5.0' of gitlab.zhidaoauto.com:SCA/L4HA/AndroidApp/MoGoEagleEye into dev_20230708_unmanned_3.5.0
This commit is contained in:
@@ -74,10 +74,10 @@ object DebugDataDispatch {
|
||||
|
||||
fun getLocaitonByLog(path:String) {
|
||||
ThreadUtils.getIoPool().execute {
|
||||
val inputStream = FileInputStream(path)
|
||||
val reader = BufferedReader(InputStreamReader(inputStream))
|
||||
var line: String? = ""
|
||||
try {
|
||||
val inputStream = FileInputStream(path)
|
||||
val reader = BufferedReader(InputStreamReader(inputStream))
|
||||
var line: String? = ""
|
||||
while (reader.readLine().also { line = it } != null) {
|
||||
val list = GsonUtils.fromJson<MogoLocationExit>(
|
||||
line.toString(),
|
||||
|
||||
@@ -17,7 +17,6 @@ import android.widget.TextView
|
||||
import androidx.appcompat.widget.AppCompatImageView
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import androidx.core.app.ActivityCompat
|
||||
import com.mogo.eagle.core.utilcode.util.ActivityUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeTransformUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.widget.media.video.TextureVideoViewOutlineProvider
|
||||
@@ -155,7 +154,9 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer {
|
||||
super.onWindowFocusChanged(hasWindowFocus)
|
||||
if(isIfCurrentIsFullscreen&&smalllPlayer!=null){
|
||||
if(hasWindowFocus){//获取焦点
|
||||
//onVideoResume()
|
||||
if (isInPlayingState && smalllPlayer!!.mCurrentState != CURRENT_STATE_PAUSE) {
|
||||
onVideoResume()
|
||||
}
|
||||
}else{
|
||||
onVideoPause()
|
||||
}
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 260 B |
Binary file not shown.
|
After Width: | Height: | Size: 788 B |
@@ -14,6 +14,8 @@
|
||||
app:endPointDrawable="@drawable/taxi_p_map_view_dir_end"
|
||||
app:carDrawable="@drawable/taxi_p_map_car"
|
||||
app:compassDrawable="@drawable/taxi_p_map_car_light"
|
||||
app:arrivedDrawable="@drawable/taxi_overmap_arrived"
|
||||
app:unArrivedDrawable="@drawable/taxi_overmap_arriving"
|
||||
app:mapStyleExtraPath="style_extra.data"
|
||||
app:mapStylePath="style.data"
|
||||
app:leftPadding="800"
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -247,10 +247,7 @@ object TaxiPassengerModel {
|
||||
}
|
||||
}
|
||||
|
||||
fun checkPhoneAndUpdateStatus(
|
||||
phoneTail: String?,
|
||||
commonCallback: ITaxiPassengerCommonCallback?
|
||||
) {
|
||||
fun checkPhoneAndUpdateStatus(phoneTail: String) {
|
||||
if (currentOCHOrder == null) return
|
||||
TaxiPassengerServiceManager.checkPhoneAndUpdateOrderStatus(
|
||||
currentOCHOrder!!.orderNo,
|
||||
@@ -262,7 +259,6 @@ object TaxiPassengerModel {
|
||||
orderStatusChange()
|
||||
VoiceNotice.showNotice("验证成功!关闭车门并佩戴安全带后开启行程吧!", AIAssist.LEVEL2)
|
||||
}
|
||||
commonCallback?.onCommonCallback()
|
||||
}
|
||||
|
||||
override fun onFail(code: Int, msg: String) {
|
||||
|
||||
@@ -68,8 +68,7 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
|
||||
TaxiPassengerOrderStatusEnum.ArriveAtStart -> {
|
||||
// 20 司机到达上车点
|
||||
mView?.showOrHideArrivedEndLayout(isShow = false)
|
||||
mView?.showOrHidePressengerCheckPager(true, order.startSiteAddr,
|
||||
order.endSiteAddr, order.passengerNum, order.passengerPhone)
|
||||
mView?.showOrHidePressengerCheckPager(true)
|
||||
mView?.showOrHideStartAutopilotView(isShow = false)
|
||||
}
|
||||
|
||||
@@ -122,12 +121,6 @@ class BaseTaxiPassengerPresenter(view: TaxiPassengerBaseFragment?) :
|
||||
mView?.showOrHideOverMapView()
|
||||
}
|
||||
|
||||
fun checkAndUpdateStatus(phone: String?) {
|
||||
TaxiPassengerModel.checkPhoneAndUpdateStatus(phone) {
|
||||
mView?.showOrHidePressengerCheckPager(isShow = false)
|
||||
}
|
||||
}
|
||||
|
||||
fun setItineraryVisibility() {
|
||||
UiThreadHandler.post {
|
||||
when (TaxiPassengerModel.curOrderStatus) {
|
||||
|
||||
@@ -167,14 +167,6 @@ class TaxiPassengerBaseFragment() :
|
||||
}
|
||||
}
|
||||
|
||||
private fun initCheckView() {
|
||||
mArrivedCheckView = WeakReference(TaxiPassengerCheckView(context))
|
||||
mArrivedCheckView!!.get()!!.iTaxiPassengerCommonValueCallback =
|
||||
ITaxiPassengerCommonValueCallback { phoneTail: String? ->
|
||||
getPresenter()!!.checkAndUpdateStatus(phoneTail)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
mapBizView!!.onResume()
|
||||
@@ -308,19 +300,13 @@ class TaxiPassengerBaseFragment() :
|
||||
*/
|
||||
fun showOrHidePressengerCheckPager(
|
||||
isShow: Boolean,
|
||||
startSiteAddr: String? = "",
|
||||
endSiteAddr: String? = "",
|
||||
passengerNum: String? = "",
|
||||
phone: String? = ""
|
||||
) {
|
||||
try {
|
||||
if (isShow) {
|
||||
exitFullVideoScreen(false)
|
||||
if (mArrivedCheckView == null || mArrivedCheckView!!.get() == null) {
|
||||
initCheckView()
|
||||
mArrivedCheckView = WeakReference(TaxiPassengerCheckView(context))
|
||||
}
|
||||
mArrivedCheckView!!.get()!!
|
||||
.setData(startSiteAddr, endSiteAddr, passengerNum, phone)
|
||||
OverlayViewUtils.showOverlayView(activity, mArrivedCheckView!!.get())
|
||||
} else {
|
||||
if (mArrivedCheckView == null || mArrivedCheckView!!.get() == null) {
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
package com.mogo.och.taxi.passenger.ui.check
|
||||
|
||||
import androidx.lifecycle.ViewModel
|
||||
import chassis.Chassis.DoorNumber
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisDoorStateListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerChassisDoorStateListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.taxi.passenger.bean.TaxiPassengerOrderQueryRespBean
|
||||
import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback
|
||||
import com.mogo.och.taxi.passenger.constant.TaxiPassengerOrderStatusEnum
|
||||
import com.mogo.och.taxi.passenger.model.AutopilotManager
|
||||
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
|
||||
|
||||
class ChekViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback {
|
||||
|
||||
private val TAG = ChekViewModel::class.java.simpleName
|
||||
|
||||
private var viewCallback: CheckCallback? = null
|
||||
|
||||
init {
|
||||
TaxiPassengerModel.setOrderStatusCallback(TAG,this)
|
||||
}
|
||||
|
||||
fun setStartAutopilotCallback(viewCallback: CheckCallback) {
|
||||
this.viewCallback = viewCallback
|
||||
TaxiPassengerModel.startOrStopReadyToAutopilotLoop(true)
|
||||
setOrderInfo()
|
||||
}
|
||||
fun checkAndUpdateStatus(phone: String) {
|
||||
TaxiPassengerModel.checkPhoneAndUpdateStatus(phone)
|
||||
}
|
||||
|
||||
|
||||
private fun setOrderInfo() {
|
||||
val currentOCHOrder = TaxiPassengerModel.currentOCHOrder
|
||||
currentOCHOrder?.let { order ->
|
||||
viewCallback?.setOrderInfo(order.startSiteAddr,
|
||||
order.endSiteAddr, order.passengerNum, order.passengerPhone)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onCurrentOrderStatusChanged(order: TaxiPassengerOrderQueryRespBean.Result?) {
|
||||
super.onCurrentOrderStatusChanged(order)
|
||||
order?.let {
|
||||
if(it.orderStatus != TaxiPassengerOrderStatusEnum.UserArriveAtStart.code){
|
||||
this.viewCallback?.dismissWindow()
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
override fun onCleared() {
|
||||
super.onCleared()
|
||||
this.viewCallback = null
|
||||
TaxiPassengerModel.setOrderStatusCallback(TAG, null)
|
||||
}
|
||||
|
||||
interface CheckCallback {
|
||||
fun setOrderInfo(startSiteAddr: String?,
|
||||
endSiteAddr: String?,
|
||||
passengerNum: String?,
|
||||
phone: String?)
|
||||
|
||||
fun dismissWindow()
|
||||
}
|
||||
|
||||
}
|
||||
@@ -8,16 +8,17 @@ import android.text.style.TextAppearanceSpan
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.widget.RelativeLayout
|
||||
import android.widget.TextView
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import com.mogo.commons.voice.AIAssist
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.util.OverlayViewUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.voice.VoiceNotice
|
||||
import com.mogo.och.taxi.passenger.R
|
||||
import com.mogo.och.taxi.passenger.callback.ITaxiPassengerCommonValueCallback
|
||||
import com.mogo.och.taxi.passenger.widget.WindowRelativeLayout
|
||||
import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_count
|
||||
import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_end
|
||||
import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_passenger_start
|
||||
@@ -43,7 +44,8 @@ import kotlinx.android.synthetic.main.taxi_p_passenger_check_panel.view.tv_taxi_
|
||||
*
|
||||
* Created on 2022/3/16
|
||||
*/
|
||||
class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener {
|
||||
class TaxiPassengerCheckView : WindowRelativeLayout, View.OnClickListener,
|
||||
ChekViewModel.CheckCallback {
|
||||
|
||||
constructor(context: Context?) : super(context)
|
||||
|
||||
@@ -53,14 +55,13 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener {
|
||||
|
||||
constructor(context: Context?, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes)
|
||||
|
||||
var iTaxiPassengerCommonValueCallback: ITaxiPassengerCommonValueCallback<String>?=null
|
||||
|
||||
|
||||
private var index = 0
|
||||
private var phone = ""
|
||||
private val numSelect = arrayOfNulls<Int>(4)
|
||||
private val numSelectTextView = arrayOfNulls<TextView>(4)
|
||||
|
||||
private lateinit var viewModel:ChekViewModel
|
||||
|
||||
private fun initView(context: Context) {
|
||||
d(SceneConstant.M_TAXI_P + TAG, "initView")
|
||||
LayoutInflater.from(context).inflate(R.layout.taxi_p_passenger_check_panel, this, true)
|
||||
@@ -121,7 +122,13 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener {
|
||||
VoiceNotice.showNotice("验证失败!再检查一下吧~", AIAssist.LEVEL2)
|
||||
return
|
||||
}
|
||||
iTaxiPassengerCommonValueCallback?.onCommonCallback(numberStr)
|
||||
viewModel.checkAndUpdateStatus(numberStr)
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
super.onAttachedToWindow()
|
||||
viewModel = ViewModelProvider(this).get(ChekViewModel::class.java)
|
||||
viewModel.setStartAutopilotCallback(this)
|
||||
}
|
||||
|
||||
private fun selectIndex(i: Int) {
|
||||
@@ -212,12 +219,19 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener {
|
||||
|
||||
}
|
||||
|
||||
fun setData(
|
||||
startSiteAddr: String?,
|
||||
endSiteAddr: String?,
|
||||
passengerNum: String?,
|
||||
phone: String?
|
||||
) {
|
||||
companion object {
|
||||
const val TAG = "TaxiPassengerCheckView"
|
||||
}
|
||||
|
||||
init {
|
||||
try {
|
||||
initView(context)
|
||||
} catch (e: Exception) {
|
||||
e.printStackTrace()
|
||||
}
|
||||
}
|
||||
|
||||
override fun setOrderInfo(startSiteAddr: String?, endSiteAddr: String?, passengerNum: String?, phone: String?) {
|
||||
this.phone = phone?:""
|
||||
val sb = SpannableStringBuilder("乘客数:$passengerNum 位") // 包装字体内容
|
||||
sb.setSpan(
|
||||
@@ -236,15 +250,7 @@ class TaxiPassengerCheckView :RelativeLayout, View.OnClickListener {
|
||||
}
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val TAG = "TaxiPassengerCheckView"
|
||||
}
|
||||
|
||||
init {
|
||||
try {
|
||||
initView(context)
|
||||
} catch (e: Exception) {
|
||||
e.printStackTrace()
|
||||
}
|
||||
override fun dismissWindow() {
|
||||
OverlayViewUtils.dismissOverlayView(this)
|
||||
}
|
||||
}
|
||||
@@ -52,7 +52,7 @@ class DebugView @JvmOverloads constructor(
|
||||
fragment?.showOrHideArrivedEndLayout(true)
|
||||
}
|
||||
tv_show_phone_check.onClick {
|
||||
fragment?.showOrHidePressengerCheckPager(isShow = true,"13号路口终(鹰眼专用)","13号路口终(鹰眼专用)","2","18811539480")
|
||||
fragment?.showOrHidePressengerCheckPager(isShow = true)
|
||||
}
|
||||
tv_show_start_autopilot.onClick {
|
||||
fragment?.showOrHideStartAutopilotView(true)
|
||||
|
||||
@@ -153,9 +153,11 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer {
|
||||
override fun onWindowFocusChanged(hasWindowFocus: Boolean) {
|
||||
super.onWindowFocusChanged(hasWindowFocus)
|
||||
if(isIfCurrentIsFullscreen&&smalllPlayer!=null){
|
||||
if(hasWindowFocus){//获取焦点
|
||||
//onVideoResume()
|
||||
}else{
|
||||
if (hasWindowFocus) {//获取焦点
|
||||
if (isInPlayingState && smalllPlayer!!.mCurrentState != CURRENT_STATE_PAUSE) {
|
||||
onVideoResume()
|
||||
}
|
||||
} else {
|
||||
onVideoPause()
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 260 B |
Binary file not shown.
|
After Width: | Height: | Size: 788 B |
@@ -14,6 +14,8 @@
|
||||
app:endPointDrawable="@drawable/taxi_p_map_view_dir_end"
|
||||
app:carDrawable="@drawable/taxi_p_map_car"
|
||||
app:compassDrawable="@drawable/taxi_p_map_car_light"
|
||||
app:arrivedDrawable="@drawable/taxi_overmap_arrived"
|
||||
app:unArrivedDrawable="@drawable/taxi_overmap_arriving"
|
||||
app:mapStyleExtraPath="style_extra.data"
|
||||
app:mapStylePath="style.data"
|
||||
app:leftPadding="800"
|
||||
|
||||
46
app/src/androidTest/java/com/mogo/functions/test/ChatTest.kt
Normal file
46
app/src/androidTest/java/com/mogo/functions/test/ChatTest.kt
Normal file
@@ -0,0 +1,46 @@
|
||||
package com.mogo.functions.test
|
||||
|
||||
import androidx.test.core.app.ActivityScenario
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import androidx.test.filters.LargeTest
|
||||
import androidx.test.platform.app.InstrumentationRegistry
|
||||
import com.mogo.eagle.core.function.call.chat.CallerChatManager
|
||||
import com.mogo.eagle.core.function.main.MainLauncherActivity
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.runBlocking
|
||||
import org.junit.Before
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
|
||||
@RunWith(AndroidJUnit4::class)
|
||||
@LargeTest
|
||||
class ChatTest {
|
||||
|
||||
|
||||
|
||||
lateinit var launch: ActivityScenario<MainLauncherActivity>
|
||||
|
||||
|
||||
@Before
|
||||
fun before() {
|
||||
launch = ActivityScenario.launch(MainLauncherActivity::class.java)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun testChat() = runBlocking {
|
||||
val arguments = InstrumentationRegistry.getArguments()
|
||||
val delay = arguments.getString("delay", "0")
|
||||
val sn = arguments.getString("sn", "")
|
||||
val delayLong = delay.toLong()
|
||||
if (delayLong <= 0 || sn.isNullOrEmpty()) {
|
||||
throw AssertionError("illegal state ..")
|
||||
}
|
||||
delay(delayLong)
|
||||
launch.onActivity { activity ->
|
||||
CallerChatManager.call(activity, sn)
|
||||
}
|
||||
delay(TimeUnit.MINUTES.toMillis(10))
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@@ -26,7 +26,6 @@ import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener
|
||||
import com.mogo.eagle.core.function.call.hmi.*
|
||||
import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager
|
||||
import com.mogo.eagle.core.function.call.v2x.CallerTurnLightListenerManager
|
||||
import com.mogo.eagle.core.function.call.v2x.CallerV2XWarningListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.ui.camera.RoadVideoDialog
|
||||
import com.mogo.eagle.core.function.hmi.ui.lookaround.*
|
||||
import com.mogo.eagle.core.function.hmi.ui.notice.DispatchDialogManager
|
||||
@@ -132,7 +131,7 @@ class MoGoHmiProvider : IMoGoHmiProvider {
|
||||
return
|
||||
}
|
||||
listener?.onShow()
|
||||
CallerV2XWarningListenerManager.show(v2xType, direction, expireTime)
|
||||
//CallerV2XWarningListenerManager.show(v2xType, direction, expireTime)
|
||||
CallerLogger.d(
|
||||
"$M_HMI$TAG",
|
||||
"--- show v2x dialog 1 ---: info -> v2x-type: $v2xType : expireTime: $expireTime"
|
||||
@@ -207,11 +206,11 @@ class MoGoHmiProvider : IMoGoHmiProvider {
|
||||
}
|
||||
|
||||
override fun showWarning(v2xType: String, direction: WarningDirectionEnum, expireTime: Long) {
|
||||
CallerV2XWarningListenerManager.show(v2xType, direction, expireTime)
|
||||
//CallerV2XWarningListenerManager.show(v2xType, direction, expireTime)
|
||||
}
|
||||
|
||||
override fun dismissWarning(direction: WarningDirectionEnum) {
|
||||
CallerV2XWarningListenerManager.dismiss(direction)
|
||||
//CallerV2XWarningListenerManager.dismiss(direction)
|
||||
}
|
||||
|
||||
override fun showDispatchDialog(msgData: DispatchAdasAutoPilotLocReceiverBean) {
|
||||
|
||||
Reference in New Issue
Block a user