[8.2.8][i18n] 接驳乘客屏 中文抽取

This commit is contained in:
xinfengkun
2025-11-13 17:36:00 +08:00
parent 8f6e8de77e
commit 45f9af9e3d
18 changed files with 162 additions and 57 deletions

View File

@@ -22,6 +22,7 @@ import com.mogo.eagle.core.data.map.MogoLocation;
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener;
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager;
import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView;
import com.mogo.eagle.core.utilcode.util.StringUtils;
import com.mogo.map.overlay.IMoGoOverlayManager;
import com.mogo.och.common.module.utils.ResourcesUtils;
import com.mogo.och.shuttle.weaknet.passenger.R;
@@ -315,19 +316,23 @@ public class BusPassengerRouteFragment extends
public void updateRoutePlanningToNextStation(long meters, long timeInSecond){
//更新进度条
String dis = "0";
String disUnit = "公里";
// String disUnit = "公里";
String 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 = String.valueOf(Math.round(meters));
}else {
disUnit = "公里";
// disUnit = "公里";
disUnit = StringUtils.getString(R.string.module_och_km);
dis = NumberFormatUtil.formatLong((double)meters / 1000);
}
}
// String strHtml2 = "<font color=\"#2D3E5F\">距离 </font>" + "<b><font color=\"#0043FF\">" + dis + "</font></b>" + "<font color=\"#2D3E5F\"> "+disUnit+"</font>"
// + "<font color=\"#2D3E5F\"> &nbsp 剩余 </font>" + "<b><font color=\"#0043FF\">" + (int)Math.ceil((double)timeInSecond/ 60f) + "</font></b>" + "<font color=\"#2D3E5F\"> 分钟</font>";
String str = dis+disUnit+" | "+(int)Math.ceil((double)timeInSecond/ 60f)+"分钟";
// String str = dis+disUnit+" | "+(int)Math.ceil((double)timeInSecond/ 60f)+"分钟";
String str = dis + disUnit + " | " + (int) Math.ceil((double) timeInSecond / 60f) + StringUtils.getString(R.string.module_och_minute);
mCurrentArriveTip.setText(Html.fromHtml(str));
}

View File

@@ -12,6 +12,7 @@ import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager
import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager
import com.mogo.eagle.core.function.call.setting.CallerSkinModeListenerManager
import com.mogo.eagle.core.utilcode.util.AppUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.shuttle.weaknet.passenger.R
import kotlinx.android.synthetic.main.shuttle_p_weak_jl_view_status_bar.view.tv_shuttle_b1_p_version
import me.jessyan.autosize.utils.AutoSizeUtils
@@ -34,7 +35,8 @@ class BusPStatusBarView @JvmOverloads constructor(
isClickable = true
isFocusable = true
tv_shuttle_b1_p_version.text = "版本:${AppUtils.getAppVersionName()}"
// tv_shuttle_b1_p_version.text = "版本:${AppUtils.getAppVersionName()}"
tv_shuttle_b1_p_version.text = StringUtils.getString(R.string.module_och_version, AppUtils.getAppVersionName())
}

View File

@@ -10,6 +10,7 @@ import com.mogo.eagle.core.function.call.hmi.CallerRoadV2NEventWindowListenerMan
import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager
import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.util.AppUtils
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.eagle.core.utilcode.util.UriUtils
import com.mogo.och.common.module.biz.birdge.data.RoadMsg
import com.mogo.och.common.module.biz.media.MediaManager
@@ -77,7 +78,8 @@ class PM2BaseFragment :
}
override fun initViews() {
tv_shuttle_b2_p_version.text = "版本:${AppUtils.getAppVersionName()}"
// tv_shuttle_b2_p_version.text = "版本:${AppUtils.getAppVersionName()}"
tv_shuttle_b2_p_version.text = StringUtils.getString(R.string.module_och_version, AppUtils.getAppVersionName())
initFragment()
OchTransform.addListener(TAG, ochTransform)
}
@@ -147,7 +149,13 @@ class PM2BaseFragment :
sortedList.add(one)
sortedList.add(two)
sortedList.add(three)
val ndeEvent = AIMessage.NDEData(System.currentTimeMillis().toString(),"路口车龙","前方路口有车龙",sortedList)
// val ndeEvent = AIMessage.NDEData(System.currentTimeMillis().toString(),"路口车龙","前方路口有车龙",sortedList)
val ndeEvent = AIMessage.NDEData(
System.currentTimeMillis().toString(),
StringUtils.getString(R.string.module_och_crossing_tailback),
StringUtils.getString(R.string.module_och_crossing_tailback_desc),
sortedList
)
AIMessageManager.post(ndeEvent)
// CallerRoadV2NEventWindowListenerManager.showImage(

