From 44d162555d5e96926fddd4b5f6248397014ce6a7 Mon Sep 17 00:00:00 2001 From: yangyakun Date: Sat, 6 May 2023 15:47:05 +0800 Subject: [PATCH 1/4] [charter] [3.2.0] [debugview] --- .../mogo/och/bus/passenger/ui/MainFragment.kt | 21 ++++++++++++++----- .../passenger/view/statusbar/StatusBarView.kt | 12 ++++++----- .../res/layout/m1_statusview_datetime.xml | 1 + 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt index 2e777e9c3e..202a99b108 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt @@ -13,6 +13,7 @@ import com.mogo.commons.mvp.MvpFragment import com.mogo.eagle.core.data.config.HdMapBuildConfig import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.function.hmi.ui.msgbox.MMsgBoxButtonView +import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView import com.mogo.eagle.core.function.view.SiteMarkerBean import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant @@ -28,6 +29,7 @@ import com.mogo.och.bus.passenger.model.CharterPassengerModel import com.mogo.och.bus.passenger.presenter.BusPassengerPresenter import com.mogo.och.bus.passenger.ui.dialogfragment.M1CarUserNoOrderFragment import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment +import com.mogo.och.bus.passenger.view.statusbar.StatusBarView import com.mogo.och.common.module.biz.constant.LoginStatusManager import com.mogo.och.common.module.voice.VoiceManager import kotlinx.android.synthetic.main.m1_main_fragment.* @@ -271,11 +273,20 @@ class MainFragment : @Subscribe(threadMode = ThreadMode.MAIN) fun changeDebugView(debugView: DebugView) { - if(debug_arrive_dest.visibility==View.GONE||debug_arrive_dest.visibility==View.INVISIBLE){ - debug_arrive_dest.visibility = View.VISIBLE - }else{ - debug_arrive_dest.visibility = View.GONE - } + when (debugView.type) { + StatusBarView.bizz -> { + if(debug_arrive_dest.visibility==View.GONE|| + debug_arrive_dest.visibility==View.INVISIBLE){ + debug_arrive_dest.visibility = View.VISIBLE + }else{ + debug_arrive_dest.visibility = View.GONE + } + } + else -> { + ToggleDebugView.toggleDebugView.toggle(requireContext()) + } + } + } fun drawOverMapViewStation(stationsList: MutableList){ diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt index 053622a980..b8539ff1da 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/statusbar/StatusBarView.kt @@ -37,18 +37,20 @@ class StatusBarView @JvmOverloads constructor( const val TAG = "StatusBarView" private const val COUNTS = 4 // 点击次数 private const val DURATION: Long = 1000 // 规定有效时间 + const val bizz = "bizz" // 业务debug + const val debugView = "debugView" // 业务debug } private var mHits = LongArray(COUNTS) - private fun continuousClick() { + private fun continuousClick(type:String) { //每次点击时,数组向前移动一位 System.arraycopy(mHits, 1, mHits, 0, mHits.size - 1) //为数组最后一位赋值 mHits[mHits.size - 1] = SystemClock.uptimeMillis() if (mHits[0] >= (SystemClock.uptimeMillis() - DURATION)) { mHits = LongArray(COUNTS) //重新初始化数组 - EventBus.getDefault().post(DebugView("show")) + EventBus.getDefault().post(DebugView(type)) } } @@ -76,9 +78,9 @@ class StatusBarView @JvmOverloads constructor( updateStatusBarRightView(FunctionBuildConfig.isDemoMode, "demoMode", DemoModeView(this.context)) - bizz_view.setOnClickListener { - continuousClick() - } + bizz_view.setOnClickListener { continuousClick(bizz) } + + iv_biz_icon.setOnClickListener { continuousClick(debugView) } progress.progress = 50 tv_power_cos.text = "50%" diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_datetime.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_datetime.xml index 4300a2c6b4..8c09508bf0 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_datetime.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_statusview_datetime.xml @@ -76,6 +76,7 @@ android:layout_height="wrap_content"/> Date: Mon, 8 May 2023 17:33:35 +0800 Subject: [PATCH 2/4] =?UTF-8?q?[charter]=20[3.2.0]=20[=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E7=BA=BF=E8=B7=AF=E5=8F=B3=E4=BE=A7=E5=B1=95=E7=A4=BA=E7=BA=BF?= =?UTF-8?q?=E8=B7=AF=E5=92=8C=E7=AB=99=E5=90=8D]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../passenger/bean/event/EventLineSites.kt | 2 +- .../BusPassengerFunctionOrderPresenter.kt | 2 +- .../presenter/BusPassengerPresenter.kt | 83 ++++++++++++-- .../mogo/och/bus/passenger/ui/MainFragment.kt | 42 +++++-- .../ui/adapter/OrderSiteItemAdapter.kt | 3 + .../ui/dialogfragment/M1ContainFragment.kt | 4 +- .../fragment/M1OrderLineFragment.kt | 2 +- .../bus/passenger/view/MakerWithSiteName.kt | 31 +++++ .../charter_p_select_city_name_textcolor.xml | 6 + .../charter_p_selct_site_bottom_corner.xml | 9 ++ ...charter_p_selct_site_name_shape_normal.xml | 6 + ...arter_p_selct_site_name_shape_selected.xml | 6 + ...arter_p_selct_site_name_shape_selector.xml | 6 + .../src/main/res/layout/m1_main_fragment.xml | 2 + .../src/main/res/layout/m1_order_fragment.xml | 107 ++++++++++-------- .../res/layout/m1_statusview_datetime.xml | 2 +- .../main/res/layout/view_maker_sitename.xml | 27 +++++ .../src/main/res/values/color.xml | 1 + 18 files changed, 271 insertions(+), 70 deletions(-) create mode 100644 OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/MakerWithSiteName.kt create mode 100644 OCH/mogo-och-charter-passenger/src/main/res/color/charter_p_select_city_name_textcolor.xml create mode 100644 OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_bottom_corner.xml create mode 100644 OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_normal.xml create mode 100644 OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selected.xml create mode 100644 OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selector.xml create mode 100644 OCH/mogo-och-charter-passenger/src/main/res/layout/view_maker_sitename.xml diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/event/EventLineSites.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/event/EventLineSites.kt index e1e1c2654d..beb65c2882 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/event/EventLineSites.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/bean/event/EventLineSites.kt @@ -3,4 +3,4 @@ package com.mogo.och.bus.passenger.bean.event import com.mogo.och.bus.passenger.bean.response.LineInfoResponse import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse -data class EventLineSites(val lineInfo: LineInfoResponse.LineInfo, val sites: List) \ No newline at end of file +data class EventLineSites(val lineInfo: LineInfoResponse.LineInfo?, val sites: List?, val clear:Boolean=false) \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt index dfd9e84c32..6a1a100b31 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerFunctionOrderPresenter.kt @@ -102,7 +102,7 @@ class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) : override fun onSuccess(data: SiteInfoResponse?) { if (data?.data == null) return val siteInfos = data.data - EventBus.getDefault().post(EventLineSites(checkLine,data.data)) + EventBus.getDefault().post(EventLineSites(checkLine,siteInfos,false)) if (siteInfos.isNotEmpty()) { // 计算当前站点是那个 val calculateCurrentSite = diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt index 9159d7a2d8..2a5a454db6 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/presenter/BusPassengerPresenter.kt @@ -1,6 +1,9 @@ package com.mogo.och.bus.passenger.presenter +import android.graphics.Bitmap import android.graphics.BitmapFactory +import android.graphics.Canvas +import android.view.View import androidx.lifecycle.LifecycleOwner import com.amap.api.maps.model.LatLng import com.mogo.commons.voice.AIAssist @@ -26,20 +29,25 @@ import com.mogo.och.bus.passenger.model.CharterPassengerModel import com.mogo.och.bus.passenger.model.IOrderStatusChangeListener import com.mogo.och.bus.passenger.model.OrderStatusEnum import com.mogo.och.bus.passenger.ui.MainFragment +import com.mogo.och.bus.passenger.view.MakerWithSiteName +import com.mogo.och.bus.passenger.view.MakerWithSiteNamewithCheck +import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg +import com.mogo.och.common.module.bean.dpmsg.DPCommonOperationMsg import com.mogo.och.common.module.bean.dpmsg.DPMsgType import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager import com.mogo.och.common.module.biz.constant.OchCommonConst -import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager +import com.mogo.och.common.module.biz.network.OchCommonServiceCallback import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager +import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager +import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil import com.mogo.och.common.module.utils.DateTimeUtil import com.mogo.och.common.module.utils.NumberFormatUtil import com.mogo.och.common.module.utils.SoundPoolHelper import com.mogo.och.common.module.voice.VoiceNotice -import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg -import com.mogo.och.common.module.bean.dpmsg.DPCommonOperationMsg -import com.mogo.och.common.module.biz.network.OchCommonServiceCallback -import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback -import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager +import me.jessyan.autosize.utils.AutoSizeUtils +import java.util.concurrent.ConcurrentHashMap import kotlin.math.ceil class BusPassengerPresenter(view: MainFragment?) : @@ -47,6 +55,8 @@ class BusPassengerPresenter(view: MainFragment?) : IDistanceCallback, IOrderChangeCallback, IOrderStatusChangeListener, OCHPlanningStopSideStatusManager.OCHPlanningActionsCallback, LightAirconditionDoorCallback { + private val lindIdAndView = ConcurrentHashMap() + override fun onCreate(owner: LifecycleOwner) { super.onCreate(owner) CharterPassengerModel.init() @@ -273,7 +283,7 @@ class BusPassengerPresenter(view: MainFragment?) : it.forEach {latLngMain -> trajectoryList.add(latLngMain.exchangeData()) } - drawStations(sites) + drawStationInfo(sites) mView?.drawOverMapViewTrajectory(trajectoryList) } } @@ -286,12 +296,67 @@ class BusPassengerPresenter(view: MainFragment?) : } - fun drawStations(sites: List){ + fun drawStationInfo(sites: List){ val stationsList: MutableList = mutableListOf() + val stationsNameList: MutableList = mutableListOf() val stationIcon = BitmapFactory.decodeResource(context.resources, R.drawable.map_staton_icon) sites.forEach { stationsList.add(SiteMarkerBean(LatLng(it.GcjLat!!,it.GcjLon!!),stationIcon,0.5f,0.5f)) + val bitmap = getBitmap(it.siteId!!,it.siteName ?: "", it.isCheck) + stationsNameList.add(SiteMarkerBean(LatLng(it.GcjLat,it.GcjLon),bitmap,0.0f,0.2f)) } - mView?.drawOverMapViewStation(stationsList) + mView?.drawOverMapViewStation(stationsList,stationsNameList) + } + + private fun getBitmap(siteId:Long,siteName: String,isCheck:Boolean): Bitmap { + var siteView = lindIdAndView[siteId] + if(siteView==null){ + val marker = MakerWithSiteName(context) + marker.setTextAndCheck(siteName,isCheck) + marker.measure( + View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 145f), View.MeasureSpec.UNSPECIFIED), + View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 34f), View.MeasureSpec.EXACTLY) + ) + marker.layout(0, 0, marker.measuredWidth, marker.measuredHeight) + val bitmap = Bitmap.createBitmap(marker.width, marker.height, Bitmap.Config.ARGB_8888) + marker.draw(Canvas(bitmap)) + siteView = MakerWithSiteNamewithCheck(isCheck,marker,bitmap) + lindIdAndView[siteId] = siteView + }else{ + CallerLogger.d(M_BUS_P + TAG, "缓存View:$siteName---${siteView.isCheck}-----$isCheck") + if (siteView.isCheck != isCheck) { + val marker = siteView.makerWithSiteName + marker.setTextAndCheck(siteName,isCheck) + marker.measure( + View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 145f), View.MeasureSpec.UNSPECIFIED), + View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 34f), View.MeasureSpec.UNSPECIFIED) + ) + marker.layout(0, 0, marker.measuredWidth, marker.measuredHeight) + val bitmap = Bitmap.createBitmap(marker.width, marker.height, Bitmap.Config.ARGB_8888) + marker.draw(Canvas(bitmap)) + siteView.isCheck = isCheck + siteView.bitmapView = bitmap + } + } + return siteView.bitmapView + } + + fun drawEndStation() { + val currentOrderInfo = CharterPassengerModel.getCurrentOrderInfo() + currentOrderInfo?.let { + if (it.wgs84Lon != null && it.wgs84Lat != null && it.siteId != null && it.siteName != null) { + val coordinateConverterWgsToGcj = + CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj( + context, + it.wgs84Lon!!, + it.wgs84Lat!! + ) + setEndStationCallBack( + it.siteId, it.siteName, + coordinateConverterWgsToGcj.longitude, coordinateConverterWgsToGcj.latitude + ) + } + } + } } \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt index 202a99b108..487b6e5472 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/MainFragment.kt @@ -48,8 +48,12 @@ class MainFragment : private var bpFunctionGroupDialogFragment: WeakReference? = null private var m1CarUserNoOrderFragment: WeakReference? = null - val endStation = - BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m1_small_map_view_dir_end) + private val endStation = + BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, + R.drawable.m1_small_map_view_dir_end) + private val lineTrajectory = + BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, + com.mogo.eagle.core.function.map.R.drawable.taxi_map_arrow_arrived) override fun getLayoutId(): Int { return R.layout.m1_main_fragment @@ -267,8 +271,25 @@ class MainFragment : @Subscribe(threadMode = ThreadMode.MAIN) fun changeOverview(eventLineSites: EventLineSites) { - CallerLogger.d(M_BUS_P + TAG, "eventLineSites:${eventLineSites.lineInfo.lineId}-----${eventLineSites.sites.size}") - mPresenter?.getLineTrajectory(eventLineSites.lineInfo,eventLineSites.sites) + CallerLogger.d(M_BUS_P + TAG, "eventLineSites:${eventLineSites.lineInfo?.lineId}") + if(eventLineSites.clear){ + UiThreadHandler.post( + { + omvOverMap?.clearSitePolyline() + omvOverMap?.includeSitePointsAndUpdateCamera(mutableListOf()) + omvOverMap?.clearSiteMarkers() + omvOverMap?.clearSiteNameViews() + mPresenter?.drawEndStation() + }, + UiThreadHandler.MODE.QUEUE + ) + } else { + if(eventLineSites.lineInfo==null){//更新站点 + mPresenter?.drawStationInfo(eventLineSites.sites!!) + }else{// 更新轨迹和站点 + mPresenter?.getLineTrajectory(eventLineSites.lineInfo,eventLineSites.sites!!) + } + } } @Subscribe(threadMode = ThreadMode.MAIN) @@ -289,13 +310,18 @@ class MainFragment : } - fun drawOverMapViewStation(stationsList: MutableList){ + fun drawOverMapViewStation(stationsList: MutableList,siteMarkers: List?){ + omvOverMap?.clearSiteMarkers() + omvOverMap?.clearSiteNameViews() omvOverMap?.drawSiteMarkers(stationsList) + omvOverMap?.drawSiteNameViews(siteMarkers) } - fun drawOverMapViewTrajectory(coordinates: List){ - UiThreadHandler.post({ - omvOverMap?.drawPolyline(coordinates, 0) + fun drawOverMapViewTrajectory(coordinates: List) { + UiThreadHandler.post( + { + omvOverMap?.drawSitePolyline(coordinates, lineTrajectory) + omvOverMap?.includeSitePointsAndUpdateCamera(coordinates) }, UiThreadHandler.MODE.QUEUE ) diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt index 6e2b4ae5e5..5090eb95e0 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/adapter/OrderSiteItemAdapter.kt @@ -10,8 +10,10 @@ import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.bean.event.EventLineSites import com.mogo.och.bus.passenger.bean.response.LineInfoResponse import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse +import org.greenrobot.eventbus.EventBus /** * Created by adityagohad on 06/06/17. @@ -90,6 +92,7 @@ class OrderSiteItemAdapter( } } notifyDataSetChanged() + EventBus.getDefault().post(EventLineSites(null,dataList,false)) checkChangeListener?.onCheckListener(tempInfo) } else { if (siteInfo.isNear) { diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt index 2ad6356784..97e7cf572a 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt @@ -16,6 +16,7 @@ import com.mogo.eagle.core.utilcode.util.BarUtils import com.mogo.eagle.core.utilcode.util.SharedPrefs import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.bus.passenger.R +import com.mogo.och.bus.passenger.bean.event.EventLineSites import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionPresenter import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1OrderLineFragment import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1SoftFragment @@ -24,6 +25,7 @@ import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.OrderInfoFragment import com.mogo.och.bus.passenger.ui.view.bottom.BottomBar import com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView import kotlinx.android.synthetic.main.m1_contain_fragment.* +import org.greenrobot.eventbus.EventBus /** * @author: yangyakun @@ -160,7 +162,7 @@ class M1ContainFragment : override fun onDismiss(dialog: DialogInterface) { super.onDismiss(dialog) - ToastUtils.showShort("消失了") + EventBus.getDefault().post(EventLineSites(null,null,true)) } override fun onSaveInstanceState(outState: Bundle) { diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt index df639fdab8..cd2916dfa8 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt @@ -76,7 +76,7 @@ class M1OrderLineFragment : LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false) rv_site_list.addItemDecoration( BottomDecoration( - AutoSizeUtils.dp2px(context, 60f) + AutoSizeUtils.dp2px(context, 90f) ) ) rv_site_list.adapter = siteAdapter diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/MakerWithSiteName.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/MakerWithSiteName.kt new file mode 100644 index 0000000000..3e978b0448 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/view/MakerWithSiteName.kt @@ -0,0 +1,31 @@ +package com.mogo.och.bus.passenger.view + +import android.content.Context +import android.graphics.Bitmap +import android.util.AttributeSet +import android.view.LayoutInflater +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.och.bus.passenger.R +import kotlinx.android.synthetic.main.view_maker_sitename.view.* + +class MakerWithSiteName @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout ( + context, + attrs, + defStyleAttr +) { + + init { + LayoutInflater.from(context).inflate(R.layout.view_maker_sitename, this, true) + } + + fun setTextAndCheck(siteName: String,isCheck:Boolean) { + tv_site_name.text = siteName + tv_site_name.isChecked = isCheck + } +} + +data class MakerWithSiteNamewithCheck(var isCheck: Boolean,val makerWithSiteName:MakerWithSiteName,var bitmapView: Bitmap) \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/color/charter_p_select_city_name_textcolor.xml b/OCH/mogo-och-charter-passenger/src/main/res/color/charter_p_select_city_name_textcolor.xml new file mode 100644 index 0000000000..51e58f87a5 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/res/color/charter_p_select_city_name_textcolor.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_bottom_corner.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_bottom_corner.xml new file mode 100644 index 0000000000..a779ceb4e3 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_bottom_corner.xml @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_normal.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_normal.xml new file mode 100644 index 0000000000..415076833e --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_normal.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selected.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selected.xml new file mode 100644 index 0000000000..d8844581c8 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selected.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selector.xml b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selector.xml new file mode 100644 index 0000000000..87564e9bd4 --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/res/drawable/charter_p_selct_site_name_shape_selector.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_main_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_main_fragment.xml index 4817c92f25..3bd70b705d 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_main_fragment.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_main_fragment.xml @@ -25,6 +25,8 @@ app:startPointDrawable="@null" app:resetDrawableMarginRight="34dp" app:resetDrawableMarginBottom="54dp" + app:bottomPadding="200" + app:topPadding="100" app:isClearArrived="true" android:layout_width="0dp" android:layout_height="match_parent"/> diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml index b580fdf09b..9b63d84b6a 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_fragment.xml @@ -57,58 +57,69 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:paddingTop="@dimen/dp_20" /> - - - - - - - - + android:background="@drawable/charter_p_selct_site_bottom_corner" + android:layout_width="match_parent" + android:layout_height="@dimen/dp_90"/> + + + + + + + + + + + + + + android:layout_height="@dimen/dp_47"/> + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/res/values/color.xml b/OCH/mogo-och-charter-passenger/src/main/res/values/color.xml index 0680b9efba..ece45c5727 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/values/color.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/values/color.xml @@ -31,6 +31,7 @@ #090F28 #5F7096 #9AABD2 + #D7E5F5 #662C2D31 #332C2D31 From 5c8a559ec44c381c576aca477c4b0783024cf155 Mon Sep 17 00:00:00 2001 From: zhongchao Date: Mon, 8 May 2023 17:41:13 +0800 Subject: [PATCH 3/4] [3.2.0]fix bug of merge problem --- .../res/drawable/iv_roma_bus_passenger_bg.png | Bin 0 -> 21231 bytes .../drawable/iv_roma_bus_passenger_press_bg.png | Bin 0 -> 21461 bytes .../res/drawable/roma_bus_p_bg_selector.xml | 8 ++++++++ .../jinlvvan/res/layout/bus_p_base_fragment.xml | 12 ++++++++++++ 4 files changed, 20 insertions(+) create mode 100644 OCH/mogo-och-bus-passenger/src/jinlvvan/res/drawable/iv_roma_bus_passenger_bg.png create mode 100644 OCH/mogo-och-bus-passenger/src/jinlvvan/res/drawable/iv_roma_bus_passenger_press_bg.png create mode 100644 OCH/mogo-och-bus-passenger/src/jinlvvan/res/drawable/roma_bus_p_bg_selector.xml diff --git a/OCH/mogo-och-bus-passenger/src/jinlvvan/res/drawable/iv_roma_bus_passenger_bg.png b/OCH/mogo-och-bus-passenger/src/jinlvvan/res/drawable/iv_roma_bus_passenger_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..405d2cddaa1abbbeb673ea736ff4437b7047496e GIT binary patch literal 21231 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 + + + + + + + \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml b/OCH/mogo-och-bus-passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml index b01c1ffe3d..cc60b4b8d0 100644 --- a/OCH/mogo-och-bus-passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml +++ b/OCH/mogo-och-bus-passenger/src/jinlvvan/res/layout/bus_p_base_fragment.xml @@ -31,6 +31,18 @@ android:layout_width="match_parent" android:layout_height="match_parent"/> + + Date: Mon, 8 May 2023 17:45:51 +0800 Subject: [PATCH 4/4] [3.2.0] --- .../java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java | 1 + 1 file changed, 1 insertion(+) diff --git a/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java b/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java index e056aa6215..17a1adaa61 100644 --- a/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java +++ b/OCH/mogo-och-bus-passenger/src/jinlvvan/java/com/mogo/och/bus/passenger/MogoOCHBusPassenger.java @@ -1,6 +1,7 @@ package com.mogo.och.bus.passenger; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS_P; +import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI_P; import android.content.Context;