| app/build.gradle | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/java/com/igo/user/ui/trip/MapTripFragment.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/java/com/igo/user/ui/trip/OrderDetailActivity.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/java/com/igo/user/ui/trip/TripActivity.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/java/com/igo/user/utils/google/AMapKit.kt | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/res/layout/layout_confirm_special.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| app/src/main/res/layout/layout_confirm_taxi.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/build.gradle
@@ -21,8 +21,8 @@ applicationId "com.gopost.user" minSdkVersion 23 targetSdkVersion 35 versionCode 22 versionName "1.22" versionCode 23 versionName "1.23" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } app/src/main/java/com/igo/user/ui/trip/MapTripFragment.kt
@@ -167,7 +167,6 @@ private val ll_type by lazy { find<LinearLayout>(R.id.ll_type) } private val cl_bottom by lazy { find<ConstraintLayout>(R.id.cl_bottom) } private val iv_banner2 by lazy { find<ImageView>(R.id.iv_banner2) } private val vertical_1_special by lazy { find<View>(R.id.vertical_1_special) } private val cl_special by lazy { find<View>(R.id.cl_special) } private val cl_taxi by lazy { find<View>(R.id.cl_taxi) } @@ -979,7 +978,6 @@ tab_confirm.currentTab = tab_type.currentTab tv_time.visibility = if (tab_confirm.currentTab == 1) View.VISIBLE else View.GONE tv_time_special.visibility = if (tab_type.currentTab == 1) View.VISIBLE else View.GONE vertical_1_special.visibility = tv_time_special.visibility vertical_1.visibility = tv_time.visibility mainActivity.updateTitleVisibility(false, true) iv_back.imageResource = cn.sinata.xldutils.R.mipmap.back app/src/main/java/com/igo/user/ui/trip/OrderDetailActivity.kt
@@ -49,6 +49,7 @@ import com.igo.user.ui.TransparentStatusBarActivity import com.igo.user.ui.crosscity.PayCrossActivity import com.igo.user.ui.crosscity.ShuttleBusActivity import com.igo.user.ui.mine.TripOrderFragment import com.igo.user.ui.trip.adapter.ExpressPictureAdapter import com.igo.user.utils.Const import com.igo.user.utils.IGoShareUtils @@ -446,7 +447,9 @@ tv_title.visible() tv_action.text = getString(R.string.立即支付) tv_action2.text = getString(R.string.取消订单) tv_action2.visible() if (order!!.orderType == TripOrderFragment.TYPE_LOGISTICS) { tv_action2.visible() } titleBar.getRightButton(0)?.gone() queryBalance() if (order!!.device == 2) {//车载端,显示线下付款按钮 2.0客户反馈,不要该按钮 app/src/main/java/com/igo/user/ui/trip/TripActivity.kt
@@ -662,8 +662,7 @@ titleBar.getRightButton(0)?.gone() aMap?.isMyLocationEnabled = false //行程中取消乘客定位 drawLine() ll_receiver_goods_code.isVisible = it.orderType == Const.OrderType.TYPE_SAME_CITY ll_receiver_goods_code.isVisible = it.orderType == Const.OrderType.TYPE_SAME_CITY tv_receiver_goods_code.text = getString(R.string.取件码) + (it.code ?: "") } @@ -928,11 +927,11 @@ val latLon = LatLng(order!!.startLat, order!!.startLon) val waittime = order!!.insertTime.parserTime() val s = System.currentTimeMillis() val i = Math.max(s - waittime, 0L) val i = (s - waittime).coerceAtLeast(0L) val c = getString(R.string.正在寻找车辆, i / 1000 / 60, i / 1000 % 60) setMarker( latLon, SpanBuilder(c) .color(this, c.length - 6, c.length, R.color.colorRed).build() latLon, SpanBuilder(c).color(this, c.length - 6, c.length, R.color.colorRed).build() ) IGoApplication.intervalCount++ if (IGoApplication.intervalCount > 7) { app/src/main/java/com/igo/user/utils/google/AMapKit.kt
@@ -6,8 +6,6 @@ import android.graphics.Bitmap import android.graphics.Color import android.location.LocationManager import android.os.Handler import android.os.Looper import android.text.TextUtils import android.util.Log import android.view.View @@ -49,6 +47,9 @@ import com.igo.user.R import com.igo.user.utils.Const import com.tbruyelle.rxpermissions2.RxPermissions import io.reactivex.Observable import io.reactivex.android.schedulers.AndroidSchedulers import io.reactivex.schedulers.Schedulers import okhttp3.MediaType import okhttp3.OkHttpClient import okhttp3.Request @@ -344,9 +345,9 @@ onClick: (latLngs: MutableList<LatLng>, lineTance: Float, lineTime: Long) -> Unit ) { //https://maps.googleapis.com/maps/api/directions/json?origin=39.99709957757345,116.31184045225382&destination=39.949158391497214,116.4154639095068&sensor=false&mode=driving var language = LanguageUtil.getLanguage() var centerStr = getPointStr(centerPoint ?: arrayListOf()) var url = "https://maps.googleapis.com/maps/api/directions/json" + val language = LanguageUtil.getLanguage() val centerStr = getPointStr(centerPoint ?: arrayListOf()) val url = "https://maps.googleapis.com/maps/api/directions/json" + "?origin=" + start.latitude.toString() + "," + start.longitude.toString() + "&destination=" + end.latitude.toString() + "," + end.longitude.toString() + "&waypoints=" + centerStr + @@ -354,22 +355,15 @@ "&key=" + Const.google_key getClient(url) { var googleBean = Gson().fromJson<GoogleRouteBean>(it, GoogleRouteBean::class.java) var time = 0 //秒 var tance = 0 //米 var allPoint = arrayListOf<LatLng>() val decode = PolyUtil.decode(googleBean.routes?.firstOrNull()?.overview_polyline?.points ?: "") for (routes in googleBean.routes ?: arrayListOf()) { if (routes.legs.isNullOrEmpty()) { Log.i(TAG, "initRouteLine: 无路线") return@getClient } time = routes.legs[0].duration?.value ?: 0 tance = routes.legs[0].distance?.value ?: 0 val googleBean = Gson().fromJson<GoogleRouteBean>(it, GoogleRouteBean::class.java) if (googleBean.routes.isNullOrEmpty()) { return@getClient } val bean = googleBean.routes.first() val time = bean.legs?.firstOrNull()?.duration?.value ?: 0 //秒 val tance = bean.legs?.firstOrNull()?.distance?.value ?: 0 //米 val allPoint = arrayListOf<LatLng>() val decode = PolyUtil.decode(bean.overview_polyline?.points ?: "") allPoint.addAll(decode) onClick(allPoint, tance.toFloat(), time.toLong() / 60) } @@ -448,29 +442,24 @@ return false } fun getClient(url: String, function: (String) -> Unit) { fun getClient(url: String, retryCount: Int = 3, function: (String) -> Unit) { val client = OkHttpClient().newBuilder().build() val mediaType = MediaType.parse("text/plain") val body = RequestBody.create(mediaType, "") val request: Request = Request.Builder() .url(url) .method("GET", null) .build() Thread { try { val response = client.newCall(request).execute() Handler(Looper.getMainLooper()).post { try { function(response.body()?.string() ?: "") } catch (e: Exception) { e.printStackTrace() } val subscribe = Observable.just(request) .map { request -> client.newCall(request).execute() } .retry(retryCount.toLong()) // 最多额外重试 3 次(加上首次共 4 次尝试) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe({ try { function(it.body()?.string() ?: "") } catch (e: Exception) { e.printStackTrace() } } catch (e: Exception) { e.printStackTrace() } }.start() }, { throwable -> throwable.printStackTrace() }) } /*** app/src/main/res/layout/layout_confirm_special.xml
@@ -68,51 +68,41 @@ android:background="@color/dividing_line_color" app:layout_constraintBottom_toBottomOf="@id/sc_type" /> <TextView android:id="@+id/tv_time_special" <FrameLayout android:id="@+id/fl_select_operation" android:layout_width="wrap_content" android:layout_height="wrap_content" android:drawableEnd="@mipmap/icon_more_black" android:drawablePadding="3dp" android:paddingTop="14dp" android:paddingBottom="14dp" android:text="@string/现在" android:textColor="@color/textColor" android:textSize="12sp" android:visibility="gone" app:layout_constraintBaseline_toBaselineOf="@id/tv_passenger_special" app:layout_constraintEnd_toStartOf="@id/vertical_1_special" app:layout_constraintStart_toStartOf="parent" /> <View android:id="@+id/vertical_1_special" android:layout_width="1dp" android:layout_height="20dp" android:background="@color/dividing_line_color" android:visibility="gone" app:layout_constraintBottom_toBottomOf="@id/tv_passenger_special" app:layout_constraintEnd_toStartOf="@id/tv_passenger_special" app:layout_constraintStart_toEndOf="@id/tv_time_special" app:layout_constraintTop_toTopOf="@id/tv_passenger_special" /> <TextView android:id="@+id/tv_passenger_special" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:drawableEnd="@mipmap/icon_more_black" android:drawablePadding="3dp" android:paddingTop="14dp" android:paddingBottom="14dp" android:text="@string/选乘车人" android:textColor="@color/textColor" android:textSize="12sp" android:visibility="invisible" android:paddingVertical="5dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@id/vertical_1_special" app:layout_constraintTop_toBottomOf="@id/sc_type" tools:visibility="gone" /> app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/sc_type"> <TextView android:id="@+id/tv_time_special" android:layout_width="wrap_content" android:layout_height="wrap_content" android:drawableEnd="@mipmap/icon_more_black" android:drawablePadding="3dp" android:paddingVertical="10dp" android:text="@string/现在" android:textColor="@color/textColor" android:textSize="12sp" android:visibility="gone" tools:visibility="visible" /> <TextView android:id="@+id/tv_passenger_special" android:layout_width="wrap_content" android:layout_height="wrap_content" android:drawableEnd="@mipmap/icon_more_black" android:drawablePadding="3dp" android:paddingVertical="10dp" android:text="@string/选乘车人" android:textColor="@color/textColor" android:textSize="12sp" android:visibility="gone" tools:visibility="visible" /> </FrameLayout> <CheckBox android:id="@+id/cb_use_coupon_special" @@ -120,13 +110,13 @@ android:layout_height="wrap_content" android:button="@drawable/selector_radio" android:checked="true" app:layout_goneMarginTop="12dp" android:gravity="center_vertical" android:text="@string/使用优惠券抵扣" android:textColor="@color/textColor" android:textSize="12sp" app:layout_constraintStart_toStartOf="@id/tv_action_special" app:layout_constraintTop_toBottomOf="@id/tv_passenger_special" /> app:layout_constraintTop_toBottomOf="@id/fl_select_operation" app:layout_goneMarginTop="12dp" /> <TextView android:id="@+id/tv_action_special" app/src/main/res/layout/layout_confirm_taxi.xml
@@ -217,6 +217,7 @@ android:layout_marginTop="12dp" android:button="@drawable/selector_radio" android:checked="true" android:paddingStart="5dp" android:gravity="center_vertical" android:text="@string/使用优惠券抵扣" android:textColor="@color/textColor"