View File

@@ -3,10 +3,11 @@ package com.mogo.och.shuttle.weaknet.passenger.ui.line
import android.os.Bundle
import android.view.View
import com.mogo.commons.mvp.MvpFragment
import com.mogo.och.shuttle.weaknet.passenger.R
import com.mogo.och.shuttle.weaknet.passenger.presenter.PM2DrivingPresenter
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.utils.NumberFormatUtil
import com.mogo.och.data.bean.BusStationBean
import com.mogo.och.shuttle.weaknet.passenger.R
import com.mogo.och.shuttle.weaknet.passenger.presenter.PM2DrivingPresenter
import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.arriveView
import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.emptyView
import kotlinx.android.synthetic.main.shuttle_p_m2_driving_info_fragment.lineView
@@ -94,15 +95,20 @@ class PM2DrivingInfoFragment :
* 剩余里程和时间
*/
fun updateRemainMT(meters: Long, timeInSecond: Long) { //米。秒
var disUnit = "公里"
// var disUnit = "公里"
var disUnit = StringUtils.getString(R.string.module_och_km)
var remainDis: String? = "0"
if (meters > 0) {
if (meters / 1000 < 1) {
disUnit = ""
// disUnit = "米"
disUnit = StringUtils.getString(R.string.module_och_m)
remainDis = meters.toFloat().roundToInt().toString()
} else {
disUnit = "公里"
// disUnit = "公里"
// disUnit = "公里";
disUnit = StringUtils.getString(R.string.module_och_km)
remainDis = NumberFormatUtil.formatLong(meters.toDouble() / 1000)
}
}

View File

@@ -3,9 +3,11 @@ package com.mogo.och.shuttle.weaknet.passenger.ui.line.lineinfo
import androidx.lifecycle.ViewModel
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.manager.loop.BizLoopManager
import com.mogo.och.common.module.utils.NumberFormatUtil
import com.mogo.och.data.bean.BusStationBean
import com.mogo.och.shuttle.weaknet.passenger.R
import com.mogo.och.shuttle.weaknet.passenger.callback.ICommonCallback
import com.mogo.och.shuttle.weaknet.passenger.model.CommonModel
import io.reactivex.disposables.Disposable
@@ -44,15 +46,18 @@ class LineViewModel : ViewModel(), ICommonCallback {
override fun updateRemainMT(meters: Long, timeInSecond: Long) {
super.updateRemainMT(meters, timeInSecond)
var disUnit = "公里"
// var disUnit = "公里"
var disUnit = StringUtils.getString(R.string.module_och_km)
var remainDis: String? = "0"
if (meters > 0) {
if (meters / 1000 < 1) {
disUnit = ""
// disUnit = "米"
disUnit = StringUtils.getString(R.string.module_och_m)
remainDis = meters.toFloat().roundToInt().toString()
} else {
disUnit = "公里"
// disUnit = "公里"
disUnit = StringUtils.getString(R.string.module_och_km)
remainDis = NumberFormatUtil.formatLong(meters.toDouble() / 1000)
}
}
@@ -62,7 +67,8 @@ class LineViewModel : ViewModel(), ICommonCallback {
// "$remainDis$disUnit".also { tv_distance.text = it }
// "${time}分钟".also { tv_left_time.text = it }
this.viewCallback?.updateRemainMt("$remainDis$disUnit","${time}分钟")
// this.viewCallback?.updateRemainMt("$remainDis$disUnit","${time}分钟")
this.viewCallback?.updateRemainMt("$remainDis$disUnit","${time}${StringUtils.getString(R.string.module_och_minute)}")
}
interface LineViewCallback{

View File

@@ -3,6 +3,7 @@ package com.mogo.och.shuttle.weaknet.passenger.ui.line.lineinfo.item
import android.view.View
import androidx.appcompat.widget.AppCompatTextView
import androidx.recyclerview.widget.RecyclerView
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.utils.ResourcesUtils
import com.mogo.och.common.module.wigets.OCHGradientTextView
import com.mogo.och.data.bean.BusStationBean
@@ -109,7 +110,8 @@ class OmitPassViewHolder(binding: View) : StationViewHolder(binding) {
private var omitCout: AppCompatTextView = binding.findViewById(R.id.actv_pass_omit_cout)
override fun bind(item: BusStationBean,distanceAndView:String) {
if(item is StationBeanOmit){
omitCout.text = "${item.coutOmit}"
// omitCout.text = "${item.coutOmit}站"
omitCout.text = StringUtils.getString(R.string.module_och_station, item.coutOmit)
}
}
}
@@ -117,7 +119,8 @@ class OmitFutureViewHolder(binding: View) : StationViewHolder(binding) {
private var omitCout: AppCompatTextView = binding.findViewById(R.id.actv_future_omit_count)
override fun bind(item: BusStationBean,distanceAndView:String) {
if(item is StationBeanOmit){
omitCout.text = "${item.coutOmit}"
// omitCout.text = "${item.coutOmit}站"
omitCout.text = StringUtils.getString(R.string.module_och_station, item.coutOmit)
}
}
}

View File

@@ -8,6 +8,7 @@ import android.widget.ImageView
import android.widget.ProgressBar
import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.shuttle.weaknet.passenger.R
import kotlin.random.Random
@@ -17,12 +18,18 @@ class RoadCrossRoamListB2Adapter(private val mContext: Context) : RecyclerView.
private val items: MutableList<String> = mutableListOf()
init {
items.add("前方路况拥堵分析")
items.add("路口危险车辆分析")
items.add("路口交通事故分析")
items.add("路口行人碰撞分析")
items.add("路口非机动车分析")
items.add("路口灯态分析")
// items.add("前方路况拥堵分析")
items.add(StringUtils.getString(R.string.module_och_analysis_traffic_conditions_ahead))
// items.add("路口危险车辆分析")
items.add(StringUtils.getString(R.string.module_och_analysis_dangerous_vehicles_intersections))
// items.add("路口交通事故分析")
items.add(StringUtils.getString(R.string.module_och_analysis_roadside_traffic_accidents))
// items.add("路口行人碰撞分析")
items.add(StringUtils.getString(R.string.module_och_analysis_pedestrian_collisions_crossroads))
// items.add("路口非机动车分析")
items.add(StringUtils.getString(R.string.module_och_analysis_non_motorized_vehicles_intersections))
// items.add("路口灯态分析")
items.add(StringUtils.getString(R.string.module_och_analysis_intersection_signal_status))
}
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {

View File

@@ -12,7 +12,9 @@ import com.mogo.eagle.core.function.call.map.CallerMapIdentifyManager
import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
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.shuttle.weaknet.passenger.R
import com.mogo.och.shuttle.weaknet.passenger.ui.mind.AIMessageManager
import com.mogo.och.shuttle.weaknet.passenger.ui.mind.bean.AIMessage
@@ -55,7 +57,8 @@ class RoadCrossRoamViewModel: ViewModel(), IMoGoMapRoadListener {
return
}
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)){
val disStr = "为您提供路口全息影像,助力出行"
// val disStr = "为您提供路口全息影像,助力出行"
val disStr = StringUtils.getString(R.string.module_och_offer_intersection_holographic_image)
AIAssist.getInstance(mContext).speakTTSVoiceWithLevel(disStr, AIAssist.NEW_LEVEL_2)
}
CallerServicesEventManager.updateServicesNum(CallerServicesEventManager.ServiceType.ROAD)

View File

@@ -4,6 +4,7 @@ import android.annotation.SuppressLint
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
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.common.module.biz.scanner.QrBean
import com.mogo.och.common.module.biz.scanner.ScannerManager
import com.mogo.och.common.module.manager.bluetooth.BleManager
@@ -16,6 +17,7 @@ import com.mogo.och.common.module.manager.socket.lan.bean.DPMsgType
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffDetialMsg
import com.mogo.och.common.module.manager.socket.lan.bean.WriteOffResultMsg
import com.mogo.och.common.module.utils.RxUtils
import com.mogo.och.shuttle.weaknet.passenger.R
object TicketModel : StateChangeListener {
@@ -106,7 +108,8 @@ object TicketModel : StateChangeListener {
e.printStackTrace()
CallerLogger.d(M_BUS_P + 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_BUS_P + TAG, "sendTaskDetailsToClients = " + GsonUtils.toJson(writeOffDetail))
LanSocketManager.sendMsgToServer(writeOffDetail)

View File

@@ -142,14 +142,15 @@
app:layout_constraintBottom_toBottomOf="@+id/bus_p_speed_tv"
app:layout_constraintLeft_toRightOf="@+id/dividing_line_1"
app:layout_constraintTop_toTopOf="@+id/bus_p_speed_tv" />
<!-- android:format12Hour="yyyy年MM月dd日"-->
<!-- android:format24Hour="yyyy年MM月dd日"-->
<TextClock
android:id="@+id/textClockDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_18"
android:format12Hour="yyyy年MM月dd日"
android:format24Hour="yyyy年MM月dd日"
android:format12Hour="@string/module_och_date_format"
android:format24Hour="@string/module_och_date_format"
android:gravity="center"
android:includeFontPadding="false"
android:textColor="@color/shuttle_p_jl_clock_17417B"