Merge branch 'dev_robotaxi-d_251110_8.2.8_i18n' into dev_robotaxi-d_251204_8.3.0_xfk_temp

# Conflicts:
#	OCH/shuttle/driver_weaknet/src/main/java/com/mogo/och/weaknet/ui/taskrunning/TaskRunningView.kt
This commit is contained in:
xinfengkun
2025-12-17 11:29:10 +08:00
471 changed files with 10137 additions and 2778 deletions

View File

@@ -19,6 +19,7 @@ import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
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.ImageUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.createQRCodeWithPicture
import com.mogo.och.common.module.wigets.BindQRCodeDialog
@@ -84,7 +85,8 @@ class DriverM1Fragment : CharterBaseFragment<DriverM1Fragment?, DriverM1Presente
+""+DateTimeUtil.formatLongToString(orderStatus.endTime,DateTimeUtil.HH_mm))
if (orderStatus.lineName.isEmpty()){
driverm1_line_name.text = "暂无"
// driverm1_line_name.text = "暂无"
driverm1_line_name.text = StringUtils.getString(R.string.module_core_no_available)
group_stations_panel2.visibility = GONE
no_line_data_view.visibility = VISIBLE
no_order_data_tv.text = resources.getString(R.string.charter_bus_task_wait_tip)

View File

@@ -14,6 +14,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.bridge.trajectory.ITrajectoryListListener
import com.mogo.och.bridge.trajectory.TrajectoryManager
import com.mogo.och.common.module.biz.login.LoginStatusManager
@@ -85,7 +86,8 @@ object CharterTrajectoryManager : ITrajectoryListListener {
MsgBoxBean(
MsgBoxType.OPERATION,
OperationMsg(
System.currentTimeMillis(), "请尽快操作车辆至适当位置掉头!", -1
// System.currentTimeMillis(), "请尽快操作车辆至适当位置掉头!", -1
System.currentTimeMillis(), StringUtils.getString(R.string.module_och_please_turn), -1
)
)
)

View File

@@ -283,7 +283,8 @@ class DriverM1Model {
override fun onMsgReceived(passenger: WriteOffPassenger?) {
//进行播报
i(SceneConstant.M_BUS + TAG, "passenger = " + GsonUtil.jsonFromObject(passenger))
val appMsg = AppConnectMsg(false,true,"核销成功")
// val appMsg = AppConnectMsg(false,true,"核销成功")
val appMsg = AppConnectMsg(false,true,StringUtils.getString(R.string.module_och_verification_success))
sendMsgToClient(appMsg)
}
}
@@ -452,7 +453,8 @@ class DriverM1Model {
&& TextUtils.isEmpty(it.csvFileUrl)
&& TextUtils.isEmpty(it.csvFileUrlDPQP)
) {
ToastUtils.showLong("无发布轨迹, 请发布后重试")
// ToastUtils.showLong("无发布轨迹, 请发布后重试")
ToastUtils.showLong(R.string.module_taxi_no_publication_trajectory)
CallerLogger.e(
TAG, "isPassStartAutopilotCommand = " +
FunctionBuildConfig.isPassStartAutopilotCommand
@@ -822,7 +824,12 @@ class DriverM1Model {
MsgBoxType.OPERATION,
OperationMsg(
System.currentTimeMillis(),
"即将前往路线${currentChangeDestMsg!!.lineName}、站点${currentChangeDestMsg!!.destSiteName};如需掉头请尽快操作车辆至适当位置!",
// "即将前往路线${currentChangeDestMsg!!.lineName}、站点${currentChangeDestMsg!!.destSiteName};如需掉头请尽快操作车辆至适当位置!",
StringUtils.getString(
R.string.module_och_route_need_turn,
currentChangeDestMsg!!.lineName,
currentChangeDestMsg!!.destSiteName
),
-1
)
)

View File

@@ -14,6 +14,7 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
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.DateTimeUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.biz.login.ILoginCallback
import com.mogo.och.common.module.biz.login.EnumLoginStatus
import com.mogo.och.common.module.biz.login.LoginStatusManager
@@ -154,14 +155,16 @@ class DriverM1Presenter(view: DriverM1Fragment?) :
StopSideStatus.NOSTART -> {
DriverM1Model.get().pushOperationalToMsgBox(
DateTimeUtil.getCurrentTimeStamp(),
"靠边停车无响应,注意随时接管",
// "靠边停车无响应,注意随时接管",
StringUtils.getString(R.string.module_och_pull_over_no_response),
OPERATION_ROAD_SIDE_TYPE
)
}
StopSideStatus.START -> { // 靠边停车 to 消息盒子
DriverM1Model.get().pushOperationalToMsgBox(
DateTimeUtil.getCurrentTimeStamp(),
"开始靠边停车",
// "开始靠边停车",
StringUtils.getString(R.string.module_och_start_pull_over),
OPERATION_ROAD_SIDE_TYPE
)
}
@@ -175,7 +178,8 @@ class DriverM1Presenter(view: DriverM1Fragment?) :
StopSideStatus.NOSTART-> {
DriverM1Model.get().pushOperationalToMsgBox(
DateTimeUtil.getCurrentTimeStamp(),
"靠边停车失败,注意随时接管",
// "靠边停车失败,注意随时接管",
StringUtils.getString(R.string.module_och_pull_over_failed),
OPERATION_ROAD_SIDE_TYPE
)
}

View File

@@ -20,6 +20,7 @@ import android.view.animation.DecelerateInterpolator
import com.magic.mogo.och.charter.R
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.utilcode.util.ConvertUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
@@ -53,7 +54,8 @@ class SlidePanelView @JvmOverloads constructor(
private val textRect = Rect()
private var textGradient: LinearGradient? = null
private var matrixAnim: ObjectAnimator? = null
private var blockText = STRING_SLIDE_TO_RIGHT
// private var blockText = STRING_SLIDE_TO_RIGHT
private var blockText = StringUtils.getString(R.string.module_och_swipe_right)
private val blockTextMetrics = Paint.FontMetrics()
fun setOnSlidePanelMoveToEndListener(moveToEndListener: OnSlidePanelMoveToEndListener?) {
this.moveToEndListener = moveToEndListener
@@ -269,7 +271,7 @@ class SlidePanelView @JvmOverloads constructor(
private var NORMAL_TEXT_MARGIN_RIGHT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(), 60f)
private var SHORT_TEXT_MARGIN_LEFT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(), 60f)
private var SHORT_TEXT_MARGIN_RIGHT = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(), 70f)
private const val STRING_SLIDE_TO_RIGHT = "向右滑动"
// private const val STRING_SLIDE_TO_RIGHT = "向右滑动"
private const val GRADIENT_OFFSET = 200f
}

View File

@@ -1,6 +1,7 @@
package com.magic.mogo.och.charter.view.autopilot
import androidx.lifecycle.ViewModel
import com.magic.mogo.och.charter.R
import com.magic.mogo.och.charter.bean.QueryCurrentOrderResponse.Result.Companion.ARRIVED
import com.magic.mogo.och.charter.callback.IDriverM1ControllerStatusCallback
import com.magic.mogo.och.charter.constant.CharterConst
@@ -54,7 +55,8 @@ class AutopilotStatusViewModel: ViewModel(), IDriverM1ControllerStatusCallback,
fun restartAutopilot() {
// todo 启动自驾必须有订单路线
if(isAnimateRunning.get()){
ToastUtils.showShort("启动自驾中")
// ToastUtils.showShort("启动自驾中")
ToastUtils.showShort(R.string.module_och_autopilot_starting)
}else {
if (DriverM1Model.get().isHaveOrder()) {
DriverM1Model.get().restartAutopilot()

View File

@@ -16,6 +16,7 @@
android:layout_centerVertical="true"
android:src="@drawable/charter_ic_autopilot" />
<!-- android:text="自动驾驶"-->
<TextView
android:id="@+id/bus_autopolot_btn_tv"
android:layout_width="wrap_content"
@@ -23,7 +24,7 @@
android:layout_centerVertical="true"
android:layout_marginLeft="28dp"
android:layout_toRightOf="@+id/bus_autopilot_btn_iv"
android:text="自动驾驶"
android:text="@string/module_core_automatic_driving"
android:textColor="@color/charter_autopilot_text_color_normal"
android:textSize="@dimen/dp_40"
android:textStyle="bold" />

View File

@@ -258,12 +258,13 @@
app:layout_constraintRight_toRightOf="@id/btnAutopilotDisable"
app:layout_constraintTop_toBottomOf="@id/btnAutopilotPingxing" />
<!-- android:text="上传全路径"-->
<Button
android:id="@+id/btnAutopilotRoute"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#023D35"
android:text="上传全路径"
android:text="@string/module_och_upload_all_Route"
android:textSize="@dimen/dp_60"
app:layout_constraintRight_toRightOf="@id/btnAutopilotDisable"
app:layout_constraintTop_toBottomOf="@id/btnAutopilotArrive"

View File

@@ -0,0 +1,28 @@
<resources>
<string name="charter_loading_autopilot_tv">Starting...</string>
<string name="charter_loading_autopilot_success_tv">Start successful</string>
<string name="charter_loading_autopilot_failure_tv">Start failed</string>
<string name="charter_loading_autopilot_runnig_tv">Autopilot</string>
<string name="charter_loading_autopilot_pingxing_tv">Parallel Driving</string>
<!-- <string name="bus_arrive_to_end_title">去往下车地点</string>-->
<string name="charter_arrive_to_current_tag">Departure Station:</string>
<string name="charter_arrive_to_next_tag1">Destination Station:</string>
<string name="charter_arrive_to_next_tag">Next Station:</string>
<string name="charter_arrived_str">Arriving at Station</string>
<string name="charter_dialog_confirm">Confirm</string>
<string name="charter_dialog_cancel">Cancel</string>
<string name="charter_bus_no_task_tip">No service orders currently</string>
<string name="charter_bus_task_wait_tip">Waiting for passenger selection</string>
<string name="charter_back_car">Confirm Return Vehicle</string>
<string name="charter_count_down_txt">Remaining %1$s minutes</string>
<string name="charter_during_time_tv">Charter Time: %1$s</string>
<string name="charter_passenger_phone">Passenger Information: %1$s</string>
<string name="charter_last_15_minutes">There are 15 minutes remaining in this trip. Please be aware and inform the passengers to arrange their time accordingly</string>
</resources>

View File

@@ -2,7 +2,9 @@ package com.mogo.och.charter.passenger.bean.response
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.bridge.utils.CoordinateCalculateRouteUtil
import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.utils.DateTimeUtil
/**
@@ -73,10 +75,14 @@ data class OrderInfoResponse(val data: OrderInfo?) : BaseData() {
fun getProductTypeName(): String {
return when (productType) {
M1_LOVE -> "爱情号"
M1_FAMILY -> "家庭号"
M1_FRIENDLY -> "朋友号"
else -> "未知"
// M1_LOVE -> "爱情号"
M1_LOVE -> StringUtils.getString(R.string.module_och_m1_love)
// M1_FAMILY -> "家庭号"
M1_FAMILY -> StringUtils.getString(R.string.module_och_m1_family)
// M1_FRIENDLY -> "朋友号"
M1_FRIENDLY -> StringUtils.getString(R.string.module_och_m1_friendly)
// else -> "未知"
else -> StringUtils.getString(R.string.module_core_unknown)
}
}

View File

@@ -209,7 +209,8 @@ object CharterPassengerModel {
super.onAutopilotGuardian(guardianInfo)
guardianInfo?.let {
if (it.code=="EMAP_ATTITUDE_INIT_FAILED") {
ToastCharterUtils.showToastShort("请等待车辆完成掉头后再出发吧~")
// ToastCharterUtils.showToastShort("请等待车辆完成掉头后再出发吧~")
ToastCharterUtils.showToastShort(R.string.module_och_emap_attitude_init_failed)
}
}
}
@@ -439,7 +440,8 @@ object CharterPassengerModel {
GcjLon = null,
seq = null,
type = null,
introduction = "简介"
// introduction = "简介"
introduction = StringUtils.getString(R.string.module_och_synopsis)
)
return Pair(lineInfo, targetSizt)
}
@@ -1122,7 +1124,8 @@ object CharterPassengerModel {
fun startAutopilot() {
orderInfo?.let {
if (it.arriveStatus == OrderInfoResponse.ARRIVED) {
ToastCharterUtils.showToastLong("已到达目的地请重新选择线路")
// ToastCharterUtils.showToastLong("已到达目的地请重新选择线路")
ToastCharterUtils.showToastLong(R.string.module_och_car_arrived)
return
}
//1、判断轨迹Id是否可用
@@ -1132,7 +1135,8 @@ object CharterPassengerModel {
&& TextUtils.isEmpty(it.csvFileUrl)
&& TextUtils.isEmpty(it.csvFileUrlDPQP)
) {
ToastUtils.showLong("无发布轨迹, 请发布后重试")
// ToastUtils.showLong("无发布轨迹, 请发布后重试")
ToastUtils.showLong(R.string.module_taxi_no_publication_trajectory)
CallerLogger.e(
TAG, "isPassStartAutopilotCommand = " +
FunctionBuildConfig.isPassStartAutopilotCommand
@@ -1151,14 +1155,16 @@ object CharterPassengerModel {
}
val parameters = initAutopilotControlParameters()
if (null == parameters) {
ToastCharterUtils.showToastShort("请选择站点")
// ToastCharterUtils.showToastShort("请选择站点")
ToastCharterUtils.showToastShort(R.string.module_och_please_choose_station)
e(
SceneConstant.M_BUS + TAG,
"行程日志-AutopilotControlParameters is empty."
)
return
}
ToastCharterUtils.showToastShort("启动自动驾驶中")
// ToastCharterUtils.showToastShort("启动自动驾驶中")
ToastCharterUtils.showToastShort(R.string.module_och_starting_autopilot)
cleanRoutePoints()
OchAutoPilotManager.startAutoPilot(parameters)
d(

View File

@@ -4,6 +4,7 @@ import android.content.Context
import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.network.MoGoRetrofitFactory
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.bean.request.ArriveDestRequest
import com.mogo.och.charter.passenger.bean.request.EndOrderRequest
import com.mogo.och.charter.passenger.bean.response.*
@@ -40,7 +41,8 @@ object BusPassengerServiceManager {
private fun beforeNet():Boolean{
if (draiverSn.isBlank()) {
ToastCharterUtils.showToastShort("已断开司机屏连接、请联系安全员")
// ToastCharterUtils.showToastShort("已断开司机屏连接、请联系安全员")
ToastCharterUtils.showToastShort(R.string.module_och_passenger_disconnect_driver)
return true
}
return false

View File

@@ -123,11 +123,13 @@ class BusPassengerPresenter(view: MainFragment?) :
OrderStatusEnum.NoOrderUse -> {
when (CallerAutoPilotStatusListenerManager.getState()) {
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶
ToastCharterUtils.showToastShort("设备未就绪请稍等,请安全员主动停止车辆")
// ToastCharterUtils.showToastShort("设备未就绪请稍等,请安全员主动停止车辆")
ToastCharterUtils.showToastShort(R.string.module_och_status_autopilot_disable_hint)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {//
ToastCharterUtils.showToastShort("因车辆正在人工驾驶中无法靠边停车,请安全员主动停止车辆")
// ToastCharterUtils.showToastShort("因车辆正在人工驾驶中无法靠边停车,请安全员主动停止车辆")
ToastCharterUtils.showToastShort(R.string.module_och_status_autopilot_enable_hint)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> {
@@ -136,7 +138,8 @@ class BusPassengerPresenter(view: MainFragment?) :
}
IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> {
ToastCharterUtils.showToastShort("因车辆正在平行驾驶中无法靠边停车,请安全员主动停止车辆")
// ToastCharterUtils.showToastShort("因车辆正在平行驾驶中无法靠边停车,请安全员主动停止车辆")
ToastCharterUtils.showToastShort(R.string.module_och_status_parallel_driving_hint)
}
else -> {}
@@ -209,7 +212,8 @@ class BusPassengerPresenter(view: MainFragment?) :
StopSideStatus.EndingSuccess -> {
BeautifyManager.notifyViewChange(BeautifyManager.ChangeTypeEnum.STOPSITE_SUCCESS)
ToastCharterUtils.showToastShort("靠边停车成功")
// ToastCharterUtils.showToastShort("靠边停车成功")
ToastCharterUtils.showToastShort(R.string.module_och_stop_site_success)
VoiceNotice.showNotice(
context.getString(R.string.charter_p_stop_site_success),
AIAssist.LEVEL0
@@ -217,7 +221,8 @@ class BusPassengerPresenter(view: MainFragment?) :
}
StopSideStatus.EndingFaile -> {
ToastCharterUtils.showToastShort("车辆系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("车辆系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_stop_site_ending_fail)
}
else -> {}
@@ -228,9 +233,11 @@ class BusPassengerPresenter(view: MainFragment?) :
override fun onDoorStatusCallback(isOpen: Boolean, isFirst: Boolean) {
if (!isFirst) {
if (isOpen) {
ToastCharterUtils.showToastShort("已开启车门")
// ToastCharterUtils.showToastShort("已开启车门")
ToastCharterUtils.showToastShort(R.string.module_och_car_door_opened)
} else {
ToastCharterUtils.showToastShort("已关门车门")
// ToastCharterUtils.showToastShort("已关门车门")
ToastCharterUtils.showToastShort(R.string.module_och_car_door_closed)
}
}
}
@@ -281,7 +288,8 @@ class BusPassengerPresenter(view: MainFragment?) :
temp = LatLng(it.latitude, it.longitude)
indexPoint.add(temp)
}
ToastCharterUtils.showToastShort("没有轨迹点")
// ToastCharterUtils.showToastShort("没有轨迹点")
ToastCharterUtils.showToastShort(R.string.module_och_not_point)
return indexPoint
}

View File

@@ -1,6 +1,8 @@
package com.mogo.och.charter.passenger.presenter
import androidx.lifecycle.LifecycleOwner
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.bean.response.OrderInfoResponse
import com.mogo.och.charter.passenger.model.CharterPassengerModel
import com.mogo.och.charter.passenger.ui.dialogfragment.NoviceGuidanceFragment
@@ -33,13 +35,16 @@ class CharterPassengerNoviceGuidancePresenter(view: NoviceGuidanceFragment?) :
}
when (it.productType) {
OrderInfoResponse.M1_LOVE -> {
mView?.setProductType("爱情号")
// mView?.setProductType("爱情号")
mView?.setProductType(StringUtils.getString(R.string.module_och_m1_love))
}
OrderInfoResponse.M1_FAMILY -> {
mView?.setProductType("家庭号")
// mView?.setProductType("家庭号")
mView?.setProductType(StringUtils.getString(R.string.module_och_m1_family))
}
OrderInfoResponse.M1_FRIENDLY -> {
mView?.setProductType("朋友号")
// mView?.setProductType("朋友号")
mView?.setProductType(StringUtils.getString(R.string.module_och_m1_friendly))
}
else -> {
mView?.setProductType("")

View File

@@ -6,6 +6,7 @@ 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.ActivityUtils
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.bean.response.OrderInfoResponse
@@ -52,7 +53,8 @@ object DriverMessage: IReceivedMsgListener {
}
if(msg.isPlay){
VoiceNotice.showNotice(msg.msg, AIAssist.LEVEL1)
if(msg.msg.contains("核销成功")){
// if(msg.msg.contains("核销成功")){
if(msg.msg.contains(StringUtils.getString(R.string.module_och_verification_success))){
val string = SkinResources.getInstance().getString(R.string.charter_p_welcome_tts)
VoiceNotice.showNotice(string, AIAssist.LEVEL1,4_000)
}

View File

@@ -126,7 +126,8 @@ class MainFragment : MvpFragment<MainFragment?, BusPassengerPresenter?>(), IMogo
if (mPresenter?.haveOrder() == true) {
} else {
ToastCharterUtils.showToastShort("请确认订单")
// ToastCharterUtils.showToastShort("请确认订单")
ToastCharterUtils.showToastShort(R.string.module_och_order_affirm)
return true
}
} else {

View File

@@ -65,7 +65,8 @@ class GoViewWithArrive @JvmOverloads constructor(
})
setOnClickListener {
if (ClickUtils.isClickTooFrequent(this,3000)) {
ToastCharterUtils.showToastShort("请稍后点击")
// ToastCharterUtils.showToastShort("请稍后点击")
ToastCharterUtils.showToastShort(R.string.module_och_please_click_later)
return@setOnClickListener
}
startGo()
@@ -82,7 +83,8 @@ class GoViewWithArrive @JvmOverloads constructor(
}
when (CallerAutoPilotStatusListenerManager.getState()) {
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶
ToastCharterUtils.showToastShort("设备未就绪请稍等")
// ToastCharterUtils.showToastShort("设备未就绪请稍等")
ToastCharterUtils.showToastShort(R.string.module_och_status_autopilot_disable_hint1)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {//
onceRegisterAutoStatus()
@@ -90,10 +92,12 @@ class GoViewWithArrive @JvmOverloads constructor(
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> {
// 重新起步
StopSideManager.resetStopSide()
ToastCharterUtils.showToastShort("车辆行驶中,不要频繁点击哦~")
// ToastCharterUtils.showToastShort("车辆行驶中,不要频繁点击哦~")
ToastCharterUtils.showToastShort(R.string.module_och_car_running_hint)
}
IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> {
ToastCharterUtils.showToastShort("车辆行驶中,不要频繁点击哦~")
// ToastCharterUtils.showToastShort("车辆行驶中,不要频繁点击哦~")
ToastCharterUtils.showToastShort(R.string.module_och_car_running_hint)
}
else -> {}
}

View File

@@ -31,17 +31,20 @@ class StopSiteView @JvmOverloads constructor(
private fun stopSite(){
when (CallerAutoPilotStatusListenerManager.getState()) {
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {// 不可自动驾驶
ToastCharterUtils.showToastShort("设备未就绪请稍等,请稍后再试")
// ToastCharterUtils.showToastShort("设备未就绪请稍等,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_status_autopilot_disable_hint2)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {//
ToastCharterUtils.showToastShort("因车辆正在人工驾驶中无法靠边停车,请稍后再试")
// ToastCharterUtils.showToastShort("因车辆正在人工驾驶中无法靠边停车,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_car_running_not_stop)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> {
// 靠边停车
StopSideManager.stopSide()
}
IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> {
ToastCharterUtils.showToastShort("远程守护卫士操作中,稍后再试试吧~")
// ToastCharterUtils.showToastShort("远程守护卫士操作中,稍后再试试吧~")
ToastCharterUtils.showToastShort(R.string.module_och_car_parallel_driving_hint)
}
else -> {}
}

View File

@@ -77,7 +77,8 @@ class DebugView @JvmOverloads constructor(
getFragment()?.showNoviceGuidanceFragment()
}
debug_change_modle.setOnClickListener {
ToastCharterUtils.showToastShort("因车辆正在人工驾驶中无法靠边停车,请安全员主动停止车辆")
// ToastCharterUtils.showToastShort("因车辆正在人工驾驶中无法靠边停车,请安全员主动停止车辆")
ToastCharterUtils.showToastShort(R.string.module_och_status_autopilot_enable_hint)
when (HdMapBuildConfig.currentCarVrIconRes) {
R.raw.aiqinghao -> {
getFragment()?.setCarMode(OrderInfoResponse.M1_FAMILY)

View File

@@ -215,14 +215,16 @@ class NoviceGuidanceFragment :
include_welcome.visibility = View.VISIBLE
actv_start_guildance.visibility = View.VISIBLE
group_complete_guidance.visibility = View.GONE
actv_click_go_explore.text = "点击开始探索"
// actv_click_go_explore.text = "点击开始探索"
actv_click_go_explore.text = StringUtils.getString(R.string.module_och_click_start)
pageStatus = PageStatus.Startpage
}
if (complierGuidance) {
include_welcome.visibility = View.VISIBLE
actv_start_guildance.visibility = View.GONE
group_complete_guidance.visibility = View.VISIBLE
actv_click_go_explore.text = "点我进入主页"
// actv_click_go_explore.text = "点我进入主页"
actv_click_go_explore.text = StringUtils.getString(R.string.module_och_click_home)
pageStatus = PageStatus.EndPage
mPresenter?.exitDialogFragment()
}
@@ -316,7 +318,10 @@ class NoviceGuidanceFragment :
}
fun setProductType(type: String) {
actv_start_guildance.text = "欢迎乘坐${SkinResources.getInstance().getString(R.string.operation_platform_name)}车联自动驾驶$type!"
// actv_start_guildance.text = "欢迎乘坐${SkinResources.getInstance().getString(R.string.operation_platform_name)}车联自动驾驶$type!"
actv_start_guildance.text = "${StringUtils.getString(R.string.module_och_welcome_ride)}${
SkinResources.getInstance().getString(R.string.operation_platform_name)
}${StringUtils.getString(R.string.module_och_welcome_ride1)}$type!"
}
companion object {

View File

@@ -10,6 +10,7 @@ import android.view.MotionEvent
import android.view.View
import androidx.constraintlayout.widget.ConstraintLayout
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.R
import kotlinx.android.synthetic.main.charter_p_devices_unlock.view.aciv_only_unlock
@@ -133,17 +134,20 @@ class UnlockView : ConstraintLayout, LockManager.LockStatusCallback {
when (isLock) {
LockManager.LockStatus.LOCKED -> {
// 锁定
actv_lock_status.text = "长按开锁键2秒快速解锁"
// actv_lock_status.text = "长按开锁键2秒快速解锁"
actv_lock_status.text = StringUtils.getString(R.string.module_och_long_click_unlock)
aciv_only_unlock.setImageResource(R.drawable.charter_p_only_lock)
}
LockManager.LockStatus.UNLOCKING -> {
// 开锁中
actv_lock_status.text = "开锁中.."
// actv_lock_status.text = "开锁中.."
actv_lock_status.text = StringUtils.getString(R.string.module_och_long_click_unlocking)
aciv_only_unlock.setImageResource(R.drawable.charter_p_only_unlocking)
}
LockManager.LockStatus.UNLOCK -> {
// 解锁成功
actv_lock_status.text = "已解锁"
// actv_lock_status.text = "已解锁"
actv_lock_status.text = StringUtils.getString(R.string.module_och_long_click_unlocked)
aciv_only_unlock.setImageResource(R.drawable.charter_p_only_unlock)
}
}

View File

@@ -8,6 +8,7 @@ import androidx.constraintlayout.widget.ConstraintLayout
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.findViewTreeViewModelStoreOwner
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.callback.IClearViewCallback
import kotlinx.android.synthetic.main.charter_p_devices_fragment.view.actv_contain_order
@@ -86,7 +87,8 @@ class OrderInfoView : ConstraintLayout, OrderInfoViewModel.ItineraryViewCallback
}
override fun setLeftTime(leftTime:String){
actv_left_time.text = "剩余时间 $leftTime"
// actv_left_time.text = "剩余时间 $leftTime"
actv_left_time.text = "${StringUtils.getString(R.string.module_och_time_remaining)} $leftTime"
}
override fun setStartTimeAndEndTime(startTime:String,endTime:String){

View File

@@ -4,7 +4,9 @@ import androidx.lifecycle.ViewModel
import com.mogo.eagle.core.data.BaseData
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.StringUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.callback.ITimeCallback
import com.mogo.och.charter.passenger.model.CharterPassengerModel
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
@@ -50,7 +52,8 @@ class OrderInfoViewModel: ViewModel(), ITimeCallback {
}else{
viewCallback?.setPhone("----")
viewCallback?.setStartTimeAndEndTime("--:---", "--:--")
viewCallback?.setLeftTime("剩余时间 --:--")
// viewCallback?.setLeftTime("剩余时间 --:--")
viewCallback?.setLeftTime("${StringUtils.getString(R.string.module_och_time_remaining)} --:--")
}
}
@@ -66,7 +69,8 @@ class OrderInfoViewModel: ViewModel(), ITimeCallback {
CharterPassengerModel.endOrder(object : OchCommonServiceCallback<BaseData> {
override fun onSuccess(data: BaseData?) {
if (null != data && 0 == data.code) {
ToastCharterUtils.showToastShort("结束成功")
// ToastCharterUtils.showToastShort("结束成功")
ToastCharterUtils.showToastShort(R.string.module_och_success_achieved)
CharterPassengerModel.setEndOrderStatus()
viewCallback?.setViewGone()
val msg = EndOrderMsg(

View File

@@ -26,6 +26,7 @@ import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.lan.bean.LineSite
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.bridge.autopilot.location.OchLocationManager
import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.network.OchCommonServiceCallback
import com.mogo.och.common.module.manager.stopside.StopSideManager
import com.mogo.och.common.module.manager.loop.BizLoopManager
@@ -87,7 +88,8 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
if (msg.arriveStatus == 2) {
return@post
}
ToastCharterUtils.showToastShort("站点确定")
// ToastCharterUtils.showToastShort("站点确定")
ToastCharterUtils.showToastShort(R.string.module_och_site_determined)
viewCallback?.setEnableSiteStatus(true)
checkLine = tempCheckLine
checkSite = tempCheckSite
@@ -100,7 +102,8 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
CharterPassengerModel.cleanbroadcastListInfo(checkSite)
CharterPassengerModel.queryOrder()
} else {
ToastCharterUtils.showToastShort("司机端拒绝请重新选择")
// ToastCharterUtils.showToastShort("司机端拒绝请重新选择")
ToastCharterUtils.showToastShort(R.string.module_och_driver_end_rejected)
viewCallback?.hideDataDriverRefuse()
}
RxUtils.disposeSubscribe(subscribeSelectSite)
@@ -207,7 +210,8 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
}
override fun onFail(code: Int, msg: String) {
ToastCharterUtils.showToastShort("查询线路失败")
// ToastCharterUtils.showToastShort("查询线路失败")
ToastCharterUtils.showToastShort(R.string.module_och_querying_route_failed)
viewCallback?.setVisableByTrun(showNetError = true)
}
@@ -220,7 +224,8 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
fun changeSites(siteList: MutableList<SiteInfoResponse.SiteInfo>) {
if (!CallerTelematicManager.getClientConnStatus()) {
ToastCharterUtils.showToastLong("乘客屏无法连接司机屏请联系安全员")
// ToastCharterUtils.showToastLong("乘客屏无法连接司机屏请联系安全员")
ToastCharterUtils.showToastLong(R.string.module_och_passenger_not_connect_driver)
return
}
val sentDataSite: MutableList<LineSite> = mutableListOf()
@@ -252,7 +257,8 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
RxUtils.disposeSubscribe(subscribeSelectSite)
subscribeSelectSite = RxUtils.createSubscribe(120_000) {
ToastCharterUtils.showToastShort("请联系安全员确认")
// ToastCharterUtils.showToastShort("请联系安全员确认")
ToastCharterUtils.showToastShort(R.string.module_och_please_security_officer_confirm)
viewCallback?.hideDataDriverRefuse()
}
}
@@ -300,13 +306,15 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
}
override fun onFail(code: Int, msg: String?) {
ToastCharterUtils.showToastShort("查询站点失败")
// ToastCharterUtils.showToastShort("查询站点失败")
ToastCharterUtils.showToastShort(R.string.module_och_query_site_failed)
viewCallback?.setVisableByTrun(showNetError = true)
}
override fun onError() {
super.onError()
ToastCharterUtils.showToastShort("查询站点失败")
// ToastCharterUtils.showToastShort("查询站点失败")
ToastCharterUtils.showToastShort(R.string.module_och_query_site_failed)
viewCallback?.setVisableByTrun(showNetError = true)
}
})
@@ -314,7 +322,8 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
private fun checkServerStatus() {
if (!CallerTelematicManager.getClientConnStatus()) {
ToastCharterUtils.showToastShort("断开和司机端连接、请联系安全员")
// ToastCharterUtils.showToastShort("断开和司机端连接、请联系安全员")
ToastCharterUtils.showToastShort(R.string.module_och_disconnect_driver)
BizLoopManager.removeLoopFunction(TAGLINELOOP)
viewCallback?.hideDataDriverRefuse()
CallerLogger.d(
@@ -385,14 +394,16 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
}
else -> {
ToastCharterUtils.showToastShort("自动驾驶中无法切换线路")
// ToastCharterUtils.showToastShort("自动驾驶中无法切换线路")
ToastCharterUtils.showToastShort(R.string.module_och_autopilot_now_not_change_line)
false
}
}
}
IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> {
ToastCharterUtils.showToastShort("远程守护卫士操作中,稍后再试试吧~")
// ToastCharterUtils.showToastShort("远程守护卫士操作中,稍后再试试吧~")
ToastCharterUtils.showToastShort(R.string.module_och_car_parallel_driving_hint)
return false
}
@@ -401,11 +412,13 @@ class SelectLineViewModel : ViewModel(), IOrderStatusChangeListener {
} else {
when (CallerAutoPilotStatusListenerManager.getState()) {
IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> {
ToastCharterUtils.showToastShort("远程守护卫士操作中,稍后再试试吧~")
// ToastCharterUtils.showToastShort("远程守护卫士操作中,稍后再试试吧~")
ToastCharterUtils.showToastShort(R.string.module_och_car_parallel_driving_hint)
return false
}
}
ToastCharterUtils.showToastShort("请停车后再修改目的地~")
// ToastCharterUtils.showToastShort("请停车后再修改目的地~")
ToastCharterUtils.showToastShort(R.string.module_och_stop_car_and_change_site)
return false
}
return true

View File

@@ -95,9 +95,11 @@ class OrderSiteItemAdapter(
checkChangeListener?.onCheckListener(tempInfo)
} else {
if (siteInfo.isNear) {
ToastCharterUtils.showToastShort("您已在此站点附近")
// ToastCharterUtils.showToastShort("您已在此站点附近")
ToastCharterUtils.showToastShort(R.string.module_och_in_site_nearby)
} else {
ToastCharterUtils.showToastShort("站点已过,请选择返程路线")
// ToastCharterUtils.showToastShort("站点已过,请选择返程路线")
ToastCharterUtils.showToastShort(R.string.module_och_site_having_already_hint)
}
}
}

View File

@@ -25,6 +25,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.ClickUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.bean.Temperature
@@ -385,11 +386,13 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba
if (leftLight) {
tv_light_top_01.text = context.getString(R.string.charter_p_open_light1)
tv_light_top_01.isChecked = true
if (!isFirst) ToastCharterUtils.showToastShort("打开顶灯1")
// if (!isFirst) ToastCharterUtils.showToastShort("打开顶灯1")
if (!isFirst) ToastCharterUtils.showToastShort(R.string.module_och_open_ceiling_light_1)
} else {
tv_light_top_01.text = context.getString(R.string.charter_p_close_light1)
tv_light_top_01.isChecked = false
if (!isFirst) ToastCharterUtils.showToastShort("关闭顶灯1")
// if (!isFirst) ToastCharterUtils.showToastShort("关闭顶灯1")
if (!isFirst) ToastCharterUtils.showToastShort(R.string.module_och_close_ceiling_light_1)
}
}
}
@@ -399,11 +402,13 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba
if (rightLight) {
tv_light_top_02.text = context.getString(R.string.charter_p_open_light2)
tv_light_top_02.isChecked = true
if (!isFirst) ToastCharterUtils.showToastShort("打开顶灯2")
// if (!isFirst) ToastCharterUtils.showToastShort("打开顶灯2")
if (!isFirst) ToastCharterUtils.showToastShort(R.string.module_och_open_ceiling_light_2)
} else {
tv_light_top_02.text = context.getString(R.string.charter_p__close_light2)
tv_light_top_02.isChecked = false
if (!isFirst) ToastCharterUtils.showToastShort("关闭顶灯2")
// if (!isFirst) ToastCharterUtils.showToastShort("关闭顶灯2")
if (!isFirst) ToastCharterUtils.showToastShort(R.string.module_och_close_ceiling_light_2)
}
}
}
@@ -414,12 +419,14 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba
tv_light_atmosphere.text = context.getString(R.string.charter_p_open_atmosphere)
tv_light_atmosphere.isChecked = true
iv_bottom_light_setting.setImageResource(R.drawable.charter_p_function_atmosphere_select)
if (!isFirst) ToastCharterUtils.showToastShort("打开氛围灯")
// if (!isFirst) ToastCharterUtils.showToastShort("打开氛围灯")
if (!isFirst) ToastCharterUtils.showToastShort(R.string.module_och_open_ambient_light)
} else {
tv_light_atmosphere.text = context.getString(R.string.charter_p_close_atmosphere)
tv_light_atmosphere.isChecked = false
iv_bottom_light_setting.setImageResource(R.drawable.charter_p_function_atmosphere_nor)
if (!isFirst) ToastCharterUtils.showToastShort("关闭氛围灯")
// if (!isFirst) ToastCharterUtils.showToastShort("关闭氛围灯")
if (!isFirst) ToastCharterUtils.showToastShort(R.string.module_och_close_ambient_light)
}
}
}
@@ -541,7 +548,8 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba
}
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.m1_voice_di)
if (isChecked) {//打开
tv_aircondition_switch.setText("关闭空调")
// tv_aircondition_switch.setText("关闭空调")
tv_aircondition_switch.setText(StringUtils.getString(R.string.module_och_off_air_conditioner))
if (rg_setting_pattern.checkedRadioButtonId == R.id.rb_pattern_heating) {
openHeater()// 打开暖风机
} else {
@@ -549,7 +557,8 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba
}
showAni()
} else {// 关闭
tv_aircondition_switch.setText("打开空调")
// tv_aircondition_switch.setText("打开空调")
tv_aircondition_switch.setText(StringUtils.getString(R.string.module_och_on_air_conditioner))
closeHeater()// 关闭暖风机
closeAircondition()//关闭空调
}
@@ -719,11 +728,13 @@ class SoftControlView : ConstraintLayout, SoftControlViewModel.SoftControlCallba
) {
tv_aircondition_switch?.let {
if (!airIsOpen && !heaterIsOpen) {
tv_aircondition_switch.text = "打开空调"
// tv_aircondition_switch.text = "打开空调"
tv_aircondition_switch.text = StringUtils.getString(R.string.module_och_on_air_conditioner)
tv_aircondition_switch.isChecked = false
dbv_wind.visibility = View.GONE
} else {
tv_aircondition_switch.text = "关闭空调"
// tv_aircondition_switch.text = "关闭空调"
tv_aircondition_switch.text = StringUtils.getString(R.string.module_och_off_air_conditioner)
tv_aircondition_switch.isChecked = true
dbv_wind.visibility = View.VISIBLE
}

View File

@@ -11,6 +11,7 @@ import com.mogo.och.bridge.device.LightAirconditionDoorStatusManager
import com.mogo.och.bridge.device.data.AirconditionStatus
import com.mogo.och.bridge.device.data.HeaterStatue
import com.mogo.och.bridge.device.data.LightStatus
import com.mogo.och.charter.passenger.R
import com.mogo.och.common.module.utils.RxUtils
import io.reactivex.disposables.Disposable
@@ -146,7 +147,8 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
RxUtils.disposeSubscribe(airconditionDisposable)
airconditionDisposable = RxUtils.createSubscribe(10000) {
if (!LightAirconditionDoorStatusManager.airconditionStatus.isOpen && LightAirconditionDoorStatusManager.airconditionStatus.windSpeed != windSpeedCmd && LightAirconditionDoorStatusManager.airconditionStatus.temperature != temperatureCmd && LightAirconditionDoorStatusManager.airconditionStatus.pattert != modeCmd) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
}
@@ -159,7 +161,8 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
RxUtils.disposeSubscribe(airconditionDisposable)
airconditionDisposable = RxUtils.createSubscribe(10000) {
if (LightAirconditionDoorStatusManager.airconditionStatus.isOpen) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
}
@@ -173,7 +176,8 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
RxUtils.disposeSubscribe(heaterDisposable)
heaterDisposable = RxUtils.createSubscribe(10000) {
if (!LightAirconditionDoorStatusManager.heaterStatue.isOpen && LightAirconditionDoorStatusManager.heaterStatue.windSpeed != windSpeedCmd) {
ToastCharterUtils.showToastShort("暖风机操作未生效,请稍后重试吧~")
// ToastCharterUtils.showToastShort("暖风机操作未生效,请稍后重试吧~")
ToastCharterUtils.showToastShort(R.string.module_och_fan_heater_operation_invalid)
}
}
}
@@ -184,7 +188,8 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
RxUtils.disposeSubscribe(heaterDisposable)
heaterDisposable = RxUtils.createSubscribe(10000) {
if (LightAirconditionDoorStatusManager.heaterStatue.isOpen) {
ToastCharterUtils.showToastShort("暖风机操作未生效,请稍后重试吧~")//还是开着的
// ToastCharterUtils.showToastShort("暖风机操作未生效,请稍后重试吧~")//还是开着的
ToastCharterUtils.showToastShort(R.string.module_och_fan_heater_operation_invalid)//还是开着的
}
}
}
@@ -196,14 +201,16 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp1Cmd(1)
RxUtils.createSubscribe {
if (!LightAirconditionDoorStatusManager.lightStatus.isOpenLight1) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
} else {
CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp1Cmd(2)
RxUtils.createSubscribe {
if (LightAirconditionDoorStatusManager.lightStatus.isOpenLight1) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
}
@@ -216,14 +223,16 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp2Cmd(1)
RxUtils.createSubscribe {
if (!LightAirconditionDoorStatusManager.lightStatus.isOpenLight2) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
} else {
CallerAutoPilotControlManager.sendRoboBusJinlvM1MainLamp2Cmd(2)
RxUtils.createSubscribe {
if (LightAirconditionDoorStatusManager.lightStatus.isOpenLight2) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
}
@@ -236,14 +245,16 @@ class SoftControlViewModel : ViewModel(), LightAirconditionDoorCallback {
CallerAutoPilotControlManager.sendRoboBusJinlvM1SmallLampCmd(1)
RxUtils.createSubscribe {
if (!LightAirconditionDoorStatusManager.lightStatus.isOpenatmosphere) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
} else {
CallerAutoPilotControlManager.sendRoboBusJinlvM1SmallLampCmd(2)
RxUtils.createSubscribe {
if (LightAirconditionDoorStatusManager.lightStatus.isOpenatmosphere) {
ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
// ToastCharterUtils.showToastShort("控制系统繁忙,请稍后再试")
ToastCharterUtils.showToastShort(R.string.module_och_control_system_busy)
}
}
}

View File

@@ -19,6 +19,7 @@ import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.ClickUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.charter.passenger.R
import com.mogo.och.charter.passenger.bean.response.OrderInfoResponse
@@ -122,7 +123,8 @@ class StatusBarView @JvmOverloads constructor(
private fun setAutoPilotStatusInfo(state: Int) {
if (FunctionBuildConfig.isDemoMode) {// 美化模式
actv_auto_status.text = "自动驾驶中"
// actv_auto_status.text = "自动驾驶中"
actv_auto_status.text = StringUtils.getString(R.string.module_och_autonomous_driving)
when (CharterPassengerModel.getCurrentOrderStatus()) {
OrderStatusEnum.Nothing -> {// 初始状态
//是否强制绘制引导线
@@ -160,16 +162,20 @@ class StatusBarView @JvmOverloads constructor(
}else{
when (state) {
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE -> {
actv_auto_status.text = "安全接管中"
// actv_auto_status.text = "安全接管中"
actv_auto_status.text = StringUtils.getString(R.string.module_och_during_safe_handover_process)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE -> {
actv_auto_status.text = "安全接管中"
// actv_auto_status.text = "安全接管中"
actv_auto_status.text = StringUtils.getString(R.string.module_och_during_safe_handover_process)
}
IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING -> {
actv_auto_status.text = "自动驾驶中"
// actv_auto_status.text = "自动驾驶中"
actv_auto_status.text = StringUtils.getString(R.string.module_och_autonomous_driving)
}
IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING -> {
actv_auto_status.text = "远程代驾中"
// actv_auto_status.text = "远程代驾中"
actv_auto_status.text = StringUtils.getString(R.string.module_och_parallel_driving)
}
else -> {}
}

View File

@@ -150,7 +150,8 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer {
override fun setStateAndUi(state: Int) {
super.setStateAndUi(state)
if(state==CURRENT_STATE_PLAYING_BUFFERING_START){
ToastCharterUtils.showToastShort("加载中请稍等")
// ToastCharterUtils.showToastShort("加载中请稍等")
ToastCharterUtils.showToastShort(R.string.module_och_loading)
}
}
@@ -281,7 +282,8 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer {
CallerLogger.d(TAG,"onError--${what}--${extra}")
MediaManager.setVideoFocusChange(false)
mThumbImageViewLayout?.visibility = View.VISIBLE
ToastCharterUtils.showToastLong("哎呀,出错了,看看其他视频吧")
// ToastCharterUtils.showToastLong("哎呀,出错了,看看其他视频吧")
ToastCharterUtils.showToastLong(R.string.module_och_video_error)
currentTime = -1
if(isIfCurrentIsFullscreen){
smalllPlayer?.clearFullscreenLayout(this)

View File

@@ -121,12 +121,14 @@ public class RecyclerVideoAdapter extends RecyclerView.Adapter<RecyclerItemVideo
@Override
public void onPlayError(String url, Object... objects) {
ToastCharterUtils.INSTANCE.showCharterLongToast("哎呀,出错了,看看其他视频吧");
// ToastCharterUtils.INSTANCE.showCharterLongToast("哎呀,出错了,看看其他视频吧");
ToastCharterUtils.INSTANCE.showCharterLongToast(R.string.module_och_video_error);
}
@Override
public void onClickStartError(String url, Object... objects) {
ToastCharterUtils.INSTANCE.showCharterLongToast("哎呀,出错了,看看其他视频吧");
// ToastCharterUtils.INSTANCE.showCharterLongToast("哎呀,出错了,看看其他视频吧");
ToastCharterUtils.INSTANCE.showCharterLongToast(R.string.module_och_video_error);
}
});
}

View File

@@ -26,13 +26,13 @@
android:layout_width="@dimen/dp_193"
android:layout_height="@dimen/dp_107"/>
<!-- app:charterPBottomTitle="靠边停车"-->
<com.mogo.och.charter.passenger.ui.bottom.impl.StopSiteView
android:id="@+id/actv_stop_site"
app:charterPBackageViewId="@+id/actv_stop_site_press"
app:charterPselectedDrawable="@drawable/charter_p_bottom_stopsite_press"
app:charterPnormalDrawable="@drawable/charter_p_bottom_stopsite_normal"
app:charterPBottomTitle="靠边停车"
app:charterPBottomTitle="@string/module_core_pull_over"
app:layout_constraintStart_toEndOf="@+id/aciv_center_image"
app:layout_constraintEnd_toStartOf="@+id/actv_close_door"
app:layout_constraintTop_toTopOf="parent"
@@ -50,12 +50,13 @@
android:layout_width="@dimen/dp_193"
android:layout_height="@dimen/dp_107"/>
<!-- app:charterPBottomTitle="关车门"-->
<com.mogo.och.charter.passenger.ui.bottom.impl.CloseDoorView
android:id="@+id/actv_close_door"
app:charterPBackageViewId="@+id/actv_close_door_press"
app:charterPselectedDrawable="@drawable/charter_p_bottom_closedoor_press"
app:charterPnormalDrawable="@drawable/charter_p_bottom_closedoor_normal"
app:charterPBottomTitle="关车门"
app:charterPBottomTitle="@string/module_och_close_car_door"
app:layout_constraintStart_toEndOf="@+id/actv_stop_site"
app:layout_constraintEnd_toStartOf="@+id/actv_open_door"
app:layout_constraintTop_toTopOf="parent"
@@ -73,13 +74,14 @@
android:layout_width="@dimen/dp_193"
android:layout_height="@dimen/dp_107"/>
<!-- app:charterPBottomTitle="开车门"-->
<com.mogo.och.charter.passenger.ui.bottom.impl.OpenDoorView
android:id="@+id/actv_open_door"
android:gravity="center"
app:charterPBackageViewId="@+id/actv_open_door_press"
app:charterPselectedDrawable="@drawable/charter_p_bottom_opendoor_press"
app:charterPnormalDrawable="@drawable/charter_p_bottom_opendoor_normal"
app:charterPBottomTitle="开车门"
app:charterPBottomTitle="@string/module_och_open_car_door"
app:layout_constraintStart_toEndOf="@+id/actv_close_door"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
@@ -120,12 +122,13 @@
android:layout_width="@dimen/dp_193"
android:layout_height="@dimen/dp_107"/>
<!-- app:charterPBottomTitle="音乐"-->
<com.mogo.och.charter.passenger.ui.bottom.impl.MusicCheckView
android:id="@+id/actv_music"
app:charterPBackageViewId="@+id/actv_music_press"
app:charterPselectedDrawable="@drawable/charter_p_bottom_music_press"
app:charterPnormalDrawable="@drawable/charter_p_bottom_music_normal"
app:charterPBottomTitle="音乐"
app:charterPBottomTitle="@string/module_och_music"
app:charterPBottomClick="false"
app:layout_constraintEnd_toStartOf="@+id/actv_setting"
app:layout_constraintTop_toTopOf="parent"
@@ -143,12 +146,13 @@
android:layout_width="@dimen/dp_193"
android:layout_height="@dimen/dp_107"/>
<!-- app:charterPBottomTitle="设置"-->
<com.mogo.och.charter.passenger.ui.bottom.BottomCheckView
android:id="@+id/actv_setting"
app:charterPBackageViewId="@+id/actv_setting_press"
app:charterPselectedDrawable="@drawable/charter_p_bottom_softsettiing_press"
app:charterPnormalDrawable="@drawable/charter_p_bottom_softsettiing_normal"
app:charterPBottomTitle="设置"
app:charterPBottomTitle="@string/module_och_settings"
app:charterPBottomClick="false"
app:layout_constraintEnd_toStartOf="@+id/actv_line"
app:layout_constraintTop_toTopOf="parent"
@@ -166,12 +170,13 @@
android:layout_width="@dimen/dp_193"
android:layout_height="@dimen/dp_107"/>
<!-- app:charterPBottomTitle="线路"-->
<com.mogo.och.charter.passenger.ui.bottom.BottomCheckView
android:id="@+id/actv_line"
app:charterPBackageViewId="@+id/actv_line_press"
app:charterPselectedDrawable="@drawable/charter_p_bottom_line_press"
app:charterPnormalDrawable="@drawable/charter_p_bottom_line_normal"
app:charterPBottomTitle="线路"
app:charterPBottomTitle="@string/module_och_lines"
app:charterPBottomClick="false"
app:layout_constraintEnd_toStartOf="@+id/aciv_center_image"
app:layout_constraintTop_toTopOf="parent"

View File

@@ -19,6 +19,7 @@
android:layout_width="73dp"
android:layout_height="@dimen/dp_53"/>
<!-- android:text="出发"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_go_title"
app:layout_constraintTop_toTopOf="parent"
@@ -28,7 +29,7 @@
android:textSize="@dimen/dp_48"
android:textColor="@android:color/white"
android:layout_marginEnd="@dimen/dp_7"
android:text="出发"
android:text="@string/module_och_depart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

View File

@@ -16,6 +16,7 @@
android:layout_width="@dimen/dp_90"
android:layout_height="@dimen/dp_90"/>
<!-- android:text="靠边停车"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_title"
app:layout_constraintStart_toStartOf="@+id/aciv_center_image"
@@ -23,7 +24,7 @@
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="@dimen/dp_9"
android:textSize="@dimen/dp_20"
android:text="靠边停车"
android:text="@string/module_core_pull_over"
android:textColor="@color/charter_p_090f28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

View File

@@ -7,11 +7,12 @@
tools:ignore="MissingDefaultResource"
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
<!-- android:text="订单空空~"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_order_null"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="订单空空~"
android:text="@string/module_och_order_empty"
android:textColor="@color/charter_p_090f28"
android:textSize="@dimen/dp_36"
app:layout_constraintBottom_toBottomOf="parent"
@@ -30,12 +31,13 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- android:text="剩余包车时长"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_order_end_time_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/dp_7_5"
android:text="剩余包车时长"
android:text="@string/module_och_order_end_time"
android:textColor="@color/charter_p_090f28"
android:textSize="@dimen/dp_20"
app:layout_constraintBottom_toBottomOf="parent"

View File

@@ -16,6 +16,7 @@
android:layout_width="@dimen/dp_90"
android:layout_height="@dimen/dp_90"/>
<!-- android:text="靠边停车"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_title"
app:layout_constraintStart_toStartOf="@+id/aciv_center_image"
@@ -23,7 +24,7 @@
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="@dimen/dp_9"
android:textSize="@dimen/dp_20"
android:text="靠边停车"
android:text="@string/module_core_pull_over"
android:textColor="@color/charter_p_090f28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

View File

@@ -8,24 +8,28 @@
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout"
tools:ignore="MissingDefaultResource">
<!-- android:text="到站"-->
<TextView
android:text="到站"
android:text="@string/module_och_arrive_station"
android:id="@+id/debug_arrive_dest"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="展示引导页面"-->
<TextView
android:text="展示引导页面"
android:text="@string/module_och_show_novice_guidance"
android:id="@+id/debug_show_noviceGuidance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="切换模型"-->
<TextView
android:text="切换模型"
android:text="@string/module_och_change_mode"
android:id="@+id/debug_change_modle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="显示结束页面"-->
<TextView
android:text="显示结束页面"
android:text="@string/module_och_show_end_view"
android:id="@+id/debug_show_endview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

View File

@@ -39,18 +39,20 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="用车时间"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_order_times_title"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toTopOf="@+id/actv_end_order"
android:layout_marginBottom="@dimen/dp_25"
android:text="用车时间"
android:text="@string/module_och_order_times"
android:textSize="@dimen/dp_18"
android:textColor="@color/charter_p_112b57"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="结束用车"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_end_order"
app:layout_constraintStart_toStartOf="parent"
@@ -59,7 +61,7 @@
android:layout_marginBottom="@dimen/dp_27"
android:background="@drawable/charter_p_shape_end_order"
android:gravity="center"
android:text="结束用车"
android:text="@string/module_och_end_order"
android:textSize="@dimen/dp_18"
android:paddingEnd="@dimen/dp_42"
android:paddingStart="@dimen/dp_42"
@@ -91,9 +93,10 @@
android:layout_width="@dimen/dp_66"
android:layout_height="@dimen/dp_68"/>
<!-- android:text="剩余时间 &#45;&#45;:&#45;&#45;"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_left_time"
android:text="剩余时间 --:--"
android:text="@string/module_och_time_remaining1"
android:textSize="@dimen/dp_20"
android:textColor="@color/charter_p_5F7096"
app:layout_constraintEnd_toEndOf="parent"
@@ -118,9 +121,10 @@
android:layout_height="wrap_content"
app:isUseSkin="true"/>
<!-- android:text="结束用车"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_end_order_submit"
android:text="结束用车"
android:text="@string/module_och_end_order"
android:textSize="@dimen/dp_24"
android:textColor="@android:color/white"
android:layout_marginBottom="@dimen/dp_27"
@@ -136,9 +140,10 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="继续用车"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_contain_order"
android:text="继续用车"
android:text="@string/module_och_contain_order"
android:textSize="@dimen/dp_24"
android:textColor="@android:color/white"
android:background="@drawable/charter_p_shape_end_order"

View File

@@ -27,9 +27,10 @@
android:layout_width="@dimen/dp_180"
android:layout_height="@dimen/dp_180"/>
<!-- android:text="长按开锁键2秒杀快速解锁"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_lock_status"
android:text="长按开锁键2秒杀快速解锁"
android:text="@string/module_och_long_click_unlock"
app:layout_constraintStart_toStartOf="@+id/aciv_only_unlock"
app:layout_constraintEnd_toEndOf="@+id/aciv_only_unlock"
app:layout_constraintTop_toBottomOf="@+id/aciv_only_unlock"

View File

@@ -6,9 +6,10 @@
android:layout_height="@dimen/dp_440"
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
<!-- android:text="音乐列表"-->
<TextView
android:id="@+id/tv_music_title"
android:text="音乐列表"
android:text="@string/module_och_music_playlist"
android:textColor="@color/charter_p_253A5A"
android:textSize="@dimen/dp_18"
app:layout_constraintTop_toTopOf="parent"

View File

@@ -6,6 +6,7 @@
android:layout_height="@dimen/dp_51"
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
<!-- android:text="音乐名称"-->
<TextView
android:id="@+id/tv_song_name"
app:layout_constraintStart_toStartOf="parent"
@@ -13,7 +14,7 @@
app:layout_constraintBottom_toBottomOf="parent"
android:textColor="@color/charter_p_303C52"
android:layout_marginStart="@dimen/dp_45"
android:text="音乐名称"
android:text="@string/module_och_music_name"
android:textSize="@dimen/dp_18"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
@@ -29,6 +30,7 @@
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_16"/>
<!-- android:text="轻柔"-->
<TextView
android:id="@+id/tv_tag"
app:layout_constraintEnd_toEndOf="parent"
@@ -40,7 +42,7 @@
android:paddingStart="@dimen/dp_4"
android:paddingEnd="@dimen/dp_4"
android:layout_marginEnd="@dimen/dp_43"
android:text="轻柔"
android:text="@string/module_och_music_soft"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

View File

@@ -21,6 +21,7 @@
android:layout_height="wrap_content"
app:isUseSkin="true"/>
<!-- android:text="太棒了!"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_complete_guidance_title"
app:layout_constraintTop_toTopOf="parent"
@@ -28,7 +29,7 @@
android:layout_marginTop="@dimen/dp_158"
android:layout_marginStart="@dimen/dp_280"
android:visibility="gone"
android:text="太棒了!"
android:text="@string/module_och_great"
android:textSize="@dimen/dp_63"
android:textStyle="bold"
android:textColor="@color/charter_p_101c35"
@@ -66,13 +67,14 @@
android:layout_width="@dimen/dp_631"
android:layout_height="@dimen/dp_583"/>
<!-- android:text="用户信息:"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_userinfo_title"
app:layout_constraintTop_toTopOf="@+id/actv_contain_order_info"
app:layout_constraintStart_toStartOf="@+id/actv_contain_order_info"
android:layout_marginTop="@dimen/dp_74"
android:layout_marginStart="@dimen/dp_100"
android:text="用户信息:"
android:text="@string/module_och_user_info"
android:textColor="@color/charter_p_20418D"
android:textSize="@dimen/dp_30"
android:layout_width="wrap_content"
@@ -90,12 +92,13 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="用车时间:"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_order_time_title"
app:layout_constraintTop_toBottomOf="@+id/actv_userinfo"
app:layout_constraintStart_toStartOf="@+id/actv_userinfo"
android:layout_marginTop="@dimen/dp_60"
android:text="用车时间:"
android:text="@string/module_och_order_times1"
android:textColor="@color/charter_p_20418D"
android:textSize="@dimen/dp_30"
android:layout_width="wrap_content"
@@ -123,6 +126,7 @@
android:layout_width="@dimen/dp_360"
android:layout_height="@dimen/dp_80"/>
<!-- android:text="点击开始探索"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_click_go_explore"
app:layout_constraintStart_toStartOf="@+id/v_clikc_go_explore_bg"
@@ -131,7 +135,7 @@
app:layout_constraintHorizontal_chainStyle="packed"
app:layout_constraintBottom_toBottomOf="@+id/v_clikc_go_explore_bg"
android:layout_marginEnd="@dimen/dp_10"
android:text="点击开始探索"
android:text="@string/module_och_click_go_explore"
android:textStyle="bold"
android:textColor="@android:color/white"
android:textSize="@dimen/dp_30"

View File

@@ -45,22 +45,24 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/iv_end_order_opendoor" />
<!-- android:text="开车门"-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_19"
android:text="开车门"
android:text="@string/module_och_open_car_door"
android:textColor="@color/charter_p_23293b"
android:textSize="@dimen/dp_28"
app:layout_constraintEnd_toEndOf="@+id/iv_end_order_opendoor"
app:layout_constraintStart_toStartOf="@+id/iv_end_order_opendoor"
app:layout_constraintTop_toBottomOf="@+id/iv_end_order_opendoor" />
<!-- android:text="关车门"-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_19"
android:text="关车门"
android:text="@string/module_och_close_car_door"
android:textColor="@color/charter_p_23293b"
android:textSize="@dimen/dp_28"
app:layout_constraintEnd_toEndOf="@+id/iv_end_order_closedoor"

View File

@@ -63,6 +63,7 @@
</androidx.constraintlayout.widget.ConstraintLayout>
<!-- android:text="取消"-->
<TextView
android:id="@+id/tv_site_cancle"
android:layout_width="wrap_content"
@@ -75,12 +76,12 @@
android:paddingTop="@dimen/dp_14"
android:paddingEnd="@dimen/dp_56"
android:paddingBottom="@dimen/dp_13"
android:text="取消"
android:text="@string/module_core_cancel"
android:textColor="@android:color/white"
android:textSize="@dimen/dp_20"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/gl_site_cancle_submit_guide" />
<!-- android:text="确认"-->
<TextView
android:id="@+id/tv_site_submit"
android:layout_width="wrap_content"
@@ -93,7 +94,7 @@
android:paddingTop="@dimen/dp_14"
android:paddingEnd="@dimen/dp_56"
android:paddingBottom="@dimen/dp_13"
android:text="确认"
android:text="@string/module_och_affirm"
android:textColor="@android:color/white"
android:textSize="@dimen/dp_20"
app:layout_constraintBottom_toBottomOf="parent"
@@ -162,12 +163,13 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- android:text="确认完毕!"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/aciv_driver_agree_title_top"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_34"
android:text="确认完毕!"
android:text="@string/module_och_affirm_complete"
android:textColor="@color/charter_p_112b57"
android:textSize="@dimen/dp_34"
android:textStyle="bold"
@@ -175,11 +177,12 @@
app:layout_constraintStart_toStartOf="@+id/aciv_driver_agree_image"
app:layout_constraintTop_toBottomOf="@+id/aciv_driver_agree_image" />
<!-- android:text="小助手已记录您的选择。"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/aciv_driver_agree_title_bottom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="小助手已记录您的选择。"
android:text="@string/module_och_driver_agree"
android:textColor="@color/charter_p_112b57"
android:textSize="@dimen/dp_29"
app:layout_constraintEnd_toEndOf="@+id/aciv_driver_agree_image"
@@ -206,13 +209,14 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- android:text="啊哦,加载失败了\n联系车内领航员或尝试再次提交。"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/aciv_driver_refuse_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_35"
android:gravity="center"
android:text="啊哦,加载失败了\n联系车内领航员或尝试再次提交。"
android:text="@string/module_och_driver_refuse"
android:textColor="@color/charter_p_112b57"
android:textSize="@dimen/dp_34"
app:layout_constraintEnd_toEndOf="@+id/aciv_driver_refuse_image"

View File

@@ -22,12 +22,13 @@
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.372" />
<!-- android:text="加载中 请稍等"-->
<TextView
android:id="@+id/tv_loading_wait_driver_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="63dp"
android:text="加载中 请稍等"
android:text="@string/module_och_loading_wait"
android:gravity="center"
android:textColor="@color/charter_p_4a5375"
android:textSize="@dimen/dp_30"

View File

@@ -33,11 +33,12 @@
android:textColor="@color/charter_p_112b57"
android:textSize="@dimen/dp_29" />
<!-- android:text="网络不佳"-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_42"
android:text="网络不佳"
android:text="@string/module_och_network_not_good"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"

View File

@@ -15,8 +15,9 @@
android:src="@drawable/charter_p_order_noorder"
android:layout_width="@dimen/dp_274"
android:layout_height="@dimen/dp_219"/>
<!-- android:text="当前暂无订单"-->
<TextView
android:text="当前暂无订单"
android:text="@string/module_och_no_order"
android:layout_marginTop="@dimen/dp_42"
android:textSize="@dimen/dp_30"
android:textColor="@color/charter_p_4a5375"

View File

@@ -28,6 +28,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<!-- android:text="空 调"-->
<RadioButton
android:id="@+id/tv_setting_aircondition"
android:layout_width="@dimen/dp_160"
@@ -38,10 +39,11 @@
android:drawableLeft="@drawable/charter_p_function_airconditon_left_selector"
android:drawablePadding="-20dp"
android:gravity="center"
android:text="空 调"
android:text="@string/module_och_air_conditioner"
android:textColor="@drawable/charter_p_function_airconditon_text_color_selector"
android:textSize="@dimen/dp_24" />
<!-- android:text="灯 光"-->
<RadioButton
android:id="@+id/tv_setting_lighting"
android:layout_width="@dimen/dp_160"
@@ -52,10 +54,11 @@
android:drawableLeft="@drawable/charter_p_function_light_left_selector"
android:drawablePadding="-20dp"
android:gravity="center"
android:text="灯 光"
android:text="@string/module_och_lighting"
android:textColor="@drawable/charter_p_function_airconditon_text_color_selector"
android:textSize="@dimen/dp_24" />
<!-- android:text="声 音"-->
<RadioButton
android:id="@+id/tv_setting_voice"
android:layout_width="@dimen/dp_160"
@@ -65,7 +68,7 @@
android:drawableLeft="@drawable/charter_p_function_voice_left_selector"
android:drawablePadding="-20dp"
android:gravity="center"
android:text="声 音"
android:text="@string/module_och_voice"
android:textColor="@drawable/charter_p_function_airconditon_text_color_selector"
android:textSize="@dimen/dp_24" />
</RadioGroup>
@@ -93,6 +96,7 @@
app:layout_constraintHeight_percent="0.5"
app:layout_constraintStart_toStartOf="@+id/iv_aircondition" />
<!-- android:text="打开空调"-->
<com.mogo.och.charter.passenger.ui.softcontrol.view.DrawableCheckBox
android:id="@+id/tv_aircondition_switch"
android:layout_width="0dp"
@@ -103,7 +107,7 @@
android:button="@null"
android:checked="false"
android:drawableLeft="@drawable/charter_p_function_switch_left_selector"
android:text="打开空调"
android:text="@string/module_och_on_air_conditioner"
android:gravity="left|center_vertical"
android:drawablePadding="@dimen/dp_13"
android:textColor="@drawable/charter_p_function_airconditon_text_color_selector"
@@ -156,11 +160,12 @@
app:layout_constraintTop_toBottomOf="@+id/tv_aircondition_switch"
app:layout_constraintWidth_percent="0.244" />
<!-- android:text="设置"-->
<TextView
android:id="@+id/tv_aircondition_pattern_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="设置"
android:text="@string/module_och_settings"
android:textColor="@color/charter_p_47576e"
android:textSize="@dimen/dp_24"
app:layout_constraintBottom_toBottomOf="@+id/rg_setting_pattern"
@@ -425,12 +430,13 @@
app:layout_constraintVertical_bias="0.404"
app:layout_constraintWidth_percent="0.253" />
<!-- android:text="音量"-->
<TextView
android:id="@+id/tv_voice_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/dp_19"
android:text="音量"
android:text="@string/module_och_volume"
android:textColor="#374968"
android:textSize="@dimen/dp_24"
app:layout_constraintBottom_toTopOf="@+id/sb_voice_bar"

View File

@@ -20,12 +20,14 @@
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_47"/>
<!-- android:format12Hour="HH:mm MM月dd日 EEEE"-->
<!-- android:format24Hour="HH:mm MM月dd日 EEEE"-->
<TextClock
android:id="@+id/viewTextClock"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_47"
android:format12Hour="HH:mm MM月dd日 EEEE"
android:format24Hour="HH:mm MM月dd日 EEEE"
android:format12Hour="@string/module_och_format_hour"
android:format24Hour="@string/module_och_format_hour"
android:gravity="center"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"

View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="charter_p_refrigeration">Refrigeration</string>
<string name="charter_p_heating">Heating</string>
<string name="charter_p_ventilate">Ventilation</string>
<string name="charter_p_automatic">Automatic</string>
<string name="charter_p_temperature">Temperature</string>
<string name="charter_p_wind_speed">Wind Speed</string>
<string name="charter_p_wind_speed_low">Low</string>
<string name="charter_p_wind_speed_middle">Medium</string>
<string name="charter_p_wind_speed_high">High</string>
<string name="charter_p_close_light1">Turn on Ceiling Light 1</string>
<string name="charter_p__close_light2">Turn on Ceiling Light 2</string>
<string name="charter_p_close_atmosphere">Turn on Ambient Light</string>
<string name="charter_p_open_light1">Turn off Ceiling Light 1</string>
<string name="charter_p_open_light2">Turn off Ceiling Light 2</string>
<string name="charter_p_open_atmosphere">Turn off Ambient Light</string>
<string name="charter_p_speed_unit">KM/h</string>
<string name="charter_p_stop_site_zh">Pulling over to park for you, please hold tight</string>
<string name="charter_p_stop_site_success">Pull over parking successful</string>
<string name="charter_p_please_login_driver">Safety officer please log in to the driver screen</string>
<string name="charter_p_end_order_15min">The use of the vehicle will end in 15 minutes. The assistant will automatically find a parking spot for you shortly</string>
<string name="charter_p_distance_unit_km">Distance (KM)</string>
<string name="charter_p_distance_unit_m">Distance (M)</string>
<string name="charter_p_arrive_left_time">Remaining (min)</string>
<string name="charter_p_reach_time">Arrival</string>
<string name="charter_p_bottom_reach_time">--:--</string>
<string name="charter_p_stop_site">Pull Over Parking</string>
<string name="charter_p_welcome_tts">Welcome aboard the \'Mogo\' self-driving minibus. Follow the instructions on the table screen to start exploring!</string>
<string name="charter_p_novice_guidance_tts">Next, the Mogo assistant will \'guide your direction\'!</string>
<string name="charter_p_novice_guidance_door_tts">After closing the door, click the \'Start\' button to depart</string>
<string name="charter_p_novice_guidance_stop_site_tts">Click the \'Park\' button to pull over and park. Once the vehicle is stable, you can get off and explore!</string>
<string name="charter_p_novice_guidance_notice_tts">Finally, the Mogo assistant presents you with a small tip for riding~</string>
<string name="charter_p_novice_guidance_complier_tts">Excellent! You have completed the riding guide. Feel free to explore more features. The Mogo assistant wishes you a pleasant journey</string>
<string name="charter_p_close_door_and_startauto">Please close the door before starting~</string>
<string name="charter_p_start_auto_fail">The autonomous driving system is busy, please try again later~</string>
<string name="charter_p_arrived_station_left_100">%1$s is coming soon!</string>
<string name="charter_p_net_error">Please check again later</string>
<string name="start_guildance">Welcome aboard Mogo Autonomous Driving!</string>
<string name="loading_wait_driver_title">Wait a moment, dear\nThe Mogo assistant is confirming your information…</string>
<string name="end_order_content">Are we saying goodbye already? The Mogo assistant will miss you very much!</string>
<string name="complete_guidance_value">You have completed the riding guide. Feel free to explore more features~\nThe Mogo assistant wishes you a pleasant journey!</string>
<!-- <string name="m1_novice_guidance_tts">正在为您靠边停车,扶稳坐好哟</string>-->
<!-- <string name="m1_novice_guidance_tts">靠边停车成功</string>-->
<!-- <string name="m1_novice_guidance_tts">车辆系统繁忙,请稍后再试</string>-->
<!-- <string name="m1_novice_guidance_tts">车辆行驶中不可以开门哦~</string>-->
<!-- <string name="m1_novice_guidance_tts">车辆系统繁忙,稍后再试试吧~</string>-->
<!-- <string name="m1_novice_guidance_tts">车辆即将到达xxxx请乘客带好随身物品有序下车欢迎下次乘坐哦</string>-->
<!-- <string name="m1_novice_guidance_tts">5分钟后包车就要结束了稍后小助手会自动为您寻找停车点</string>-->
<!-- <string name="m1_novice_guidance_tts">感谢您体验蘑菇车联自动驾驶小巴车,本次旅程已结束,期待下次再见</string>-->
<string name="charter_arrived_station_en">We are arriving at %1$s</string>
<string name="charter_arrived_station_ko">%1$s 역에 도착했습니다</string>
<string name="charter_arrived_station_zh">Arrived at %1$s</string>
<string name="charter_leave_station_zh">Vehicle starting, please hold tight. The next station is %1$s</string>
<string name="charter_leave_station_en">The next station is %1$s</string>
<string name="charter_leave_station_ko">전방에서 역에 도착하는 %1$s</string>
<string name="charter_surplus15_order_zh">The charter will end in 15 minutes. The assistant will automatically find a parking spot for you shortly</string>
<string name="charter_surplus15_order_en">There are 15 minutes left from the end of chartering. Please arrange your time reasonably</string>
<string name="charter_surplus15_order_ko">전세버스 종료 후 15분 남았습니다. 여행 시간을 합리적으로 안배해 주십시오</string>
<string name="charter_end_order_zh">Thank you for experiencing the \'Mogo\' self-driving minibus. This journey has ended. See you next time</string>
<string name="charter_end_order_en">Thank you for experiencing the self-driving minibus. See you next time</string>
<string name="charter_end_order_ko">자율주행 버스를 체험해 주셔서 감사합니다. 다음에 또 뵙겠습니다</string>
</resources>

View File

@@ -15,6 +15,7 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.login.LoginServiceManager
import com.mogo.och.biz.login.bean.DriverStatusQueryRespBean
@@ -209,7 +210,8 @@ object LoginModel {
} else {
ToastCharterUtils.showToastShort(mContext!!.getString(R.string.request_error_tip))
}
LoginStatusManager.setLoginError(-10012, "网络错误")
// LoginStatusManager.setLoginError(-10012, "网络错误")
LoginStatusManager.setLoginError(-10012, StringUtils.getString(R.string.module_och_network_mistake))
// 依赖参数
subscribe = Observable.timer(5, TimeUnit.SECONDS)
.subscribe { _: Long? -> queryCarStatus(readCatche) }

View File

@@ -9,6 +9,7 @@ import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.ScreenUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.biz.BuildConfig
import com.mogo.och.biz.R
@@ -124,9 +125,11 @@ class LoginPassengerFragment : MvpFragment<LoginPassengerFragment?, LoginPasseng
super.onResume()
CallerLogger.d(TAG, "onResume")
if (CallerTelematicManager.getClientConnStatus()) {
updateStatus("连接成功 司机SN:${LoginLanPassengerSocket.driverSn}")
// updateStatus("连接成功 司机SN:${LoginLanPassengerSocket.driverSn}")
updateStatus(StringUtils.getString(R.string.module_och_connected_driver_sn, LoginLanPassengerSocket.driverSn))
}else{
updateStatus("连接司机屏中")
// updateStatus("连接司机屏中")
updateStatus(StringUtils.getString(R.string.module_och_connecting_driver))
}
}
@@ -139,7 +142,8 @@ class LoginPassengerFragment : MvpFragment<LoginPassengerFragment?, LoginPasseng
if (statusList.isNotEmpty()) {
val removeFirst = statusList.removeFirst()
UiThreadHandler.post({
actv_connect_status?.text = "当前状态:${removeFirst}"
// actv_connect_status?.text = "当前状态:${removeFirst}"
actv_connect_status?.text = StringUtils.getString(R.string.module_och_current_state, removeFirst)
}, UiThreadHandler.MODE.QUEUE)
}

View File

@@ -10,6 +10,7 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.common.module.biz.lansocket.LoginLanPassengerSocket
import com.mogo.och.common.module.utils.FlavorUtils
@@ -115,7 +116,8 @@ class ErrorInfoView : ConstraintLayout, ErrorInfoViewModel.IErrorInfoViewCallbac
if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){
actv_error_body?.text = FlavorUtils.getInfo()
}else if(AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)){
actv_error_body?.text = "${FlavorUtils.getInfo()} 司机SN:${LoginLanPassengerSocket.driverSn}"
// actv_error_body?.text = "${FlavorUtils.getInfo()} 司机SN:${LoginLanPassengerSocket.driverSn}"
actv_error_body?.text = "${FlavorUtils.getInfo()} ${StringUtils.getString(R.string.module_och_driver_sn)}${LoginLanPassengerSocket.driverSn}"
}
}

View File

@@ -11,6 +11,7 @@ import androidx.viewpager.widget.ViewPager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.CountDownTimer
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.biz.R
import com.mogo.och.common.module.biz.media.data.MediaItem
import com.mogo.och.biz.media.video.MediaLoopPlayView.Companion.IMAGE_COUNT_DOWN_SECONDS
import com.mogo.och.biz.media.video.MediaLoopPlayView.Companion.TAG
@@ -361,7 +362,8 @@ class AdvancePagerAdapter(context: Context, viewPager: ViewPager) : PagerAdapter
if (mNewDataList.isNotEmpty()) {
setMediaData(mNewDataList)
mNewDataList.clear()
ToastUtils.showShort("宣传视频数据已更新")
// ToastUtils.showShort("宣传视频数据已更新")
ToastUtils.showShort(R.string.module_och_promotional_video_updated)
MediaPlayLogger.printInfoLog("playNextItemView, 宣传视频数据已更新")
return
}

View File

@@ -5,6 +5,8 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.RegexUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.common.module.biz.scanner.QrBean
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.manager.socket.lan.LanSocketManager
@@ -98,16 +100,20 @@ object QrParse {
val ticketNameCode = split[13]
ticketName =when (ticketNameCode) {
"0" -> {
"单站票"
// "单站票"
StringUtils.getString(R.string.module_och_single_ticket)
}
"1" -> {
"多站票"
// "多站票"
StringUtils.getString(R.string.module_och_more_ticket)
}
"2" -> {
"全站票"
// "全站票"
StringUtils.getString(R.string.module_och_all_ticket)
}
"3" -> {
"通勤票"
// "通勤票"
StringUtils.getString(R.string.module_och_commuting_ticket)
}
else -> {
URLDecoder.decode(ticketNameCode?:"","UTF-8")
@@ -121,16 +127,20 @@ object QrParse {
val ticketNameCode = split[13]
ticketName =when (ticketNameCode) {
"0" -> {
"单站票"
// "单站票"
StringUtils.getString(R.string.module_och_single_ticket)
}
"1" -> {
"多站票"
// "多站票"
StringUtils.getString(R.string.module_och_more_ticket)
}
"2" -> {
"全站票"
// "全站票"
StringUtils.getString(R.string.module_och_all_ticket)
}
"3" -> {
"通勤票"
// "通勤票"
StringUtils.getString(R.string.module_och_commuting_ticket)
}
else -> {
URLDecoder.decode(ticketNameCode?:"","UTF-8")
@@ -221,7 +231,8 @@ object QrParse {
e.printStackTrace()
CallerLogger.d(M_OCHCOMMON + TAG, "")
// 通知司机屏二维码错误
val writeOffDetail = WriteOffDetialMsg(code = 3001, msg = "出示错误二维码")
// val writeOffDetail = WriteOffDetialMsg(code = 3001, msg = "出示错误二维码")
val writeOffDetail = WriteOffDetialMsg(code = 3001, msg = StringUtils.getString(R.string.module_och_qr_code_error))
OchChainLogManager.writeChainLogWriteOff("核销失败", "二维码错误+参数错误")
CallerLogger.d(
M_OCHCOMMON + TAG,

View File

@@ -1,5 +1,8 @@
package com.mogo.och.biz.qrcode
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
fun main() {
val value10 = "337197925358633123".toLong()
@@ -47,7 +50,8 @@ object Radix91 {
for (char in base92Number.reversed()) {
val index = base32Chars.indexOf(char)
if (index == -1) {
throw IllegalArgumentException("无效的92进制字符: $char")
// throw IllegalArgumentException("无效的92进制字符: $char")
throw IllegalArgumentException("${StringUtils.getString(R.string.module_och_invalid_char)}$char")
}
base10Number += index * power
power *= 91

View File

@@ -9,6 +9,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.common.module.biz.lansocket.IOchLanPassengerStatusListener
import com.mogo.och.common.module.biz.lansocket.LoginLanPassengerSocket
import com.mogo.och.common.module.biz.scanner.BindStatus
@@ -83,26 +84,34 @@ class ScannerManager : ScannerService {
message: String?
) {
super.onDeviceState(path, deviceType, isOpen, message)
var deviceTypeString = "未知"
// var deviceTypeString = "未知"
var deviceTypeString = StringUtils.getString(R.string.module_core_unknown)
if (deviceType == DeviceType.VERIFICATION_SK87R) {
deviceTypeString = "(SK87R)"
} else if (deviceType == DeviceType.VERIFICATION_Q350) {
deviceTypeString = "(Q350)"
}
val msg =
"地址:${path} 设备类型:${deviceTypeString} 是否打开:${isOpen} 消息:${message}"
// "地址:${path} 设备类型:${deviceTypeString} 是否打开:${isOpen} 消息:${message}"
"${StringUtils.getString(R.string.module_och_address)}${path} ${StringUtils.getString(R.string.module_och_device_type)}${deviceTypeString} ${
StringUtils.getString(
R.string.module_och_is_open
)
}${isOpen} ${StringUtils.getString(R.string.module_och_msg)}${message}"
CallerLogger.d(M_BUS_P + TAG, msg)
OchChainLogManager.writeChainLogScanner(
TAG + "onSerialPortState",
"扫码枪是否打开:${msg}"
)
openStatus = if (isOpen) {
sendWriteOffDevicesMessage2Driver(true, "扫码枪打开成功")
// sendWriteOffDevicesMessage2Driver(true, "扫码枪打开成功")
sendWriteOffDevicesMessage2Driver(true, StringUtils.getString(R.string.module_och_device_verification_open_success))
OpenStatus.Open
} else {
sendWriteOffDevicesMessage2Driver(
false,
"扫码枪打开错误:${msg}_${path}_${deviceTypeString}"
// "扫码枪打开错误:${msg}_${path}_${deviceTypeString}"
"${StringUtils.getString(R.string.module_och_device_verification_open_fail)}${msg}"
)
OpenStatus.Unopen
}
@@ -121,10 +130,12 @@ class ScannerManager : ScannerService {
parseParams(it.payload)
} else {
CallerLogger.d(M_BUS_P + TAG, "数据错误")
sendWriteOffMessage2Driver("扫码数据为空")
// sendWriteOffMessage2Driver("扫码数据为空")
sendWriteOffMessage2Driver(StringUtils.getString(R.string.module_och_device_verification_data_null))
}
} else {
sendWriteOffMessage2Driver("解包失败:${data.unpackStatus}")
// sendWriteOffMessage2Driver("解包失败:${data.unpackStatus}")
sendWriteOffMessage2Driver("${StringUtils.getString(R.string.module_och_device_verification_data_error)}${data.unpackStatus}")
CallerLogger.d(M_BUS_P + TAG, "解包失败:${data.unpackStatus}")
}
}
@@ -238,7 +249,8 @@ class ScannerManager : ScannerService {
}
}
} else {
sendWriteOffMessage2Driver("扫码参数数据为空:${payload}")
// sendWriteOffMessage2Driver("扫码参数数据为空:${payload}")
sendWriteOffMessage2Driver("${StringUtils.getString(R.string.module_och_device_verification_param_error)}${payload}")
}
}
@@ -266,10 +278,12 @@ class ScannerManager : ScannerService {
*/
private fun sendScannerState() {
if (bindStatus == BindStatus.BIND_SUCCEED && openStatus == OpenStatus.Open) {
sendWriteOffDevicesMessage2Driver(true, "扫码枪打开状态")
// sendWriteOffDevicesMessage2Driver(true, "扫码枪打开状态")
sendWriteOffDevicesMessage2Driver(true, StringUtils.getString(R.string.module_och_device_verification_open_state))
} else {
if (bindStatus == BindStatus.BIND_SUCCEED && openStatus == OpenStatus.Unopen) {
sendWriteOffDevicesMessage2Driver(false, "绑定成功、打开失败")
// sendWriteOffDevicesMessage2Driver(false, "绑定成功、打开失败")
sendWriteOffDevicesMessage2Driver(false, StringUtils.getString(R.string.module_och_device_verification_bind_succeed_open_fail))
} else {
dispatchMsg(bindStatus)
}
@@ -280,17 +294,20 @@ class ScannerManager : ScannerService {
when (newV) {
BindStatus.BIND_FAILURE_UNINSTALLED -> {
// 硬件服务绑定失败未安装“硬件服务”APP
sendWriteOffDevicesMessage2Driver(false, "硬件服务绑定失败未安装“硬件服务”APP")
// sendWriteOffDevicesMessage2Driver(false, "硬件服务绑定失败未安装“硬件服务”APP")
sendWriteOffDevicesMessage2Driver(false, StringUtils.getString(R.string.module_och_device_verification_bind_failure_uninstalled))
}
BindStatus.BIND_FAILURE_NO_PERMISSION_NOT_FOUND -> {
// 硬件服务绑定失败:没有绑定权限或找不到服务(如果是此状态,基本上安装后就可以找到,主要就是权限问题)
sendWriteOffDevicesMessage2Driver(false, "硬件服务绑定失败:没有绑定权限或找不到服务")
// sendWriteOffDevicesMessage2Driver(false, "硬件服务绑定失败:没有绑定权限或找不到服务")
sendWriteOffDevicesMessage2Driver(false, StringUtils.getString(R.string.module_och_device_verification_bind_failure_no_permission_not_found))
}
BindStatus.EXCEPTION -> {
// 硬件服务绑定失败:服务被异常销毁
sendWriteOffDevicesMessage2Driver(false, "硬件服务绑定失败:服务被异常销毁")
// sendWriteOffDevicesMessage2Driver(false, "硬件服务绑定失败:服务被异常销毁")
sendWriteOffDevicesMessage2Driver(false, StringUtils.getString(R.string.module_och_device_verification_bind_failure_exception))
}
BindStatus.NOTHING -> {}

View File

@@ -8,6 +8,7 @@ import androidx.recyclerview.widget.GridLayoutManager
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.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.TimeUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.biz.R
@@ -91,7 +92,8 @@ class ReportErrorPointView : WindowRelativeLayout,
tv_report_error_point_reason.onClick {
val checkDataList = errorPointItemAdapter.getCheckDataList()
if (checkDataList.isEmpty()) {
ToastUtils.showShort("请选择问题类型")
// ToastUtils.showShort("请选择问题类型")
ToastUtils.showShort(R.string.module_mogo_core_function_devatools_choose_issue_type)
return@onClick
}
tv_report_error_point_reason_cancel.isEnabled = false
@@ -140,7 +142,8 @@ class ReportErrorPointView : WindowRelativeLayout,
lvs_loding.visibility = GONE
CommonFeedbackDialog
.Builder()
.title("请重试")
// .title("请重试")
.title(StringUtils.getString(R.string.module_och_retry))
.status(CommonFeedbackDialog.Status.success)
.build(context).show()
}
@@ -151,7 +154,8 @@ class ReportErrorPointView : WindowRelativeLayout,
closeCallback?.close()
CommonFeedbackDialog
.Builder()
.title("打点成功")
// .title("打点成功")
.title(StringUtils.getString(R.string.module_och_report_point_success))
.status(CommonFeedbackDialog.Status.success)
.build(context).show()
}

View File

@@ -4,7 +4,9 @@ import androidx.lifecycle.ViewModel
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.data.BaseData
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.routing.bean.PointError
import com.mogo.och.biz.routing.bean.QueryPointErrorReasonsRsp
import com.mogo.och.biz.routing.bean.SaveGrayContrailErrorReasons
@@ -46,7 +48,8 @@ class ReportErrorPointViewModel : ViewModel() {
override fun onError() {
super.onError()
viewCallback?.hideLoadingWithMessage("网络错误、请稍后再试")
// viewCallback?.hideLoadingWithMessage("网络错误、请稍后再试")
viewCallback?.hideLoadingWithMessage(StringUtils.getString(R.string.module_och_network_error1))
}
}
)
@@ -61,7 +64,8 @@ class ReportErrorPointViewModel : ViewModel() {
fun submitErrorPointReasons(checkDataList: MutableList<PointError>, occurrenceTime: Long) {
CallerLogger.d(TAG,checkDataList,grayId)
if (grayId == null || grayId!! < 0L) {
viewCallback?.hideLoadingWithMessage("未找到规划Id")
// viewCallback?.hideLoadingWithMessage("未找到规划Id")
viewCallback?.hideLoadingWithMessage(StringUtils.getString(R.string.module_och_not_find_gray_id))
return
}
grayId?.let {
@@ -89,7 +93,8 @@ class ReportErrorPointViewModel : ViewModel() {
object : OchCommonServiceCallback<BaseData> {
override fun onSuccess(data: BaseData?) {
if (data != null && data.code == 0){
ToastUtils.showShort("提交成功")
// ToastUtils.showShort("提交成功")
ToastUtils.showShort(R.string.module_och_submit_successfully)
viewCallback?.submitErrorReasons()
}
}
@@ -100,7 +105,8 @@ class ReportErrorPointViewModel : ViewModel() {
override fun onError() {
super.onError()
viewCallback?.hideLoadingWithMessage("网络错误、请稍后再试")
// viewCallback?.hideLoadingWithMessage("网络错误、请稍后再试")
viewCallback?.hideLoadingWithMessage(StringUtils.getString(R.string.module_och_network_error1))
}
}
)

View File

@@ -11,6 +11,7 @@ import androidx.appcompat.widget.AppCompatTextView
import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.DiffUtil.Callback
import androidx.recyclerview.widget.RecyclerView
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.routing.bean.GrayLineBean
import com.mogo.och.biz.routing.bean.SitesInfo
@@ -63,7 +64,8 @@ class RoutingItemAdapter(
AutoSizeCompat.autoConvertDensityOfGlobal(holder.itemView.resources)
holder.routingId.text = "${routing.lineId}"
holder.routingName.text = routing.lineName
holder.todayVerifyNum.text = "今日验证:${routing.carVerificationCount}"
// holder.todayVerifyNum.text = "今日验证:${routing.carVerificationCount}次"
holder.todayVerifyNum.text = "${StringUtils.getString(R.string.module_och_today_check)}${routing.carVerificationCount}${StringUtils.getString(R.string.module_och_times)}"
val startName = routing.startSite?.siteName ?: ""
val endName = routing.endSite?.siteName ?: ""
if(routing.allStation.isNullOrEmpty()||routing.allStation?.size==2){
@@ -71,7 +73,8 @@ class RoutingItemAdapter(
}else{
routing.allStation?.let {
val middleStationSize = it.size-2
val spannableString = SpannableString("${startName} - ${middleStationSize}站 - ${endName}")
// val spannableString = SpannableString("${startName} - ${middleStationSize}站 - ${endName}")
val spannableString = SpannableString("${startName} - ${middleStationSize}${StringUtils.getString(R.string.module_och_station1)} - ${endName}")
// 设置不同颜色范围
spannableString.setSpan(
ForegroundColorSpan(allCOlor),
@@ -94,8 +97,10 @@ class RoutingItemAdapter(
}
}
holder.historyVerifyNumEnableNum.text = "${routing.lineSuccessCount}可用"
holder.historyVerifyNumDisenableNum.text = "${routing.lineFailCount}不可用"
// holder.historyVerifyNumEnableNum.text = "${routing.lineSuccessCount}可用"
holder.historyVerifyNumEnableNum.text = "${routing.lineSuccessCount}${StringUtils.getString(R.string.module_och_usable)}"
// holder.historyVerifyNumDisenableNum.text = "${routing.lineFailCount}不可用"
holder.historyVerifyNumDisenableNum.text = "${routing.lineFailCount}${StringUtils.getString(R.string.module_och_unusable)}"
//设置item点击事件
holder.routingStart.setOnClickListener {
mItemClickListener?.onItemClick(routing)

View File

@@ -10,7 +10,9 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.routing.bean.GrayLineBean
import com.mogo.och.biz.routing.bean.QueryGrayContrailListRsp
import com.mogo.och.biz.routing.bean.QuerySitesReasons
@@ -109,7 +111,8 @@ class RoutingSelectModel : ViewModel() {
"queryRoutingGrayLineList onFail: code=$code, msg=$msg"
)
OchChainLogManager.writeChainLogRouting("[查询灰度路线]","[查询灰度路线] 请求fail, code=$code, msg=$msg, sn=${SharedPrefsMgr.getInstance().sn}")
ToastUtils.showShort("查询灰度线路列表异常, 请稍后重试, code=$code")
// ToastUtils.showShort("查询灰度线路列表异常, 请稍后重试, code=$code")
ToastUtils.showShort(R.string.module_och_query_routing_gray_line_list_fail, code)
viewCallback?.onQueryRoutingGrayLineListFailed(msg ?: "查询灰度线路列表异常, 请稍后重试")
}
@@ -117,9 +120,11 @@ class RoutingSelectModel : ViewModel() {
super.onError()
var hintStr = ""
if (!NetworkUtils.isConnected(content)) {
hintStr = "网络出现异常,请稍后重试"
// hintStr = "网络出现异常,请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_network_error2)
} else {
hintStr = "查询灰度线路列表异常, 请稍后重试"
// hintStr = "查询灰度线路列表异常, 请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_gray_task_find_line_error)
}
CallerLogger.d(
TAG,
@@ -169,9 +174,11 @@ class RoutingSelectModel : ViewModel() {
super.onError()
var hintStr = ""
if (!NetworkUtils.isConnected(content)) {
hintStr = "网络出现异常,请稍后重试"
// hintStr = "网络出现异常,请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_network_error2)
} else {
hintStr = "开始任务并查询轨迹详情异常, 请稍后重试"
// hintStr = "开始任务并查询轨迹详情异常, 请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_gray_task_find_track_error)
}
CallerLogger.d(
TAG,
@@ -191,7 +198,8 @@ class RoutingSelectModel : ViewModel() {
val grayId = data.taskId
val stationList = data.stationList
if (grayLineBean == null || contrailBean == null || stationList.size < 2) {
ToastUtils.showShort("灰度线路或轨迹信息异常,请稍后再试")
// ToastUtils.showShort("灰度线路或轨迹信息异常,请稍后再试")
ToastUtils.showShort(R.string.module_och_query_routing_gray_line_error)
OchChainLogManager.writeChainLogRouting("[开始任务]","[开始任务] 灰度线路或轨迹信息异常,请稍后再试")
return
}

View File

@@ -96,7 +96,8 @@ class RoutingSelectView: ConstraintLayout, SwtichRoutingViewCallback, InputTextC
RoutingItemAdapter.LineItemClickListener {
override fun onItemClick(data: GrayLineBean) {
if(data.contrailId==null||data.contrailId!!<=0L){
ToastUtils.showShort("请设置轨迹信息")
// ToastUtils.showShort("请设置轨迹信息")
ToastUtils.showShort(R.string.module_och_please_set_trajectory_info)
}
OchChainLogManager.writeChainLogRouting("[选择灰度任务]","[选择灰度任务] 当前选择 ${data} ")
resetStatus()
@@ -255,7 +256,8 @@ class RoutingSelectView: ConstraintLayout, SwtichRoutingViewCallback, InputTextC
mRoutingLineList.clear()
mRoutingLineList.addAll(data)
mChooseLineListAdapter.notifyDataSetChanged()
ToastUtils.showShort("刷新成功")
// ToastUtils.showShort("刷新成功")
ToastUtils.showShort(R.string.module_och_please_refresh_success)
} else {
showEmptyView()
}

View File

@@ -12,6 +12,8 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.routing.bean.ContrailBean
import com.mogo.och.biz.routing.bean.EndGrayContrailTaskReq
import com.mogo.och.biz.routing.bean.EndGrayTaskFeedbackType
@@ -244,9 +246,11 @@ class TaskRunningModel : ViewModel() {
super.onError()
var hintStr = ""
if (!NetworkUtils.isConnected(content)) {
hintStr = "网络出现异常,请稍后重试"
// hintStr = "网络出现异常,请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_network_error2)
} else {
hintStr = "上报结束任务异常, 请稍后重试"
// hintStr = "上报结束任务异常, 请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_gray_task_upload_finish_error)
}
CallerLogger.d(
TAG,

View File

@@ -9,6 +9,7 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.routing.RoutingServiceManager
@@ -86,18 +87,21 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
if (TaskRunningModel.currentIndex == mAdapter.mData.size-2) {
LineManager.getStations { start, end ->
if (viewModel?.arrivedStation == true && start.isLeaving) {
aciv_task_leave_station_slide_bg.setTextValue("单程结束")
// aciv_task_leave_station_slide_bg.setTextValue("单程结束")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_one_way_completion))
aciv_task_leave_station_slide_bg.reset()
viewModel?.data?.taskId?.let {
showFeedbackDialog(it)
}
}else{
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
// aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_slide_moving))
viewModel?.leaveStation()
}
}
} else {
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
// aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_slide_moving))
viewModel?.leaveStation()
}
@@ -146,12 +150,16 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
CallerLogger.d(TAG, "closeRouting is null!")
closeRouting = CommonDialogStatus
.Builder()
.title("路线验证结束")
.tips("请点击按钮反馈验证结果")
// .title("路线验证结束")
.title(StringUtils.getString(R.string.module_och_route_verification_completed))
// .tips("请点击按钮反馈验证结果")
.tips(StringUtils.getString(R.string.module_och_please_click_button_to_feedback_verification_result))
.showClose(true)
.cancelTextColor(R.color.biz_routing_FF4E41)
.cancelStr("线路不可用")
.confirmStr("线路可用")
// .cancelStr("线路不可用")
.cancelStr(StringUtils.getString(R.string.module_och_route_unavailable))
// .confirmStr("线路可用")
.confirmStr(StringUtils.getString(R.string.module_och_route_available))
.status(CommonDialogStatus.Status.success)
.build(context)
}else{
@@ -194,9 +202,11 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
fun setData(data: StartGrayAndQueryContrailRsp) {
viewModel?.setNewData(data)
bus_task_running_line_name.setText(data.grayLineBean.lineName)
actv_running_task_last_station.text = "${data.stationList.last().name ?: ""}"
// actv_running_task_last_station.text = "往${data.stationList.last().name ?: ""}"
actv_running_task_last_station.text = "${StringUtils.getString(R.string.module_och_go)}${data.stationList.last().name ?: ""}"
mAdapter.setDataList(data.stationList)
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
// aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_slide_moving))
showLeaveStationView()
}
@@ -211,14 +221,17 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
if (TaskRunningModel.currentIndex == mAdapter.mData.size-2) {
LineManager.getStations { start, end ->
if(start.isLeaving){
aciv_task_leave_station_slide_bg.setTextValue("单程结束")
// aciv_task_leave_station_slide_bg.setTextValue("单程结束")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_one_way_completion))
}else{
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
// aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_slide_moving))
}
}
} else {
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
// aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_slide_moving))
}
}
@@ -226,7 +239,8 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
* 服务完成
*/
override fun onSubmitEndTaskSuccess() {
ToastUtils.showLong("结束任务成功")
// ToastUtils.showLong("结束任务成功")
ToastUtils.showLong(R.string.module_och_task_finish_success)
RoutingServiceManager.invokeCallback(false)
// 移除高德导航计算距离
AmapNaviToDestinationModel.getInstance(context).destroyAmaNavi()
@@ -244,7 +258,8 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
}
override fun showCompleteTask() {
aciv_task_leave_station_slide_bg.setTextValue("单程结束")
// aciv_task_leave_station_slide_bg.setTextValue("单程结束")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_one_way_completion))
}
override fun notifyItemChange(currentIndex: Int) {
@@ -253,9 +268,11 @@ class TaskRunningView : ConstraintLayout, TaskRunningModel.SwtichLineViewCallbac
override fun clearData() {
bus_task_running_line_name.setText("--")
actv_running_task_last_station.text = "往--"
// actv_running_task_last_station.text = "往--"
actv_running_task_last_station.text = StringUtils.getString(R.string.module_och_go1)
mAdapter.setDataList(mutableListOf())
aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
// aciv_task_leave_station_slide_bg.setTextValue("滑动出发")
aciv_task_leave_station_slide_bg.setTextValue(StringUtils.getString(R.string.module_och_slide_moving))
showLeaveStationView()
}
}

View File

@@ -9,6 +9,8 @@ import com.mogo.eagle.core.function.call.och.CallerEagleBaseFunctionCall4OchMana
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.GsonUtils
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.biz.routing.bean.ContrailBean
import com.mogo.och.biz.routing.bean.EndGrayContrailTaskReq
import com.mogo.och.biz.routing.bean.EndGrayTaskFeedbackType
@@ -144,9 +146,11 @@ class TaxiRunningModel : ViewModel(), IDistanceListener {
super.onError()
var hintStr = ""
if (!NetworkUtils.isConnected(content)) {
hintStr = "网络出现异常,请稍后重试"
// hintStr = "网络出现异常,请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_network_error2)
} else {
hintStr = "上报结束任务异常, 请稍后重试"
// hintStr = "上报结束任务异常, 请稍后重试"
hintStr = StringUtils.getString(R.string.module_och_gray_task_upload_finish_error)
}
CallerLogger.d(
TAG,

View File

@@ -11,6 +11,7 @@ import com.amap.api.navi.model.NaviLatLng
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
@@ -94,12 +95,16 @@ class TaxiRunningView: ConstraintLayout, TaxiRunningModel.RoutingRuningCallback,
CallerLogger.d(TAG, "closeRouting is null!")
closeRouting = CommonDialogStatus
.Builder()
.title("路线验证结束")
.tips("请点击按钮反馈验证结果")
// .title("路线验证结束")
.title(StringUtils.getString(R.string.module_och_route_verification_completed))
// .tips("请点击按钮反馈验证结果")
.tips(StringUtils.getString(R.string.module_och_please_click_button_to_feedback_verification_result))
.showClose(true)
.cancelTextColor(R.color.biz_routing_FF4E41)
.cancelStr("线路不可用")
.confirmStr("线路可用")
// .cancelStr("线路不可用")
.cancelStr(StringUtils.getString(R.string.module_och_route_unavailable))
// .confirmStr("线路可用")
.confirmStr(StringUtils.getString(R.string.module_och_route_available))
.status(CommonDialogStatus.Status.success)
.build(topActivity)
}else{
@@ -271,7 +276,8 @@ class TaxiRunningView: ConstraintLayout, TaxiRunningModel.RoutingRuningCallback,
}
override fun onSubmitEndTaskSuccess() {
ToastUtils.showLong("结束任务成功")
// ToastUtils.showLong("结束任务成功")
ToastUtils.showLong(R.string.module_och_task_finish_success)
RoutingServiceManager.invokeCallback(false)
// 移除高德导航计算距离
AmapNaviToDestinationModel.getInstance(context).destroyAmaNavi()

View File

@@ -3,6 +3,8 @@ package com.mogo.och.biz.routing.ui.utils
import android.text.Spanned
import androidx.core.text.HtmlCompat
import com.mogo.eagle.core.utilcode.util.DateTimeUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.biz.R
import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.common.module.utils.NumberFormatUtil
import java.util.Calendar
@@ -13,13 +15,16 @@ object TimeDistanceUtils {
fun getCurrentTaskDistance(meters: Long):String{
var dis = "0"
var disUnit = "公里"
// var disUnit = "公里"
var disUnit = StringUtils.getString(R.string.module_och_km)
if (meters > 0) {
if (meters / 1000 < 1) {
disUnit = ""
// disUnit = "米"
disUnit = StringUtils.getString(R.string.module_och_m)
dis = meters.toFloat().roundToInt().toString()
} else {
disUnit = "公里"
// disUnit = "公里"
disUnit = StringUtils.getString(R.string.module_och_km)
dis = NumberFormatUtil.formatLong(meters.toDouble() / 1000)
}
}
@@ -28,7 +33,8 @@ object TimeDistanceUtils {
fun getCurrentTaskTime(timeInSecond: Long):String{
val min = ceil(timeInSecond.toDouble() / 60f).toInt()
return "${min}分钟"
// return "${min}分钟"
return "${min}${StringUtils.getString(R.string.module_och_minute)}"
}
/**
@@ -36,27 +42,33 @@ object TimeDistanceUtils {
*/
fun getCurrentTaskTripHtml(meters: Long, timeInSecond: Long): Spanned {
var dis = "0"
var disUnit = "公里"
// var disUnit = "公里"
var disUnit = StringUtils.getString(R.string.module_och_km)
if (meters > 0) {
if (meters / 1000 < 1) {
disUnit = ""
// disUnit = "米"
disUnit = StringUtils.getString(R.string.module_och_m)
dis = meters.toFloat().roundToInt().toString()
} else {
disUnit = "公里"
// disUnit = "公里"
disUnit = StringUtils.getString(R.string.module_och_km)
dis = NumberFormatUtil.formatLong(meters.toDouble() / 1000)
}
}
val min = ceil(timeInSecond.toDouble() / 60f).toInt()
val strHtml =
("<font color=\"#CAD6FF\">里程 </font>"
// ("<font color=\"#CAD6FF\">里程 </font>"
("<font color=\"#CAD6FF\">${StringUtils.getString(R.string.module_och_mileage)} </font>"
+ "<b><font color=\"#FFFFFF\">"
+ dis + "</font></b>"
+ "<font color=\"#CAD6FF\"> "
+ disUnit + "</font>"
+ "<font color=\"#CAD6FF\">,剩余 </font>"
// + "<font color=\"#CAD6FF\">,剩余 </font>"
+ "<font color=\"#CAD6FF\">${StringUtils.getString(R.string.module_och_remaining)} </font>"
+ "<b><font color=\"#FFFFFF\">"
+ min + "</font></b>"
+ "<font color=\"#CAD6FF\"> 分钟</font>")
// + "<font color=\"#CAD6FF\"> 分钟</font>")
+ "<font color=\"#CAD6FF\"> ${StringUtils.getString(R.string.module_och_minute)}</font>")
return HtmlCompat.fromHtml(strHtml, HtmlCompat.FROM_HTML_MODE_LEGACY)
}
@@ -70,13 +82,15 @@ object TimeDistanceUtils {
DateTimeUtil.yyyy_MM_dd
)
) {
("<font color=\"#CAD6FF\">免费等待至 </font>"
// ("<font color=\"#CAD6FF\">免费等待至 </font>"
("<font color=\"#CAD6FF\">${StringUtils.getString(R.string.module_och_free_wait_until)} </font>"
+ "<b><font color=\"#FFFFFF\"><big>" + DateTimeUtil.formatCalendarToString(
currentCale,
DateTimeUtil.HH_mm
) + "</big></b></font>")
} else {
("<font color=\"#CAD6FF\">免费等待至</font>"
// ("<font color=\"#CAD6FF\">免费等待至</font>"
("<font color=\"#CAD6FF\">${StringUtils.getString(R.string.module_och_free_wait_until)}</font>"
+ "<font color=\"#FFFFFF\"><big>" + DateTimeUtil.formatCalendarToString(
currentCale,
DateTimeUtil.MM_dd_HH_mm
@@ -96,7 +110,8 @@ object TimeDistanceUtils {
return HtmlCompat.fromHtml(
"<font color=\"#FFFFFF\"> " + phoneNum + "</font>" +
"<font color=\"#6473B2\"> | </font>" +
"<font color=\"#FFFFFF\">" + passengerSize + "" + "</font>",
// "<font color=\"#FFFFFF\">" + passengerSize + "人" + "</font>",
"<font color=\"#FFFFFF\">" + passengerSize + StringUtils.getString(R.string.module_core_people) + "</font>",
HtmlCompat.FROM_HTML_MODE_LEGACY
)
}
@@ -105,7 +120,8 @@ object TimeDistanceUtils {
return HtmlCompat.fromHtml(
"<font color=\"#FFFFFF\"> " + phoneNum + "</font>" +
"<font color=\"#6473B2\"> | </font>" +
"<font color=\"#FFFFFF\">" + passengerSize + "" + "</font>",
// "<font color=\"#FFFFFF\">" + passengerSize + "人" + "</font>",
"<font color=\"#FFFFFF\">" + passengerSize + StringUtils.getString(R.string.module_core_people) + "</font>",
HtmlCompat.FROM_HTML_MODE_LEGACY
)
}

View File

@@ -8,9 +8,10 @@
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<!-- android:text="添加视频"-->
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/acb_add_site_video"
android:text="添加视频"
android:text="@string/module_och_add_video"
android:gravity="center"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -43,13 +43,14 @@
android:layout_marginTop="@dimen/dp_2"
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_100">
<!-- android:text="问题打点"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_submit_task"
android:layout_width="@dimen/dp_200"
android:layout_height="@dimen/dp_80"
app:pressed_enabled="false"
android:gravity="center"
android:text="问题打点"
android:text="@string/module_och_submit_task"
android:background="@drawable/biz_button_selector"
android:textColor="@color/white"
android:textSize="@dimen/dp_40" />

View File

@@ -67,13 +67,13 @@
android:layout_marginStart="@dimen/dp_36"
android:layout_marginEnd="@dimen/dp_36"
app:layout_constraintEnd_toEndOf="parent"
android:text="天安门天安门天安门…"
android:singleLine="true"
android:textColor="@color/white"
android:ellipsize="end"
android:textSize="@dimen/dp_45"
android:layout_width="0dp"
android:layout_height="wrap_content"/>
android:layout_height="wrap_content"
tools:text="天安门天安门天安门…"/>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -19,12 +19,13 @@
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- android:text="暂无任务"-->
<TextView
android:id="@+id/noRoutingTaskDataTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:text="暂无任务"
android:text="@string/module_och_not_task"
android:textColor="#91A1EA"
android:textSize="@dimen/dp_30"
app:layout_constraintLeft_toLeftOf="parent"

View File

@@ -8,12 +8,13 @@
android:background="@drawable/common_qr_dialog"
app:roundLayoutRadius="@dimen/dp_50">
<!-- android:text="线路问题打点"-->
<TextView
android:id="@+id/tv_report_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_33"
android:text="线路问题打点"
android:text="@string/module_och_report_title"
android:textColor="@color/white"
android:textSize="@dimen/sp_45"
android:textStyle="bold"
@@ -23,12 +24,13 @@
android:layout_marginTop="@dimen/dp_51"
/>
<!-- android:text="时间"-->
<TextView
android:id="@+id/tv_work_order_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_67"
android:text="时间"
android:text="@string/module_core_time1"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
app:layout_constraintTop_toTopOf="@+id/tv_report_title"
@@ -47,13 +49,14 @@
app:layout_constraintBottom_toTopOf="@+id/tv_report_error_point_reason"
app:layout_constraintTop_toBottomOf="@+id/tv_report_title" />
<!-- android:text="打点"-->
<TextView
android:id="@+id/tv_report_error_point_reason"
android:layout_width="@dimen/dp_356"
android:layout_height="@dimen/dp_120"
android:background="@drawable/common_button_cancle"
android:gravity="center"
android:text="打点"
android:text="@string/module_och_report_error_point_reason"
android:textColor="@color/biz_routing_2eacff"
android:textSize="@dimen/sp_40"
android:textStyle="bold"
@@ -73,6 +76,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="取消"-->
<TextView
android:id="@+id/tv_report_error_point_reason_cancel"
android:layout_width="@dimen/dp_356"
@@ -81,7 +85,7 @@
android:background="@drawable/common_button_cancle"
android:layout_marginEnd="@dimen/dp_66"
android:gravity="center"
android:text="取消"
android:text="@string/module_core_cancel"
android:textColor="#FFFFFF"
android:textSize="@dimen/sp_40"
android:textStyle="bold"

View File

@@ -8,11 +8,12 @@
tools:background="@drawable/biz_shape_itinerary_bg_default"
xmlns:tools="http://schemas.android.com/tools">
<!-- android:text="当前行程"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_routing_page_title"
android:textSize="@dimen/dp_44"
android:textColor="@color/white"
android:text="当前行程"
android:text="@string/module_och_routing_page_title"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginTop="@dimen/dp_38"
@@ -120,13 +121,14 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="问题打点"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_submit_task"
android:layout_width="@dimen/dp_356"
android:layout_height="@dimen/dp_120"
app:pressed_enabled="false"
android:gravity="center"
android:text="问题打点"
android:text="@string/module_och_submit_task"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="@dimen/dp_54"
@@ -135,13 +137,14 @@
android:textColor="@color/biz_taxi_submit_text_color_selector"
android:textSize="@dimen/dp_40" />
<!-- android:text="结束服务"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_end_routing"
android:layout_width="@dimen/dp_356"
android:layout_height="@dimen/dp_120"
app:pressed_enabled="false"
android:gravity="center"
android:text="结束服务"
android:text="@string/module_och_end_routing"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="@dimen/dp_54"

View File

@@ -8,11 +8,12 @@
tools:background="@drawable/biz_shape_itinerary_bg_default"
xmlns:tools="http://schemas.android.com/tools">
<!-- android:text="算路验证路线"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_routing_title"
android:textSize="@dimen/dp_45"
android:textColor="@color/white"
android:text="算路验证路线"
android:text="@string/module_och_routing_title"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginStart="@dimen/dp_54"
@@ -59,6 +60,7 @@
android:layout_height="wrap_content"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<!-- android:hint="输入ID快速检索"-->
<androidx.appcompat.widget.AppCompatCheckedTextView
android:id="@+id/acctv_search_byid"
android:layout_marginStart="@dimen/dp_54"
@@ -66,7 +68,7 @@
android:gravity="center_vertical"
android:text=""
android:textColor="@color/common_ffffffff"
android:hint="输入ID快速检索"
android:hint="@string/module_och_search_byid"
android:textColorHint="@color/biz_routing_999999"
android:textSize="@dimen/dp_36"
android:paddingStart="@dimen/dp_35"

View File

@@ -60,6 +60,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="累计:"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_history_verify_num_title"
app:layout_constraintTop_toBottomOf="@+id/actv_routing_end_name"
@@ -69,7 +70,7 @@
android:layout_marginTop="@dimen/dp_20"
android:textColor="@color/white"
android:textSize="@dimen/dp_30"
android:text="累计:"
android:text="@string/module_och_history_verify_num_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
@@ -97,7 +98,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<!-- android:text="开始"-->
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_routing_start"
app:layout_constraintEnd_toEndOf="parent"
@@ -106,7 +107,7 @@
android:layout_marginEnd="@dimen/dp_40"
android:layout_marginBottom="@dimen/dp_32"
android:textSize="@dimen/dp_30"
android:text="开始"
android:text="@string/module_och_start"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools">
<string name="module_och_taxi_login_title">Welcome to log in</string>
<string name="module_och_taxi_login_btn">Login</string>
<string name="module_och_taxi_login_get_code">Get Verification Code</string>
<string name="module_och_taxi_login_get_code_title">Please enter verification code</string>
<string name="module_och_taxi_login_get_code_success">Verification code obtained successfully</string>
<string name="module_och_taxi_login_login_success">Login successful</string>
<string name="module_och_taxi_login_phone_error">Please enter a correct phone number</string>
<string name="module_och_taxi_login_code_error">Please enter a correct verification code</string>
<string name="module_och_taxi_login_phone_hint_text">Please enter phone number</string>
<string name="module_och_taxi_login_get_phone_title">Please enter phone number</string>
<string name="network_error_tip">Network exception, please try again later</string>
<string name="request_error_tip">Request exception occurred, please try again later</string>
<string name="biz_log_i_see">I see</string>
<string name="biz_login_offline_login">Guest Login</string>
<string name="biz_login_net_error_title">Poor network environment, unable to log in</string>
<string name="biz_login_net_error_tip">It is recommended to use Guest Mode and complete the login when the network is good</string>
</resources>

View File

@@ -1,9 +1,10 @@
package com.mogo.och.bridge.autopilot;
import android.content.Context;
import android.app.Application;
import androidx.annotation.Nullable;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotActionsListener;
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatisticsListener;
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager;
@@ -11,9 +12,10 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotActionsListene
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotStatisticsListenerManager;
import com.mogo.eagle.core.function.call.autopilot.CallerParallelDrivingActionsListenerManager;
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils;
import com.mogo.eagle.core.data.config.FunctionBuildConfig;
import com.mogo.eagle.core.utilcode.mogo.logger.Logger;
import com.mogo.eagle.core.utilcode.util.ParseVersionUtils;
import com.mogo.eagle.core.utilcode.util.StringUtils;
import com.mogo.och.bridge.R;
import com.mogo.och.bridge.autopilot.callback.OchAdasStartFailureCallback;
import com.mogo.och.bridge.autopilot.line.LineManager;
import com.zhjt.mogo.adas.data.bean.AutopilotStatistics;
@@ -40,6 +42,7 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
private String startFailedMessage = "";
private OchAdasStartFailureCallback failureCallback = null;
private Application context;
private static final class SingletonHolder {
private static final OCHAdasAbilityManager INSTANCE = new OCHAdasAbilityManager();
@@ -49,18 +52,19 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
return SingletonHolder.INSTANCE;
}
public void init(Context context) {
public void init(Application context) {
this.context = context;
this.isAutopilotAbility = CallerAutopilotActionsListenerManager.INSTANCE.isAutopilotAbility();
this.launchConditionData = CallerAutopilotActionsListenerManager.INSTANCE.getLaunchConditionData();
this.unableAutopilotReasons = CallerAutopilotActionsListenerManager.INSTANCE.getUnableAutopilotReasons();
initListeners();
}
public void setAdasStartFailureCallback(OchAdasStartFailureCallback callback){
public void setAdasStartFailureCallback(OchAdasStartFailureCallback callback) {
failureCallback = callback;
}
public boolean getAutopilotAbilityStatus(){
public boolean getAutopilotAbilityStatus() {
return isAutopilotAbility;
}
@@ -69,30 +73,32 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
}
public String getOriginalData() {
return launchConditionData == null ? "" : launchConditionData.getJson();
return launchConditionData == null ? "" : launchConditionData.getJson(context);
}
public ArrayList<UnableLaunchReason> getUnableAutopilotReasons() {
return unableAutopilotReasons;
}
public String getAutopilotUnAbilityReason(){
public String getAutopilotUnAbilityReason() {
try {
if(unableAutopilotReasons==null||unableAutopilotReasons.isEmpty()){
return "未知异常";
}else {
if (unableAutopilotReasons == null || unableAutopilotReasons.isEmpty()) {
// return "未知异常";
return StringUtils.getString(R.string.module_och_unknown_error);
} else {
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < unableAutopilotReasons.size(); i++) {
stringBuilder.append(unableAutopilotReasons.get(i));
if(i<unableAutopilotReasons.size()-1){
if (i < unableAutopilotReasons.size() - 1) {
stringBuilder.append("\n");
}
}
return stringBuilder.toString();
}
}catch (Exception e){
} catch (Exception e) {
e.printStackTrace();
return "未知异常";
// return "未知异常";
return StringUtils.getString(R.string.module_och_unknown_error);
}
}
@@ -107,7 +113,7 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
private void initListeners() {
//2022.10.9 工控机状态信息回调(判断是否能否启动自动驾驶的回调), 目前定的是3秒回调一次
CallerAutopilotActionsListenerManager.INSTANCE.addListener(TAG, this);
CallerAutopilotStatisticsListenerManager.INSTANCE.addListener(TAG,this);
CallerAutopilotStatisticsListenerManager.INSTANCE.addListener(TAG, this);
}
private void releaseListeners() {
@@ -121,11 +127,11 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
this.isAutopilotAbility = isAutopilotAbility;
this.launchConditionData = launchConditionData;
this.unableAutopilotReasons = unableAutopilotReasons;
Logger.d(TAG, "是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons == null ? null : unableAutopilotReasons.toString()) + " 原始数据=" + (launchConditionData == null ? null : launchConditionData.getJson()));
Logger.d(TAG, "是否可以启动自动驾驶=" + isAutopilotAbility + " 原因=" + (unableAutopilotReasons == null ? null : unableAutopilotReasons.toString()) + " 原始数据=" + (launchConditionData == null ? null : launchConditionData.getJson(context)));
if (unableAutopilotReasons != null && getMapVersion() < 30600) {
//刹车变化回调
Logger.d(TAG,"onAutopilotAbility = " + isAutopilotAbility +
" onAutopilotAbility =" + unableAutopilotReasons.toString());
Logger.d(TAG, "onAutopilotAbility = " + isAutopilotAbility +
" onAutopilotAbility =" + unableAutopilotReasons.toString());
if (unableAutopilotReasons.toString().contains(UnableLaunchReason.SourceType.CHASSIS.name())
&& unableAutopilotReasons.toString().contains(UnableLaunchReason.UnableType.CHASSIS_BRAKE.name())) {
//failureCallback.brakeStatusChanged(isAutopilotAbility);
@@ -133,12 +139,13 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
}
}
@Override
public void onAutopilotStatistics(@Nullable AutopilotStatistics statistics) {
if (statistics == null) return;
Logger.d(TAG, "AutopilotStatistics= " + statistics.status);
if (failureCallback != null) {
if(statistics.status==1) {
if (statistics.status == 1) {
if (statistics.fsmState != null) {
startFailedCode = "";
if (statistics.fsmState.hasSession()) {
@@ -157,17 +164,18 @@ public class OCHAdasAbilityManager implements IMoGoAutopilotActionsListener, IMo
}
Logger.d(TAG, String.format("statistics-startFailedCode = s%; startFailedMessage = s%",
startFailedCode, startFailedMessage));
}else if(statistics.status==0) {
} else if (statistics.status == 0) {
//启动自驾成功
failureCallback.onStartAutopilotSuccess(statistics.source.toString());
LineManager.INSTANCE.triggerStartServiceEvent(true, 2,statistics.source.toString());
LineManager.INSTANCE.triggerStartServiceEvent(true, 2, statistics.source.toString());
}
}
}
private int getMapVersion(){
private int getMapVersion() {
return ParseVersionUtils.parseVersion(true, CallerAutoPilotStatusListenerManager.INSTANCE.getDockerVersion());
}
public void release() {
releaseListeners();
}

View File

@@ -7,7 +7,9 @@ import com.mogo.eagle.core.data.msgbox.MsgBoxBean
import com.mogo.eagle.core.data.msgbox.MsgBoxType
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.msgbox.CallerMsgBoxManager
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.bridge.R
import com.mogo.och.bridge.autopilot.OCHAdasAbilityManager
import com.mogo.och.bridge.autopilot.autopilot.bean.SessionWithTime
import com.mogo.och.bridge.autopilot.line.LineManager
@@ -52,7 +54,8 @@ object OchAutoPilotManager {
clearGlobalSessionId("检测session 自带的时间 ${currentTimeMillis}_${sessionInfo.setTime}_${sessionInfo.sessionId}")
return true
}else{
ToastUtils.showLong("自驾启动中,请勿重复点击")
// ToastUtils.showLong("自驾启动中,请勿重复点击")
ToastUtils.showLong(R.string.module_och_autopilot_starting_not_click)
OchAutopilotAnalytics.triggerCanStartAutopilotBySessionId(globalSessionId.get())
return false
}
@@ -70,17 +73,20 @@ object OchAutoPilotManager {
if (!FunctionBuildConfig.isDemoMode && !OCHAdasAbilityManager.getInstance().autopilotAbilityStatus) {
val reasons = OCHAdasAbilityManager.getInstance().unableAutopilotReasons
if ("AutopilotAbilityFSM" == OCHAdasAbilityManager.getInstance().abilityVersion && !reasons.isNullOrEmpty()) {
val msg = reasons[0].getUnableLaunchReason() + " 来源:" + reasons[0].source
// val msg = reasons[0].getUnableLaunchReason() + " 来源:" + reasons[0].source
val msg = reasons[0].getUnableLaunchReason() + " ${StringUtils.getString(R.string.module_och_source)}" + reasons[0].source
CallerMsgBoxManager.saveMsgBox(
MsgBoxBean(
MsgBoxType.AUTOPILOT,
AutopilotMsg(0, "自动驾驶启动失败", msg, System.currentTimeMillis())
// AutopilotMsg(0, "自动驾驶启动失败", msg, System.currentTimeMillis())
AutopilotMsg(0, StringUtils.getString(R.string.module_core_autonomous_driving_startup_failed), msg, System.currentTimeMillis())
)
)
} else {
ToastUtils.showLong(
OCHAdasAbilityManager.getInstance().autopilotUnAbilityReason +
", 请稍候重试"
// ", 请稍候重试"
StringUtils.getString(R.string.module_och_please_try_again_later)
)
}
return false

View File

@@ -23,6 +23,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.bridge.R
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.bridge.autopilot.OCHAdasAbilityManager
import com.mogo.och.bridge.autopilot.autopilot.OchAutoPilotManager
@@ -383,7 +384,8 @@ object LineManager : CallerBase<ILineCallback>() {
fun drawGlobalTrajectory(): Pair<Boolean, String> {
if (_lineInfos == null) {
return Pair(false, "请设置正确线路或订单")
// return Pair(false, "请设置正确线路或订单")
return Pair(false, StringUtils.getString(R.string.module_och_please_set_correct_route_or_order))
}
return CallerMapGlobalTrajectoryDrawManager.drawGlobalTrajectory().apply {
if (first) {
@@ -456,7 +458,8 @@ object LineManager : CallerBase<ILineCallback>() {
}
CallerLogger.d(TAG, "${parameters?.wayLatLons}\n${parameters?.blackLatLons}")
if (parameters == null) {
ToastUtils.showShort("未设置起始或终点站点")
// ToastUtils.showShort("未设置起始或终点站点")
ToastUtils.showShort(R.string.module_och_not_stat_and_end_point)
}
return parameters
}
@@ -533,13 +536,15 @@ object LineManager : CallerBase<ILineCallback>() {
fun startAutopilot() {
if (startStation == null || endStation == null) {
ToastUtils.showShort("未设置起始或终点站点")
// ToastUtils.showShort("未设置起始或终点站点")
ToastUtils.showShort(R.string.module_och_not_stat_and_end_point)
return
}
startStation?.let {
if (!it.isLeaving) {
ToastUtils.showShort("请滑动出发后再启动自驾")
// ToastUtils.showShort("请滑动出发后再启动自驾")
ToastUtils.showShort(R.string.module_och_please_slide_hint)
return
}
}
@@ -555,14 +560,16 @@ object LineManager : CallerBase<ILineCallback>() {
//1、判断轨迹url是否可用
if (_contraiInfo == null) {
ToastUtils.showLong("无发布轨迹, 请发布后重试")
// ToastUtils.showLong("无发布轨迹, 请发布后重试")
ToastUtils.showLong(R.string.module_taxi_no_publication_trajectory)
return
} else {
if (FunctionBuildConfig.isPassStartAutopilotCommand
&& TextUtils.isEmpty(_contraiInfo!!.csvFileUrl)
&& TextUtils.isEmpty(_contraiInfo!!.csvFileMd5)
) {
ToastUtils.showLong("无发布轨迹, 请发布后重试")
// ToastUtils.showLong("无发布轨迹, 请发布后重试")
ToastUtils.showLong(R.string.module_taxi_no_publication_trajectory)
e(
TAG, "isPassStartAutopilotCommand = " +
FunctionBuildConfig.isPassStartAutopilotCommand
@@ -685,7 +692,8 @@ object LineManager : CallerBase<ILineCallback>() {
} else {
// 地盘有但是和och出不一样
// todo 需要och 重新出发轨迹下载操作
ToastUtils.showShort("${autopilotIdFromFsm}_${teleOrderId}_自动驾驶id不同请排查")
// ToastUtils.showShort("${autopilotIdFromFsm}_${teleOrderId}_自动驾驶id不同请排查")
ToastUtils.showShort(R.string.module_och_autopilot_id_diff, autopilotIdFromFsm, teleOrderId)
OchChainLogManager.writeChainLogAutopilot(
"自驾Id",
"${autopilotIdFromFsm}_${teleOrderId}_自动驾驶id不同请排查"

View File

@@ -4,7 +4,9 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerVlmManager
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.bridge.BridgeServiceManager
import com.mogo.och.bridge.R
import com.mogo.och.common.module.biz.birdge.data.RoadMsg
import mogo.telematics.pad.MessagePad.TrackedObject
@@ -77,7 +79,8 @@ object OchNdeManager : IMoGoAutopilotIdentifyListener {
lastTime = System.currentTimeMillis()
val sortedList = roadMsgList.sortedWith(compareByDescending { it.laneNum })
BridgeServiceManager.invokeNdeData("路口车龙","前方路口有车龙",sortedList)
// BridgeServiceManager.invokeNdeData("路口车龙","前方路口有车龙",sortedList)
BridgeServiceManager.invokeNdeData(StringUtils.getString(R.string.module_och_crossing_tailback),StringUtils.getString(R.string.module_och_crossing_tailback_desc),sortedList)
}
}
}

View File

@@ -1,6 +1,8 @@
package com.mogo.och.bridge.device
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.bridge.R
import com.mogo.och.bridge.autopilot.location.OchLocationManager
import com.mogo.och.common.module.utils.RxUtils
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
@@ -39,7 +41,8 @@ object LightAirconditionDoorManager {
return if(location.gnssSpeed<0.3){
null
}else{
"车辆行驶中不可以开关门哦~"
// "车辆行驶中不可以开关门哦~"
StringUtils.getString(R.string.module_och_not_can_open_or_close_door)
}
}
}

View File

@@ -5,11 +5,14 @@ import com.mogo.eagle.core.data.map.MogoLocation
import com.mogo.eagle.core.function.api.autopilot.IMoGoPlanningRottingListener
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
import com.mogo.eagle.core.function.call.autopilot.CallerPlanningRottingListenerManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.e
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_OCHCOMMON
import com.mogo.eagle.core.utilcode.util.CoordinateUtils
import com.mogo.eagle.core.utilcode.util.LocationUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.bridge.R
import com.mogo.och.common.module.constant.OchCommonConst
import com.mogo.och.bridge.autopilot.autopilot.OchAutopilotAnalytics
import com.mogo.och.bridge.autopilot.location.OchLocationManager
@@ -38,7 +41,7 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
private const val TAG = "DistanceManager"
private const val DISTANCE = "BusPassengerModelDistance"
const val errorTypeNoneLineId = "起始站点值异常,请重新选择此任务执行并上报问题"
// const val errorTypeNoneLineId = "起始站点值异常,请重新选择此任务执行并上报问题"
fun addDistanceListener(tag: String, listener: IDistanceListener) {
@@ -190,9 +193,7 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
endStationInfo: MogoLocation?,
lineId: Long?
) {
d(
M_OCHCOMMON + TAG,
"线路id:${lineId}设置站点:开始站点${startStationInfo}、结束站点:${endStationInfo}"
CallerLogger.d(M_OCHCOMMON + TAG, "线路id:${lineId}设置站点:开始站点${startStationInfo}、结束站点:${endStationInfo}"
)
OchChainLogManager.writeChainLogTrajectory("轨迹监控","设置站点:线路id:${lineId}设置站点:开始站点${startStationInfo}、结束站点:${endStationInfo}")
if (startStationInfo == null || endStationInfo == null || lineId == -1L) {
@@ -328,8 +329,10 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
location: MogoLocation,
) {
val autoPilotState = CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().state
// val locationInfo =
// "自动驾驶状态:$autoPilotState line信息${lineId}定位信息:${location.latitude},${location.longitude},${location.heading} 当前速度:${location.gnssSpeed}"
val locationInfo =
"自动驾驶状态:$autoPilotState line信息${lineId}定位信息:${location.latitude},${location.longitude},${location.heading} 当前速度:${location.gnssSpeed}"
StringUtils.getString(R.string.common_bridge_distance_autonomous_driving_status,autoPilotState,lineId,location.latitude,location.longitude,location.heading,location.gnssSpeed)
if (mRoutePoints.isNullOrEmpty()) return
// 计算起始站点在轨迹中的信息 这个是一个常量
if (startStationInfo.stationPoint != null
@@ -666,7 +669,7 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
fun canStartAutopilot(lineId: Number?): String {
if (lineId == null) {
OchAutopilotAnalytics.triggerDistance2LineorStation("未传轨迹ID")
return "请确认线路ID"
return StringUtils.getString(R.string.common_bridge_distance_please_confirm_route_id)
}
OchAutopilotAnalytics.triggerDistance2LineorStation("条件记录:lineId:${lineId}----this.lineId:${this.lineId}、mRoutePoints情况:${mRoutePoints?.size}")
@@ -710,7 +713,8 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
*/
private fun distanceWithStartStation(): String {
if (startStationInfo.stationPoint == null) {
return errorTypeNoneLineId
// return errorTypeNoneLineId
return StringUtils.getString(R.string.common_bridge_distance_exception)
}
val currentPoint = OchLocationManager.getGCJ02Location()
val distance = CoordinateUtils.calculateLineDistance(
@@ -723,7 +727,7 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
return if (distance <= OchCommonConst.AUTOMATIC_PLANNING_MAX_DISTANCE) {
""
} else {
"距离起始站点超过15米"
StringUtils.getString(R.string.common_bridge_distance_exceeds_15_meters_from_start_station)
}
}
@@ -749,7 +753,7 @@ object TrajectoryAndDistanceManager : IMoGoPlanningRottingListener {
}
}
OchAutopilotAnalytics.triggerDistance2LineorStation("距离轨迹线超过15m,无法启动自驾")
return "距离轨迹线超过15米"
return StringUtils.getString(R.string.common_bridge_distance_trajectory_line_distance_over_15m)
}
}

View File

@@ -18,11 +18,6 @@ import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.utils.RxUtils
import java.util.concurrent.atomic.AtomicBoolean
/**
* @author XuXinChao
* @description BadCase录包管理页面
* @since: 2022/12/15
*/
class AutopilotStateModel : ViewModel(), IOchAutopilotStatusListener, ILineCallback,
IOchDebugAutopilotStatusListener, IBeautifyModeCallback {

View File

@@ -76,7 +76,7 @@
app:layout_constraintBottom_toTopOf="@+id/gl_horizontal_bottom"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
android:text="平行驾驶"
android:text="@string/common_autopilot_parallel_driving_cloud_control"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

View File

@@ -20,7 +20,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:text="VIN码不匹配" />
android:text="@string/common_check_vin_title" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_error_body"
@@ -37,7 +37,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/actv_error_head"
android:text="请暂停运营并上报问题,待问题解决后用车" />
android:text="@string/common_check_vin_content" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/actv_error_body_red"
@@ -51,7 +51,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/actv_error_body"
android:text="【仍继续用车有安全风险!!!】" />
android:text="@string/common_check_vin_tip" />
<androidx.appcompat.widget.AppCompatTextView
@@ -62,7 +62,7 @@
android:layout_marginBottom="@dimen/dp_80"
android:background="@drawable/common_error_vin_submit"
android:gravity="center"
android:text="我知道了"
android:text="@string/common_check_vin_ensure"
android:textColor="@android:color/white"
android:textSize="@dimen/dp_46"
app:layout_constraintTop_toBottomOf="@+id/actv_error_body_red"

View File

@@ -26,7 +26,7 @@
android:ellipsize="end"
android:gravity="center"
android:maxLines="2"
android:text="车道指引"
android:text="@string/common_line_lane_guidance"
android:textColor="@color/color_FFFFFF"
android:textSize="@dimen/sp_38"
app:layout_constraintLeft_toLeftOf="parent"

View File

@@ -6,6 +6,8 @@ import com.mogo.eagle.core.function.call.telematic.CallerTelematicListenerManage
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.biz.login.LoginStatusManager
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.manager.loop.BizLoopManager
@@ -27,7 +29,8 @@ object LoginLanPassengerSocket : IReceivedMsgListener, CallerBase<IOchLanPasseng
// 司机屏发生变化
val msg = BaseDPMsg(type = DPMsgType.TYPE_CLIENT_REGISTER.type)
LanSocketManager.sendMsgToServer(msg)
LoginStatusManager.changeStatus("sn 变化 连接成功 司机SN:${oldV}---->${newV}")
// LoginStatusManager.changeStatus("sn 变化 连接成功 司机SN:${oldV}---->${newV}")
LoginStatusManager.changeStatus("${StringUtils.getString(R.string.module_core_driver_sn_change)}${oldV}---->${newV}")
if(newV.isNotEmpty()){
OchChainLogManager.writeChainLogNetLanSocketConnect("局域网socket链接状态","sn 变化 已连接 sn${newV}")
}
@@ -49,18 +52,22 @@ object LoginLanPassengerSocket : IReceivedMsgListener, CallerBase<IOchLanPasseng
val msg = BaseDPMsg(type = DPMsgType.TYPE_CLIENT_REGISTER.type)
LanSocketManager.sendMsgToServer(msg)
if(driverSn.isEmpty()){
LoginStatusManager.changeStatus("连接成功 未收到司机屏sn")
// LoginStatusManager.changeStatus("连接成功 未收到司机屏sn")
LoginStatusManager.changeStatus(StringUtils.getString(R.string.module_core_connected_driver_not_sn))
OchChainLogManager.writeChainLogNetLanSocketConnect("局域网socket链接状态","已连接 sn 未收到司机屏sn")
}else{
LoginStatusManager.changeStatus("连接成功 司机SN:${driverSn}")
// LoginStatusManager.changeStatus("连接成功 司机SN:${driverSn}")
LoginStatusManager.changeStatus(StringUtils.getString(R.string.module_core_connected_driver_sn, driverSn))
OchChainLogManager.writeChainLogNetLanSocketConnect("局域网socket链接状态","已连接 sn${driverSn}")
}
}else{// 未连接
if(driverSn.isEmpty()){
LoginStatusManager.changeStatus("当前状态:连接司机屏中")
// LoginStatusManager.changeStatus("当前状态:连接司机屏中")
LoginStatusManager.changeStatus(StringUtils.getString(R.string.module_core_connecting_driver))
OchChainLogManager.writeChainLogNetLanSocketConnect("局域网socket链接状态","连接断开 司机SN:${driverSn}")
}else{
LoginStatusManager.changeStatus("连接断开 司机SN:${driverSn}")
// LoginStatusManager.changeStatus("连接断开 司机SN:${driverSn}")
LoginStatusManager.changeStatus(StringUtils.getString(R.string.module_core_disconnected_driver, driverSn))
OchChainLogManager.writeChainLogNetLanSocketConnect("局域网socket链接状态","连接断开 司机SN:${driverSn}")
}
}

View File

@@ -6,6 +6,8 @@ import com.alibaba.android.arouter.launcher.ARouter
import com.mogo.eagle.core.data.enums.Carmodel
import com.mogo.eagle.core.utilcode.mogo.Product
import com.mogo.eagle.core.utilcode.mogo.Vehicle
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.biz.login.bean.OchBizInfo
import com.mogo.och.common.module.biz.login.bean.OchCarInfo
import com.mogo.och.common.module.biz.login.bean.OchLoginInfo
@@ -26,7 +28,8 @@ object LoginStatusManager : CallerBase<ILoginCallback>() {
loginService?.let {
return it.getFragment()
}
throw ClassNotFoundException("没有找到登录Fragment");
// throw ClassNotFoundException("没有找到登录Fragment");
throw ClassNotFoundException(StringUtils.getString(R.string.module_core_not_find_login_fragment));
}
@JvmStatic

View File

@@ -1,6 +1,8 @@
package com.mogo.och.common.module.constant
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.R
/**
* Created on 2021/12/6
@@ -97,6 +99,6 @@ class OchCommonConst {
//T1T2的平均里程38km/h
const val TAXI_AVERAGE_SPEED = 38
const val PNC_ACTION_ENTERSTATION = "正在进站"
// const val PNC_ACTION_ENTERSTATION = "正在进站"
}
}

View File

@@ -12,6 +12,7 @@ import com.mogo.eagle.core.function.main.MainPresenter
import com.mogo.eagle.core.utilcode.mogo.permissions.PermissionsDialogUtils
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.utils.PermissionUtil
open class BaseBluetoothManager {
@@ -48,7 +49,8 @@ open class BaseBluetoothManager {
return BluetoothState.OFF
}
}
ToastUtils.showShort("设备无蓝牙硬件")
// ToastUtils.showShort("设备无蓝牙硬件")
ToastUtils.showShort(R.string.module_och_not_bluetooth)
return BluetoothState.NONE
}

View File

@@ -12,6 +12,7 @@ import android.bluetooth.BluetoothProfile
import android.util.Log
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.utilcode.util.ToastUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager
import com.mogo.och.common.module.utils.RxUtils
import io.reactivex.disposables.Disposable
@@ -190,7 +191,8 @@ class OchBluetoothGattCallback(device: BluetoothDevice) : BluetoothGattCallback(
return null
}
val service = mBluetoothGatt!!.getService(uuid)
if (service == null) ToastUtils.showShort("没有找到服务UUID=$uuid")
// if (service == null) ToastUtils.showShort("没有找到服务UUID=$uuid")
if (service == null) ToastUtils.showShort(R.string.module_och_bluetooth_not_find_uuid, "$uuid")
return service
}
@@ -223,7 +225,8 @@ class OchBluetoothGattCallback(device: BluetoothDevice) : BluetoothGattCallback(
fun connectGattAndSend(data: String) {
RxUtils.disposeSubscribe(timeoutCLose)
if(isConnected){
ToastUtils.showShort("已连接成功")
// ToastUtils.showShort("已连接成功")
ToastUtils.showShort(R.string.module_och_bluetooth_connected)
OchChainLogManager.writeChainLogWriteOff("司机端核销成功","已连接成功")
waitSendData[data] = BleManager.UUID_CHAR_WRITE
sendData()

View File

@@ -43,7 +43,8 @@ class DebugViewWatchDogFragment :
actv_password_submit.setOnClickListener {
val text = acet_close.text
if(text==null||text.isEmpty()){
ToastCharterUtils.showToastShort("请输入密码")
// ToastCharterUtils.showToastShort("请输入密码")
ToastCharterUtils.showToastShort(R.string.module_och_input_pwd)
}else{
if(text.toString() == "123987"){
dismissAllowingStateLoss()
@@ -52,7 +53,8 @@ class DebugViewWatchDogFragment :
}
ToggleDebugView.toggleDebugView.toggle(requireContext())
}else{
ToastCharterUtils.showToastShort("请输入正确密码")
// ToastCharterUtils.showToastShort("请输入正确密码")
ToastCharterUtils.showToastShort(R.string.module_och_input_pwd_error)
}
}
}

View File

@@ -9,6 +9,8 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.i
import com.mogo.eagle.core.utilcode.util.NetworkUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.utils.PermissionUtil
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import io.reactivex.Observable
@@ -36,9 +38,11 @@ object AbnormalFactorsLoopManager : IMogoStatusChangedListener {
return@observable
}
if (newValue) {
ToastCharterUtils.showToastLong("长链接状态恢复")
// ToastCharterUtils.showToastLong("长链接状态恢复")
ToastCharterUtils.showToastLong(R.string.module_och_long_link_status_restored)
} else {
ToastCharterUtils.showToastLong("长链接异常,请开启相应权限或者查看网络")
// ToastCharterUtils.showToastLong("长链接异常,请开启相应权限或者查看网络")
ToastCharterUtils.showToastLong(R.string.module_och_long_link_error)
}
}
@@ -82,13 +86,16 @@ object AbnormalFactorsLoopManager : IMogoStatusChangedListener {
//长链接状态 socketStatus
var toastStr = ""
if (!locationStatusPermsStatus) toastStr += "定位服务异常 "
if (!networkStatus) toastStr += " 网络异常 "
// if (!locationStatusPermsStatus) toastStr += "定位服务异常 "
if (!locationStatusPermsStatus) toastStr += StringUtils.getString(R.string.module_och_location_service_error)
// if (!networkStatus) toastStr += " 网络异常 "
if (!networkStatus) toastStr += StringUtils.getString(R.string.module_och_network_service_error)
i(TAG, "abnormal_factors_Str = $toastStr")
if (!FunctionBuildConfig.isDemoMode && toastStr !== "") {
ToastCharterUtils.showToastLong(toastStr + "请开启相应权限或者查看网络")
// ToastCharterUtils.showToastLong(toastStr + "请开启相应权限或者查看网络")
ToastCharterUtils.showToastLong(R.string.module_och_please_open_permission, toastStr)
}
}

View File

@@ -5,6 +5,8 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
import com.mogo.eagle.core.function.call.autopilot.CallerPlanningActionsListenerManager
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.StringUtils
import com.mogo.och.common.module.R
import mogo.telematics.pad.MessagePad
import java.util.concurrent.ConcurrentHashMap
@@ -131,7 +133,9 @@ object StopSideManager : IMoGoAutopilotPlanningActionsListener {
}else{
stopSiteStatus = StopSideStatus.NOSTART
CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因距离前方站点100m")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"距离前方站点100m,请稍后再试")
// listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"距离前方站点100m,请稍后再试")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,StringUtils.getString(
R.string.module_core_distance_ahead_station_100m))
}
}
}
@@ -146,7 +150,8 @@ object StopSideManager : IMoGoAutopilotPlanningActionsListener {
}else{
stopSiteStatus = StopSideStatus.NOSTART
CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因距离路口100m,请稍后再试")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"距离路口100m,请稍后再试")
// listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"距离路口100m,请稍后再试")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,StringUtils.getString(R.string.module_core_distance_intersection_100m))
}
}
}
@@ -160,7 +165,8 @@ object StopSideManager : IMoGoAutopilotPlanningActionsListener {
}else{
stopSiteStatus = StopSideStatus.NOSTART
CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因正在变道")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"因车辆正在变道无法靠边停车,请稍后再试")
// listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"因车辆正在变道无法靠边停车,请稍后再试")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,StringUtils.getString(R.string.module_core_due_vehicle_changing_lane_cannot_pull_over_park))
}
}
}
@@ -175,7 +181,8 @@ object StopSideManager : IMoGoAutopilotPlanningActionsListener {
}else{
stopSiteStatus = StopSideStatus.NOSTART
CallerLogger.d(SceneConstant.M_BUS+ TAG,"靠边停车失败_原因未知问题")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"靠边停车失败,请稍后再试")
// listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,"靠边停车失败,请稍后再试")
listener.onStartAutopilotFailure(StopSideStatus.NOSTART,false,StringUtils.getString(R.string.module_core_pull_over_parking_failed))
}
}
}
@@ -190,7 +197,8 @@ object StopSideManager : IMoGoAutopilotPlanningActionsListener {
val tag = it.key
val listener = it.value
CallerLogger.d(SceneConstant.M_BUS+ TAG,"进入正常驾驶")
listener.onStartAutopilotFailure(StopSideStatus.NOTHING,false,"进入正常行驶中")
// listener.onStartAutopilotFailure(StopSideStatus.NOTHING,false,"进入正常行驶中")
listener.onStartAutopilotFailure(StopSideStatus.NOTHING,false,StringUtils.getString(R.string.module_core_enter_normal_driving_state))
}
}
}

View File

@@ -13,6 +13,8 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.mogo.permissions.PermissionsDialogUtils
import com.mogo.eagle.core.utilcode.util.ActivityUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.utils.PermissionUtil
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils
import com.mogo.tts.base.zhi.AsrTextBean
@@ -165,7 +167,8 @@ object ZhiStateManager : ZhiRecordWinUi {
return
}
if (!isFastClick()) {
ToastCharterUtils.showToastShort("请稍后唤醒")
// ToastCharterUtils.showToastShort("请稍后唤醒")
ToastCharterUtils.showToastShort(R.string.module_och_please_wait_wake_up)
return
}
if (PermissionUtil.checkPermission(AbsMogoApplication.getApp(), Manifest.permission.RECORD_AUDIO)) {
@@ -184,7 +187,8 @@ object ZhiStateManager : ZhiRecordWinUi {
), MainPresenter.MOGO_PERMISSION_REQUEST_CODE
)
}else{// 不会弹系统弹窗
PermissionsDialogUtils.openAppDetails(ActivityUtils.getTopActivity(), "录音", 100)
// PermissionsDialogUtils.openAppDetails(ActivityUtils.getTopActivity(), "录音", 100)
PermissionsDialogUtils.openAppDetails(ActivityUtils.getTopActivity(), StringUtils.getString(R.string.module_core_record_audio1), 100)
}
}

View File

@@ -26,6 +26,7 @@ import com.mogo.commons.AbsMogoApplication;
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.eagle.core.utilcode.util.NetworkUtils;
import com.mogo.eagle.core.utilcode.util.ThreadUtils;
import com.mogo.och.common.module.R;
import com.mogo.och.common.module.utils.PermissionUtil;
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils;
@@ -175,14 +176,16 @@ public class AmapNaviToDestinationModel implements AMapNaviListener {
}
}
if (!NetworkUtils.isConnected(AbsMogoApplication.getApp()) || result.getErrorCode() == 2) {
ToastCharterUtils.showToastShort("网络异常,请重试");
// ToastCharterUtils.showToastShort("网络异常,请重试");
ToastCharterUtils.showToastShort(R.string.module_och_network_error_retry);
if (mNaviChangedCallback != null) {
mNaviChangedCallback.reInitNaviAmap(isPlay, false);
}
return;
}
if (!PermissionUtil.isLocServiceEnable(AbsMogoApplication.getApp()) || !PermissionUtil.checkPermission(AbsMogoApplication.getApp(), new String[]{Manifest.permission.ACCESS_FINE_LOCATION})) {
ToastCharterUtils.showToastShort("请开启车机定位后重试");
// ToastCharterUtils.showToastShort("请开启车机定位后重试");
ToastCharterUtils.showToastShort(R.string.module_och_open_location_permission_retry);
if (mNaviChangedCallback != null) {
mNaviChangedCallback.reInitNaviAmap(isPlay, false);
}

View File

@@ -9,7 +9,9 @@ import android.os.Message
import android.widget.ImageView
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.och.common.module.R
import java.lang.ref.SoftReference
import java.util.concurrent.ArrayBlockingQueue
import java.util.concurrent.Future
@@ -115,7 +117,8 @@ class BigFrameAnimatorContainer (resId: Int,
heightImage = bmp.height
config = bmp.config
}catch (e:Exception){
throw RuntimeException("请设置图片或传递大小")
// throw RuntimeException("请设置图片或传递大小")
throw RuntimeException(StringUtils.getString(R.string.module_core_set_image))
}
}
// 当图片大小类型相同时进行复用避免频繁GC

View File

@@ -25,7 +25,7 @@ public class DateTimeUtil {
public static final String yyyy_MM_dd_HH_mm = "yyyy-MM-dd HH:mm";
public static final String yyyy_MM_dd_HH_mm_ss = "yyyy-MM-dd HH:mm:ss";
public static final String HH_mm_ss = "HH:mm:ss";
public static final String MM_dd_HH_mm_china = "yyyy年MM月dd日";
// public static final String MM_dd_HH_mm_china = "yyyy年MM月dd日";
public static String formatCalendarToString(Calendar calendar, String format){
if (calendar == null) return "";

View File

@@ -10,6 +10,8 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.mogo.Product
import com.mogo.eagle.core.utilcode.util.AppUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.R
import com.mogo.och.common.module.manager.cache.OchSPManager
import com.mogo.och.common.module.manager.socket.lan.bean.BusinessType
import com.mogo.och.common.module.manager.socket.lan.bean.EnvType
@@ -177,13 +179,15 @@ object FlavorUtils {
val isProjectSupply = ProjectUtils.getProjectType()==projectType
if (!isProjectSupply) {
reason.append("项目异常<当前:${ProjectUtils.getProjectType().value}, 后台配置:${projectType.value}> ")
// reason.append("项目异常<当前:${ProjectUtils.getProjectType().value}, 后台配置:${projectType.value}> ")
reason.append(StringUtils.getString(R.string.module_core_project_abnormal, ProjectUtils.getProjectType().value, projectType.value))
}
val envTypeSupply = EnvUtils.getEnvType()==envType
if (!envTypeSupply) {
reason.append("环境异常<当前:${EnvUtils.getEnvType().value} 后台配置:${envType.value}> ")
// reason.append("环境异常<当前:${EnvUtils.getEnvType().value} 后台配置:${envType.value}> ")
reason.append(StringUtils.getString(R.string.module_core_environment_abnormal, EnvUtils.getEnvType().value, envType.value))
}
return reason.toString()

View File

@@ -8,7 +8,9 @@ import android.os.Looper
import android.widget.ImageView
import com.mogo.commons.AbsMogoApplication
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.och.common.module.R
import java.lang.ref.SoftReference
class FrameAnimatorContainer (resId: Int,
@@ -88,7 +90,8 @@ class FrameAnimatorContainer (resId: Int,
heightImage = bmp.height
config = bmp.config
}catch (e:Exception){
throw RuntimeException("请设置图片或传递大小")
// throw RuntimeException("请设置图片或传递大小")
throw RuntimeException(StringUtils.getString(R.string.module_core_set_image))
}
}
// 当图片大小类型相同时进行复用避免频繁GC

View File

@@ -4,6 +4,7 @@ import android.content.Context;
import com.mogo.commons.debug.DebugConfig;
import com.mogo.eagle.core.utilcode.util.NetworkUtils;
import com.mogo.och.common.module.R;
import com.mogo.och.common.module.wigets.toast.ToastCharterUtils;
public class ToastUtilsOch {
@@ -36,7 +37,8 @@ public class ToastUtilsOch {
public static void toastRequestError(Context context,String failMsg){
if (!NetworkUtils.isConnected(context)) {
ToastCharterUtils.showToastShort("网络异常,请稍后重试");
// ToastCharterUtils.showToastShort("网络异常,请稍后重试");
ToastCharterUtils.showToastShort(R.string.module_och_network_error_retry1);
}else {
ToastCharterUtils.showToastShort(failMsg);
}

Some files were not shown because too many files have changed in this diff Show More