diff --git a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/TaxiOrderStatusEnum.kt b/OCH/common/data/src/main/java/com/mogo/och/data/taxi/TaxiOrderStatusEnum.kt similarity index 96% rename from OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/TaxiOrderStatusEnum.kt rename to OCH/common/data/src/main/java/com/mogo/och/data/taxi/TaxiOrderStatusEnum.kt index 3cc82e47de..e676042207 100644 --- a/OCH/common/common/src/main/java/com/mogo/och/common/module/biz/order/TaxiOrderStatusEnum.kt +++ b/OCH/common/data/src/main/java/com/mogo/och/data/taxi/TaxiOrderStatusEnum.kt @@ -1,4 +1,4 @@ -package com.mogo.och.common.module.biz.order +package com.mogo.och.data.taxi /** * Created on 2021/12/7 diff --git a/OCH/taxi/driver/.gitignore b/OCH/taxi/driver/.gitignore deleted file mode 100644 index 42afabfd2a..0000000000 --- a/OCH/taxi/driver/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build \ No newline at end of file diff --git a/OCH/taxi/driver/build.gradle b/OCH/taxi/driver/build.gradle deleted file mode 100644 index 8bc24cfeab..0000000000 --- a/OCH/taxi/driver/build.gradle +++ /dev/null @@ -1,74 +0,0 @@ -apply plugin: 'com.android.library' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-android-extensions' -apply plugin: 'kotlin-kapt' - -android { - compileSdkVersion rootProject.ext.android.compileSdkVersion - // buildToolsVersion rootProject.ext.android.buildToolsVersion - defaultConfig { - minSdkVersion rootProject.ext.android.minSdkVersion - targetSdkVersion rootProject.ext.android.targetSdkVersion - versionCode Integer.valueOf(VERSION_CODE) - versionName getValueFromRootProperties("${project.name.replace("-", "_").toUpperCase()}_VERSION") - - - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - consumerProguardFiles "consumer-rules.pro" - - kapt { - useBuildCache = false - arguments { - arg("AROUTER_MODULE_NAME", "taxi"+project.getName()) - } - } - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } - - lintOptions { - abortOnError false - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - debug { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' - } - } - - sourceSets { - main { - res.srcDirs = [ - 'src/main/res', - 'src/main/res/ani', - ] - } - } -} - -dependencies { - implementation fileTree(dir: "libs", include: ["*.jar"]) - implementation rootProject.ext.dependencies.kotlinstdlib - implementation rootProject.ext.dependencies.androidxappcompat - implementation rootProject.ext.dependencies.arouter - implementation rootProject.ext.dependencies.androidxrecyclerview - implementation rootProject.ext.dependencies.material - kapt rootProject.ext.dependencies.aroutercompiler - implementation rootProject.ext.dependencies.rxandroid - implementation rootProject.ext.dependencies.androidxconstraintlayout - implementation rootProject.ext.dependencies.amapnavi3dmap - - implementation project(":OCH:common:common") - compileOnly project(":libraries:mogo-map") - -} - -apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString() \ No newline at end of file diff --git a/OCH/taxi/driver/consumer-rules.pro b/OCH/taxi/driver/consumer-rules.pro deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/OCH/taxi/driver/gradle.properties b/OCH/taxi/driver/gradle.properties deleted file mode 100644 index 2d8ec933d9..0000000000 --- a/OCH/taxi/driver/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -GROUP=com.mogo.och -POM_ARTIFACT_ID=och-taxi -VERSION_CODE=1 diff --git a/OCH/taxi/driver/proguard-rules.pro b/OCH/taxi/driver/proguard-rules.pro deleted file mode 100644 index 481bb43481..0000000000 --- a/OCH/taxi/driver/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/AndroidManifest.xml b/OCH/taxi/driver/src/main/AndroidManifest.xml deleted file mode 100644 index ae926fbcd8..0000000000 --- a/OCH/taxi/driver/src/main/AndroidManifest.xml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/assets/map_style.data b/OCH/taxi/driver/src/main/assets/map_style.data deleted file mode 100644 index b200669659..0000000000 Binary files a/OCH/taxi/driver/src/main/assets/map_style.data and /dev/null differ diff --git a/OCH/taxi/driver/src/main/assets/map_style_extra.data b/OCH/taxi/driver/src/main/assets/map_style_extra.data deleted file mode 100644 index 7aa8fa7b45..0000000000 Binary files a/OCH/taxi/driver/src/main/assets/map_style_extra.data and /dev/null differ diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt deleted file mode 100644 index 6edd49e86e..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/TaxiDriverProvider.kt +++ /dev/null @@ -1,46 +0,0 @@ -package com.mogo.och.taxi - -import android.content.Context -import androidx.fragment.app.Fragment -import com.alibaba.android.arouter.facade.annotation.Route -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.och.common.module.constant.OchCommonConst -import com.mogo.och.common.module.biz.provider.CommonService -import com.mogo.och.common.module.biz.provider.CommonServiceImpl -import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutopilotAnalytics -import com.mogo.och.taxi.ui.TaxiFragment -import com.mogo.och.taxi.utils.TaxiAnalyticsManager - -/** - * @author congtaowang - * @since 2021/1/15 - * - * - * 网约车-出租车 - */ -@Route(path = OchCommonConst.TAXI_DRIVER) -class TaxiDriverProvider : CommonServiceImpl() { - - private val tag = TaxiDriverProvider::class.java.simpleName - private var ochTaxiFragment: TaxiFragment? = null - - override fun init(context: Context) { - d(SceneConstant.M_TAXI + tag, "init") - - } - - override fun getFragment(): Fragment { - if (ochTaxiFragment == null) { - ochTaxiFragment = TaxiFragment() - } - OchAutopilotAnalytics.ochEventKey = TaxiAnalyticsManager - return ochTaxiFragment!! - } - - override fun resetFragment() { - super.resetFragment() - OchAutopilotAnalytics.ochEventKey = null - ochTaxiFragment = null - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java deleted file mode 100644 index d82de2425e..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.och.taxi.constant.TaxiConst; - -import java.util.UUID; - -/** - * Created on 2021/9/16 - * - * 上传车机心跳信息请求数据 - */ -public class CarHeartbeatReqBean { - public String sn; - public double lon; //经度 - public double lat; //纬度 - public String msgId; //心跳信息唯一标识 - public int interval; //上报间隔,单位秒,非必传,默认60秒 - - public CarHeartbeatReqBean(String sn, double lon, double lat) { - this.sn = sn; - this.lon = lon; - this.lat = lat; - this.msgId = UUID.randomUUID().toString(); - this.interval = (int) (TaxiConst.LOOP_PERIOD_60S / 1000); - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/DriverServiceDataRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/DriverServiceDataRespBean.java deleted file mode 100644 index 15d47effd0..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/DriverServiceDataRespBean.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -/** - * Created on 2021/9/17 - * - * 司机运营数据返回数据结构 - */ -public class DriverServiceDataRespBean extends BaseData { - public Result data; - - public static class Result { - public long timeDuration; //当日在线时长,单位秒 - public long orderNum; //当日完成订单数 - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/DriverStatusUpdateReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/DriverStatusUpdateReqBean.java deleted file mode 100644 index cb018309d7..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/DriverStatusUpdateReqBean.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created by pangfan on 2021/8/19 - * - * 状态更新请求数据结构 - */ -public class DriverStatusUpdateReqBean { - public String sn; - - public DriverStatusUpdateReqBean(String sn) { - this.sn = sn; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderCancelReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderCancelReqBean.java deleted file mode 100644 index 23187c3e81..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderCancelReqBean.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created by pangfan on 2021/8/19 - * - * 司机取消订单请求的数据结构 - */ -public class OrderCancelReqBean { - public String sn; - public String orderNo; //订单号(必须) - public int cancelType; //取消类型(必须) - public String cancelReason; //取消原因(必须) - - public OrderCancelReqBean(String sn, String orderNo, int cancelType, String cancelReason) { - this.sn = sn; - this.orderNo = orderNo; - this.cancelType = cancelType; - this.cancelReason = cancelReason; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabReqBean.java deleted file mode 100644 index da925b8359..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabReqBean.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created on 2021/9/7 - * - * (预约单)抢单动作的请求数据结构 - */ -public class OrderGrabReqBean { - public String sn; - public String orderNo; - - public OrderGrabReqBean(String sn, String orderNo) { - this.sn = sn; - this.orderNo = orderNo; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabRespBean.java deleted file mode 100644 index 60cc8b4b2a..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabRespBean.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -/** - * Created on 2021/9/7 - * - * (预约单)抢单动作的返回数据结构 - */ -public class OrderGrabRespBean extends BaseData { - public String data; // 暂不使用 返回的orderNo,不再是orderId -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabStatusQueryRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabStatusQueryRespBean.java deleted file mode 100644 index 3fe8d877af..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderGrabStatusQueryRespBean.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -/** - * Created on 2021/9/7 - * - * (预约单)查询抢单结果的返回数据结构 - */ -public class OrderGrabStatusQueryRespBean extends BaseData { - public Result data; - - public static class Result { - public int grabStatus; //0:抢单中; 1:抢单结束,匹配; 2:抢单结束,匹配到其他司机;3:订单已取消;4:非法,不是选择的自己 - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderQueryReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderQueryReqBean.java deleted file mode 100644 index 207668db4f..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderQueryReqBean.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created by pangfan on 2021/8/19 - * - * 查询订单信息请求数据结构 - */ -public class OrderQueryReqBean { - - public String sn; - public String orderNo; - - public OrderQueryReqBean(String sn, String orderNo) { - this.sn = sn; - this.orderNo = orderNo; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderQueryRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderQueryRespBean.java deleted file mode 100644 index eb21df6157..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderQueryRespBean.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.data.taxi.BaseOrderBean; - -import java.util.List; -import java.util.Objects; - -/** - * Created by pangfan on 2021/8/19 - * - * 查询订单返回数据结构 - */ -public class OrderQueryRespBean extends BaseData { - public Result data; - - public static class Result extends BaseOrderBean implements Comparable{ - - // 订单类型 - public int orderType; //1即时单 2预约单 - - // 订单运营类型 (9出租车,10小巴) - public int businessType; - // 起始站点id - public int startSiteId; - // 起始站点名称 - public String startSiteAddr; - // 起始站点坐标 - public List startSitePoint; //wgs坐标,用于自动驾驶 [lon,lat] - public List startSiteGcjPoint; //高德坐标,用于本地计算距离 [lon,lat] - // 终点站点id - public int endSiteId; - // 终点站点名称 - public String endSiteAddr; - // 终点站点坐标 - public List endSitePoint; //wgs坐标,用于自动驾驶 [lon,lat] - public List endSiteGcjPoint; //高德坐标,用于计算距离 [lon,lat] - - // 车牌号 - public String carNumber; - //订单创建时间戳 - public long createTime; - //开始服务时间戳:司机点击'开始服务'后订单状态更新成功的时间 - public long startTime; - //预计用车时间:预约单=下单时的预约用车时间;即时单=派单成功的时间+预估的达到上车点的时间 - public long bookingTime; - //乘客手机号 - public String passengerPhone; - //订单多少乘客 - public String passengerNum; - - //线路轨迹相关字段 - public long lineId = -1; //路线id,默认-1 - public String lineName = ""; //路线名称,默认"" - public String csvFileUrl = ""; //轨迹文件下载的cos url,默认“” - public String csvFileMd5 = ""; //轨迹文件md5,默认“” - public String txtFileUrl = ""; //打点文件下载的cos url,默认“” - public String txtFileMd5 = ""; //轨迹文件md5,默认“” - public long contrailSaveTime; //上传轨迹完成时间戳ms:用于MEC本地手动导入轨迹验证时不会被云端轨迹覆盖 - public String carModel = ""; //[optional] 车型号(如红旗H9),默认“”,暂不加入校验逻辑、用于人工排查问题 - public String csvFileUrlDPQP = ""; //轨迹文件下载的cos url,默认“” - public String csvFileMd5DPQP = ""; //轨迹文件md5,默认“” - public String txtFileUrlDPQP = ""; //打点文件下载的cos url,默认“” - public String txtFileMd5DPQP = ""; //轨迹文件md5,默认“” - public long contrailSaveTimeDPQP; //上传轨迹完成时间戳ms:用于MEC本地手动导入轨迹验证时不会被云端轨迹覆盖 - - // !!!接口中暂无此字段,仅用于本地实现逻辑使用:起始站目的站距离km - public double travelDistance; - - @Override - public String getEndSiteAddr() { - return endSiteAddr; - } - - /** - * @param distance - */ - public void decreaseTravelDistance( double distance ) { - travelDistance = ( ( float ) distance / 1000f ); - if ( travelDistance < 0 ) { - travelDistance = 0; - } - } - - @Override - public int compareTo(Result o) { - boolean isEqual = this.orderNo.equals(o.orderNo); - return isEqual ? 0 : 1; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - Result result = (Result) o; - return Objects.equals(orderNo, result.orderNo) && - orderType == result.orderType && - orderStatus == result.orderStatus && - businessType == result.businessType; - - } - - @Override - public int hashCode() { - return Objects.hash(orderNo, orderType, orderStatus, businessType, startSiteId, - startSiteAddr, startSitePoint, startSiteGcjPoint, endSiteId, endSiteAddr, - endSitePoint, endSiteGcjPoint, carNumber, createTime, startTime, travelDistance); - } - - @Override - public String toString() { - return "Result{" + - "orderNo='" + orderNo + '\'' + - ", orderType=" + orderType + - ", orderStatus=" + orderStatus + - ", businessType=" + businessType + - ", startSiteId=" + startSiteId + - ", startSiteAddr='" + startSiteAddr + '\'' + - ", startSitePoint=" + startSitePoint + - ", startSiteGcjPoint=" + startSiteGcjPoint + - ", endSiteId=" + endSiteId + - ", endSiteAddr='" + endSiteAddr + '\'' + - ", endSitePoint=" + endSitePoint + - ", endSiteGcjPoint=" + endSiteGcjPoint + - ", carNumber='" + carNumber + '\'' + - ", createTime=" + createTime + - ", startTime=" + startTime + - ", bookingTime=" + bookingTime + - ", passengerPhone='" + passengerPhone + '\'' + - ", passengerNum='" + passengerNum + '\'' + - ", lineId=" + lineId + - ", lineName='" + lineName + '\'' + - ", csvFileUrl='" + csvFileUrl + '\'' + - ", csvFileMd5='" + csvFileMd5 + '\'' + - ", txtFileUrl='" + txtFileUrl + '\'' + - ", txtFileMd5='" + txtFileMd5 + '\'' + - ", contrailSaveTime=" + contrailSaveTime + - ", carModel='" + carModel + '\'' + - ", csvFileUrlDPQP='" + csvFileUrlDPQP + '\'' + - ", csvFileMd5DPQP='" + csvFileMd5DPQP + '\'' + - ", txtFileUrlDPQP='" + txtFileUrlDPQP + '\'' + - ", txtFileMd5DPQP='" + txtFileMd5DPQP + '\'' + - ", contrailSaveTimeDPQP=" + contrailSaveTimeDPQP + - ", travelDistance=" + travelDistance + - '}'; - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderRouteUpdateReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderRouteUpdateReqBean.java deleted file mode 100644 index 470869b5a8..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderRouteUpdateReqBean.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.mogo.och.taxi.bean; - -import java.util.List; - -/** - * Created by pangfan on 2021/8/19 - * - * 订单状态更新请求数据结构 - */ -public class OrderRouteUpdateReqBean { - public String orderNo; - public List points; - - public static class Result { - public Double latitude; - public Double longitude; - } - - public OrderRouteUpdateReqBean(String orderNo, List points) { - this.orderNo = orderNo; - this.points = points; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderStatusUpdateReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderStatusUpdateReqBean.java deleted file mode 100644 index f31d0cc70c..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrderStatusUpdateReqBean.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created by pangfan on 2021/8/19 - * - * 订单状态更新请求数据结构 - */ -public class OrderStatusUpdateReqBean { - public String sn; - public String orderNo; - public int orderStatus; - - public OrderStatusUpdateReqBean(String sn, String orderNo, int orderStatus) { - this.sn = sn; - this.orderNo = orderNo; - this.orderStatus = orderStatus; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersInServiceQueryRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersInServiceQueryRespBean.java deleted file mode 100644 index 2311ff0f03..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersInServiceQueryRespBean.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -import java.util.List; - -/** - * Created on 2021/9/8 - * - * 查询全部服务中/待服务订单的返回数据 - */ -public class OrdersInServiceQueryRespBean extends BaseData { - public Result data; - - public static class Result { - public List servicing; //服务中订单 - public List waitService; //待服务订单 - - @Override - public String toString() { - return "Result{" + - "servicing=" + servicing + - ", waitService=" + waitService + - '}'; - } - } - - @Override - public String toString() { - return "OrdersInServiceQueryRespBean{" + - "data=" + data + - ", code=" + code + - ", msg='" + msg + '\'' + - '}'; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersListQueryReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersListQueryReqBean.java deleted file mode 100644 index de74f2f794..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersListQueryReqBean.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created by pangfan on 2021/8/19 - * - * 查询订单列表请求数据结构 - */ -public class OrdersListQueryReqBean { - - public String sn; - public int page; //页码,从0开始 - public int size; //每页条数 - - public OrdersListQueryReqBean(String sn, int page, int size) { - this.sn = sn; - this.page = page; - this.size = size; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersListQueryRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersListQueryRespBean.java deleted file mode 100644 index 7627953a54..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersListQueryRespBean.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -import java.util.List; - -/** - * Created by pangfan on 2021/8/19 - */ -public class OrdersListQueryRespBean extends BaseData { - public Result data; - - public static class Result { - public List orders; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersNewBookingQueryRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersNewBookingQueryRespBean.java deleted file mode 100644 index 69f7e0341c..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/OrdersNewBookingQueryRespBean.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -import java.util.List; - -/** - * Created on 2021/9/8 - * - * 查询新到的预约单的返回数据结构 - */ -public class OrdersNewBookingQueryRespBean extends BaseData { - public Result data; - - public static class Result { - public List orders; // 返回的是order的orderNo集合, 不再是orderId集合 - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/QueryOrderRouteResp.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/QueryOrderRouteResp.java deleted file mode 100644 index 0c21598580..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/QueryOrderRouteResp.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.amap.api.maps.model.LatLng; -import com.mogo.eagle.core.data.BaseData; - -import java.util.List; - -/** - * Created by pangfan on 2021/8/19 - */ -public class QueryOrderRouteResp extends BaseData { - public List data; -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/TaxiDataBaseRespBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/TaxiDataBaseRespBean.java deleted file mode 100644 index 8d6ca6d4df..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/TaxiDataBaseRespBean.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.mogo.och.taxi.bean; - -import com.mogo.eagle.core.data.BaseData; - -/** - * Created by pangfan on 2021/8/19 - * - * 查询订单返回数据结构 - */ -public class TaxiDataBaseRespBean extends BaseData { - public Object data; -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/TaxiOrPassengerReadyReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/TaxiOrPassengerReadyReqBean.java deleted file mode 100644 index 5bb888fcc9..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/TaxiOrPassengerReadyReqBean.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.mogo.och.taxi.bean; - -/** - * Created by pangfan on 2021/8/19 - * 司机端准备好或者乘客已验证上车请求参数 - */ -public class TaxiOrPassengerReadyReqBean { - - public String orderNo; - public String sn; - public TaxiOrPassengerReadyReqBean.Result loc; - - public static class Result { - public Double lat; - public Double lon; - } - - public TaxiOrPassengerReadyReqBean(String sn, String orderNo, TaxiOrPassengerReadyReqBean.Result point) { - this.sn = sn; - this.orderNo = orderNo; - this.loc = point; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/UpdateOrderDisAndTimeReqBean.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/UpdateOrderDisAndTimeReqBean.java deleted file mode 100644 index 29e7e2b0e8..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/bean/UpdateOrderDisAndTimeReqBean.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.mogo.och.taxi.bean; - - -public class UpdateOrderDisAndTimeReqBean { - public String orderNo; //订单号(必须) - public long distance; //剩余里程 单位米(必须) - public long duration; //剩余时间 单位秒(必须) - - public UpdateOrderDisAndTimeReqBean(String orderNo, long distance, long duration) { - this.orderNo = orderNo; - this.distance = distance; - this.duration = duration; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiAutopilotPlanningCallback.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiAutopilotPlanningCallback.java deleted file mode 100644 index 481bb3c470..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiAutopilotPlanningCallback.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.mogo.och.taxi.callback; - - -import com.amap.api.maps.model.LatLng; -import com.mogo.eagle.core.data.map.MogoLocation; - -import java.util.List; - -/** - * @author: wangmingjun - * @date: 2021/11/1 - */ -public interface IOCHTaxiAutopilotPlanningCallback { - void setLineMarker(LatLng startStation,LatLng endStation); - void routeResult(List routeArrivied,List routeArriving, MogoLocation location); -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiADASStatusCallback.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiADASStatusCallback.java deleted file mode 100644 index 9bcd37a905..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiADASStatusCallback.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.mogo.och.taxi.callback; - -/** - * Created on 2021/9/8 - * - * Model->Presenter回调:ADAS相关(自动驾驶状态回调,到达终点等等) - */ -public interface ITaxiADASStatusCallback { - // 自动驾驶触发的已到达目的地:暂未用到 - void onAutopilotArriveEnd(); - - // 自动驾驶可用状态 - void onAutopilotEnable(boolean canStartAuto); - - // 自动驾驶不可用状态 - void onAutopilotDisable(boolean canStartAuto); - - // 自动驾驶运行中 - void onAutopilotRunning(boolean canStartAuto); - - //人机共驾 - void onManMachineCoDriving(boolean canStartAuto); - - void updateAutopilotStatus(boolean canStartAuto); - - //自驾返回失败 - void onStartAdasFailure(); -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiCarOperationalCallback.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiCarOperationalCallback.java deleted file mode 100644 index 40b352acfa..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiCarOperationalCallback.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.mogo.och.taxi.callback; - -import com.mogo.och.taxi.bean.OrderQueryRespBean; - -import java.util.List; - -/** - * Created on 2021/9/8 - * - * Model->Presenter回调:接单车状态变更 登录状态变更 - */ -public interface ITaxiCarOperationalCallback { - - void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum); - - void onOrdersListPageRefresh(List ordersList); -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiControllerStatusCallback.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiControllerStatusCallback.java deleted file mode 100644 index d8e49cca85..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiControllerStatusCallback.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.mogo.och.taxi.callback; - -import com.mogo.eagle.core.data.map.MogoLocation; - -/** - * Created on 2021/9/10 - * - * Model->Presenter回调:状态控制器监听(accOn、adas ui show、voice ui show、push ui show、v2x ui show等等) - */ -public interface ITaxiControllerStatusCallback { - //开始开启自动驾驶 - void startOpenAutopilot(); -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiOrderStatusCallback.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiOrderStatusCallback.java deleted file mode 100644 index 4ced7e787a..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/callback/ITaxiOrderStatusCallback.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.mogo.och.taxi.callback; - -import androidx.annotation.NonNull; - -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; - -import java.util.List; - -/** - * Created on 2021/9/8 - * - * Model->Presenter回调:订单相关(进行中/待服务单变更,当前进行单状态变更,新到预约单,抢单,抢单结果状态等等) - */ -public interface ITaxiOrderStatusCallback { - // 进行中单变更:暂未用到 - void onOrdersInServiceChanged(@NonNull List inServiceList); - // 待服务单变更 - void onOrdersWaitServiceChanged(@NonNull List waitServiceList); - - // 当前进行单状态变更:新到进行中订单、进行中单状态变更 - void onCurrentOrderStatusChanged(OrderQueryRespBean.Result order); - // 当前订单取消完成:用于司机主动取消订单的结果反馈 - void onCurrentOrderCancelDone(); - // 待服务单被取消 - void onOrderCancelDone(String orderNo); - // 当前订单route信息查询反馈 - void onCurrentOrderRouteInfoGot(OrderQueryRouteInfoRespBean.Result routeInfo); - // 当前位置距离上车点的距离(米)、预估时间(秒) - void onCurrentOrderDistToStartChanged(long meters, long timeInSecond); - // 当前位置距离上车点的距离(米)、预估时间(秒) - void onCurrentOrderDistToEndChanged(long meters, long timeInSecond); - - // 新到预约单 - void onNewBookingOrderGot(OrderQueryRespBean.Result order); - - // 执行抢单动作完成:可进入抢单中状态 - void onGrabOrderExecuteDone(); - - // 抢到预约单 - void onGrabOrderSuccess(OrderQueryRespBean.Result order); - - // 未抢到预约单 - void onGrabOrderFailed(OrderQueryRespBean.Result order); - - // 司机已确认开启自动驾驶环境 - void onDriverHasCheckedPilotCondition(); - - /** - * 导航到目的地 - * @param isAmap 是否是高德导航 - * @param isShow 是否显示导航地图(否播报声音) - */ - void onNaviToEnd(boolean isAmap, boolean isShow); -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt deleted file mode 100644 index 458d03895c..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt +++ /dev/null @@ -1,54 +0,0 @@ -package com.mogo.och.taxi.constant - -import com.mogo.commons.debug.DebugConfig - -/** - * Created on 2021/12/6 - */ -class TaxiConst { - companion object { - - // 到达起始点围栏 - const val ARRIVE_AT_START_STATION_DISTANCE = 15 //围栏由20m改为50m 再次改为15m - - // 上报心跳轮询ms - const val LOOP_PERIOD_60S = 60 * 1000L - - // 轮询查询进行中/待服务订单的间隔时间 2秒 - const val LOOP_PERIOD_2S = 2 * 1000L - // 轮询查询新到预约单 1秒 - const val LOOP_PERIOD_1S = 1 * 1000L - const val LOOP_DELAY = 100L - - // 下发给MEC轨迹信息间隔时间 10秒 - const val LOOP_PERIOD_10S = 10 * 1000L - // 尝试下发给MEC轨迹最多10次 - const val LOOP_SEND_TRAJ_TIMES = 10 - - // 订单信息 - const val SP_KEY_OCH_TAXI_ORDER = "SP_KEY_OCH_TAXI_ORDER" - - //起点UUID - const val TAXI_START_MAP_MAKER = "taxi_start_map_maker" - //终点UUID - const val TAXI_END_MAP_MAKER = "taxi_end_map_maker" - - //演示:V 测试:内测 - const val DEMO_USER = "V" - const val TEST_USER = "内测" - - // 实时计算当前剩余里程和时间 间隔 2秒 - const val LOOP_CALCULATEROUTE_2S = 2 * 1000L - - //总里程/平均车速。(bus的平均里程:25km/h,taxi的平均里程:38km/h),单位为:分钟,不足1分钟时,显示1分钟。 - const val TAXI_AVERAGE_SPEED = 38 - - /** - * 订单起终点Marker类型 - */ - const val TYPE_MARKER_TAXI_ORDER = "TYPE_MARKER_TAXI_ORDER" - - const val TIMER_START_AUTOPILOT_INTERVAL = 20 * 1000L - - } -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiOrderCancelReasons.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiOrderCancelReasons.kt deleted file mode 100644 index c55993eddf..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiOrderCancelReasons.kt +++ /dev/null @@ -1,54 +0,0 @@ -package com.mogo.och.taxi.constant - -/** - * 司机端取消订单的原因定义 - * Created on 2021/12/7 - * - * * String int - * 进行中订单: - * 车况异常 0 - * 设备异常 1 - * 电量不足 2 - * 身体不适 3 - * 乘客未到 4 - * 乘客中途下车 5 - * 1099前都可用 - * - * 待服务订单: - * 2000 车辆故障 - * 2001 乘客联系取消 - * 2002 行程冲突 - * 2003 车电量不足 - * 2004 其他 - */ -enum class TaxiOrderCancelReasons(val type: Int, val msg: String) { - CarBroken(1000, "车况异常"), - DeviceBroken(1001, "设备异常"), - BatteryLow(1002, "电量不足"), - DriverIsIll(1003, "身体不适"), - PassengerNotArrive(1004, "乘客未到"), - PassengerStopOver(1005, "乘客中途下车"), - PassengerCancel(1006, "乘客联系安全员取消"), - UnContractPassenger(1007, "联系不上乘客"), - JourneyConflict(1008, "行程冲突"), - StartStationFaraway(1009,"距离过远 无法接单"), - Other( 1010, "其他原因"), - - BookCarBroken(2000, "车辆故障"), - BookPassengerCancel(2001, "乘客联系取消"), - BookJourneyConflict(2002, "行程冲突"), - BookBatteryLow(2003, "车电量不足"), - BookOther(2004, "其他"); - - companion object { - @JvmStatic - fun getType(msg: String): Int { - for (value in values()) { - if (value.msg == msg) { - return value.type - } - } - return 0 - } - } -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiOrderTypeEnum.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiOrderTypeEnum.kt deleted file mode 100644 index 34b09c6cc7..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/constant/TaxiOrderTypeEnum.kt +++ /dev/null @@ -1,11 +0,0 @@ -package com.mogo.och.taxi.constant - -/** - * RoboTaxi订单类型声明 - * - * Created on 2021/12/6 - */ -enum class TaxiOrderTypeEnum(val type: Int) { - Instant(1), // 即时单 - Reserved(2) // 预约单 -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java deleted file mode 100644 index a6b9bbf141..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModel.java +++ /dev/null @@ -1,1737 +0,0 @@ -package com.mogo.och.taxi.model; - -import static com.mogo.eagle.core.data.deva.chain.ChainConstant.CHAIN_CODE_OCH_TAXI_START_AUTOPILOT; -import static com.mogo.eagle.core.data.deva.chain.ChainConstant.CHAIN_SOURCE_ADAS; -import static com.mogo.eagle.core.data.deva.chain.ChainConstant.CHAIN_TYPE_SOCKET_AUTOPILOT; -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import static java.util.Collections.emptyList; - -import android.content.Context; -import android.content.Intent; -import android.net.ConnectivityManager; -import android.text.TextUtils; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -import com.amap.api.maps.model.LatLng; -import com.elegant.network.utils.GsonUtil; -import com.mogo.commons.module.intent.IMogoIntentListener; -import com.mogo.commons.module.intent.IntentManager; -import com.mogo.eagle.core.data.BaseData; -import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; -import com.mogo.eagle.core.data.config.FunctionBuildConfig; -import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; -import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener; -import com.mogo.eagle.core.function.api.autopilot.IMoGoPlanningRottingListener; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager; -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.commons.storage.SharedPrefsMgr; -import com.mogo.eagle.core.utilcode.util.CoordinateUtils; -import com.mogo.eagle.core.utilcode.util.DrivingDirectionUtils; -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.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutopilotAnalytics; -import com.mogo.och.common.module.manager.autopilot.autopilot.bean.ArrivedStation; -import com.mogo.och.common.module.manager.autopilot.autopilot.IOchAutopilotStatusListener; -import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutoPilotManager; -import com.mogo.och.common.module.manager.autopilot.autopilot.OchAutoPilotStatusListenerManager; -import com.mogo.och.common.module.manager.autopilot.location.OchLocationManager; -import com.mogo.och.common.module.manager.autopilot.line.LineManager; -import com.mogo.och.common.module.manager.socket.cloud.OCHSocketMessageManager; -import com.mogo.och.common.module.manager.socket.cloud.action.OperateAction2; -import com.mogo.och.common.module.biz.login.LoginStatusManager; -import com.mogo.och.common.module.network.OchCommonServiceCallback; -import com.mogo.och.common.module.callback.OchAdasStartFailureCallback; -import com.mogo.och.common.module.manager.socket.cloud.AbnormalFactorsLoopManager; -import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager; -import com.mogo.och.common.module.manager.distance.IDistanceListener; -import com.mogo.och.common.module.manager.distance.ITrajectoryListener; -import com.mogo.och.common.module.manager.distance.TrajectoryAndDistanceManager; -import com.mogo.och.common.module.map.AmapNaviToDestinationModel; -import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil; -import com.mogo.och.common.module.utils.OCHThreadPoolManager; -import com.mogo.och.common.module.utils.PinYinUtil; -import com.mogo.och.common.module.utils.ToastUtilsOch; -import com.mogo.och.common.module.voice.VoiceNotice; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.bean.DriverServiceDataRespBean; -import com.mogo.och.taxi.bean.OrderGrabRespBean; -import com.mogo.och.taxi.bean.OrderGrabStatusQueryRespBean; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.bean.OrderRouteUpdateReqBean; -import com.mogo.och.taxi.bean.OrdersInServiceQueryRespBean; -import com.mogo.och.taxi.bean.OrdersListQueryRespBean; -import com.mogo.och.taxi.bean.OrdersNewBookingQueryRespBean; -import com.mogo.och.taxi.bean.QueryOrderRouteResp; -import com.mogo.och.taxi.bean.TaxiDataBaseRespBean; -import com.mogo.och.taxi.bean.TaxiOrPassengerReadyReqBean; -import com.mogo.och.taxi.callback.IOCHTaxiAutopilotPlanningCallback; -import com.mogo.och.taxi.callback.ITaxiADASStatusCallback; -import com.mogo.och.taxi.callback.ITaxiCarOperationalCallback; -import com.mogo.och.taxi.callback.ITaxiControllerStatusCallback; -import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; -import com.mogo.och.taxi.constant.TaxiConst; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.constant.TaxiOrderTypeEnum; -import com.mogo.och.taxi.network.TaxiServiceManager; -import com.mogo.och.taxi.utils.OrderUtil; -import com.mogo.och.taxi.utils.TaxiTrajectoryManager; -import com.zhjt.service.chain.ChainLog; - -import org.jetbrains.annotations.NotNull; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import io.reactivex.exceptions.UndeliverableException; -import io.reactivex.plugins.RxJavaPlugins; -import mogo.telematics.pad.MessagePad; -import mogo_msg.MogoReportMsg; - -/** - * Created by pangfan on 2021/8/19 - *

- * 网约车 - 出租车业务逻辑处理 - */ -public class TaxiModel { - - private static final String TAG = TaxiModel.class.getSimpleName(); - - private static final class SingletonHolder { - private static final TaxiModel INSTANCE = new TaxiModel(); - } - - public static TaxiModel getInstance() { - return SingletonHolder.INSTANCE; - } - - private Context mContext; - private volatile String mPrevOrderNo = ""; //前一次的新到单id(当次和前一次orderId相同时,本次不再弹出) - private volatile OrderQueryRespBean.Result mNewBookingOrder; //新到待抢预约单 - private volatile OrderQueryRespBean.Result mCurrentOCHOrder; //当前订单 - private List mInServiceList = Collections.synchronizedList(emptyList()); //进行中订单 - private volatile List mWaitServiceList = emptyList(); //待服务订单 - - private ITaxiADASStatusCallback mADASStatusCallback; //Model->Presenter:自动驾驶状态相关 - private ITaxiCarOperationalCallback mCarOperationalCallback; //Model->Presenter:登录状态和司机今日接单状态 - private ITaxiControllerStatusCallback mControllerStatusCallback; //Model->Presenter:VR mode等 - private ITaxiOrderStatusCallback mOrderStatusCallback; //Model->Presenter:订单变更 - private IOCHTaxiAutopilotPlanningCallback mAutopilotPlanningCallback; - - private volatile boolean isRestartAutopilot = false; - - private final List mRoutePoints = new ArrayList<>(); - private final int mPreRouteIndex = 0; - - - private TaxiModel() { - } - - public void setMoGoAutopilotPlanningListener(IOCHTaxiAutopilotPlanningCallback - moGoAutopilotPlanningCallback) { - this.mAutopilotPlanningCallback = moGoAutopilotPlanningCallback; - } - - public void setADASStatusCallback(ITaxiADASStatusCallback callback) { - this.mADASStatusCallback = callback; - } - - public void setCarStatusCallback(ITaxiCarOperationalCallback callback) { - this.mCarOperationalCallback = callback; - } - - public void setControllerStatusCallback(ITaxiControllerStatusCallback callback) { - this.mControllerStatusCallback = callback; - } - - public void setOrderStatusCallback(ITaxiOrderStatusCallback callback) { - this.mOrderStatusCallback = callback; - } - - public void init(Context context) { - mContext = context.getApplicationContext(); - initListeners(); - - // TODO: 2021/8/27 因需要通过此回调的location进行坐标上传,暂改为全程监听,退出后再反注册, - // 待后续整体调整location获取来源 -// if (DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE) { -// apis.getLocationInfoApi().start(); -// } - - //2022.1.28 - // 调用Disposable.dispose() 时候会出现InterruptedException 导致出现崩溃 - // The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the excTeption has nowhere to go to begin with - RxJavaPlugins.setErrorHandler(e -> { - if (e instanceof UndeliverableException) { - e = e.getCause(); - CallerLogger.d(M_TAXI + TAG, "UndeliverableException"); - } - if ((e instanceof IOException)) {// - // fine, irrelevant network problem or API that throws on cancellation - CallerLogger.d(M_TAXI + TAG, "IOException"); - return; - } - if (e instanceof InterruptedException) { - // fine, some blocking code was interrupted by a dispose call - CallerLogger.d(M_TAXI + TAG, "InterruptedException"); - return; - } - if ((e instanceof NullPointerException) || (e instanceof IllegalArgumentException)) { - // that's likely a bug in the application - CallerLogger.d(M_TAXI + TAG, "NullPointerException or IllegalArgumentException"); - Thread.currentThread().getUncaughtExceptionHandler().uncaughtException(Thread.currentThread(), e); - return; - } - if (e instanceof IllegalStateException) { - // that's a bug in RxJava or in a custom operator - CallerLogger.d(M_TAXI + TAG, "IllegalStateException"); - Thread.currentThread().getUncaughtExceptionHandler().uncaughtException(Thread.currentThread(), e); - return; - } - CallerLogger.d(M_TAXI + TAG, "Undeliverable exception"); - }); - } - - public void release() { - startOrStopOrderLoop(false); - startOrStopCalculateRouteInfo(false); - releaseListeners(); - } - - private void initListeners() { - // 2021.11.1重构自动驾驶 实现接口 IMoGoAutopilotStatusListener 注册监听 替换IMogoAdasOCHCallback接口 - OchAutoPilotStatusListenerManager.INSTANCE.addListener(TAG, mGoAutopilotStatusListener); - IntentManager.getInstance().registerIntentListener(ConnectivityManager.CONNECTIVITY_ACTION, mNetWorkIntentListener); - - //定位监听, 传false是高德坐标系 - OchLocationManager.addGCJ02Listener(TAG,5, mMapLocationListener); - - //2021.11.1 自动驾驶路线规划接口 - CallerPlanningRottingListenerManager.INSTANCE.addListener(TAG, moGoAutopilotPlanningListener); - - //开启自驾后 异常信息返回 - OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(mAdasStartFailureListener); - - OCHSocketMessageManager.INSTANCE.registerSocketMessageListener( - OCHSocketMessageManager.msgMonitorType, - new OperateAction2()); - - AbnormalFactorsLoopManager.INSTANCE.startLoopAbnormalFactors(mContext); - - TrajectoryAndDistanceManager.INSTANCE.addDistanceListener(TAG,distanceListener); - TrajectoryAndDistanceManager.INSTANCE.addTrajectoryListener(TAG,trajectoryListener); - - } - - private void releaseListeners() { - - // 注销地图监听 - OchLocationManager.removeGCJ02Listener(TAG); - - OCHSocketMessageManager.INSTANCE.releaseSocketMessageListener(OCHSocketMessageManager.msgMonitorType); - - OchAutoPilotStatusListenerManager.INSTANCE.removeListener(mGoAutopilotStatusListener); - CallerPlanningRottingListenerManager.INSTANCE.removeListener(moGoAutopilotPlanningListener); - OCHAdasAbilityManager.getInstance().setAdasStartFailureCallback(null); - - AbnormalFactorsLoopManager.INSTANCE.stopLoopAbnormalFactors(); - } - - public void startOrStopOrderLoop(boolean start) { - CallerLogger.d(M_TAXI + TAG, "startOrStopOrderLoop() " + start); - if (start) { - TaxiModelLoopManager.getInstance().startInAndWaitOrdersLoop(); - TaxiModelLoopManager.getInstance().startNewBookingOrderLoop(); - TaxiModelLoopManager.getInstance().startHeartbeatLoop(); - } else { - TaxiModelLoopManager.getInstance().stopInAndWaitOrdersLoop(); - TaxiModelLoopManager.getInstance().stopNewBookingOrderLoop(); - TaxiModelLoopManager.getInstance().stopHeartbeatLoop(); - } - } - - //更新接单状态 - public void updateCarStatus() { - if (!LoginStatusManager.isLogin()) { - LoginStatusManager.queryLoginStatusByNet(false); - return; - } - boolean currentOrderStatus = LoginStatusManager.isOpenOrderType(); - - TaxiServiceManager.changeOrderServing(mContext, currentOrderStatus, - new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData data) { - if (null != data && 0 == data.code) { - if(currentOrderStatus){ - // 上个状态是接单 暂停成功 - VoiceNotice.showNotice("暂停接单啦!"); - }else { - // 上个状态是暂停接单 暂停成功 - VoiceNotice.showNotice("开始接单啦!"); - } - LoginStatusManager.queryLoginStatusByNet(false); - } - } - - @Override - public void onError() { - if (!NetworkUtils.isConnected(mContext)) { - ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); - } else { - ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); - } - } - - @Override - public void onFail(int code, String msg) { - ToastUtilsOch.showWithCodeMessage(code, msg); - } - }); - - } - - /** - * 查询订单状态:进行中/待服务(轮询防止因crash导致应用重启、断网没收到推送等) - *

- * 注:只有在本地缓存mCurrentOCHOrder为null时(已完成or已取消有明确结果)或id相同且status不同时, - * 才更新最新进行中单到本地 - */ - public void queryInAndWaitOrders() { - TaxiServiceManager.queryOrdersInAndWaitService(mContext, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrdersInServiceQueryRespBean data) { - if (data == null || data.data == null) { - return; - } - - //1. 处理进行中订单 - mInServiceList = data.data.servicing; - if (data.data.servicing != null && !data.data.servicing.isEmpty()) { - // 1.1. 当存在进行中单时:对本地currentOrder进行更新 - if (mCurrentOCHOrder == null) { - //1.1.1. 当本地无currentOrder(已经完成or取消),则更新currentOrder,并通知ui更新 - updateNativeCurrentOrder(data.data.servicing.get(0)); - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderStatusChanged(mCurrentOCHOrder); - } - } else { - //1.1.2. 当本地有currentOrder: - //orderId不一致时:通过currentOrder.orderId查询订单状态,并通知ui更新 - //orderId一致且orderStatus不一致时:则更新currentOrder,并通知ui更新 - CallerLogger.d(M_TAXI + TAG, "AutopilotControl-mCurrentOCHOrder = " + mCurrentOCHOrder.orderStatus - + ", orderStatus = " + data.data.servicing.get(0).orderStatus); - if (!mCurrentOCHOrder.orderNo.equals(data.data.servicing.get(0).orderNo)) { - queryCurOrderStatus(); - } else if (mCurrentOCHOrder.orderStatus != data.data.servicing.get(0).orderStatus) { - updateNativeCurrentOrder(data.data.servicing.get(0)); - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderStatusChanged(mCurrentOCHOrder); - } - } - } - } else { - // 1.2. 当无进行中订单时:如果本地也无则跳过;如果本地仍存在currentOrder,查询此单(完成or取消)并通知ui更新 - if (mCurrentOCHOrder != null) { - queryCurOrderStatus(); - } - } - - //2. 处理待服务订单列表 - if (data.data.waitService != null && !data.data.waitService.isEmpty()) { - //2.1. 当存在待服务订单列表:跟本地待服务列表比较 - if (mWaitServiceList.isEmpty() - || (mWaitServiceList.size() != data.data.waitService.size()) - || !OrderUtil.haveSameOrders(mWaitServiceList, data.data.waitService)) { - // 2.1.1. 当本地无待服务单,或数量和内容不一致,更新本地待服务列表,并通知ui更新 - mWaitServiceList = data.data.waitService; - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onOrdersWaitServiceChanged(mWaitServiceList); - } - } - } else { - //2.2. 当无待服务单时:如果本地也无则跳过;如果本地有,则清除并通知ui更新 - if (!mWaitServiceList.isEmpty()) { - mWaitServiceList.clear(); - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onOrdersWaitServiceChanged(mWaitServiceList); - } - } - } - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - //仅用于轮询时查到本地有mCurrentOCHOrder但请求结果无进行中单or orderId不一致是复查本地currentOrder - private void queryCurOrderStatus() { - if (mCurrentOCHOrder == null) { - return; - } - final String orderNo = mCurrentOCHOrder.orderNo; - TaxiServiceManager.queryOrderById(mContext, orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrderQueryRespBean data) { - if (data != null && data.data != null - && mCurrentOCHOrder != null && mCurrentOCHOrder.orderNo.equals(data.data.orderNo)) { - if (data.data.orderStatus == TaxiOrderStatusEnum.Cancel.getCode() - || data.data.orderStatus == TaxiOrderStatusEnum.JourneyCompleted.getCode() - || data.data.orderStatus == TaxiOrderStatusEnum.None.getCode()) { - clearCurrentOCHOrder(); - cancelAutopilot(); - } else { - updateNativeCurrentOrder(data.data); - } - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderStatusChanged(data.data); - } - } - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - // 取消当前订单 - public void cancelCurrentOrder(int reasonType, String reason) { - if (mCurrentOCHOrder == null) { - mOrderStatusCallback.onCurrentOrderCancelDone(); - return; - } - final String orderNo = mCurrentOCHOrder.orderNo; - TaxiServiceManager.cancelOrder(mContext, orderNo, reasonType, reason, - new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData data) { - if (null != data && 0 == data.code - && mCurrentOCHOrder != null && mCurrentOCHOrder.orderNo.equals(orderNo)) { - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderCancelDone(); - } - LineManager.setLineInfo(null); - clearCurrentOCHOrder(); - cancelAutopilot(); - } - } - - @Override - public void onError() { - if (!NetworkUtils.isConnected(mContext)) { - ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); - } else { - ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); - } - } - - @Override - public void onFail(int code, String msg) { - ToastUtilsOch.showWithCodeMessage(code, msg); - } - }); - } - - // 取消待服务中订单 - public void cancelOrderById(final String orderNo, int reasonType, String reason) { - TaxiServiceManager.cancelOrder(mContext, orderNo, reasonType, reason, - new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData data) { - if (null != data && 0 == data.code) { - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onOrderCancelDone(orderNo); - } - } - } - - @Override - public void onError() { - if (!NetworkUtils.isConnected(mContext)) { - ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); - } else { - ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); - } - } - - @Override - public void onFail(int code, String msg) { - ToastUtilsOch.showWithCodeMessage(code, msg); - } - }); - } - - // 查询当前订单route信息:预估时间、里程等 - public void queryCurOrderRouteInfo() { - if (mCurrentOCHOrder == null) { - return; - } - final String orderNo = mCurrentOCHOrder.orderNo; - TaxiServiceManager.queryOrderRouteInfo(mContext, orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrderQueryRouteInfoRespBean data) { - if (null != data && 0 == data.code - && mCurrentOCHOrder != null && mCurrentOCHOrder.orderNo.equals(orderNo)) { - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderRouteInfoGot(data.data); - } - } - } - - @Override - public void onFail(int code, String msg) { -// ToastUtils.showShort(code + "," + msg); - } - }); - } - - // 获取全部订单列表 - public void queryOrdersList(int page, int size) { - TaxiServiceManager.queryOrdersList(mContext, page, size, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrdersListQueryRespBean data) { - if (null != data && 0 == data.code) { - if (mCarOperationalCallback != null) { - mCarOperationalCallback.onOrdersListPageRefresh(data.data.orders); - } - } - } - - @Override - public void onError() { - if (!NetworkUtils.isConnected(mContext)) { - ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); - } else { - ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); - } - } - - @Override - public void onFail(int code, String msg) { - ToastUtilsOch.showWithCodeMessage(code, msg); - } - }); - } - - /** - * 查询新到预约单 - *

- * 注:只有在本地缓存mNewBookingOrder为null时(执行完抢单or司机关闭改单),才更新新到待抢单 - */ - public void queryNewBookingOrder() { - TaxiServiceManager.queryNewBookingOrder(mContext, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrdersNewBookingQueryRespBean data) { - if (data != null && data.code == 0 - && data.data != null && data.data.orders != null - && data.data.orders.size() > 0) { - // 本地无新到单,且本次新到单id与上次收到的新单id不同时:显示本次新到单 - if (mNewBookingOrder == null) { - for (String orderNo : data.data.orders) { - if (!mPrevOrderNo.equals(orderNo)) { - queryNewBookingContent(orderNo); - break; - } - } - } - } - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - // 仅限于获取到新待抢单且需要展示时查询该单信息:(queryOrderById接口可以查询属于该车的单、未派的单) - private void queryNewBookingContent(final String orderNo) { - TaxiServiceManager.queryOrderById(mContext, orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrderQueryRespBean data) { - if (data != null && data.code == 0 - && data.data != null && data.data.orderNo.equals(orderNo) - && data.data.orderType == TaxiOrderTypeEnum.Reserved.getType()) { - mNewBookingOrder = data.data; - mPrevOrderNo = data.data.orderNo; - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onNewBookingOrderGot(mNewBookingOrder); - } - } - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - // 执行抢单动作 - public void grabOrder() { - if (mNewBookingOrder == null) { - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onGrabOrderFailed(null); - } - return; - } - final String orderNo = mNewBookingOrder.orderNo; - TaxiServiceManager.grabOrder(mContext, orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrderGrabRespBean data) { - if (data != null && data.code == 0 - && mNewBookingOrder != null && mNewBookingOrder.orderNo.equals(orderNo)) { - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onGrabOrderExecuteDone(); - TaxiModelLoopManager.getInstance().startGrabResultLoop(); - } - } - } - - @Override - public void onError() { - if (!NetworkUtils.isConnected(mContext)) { - ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); - } else { - ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); - } - } - - @Override - public void onFail(int code, String msg) { - ToastUtilsOch.showWithCodeMessage(code, msg); - } - }); - } - - // 查询抢单结果 - public void queryOrderGrabStatus() { - if (mNewBookingOrder == null) { - TaxiModelLoopManager.getInstance().stopGrabResultLoop(); - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onGrabOrderFailed(null); - } - return; - } - final String orderNo = mNewBookingOrder.orderNo; - TaxiServiceManager.queryOrderGrabStatus(mContext, orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(OrderGrabStatusQueryRespBean data) { - //TaxiModelLoopManager.getInstance().stopGrabResultLoop(); - if (data != null && data.code == 0 - && mNewBookingOrder != null && mNewBookingOrder.orderNo.equals(orderNo)) { - if (data.data.grabStatus == 0) { - return; //抢单中,不处理继续轮询结果 - } - if (mOrderStatusCallback != null) { - if (data.data.grabStatus == 1) { - mOrderStatusCallback.onGrabOrderSuccess(mNewBookingOrder); - } else if (data.data.grabStatus == 2) { - mOrderStatusCallback.onGrabOrderFailed(mNewBookingOrder); - } else { - // TODO: 2021/9/22 需根据具体内容给予提示,如订单已取消 - mOrderStatusCallback.onGrabOrderFailed(mNewBookingOrder); - } - } - } else { - if (mOrderStatusCallback != null) { - // TODO: 2021/9/22 如果用户已取消单,抢单失败时暂返回null,UI当前直接恢复原页面内容,后续优化 - mOrderStatusCallback.onGrabOrderFailed(null); - } - } - TaxiModelLoopManager.getInstance().stopGrabResultLoop(); - cancelNewBookingOrder(); - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - // 车机端上传心跳数据(只在出车状态时上传) - public void runCarHeartbeat() { - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - TaxiServiceManager.runCarHeartbeat(mContext, - gcj02Location.getLongitude(), gcj02Location.getLatitude(), - new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData data) { - - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - // 查询司机服务数据 - public void queryDriverServiceData() { - TaxiServiceManager.queryDriverServiceData(mContext, - new OchCommonServiceCallback() { - @Override - public void onSuccess(DriverServiceDataRespBean data) { - if (data != null && data.code == 0 - && data.data != null) { - if (mCarOperationalCallback != null) { - mCarOperationalCallback.onServiceDataUpdate( - data.data.timeDuration, data.data.orderNum); - } - } - } - - @Override - public void onError() { - if (!NetworkUtils.isConnected(mContext)) { - ToastUtils.showShort(mContext.getString(R.string.network_error_tip)); - } else { - ToastUtils.showShort(mContext.getString(R.string.request_error_tip)); - } - } - - @Override - public void onFail(int code, String msg) { - ToastUtilsOch.showWithCodeMessage(code, msg); - } - }); - } - - /** - * 司机端确认可开始自动驾驶 - */ - public void confirmAutopilotConditionByDriver() { - if (mCurrentOCHOrder == null) return; - TaxiOrPassengerReadyReqBean.Result result = new TaxiOrPassengerReadyReqBean.Result(); - TaxiServiceManager.confirmAutopilotConditionByDriver(mContext, - mCurrentOCHOrder.orderNo, - result, - new OchCommonServiceCallback() { - - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - // updateAutopilotStatus(data.code == 0); - updateAutopilotStatus(); - } - - @Override - public void onFail(int code, String msg) { - /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - // updateAutopilotStatus(false); - updateAutopilotStatus(); - } - }); - } - - public void updateAutopilotStatus() { - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onDriverHasCheckedPilotCondition(); - } - } - - public void queryAutopilotStatus(boolean isStart) { - if (isStart) { - queryAutopilotStatus(); - } - } - - public void queryAutopilotStatus() { - if (mCurrentOCHOrder == null) return; - TaxiServiceManager.queryAutopilotStatus(mContext, mCurrentOCHOrder.orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - // updateAutopilotStatus(data.data.equals(true)); - updateAutopilotStatus(); - } - - @Override - public void onFail(int code, String msg) { - /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - // updateAutopilotStatus(false); - updateAutopilotStatus(); - } - }); - } - - // 取消当前新到预约单 - public void cancelNewBookingOrder() { - mNewBookingOrder = null; - } - - // 获取当前订单 - public OrderQueryRespBean.Result getCurrentOCHOrder() { - return mCurrentOCHOrder; - } - - // 获取当前订单状态 - public TaxiOrderStatusEnum getCurOrderStatus() { - OrderQueryRespBean.Result order = TaxiModel.getInstance().getCurrentOCHOrder(); - if (order == null) { - return TaxiOrderStatusEnum.None; - } - return TaxiOrderStatusEnum.valueOf(order.orderStatus); - } - - //更新本地currentOrder信息,并保存订单到本地避免车机重启丢失数据 - private void updateNativeCurrentOrder(OrderQueryRespBean.Result data) { - if (data == null) { - return; - } - mCurrentOCHOrder = data; - TaxiTrajectoryManager.getInstance().syncTrajectoryInfo(); - SharedPrefsMgr.getInstance().putString(TaxiConst.SP_KEY_OCH_TAXI_ORDER, - GsonUtil.jsonFromObject(data)); - - if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { - if (FunctionBuildConfig.isDemoMode) { - // 当美化模式(演示模式)开启时: 订单对应自动驾驶开启后,置true - FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true; - CallerAutoPilotControlManager.INSTANCE.setIgnoreConditionDraw(true); - CallerAutoPilotControlManager.INSTANCE.setIPCDemoMode(true); - CallerLogger.d(M_TAXI + TAG, "美化模式-ignore:置为true(更新本地order信息)"); - } - - updateAutopilotControlParameters(); - } - if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.ArriveAtEnd.getCode()) { - if (FunctionBuildConfig.isDemoMode) { - CallerLogger.d(M_TAXI + TAG, "setIPCDemoMode:false"); - CallerAutoPilotControlManager.INSTANCE.setIPCDemoMode(false); - if (mADASStatusCallback != null) { - mADASStatusCallback.updateAutopilotStatus(CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - } - - clearAutopilotControlParameters(); - } - } - - /** - * 将业务订单信息保存,鹰眼可取用 - */ - private void updateAutopilotControlParameters() { - - AutopilotControlParameters parameters = initAutopilotControlParameters(); - if (null == parameters) { - CallerLogger.e(M_TAXI + TAG, "AutopilotControlParameters is empty."); - return; - } - CallerLogger.d(M_TAXI + TAG, "AutopilotControlParameters is update."); - CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(parameters); - } - - private void clearAutopilotControlParameters() { - CallerLogger.d(M_TAXI + TAG, "AutopilotControlParameters is clear."); - CallerAutoPilotStatusListenerManager.INSTANCE.updateAutopilotControlParameters(null); - } - - //清除订单信息 - public void clearCurrentOCHOrder() { - startOrStopCalculateRouteInfo(false); - mCurrentOCHOrder = null; - clearAutopilotControlParameters(); - TaxiTrajectoryManager.getInstance().syncTrajectoryInfo(); - SharedPrefsMgr.getInstance().remove(TaxiConst.SP_KEY_OCH_TAXI_ORDER); - isRestartAutopilot = false; - if (FunctionBuildConfig.isDemoMode) { - // 当美化模式(演示模式)开启时: 取消或订单已完成时,置false - FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = false; - CallerAutoPilotControlManager.INSTANCE.setIgnoreConditionDraw(false); - CallerAutoPilotControlManager.INSTANCE.setIPCDemoMode(false); - CallerLogger.d(M_TAXI + TAG, "美化模式-ignore:置为false(已完成or清除当前订单)"); - } - } - - //检测当前订单 - public boolean checkCurrentOCHOrder() { - return mCurrentOCHOrder != null - && mCurrentOCHOrder.startSiteGcjPoint != null - && mCurrentOCHOrder.endSiteGcjPoint != null; - } - - /** - * 以当前订单为基础,开启自动驾驶 - **/ - @ChainLog( - linkChainLog = CHAIN_TYPE_SOCKET_AUTOPILOT, - linkCode = CHAIN_SOURCE_ADAS, - nodeAliasCode = CHAIN_CODE_OCH_TAXI_START_AUTOPILOT, - paramIndexes = {-1} - ) - public void startAutoPilot() { - - /** - * 存在Session - */ - if (!OchAutoPilotManager.canStartAutopilotBySessionId()) { - return; - } - - OchAutopilotAnalytics.INSTANCE.triggerClickStartAutopilotTime(System.currentTimeMillis()); - - - if (!checkCurrentOCHOrder()) { - CallerLogger.e(M_TAXI + TAG, "no order or order is empty."); - ToastUtils.showShort("当前订单不存在或异常!"); - return; - } - - //1、判断轨迹url是否可用 - if (FunctionBuildConfig.isPassStartAutopilotCommand - && TextUtils.isEmpty(mCurrentOCHOrder.csvFileUrl) - && TextUtils.isEmpty(mCurrentOCHOrder.csvFileUrlDPQP) - ) { - ToastUtils.showLong("无发布轨迹, 请发布后重试"); - CallerLogger.e(M_TAXI + TAG, "isPassStartAutopilotCommand = " + - FunctionBuildConfig.isPassStartAutopilotCommand - + "busRoutesResult.csvFileUrl = " + mCurrentOCHOrder.csvFileUrl - + "busRoutesResult.csvFileUrlDPQP = " + mCurrentOCHOrder.csvFileUrlDPQP); - return; - } - //2、6个条件判断 - if (!CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(true, 0)) { - return; - } - - //3、距离轨迹15m计算 - String resion = OchAutoPilotManager.canStartAutoPilotByDistance(mCurrentOCHOrder.lineId); - if(TrajectoryAndDistanceManager.errorTypeNoneLineId.equals(resion)){ - setStation(); - resion = OchAutoPilotManager.canStartAutoPilotByDistance(mCurrentOCHOrder.lineId); - } - if(!StringUtils.isEmpty(resion)){ - ToastUtils.showShort(resion); - VoiceNotice.showNotice(resion); - return; - } - - CallerLogger.e(M_TAXI + TAG, "isPassStartAutopilotCommand = " + - FunctionBuildConfig.isPassStartAutopilotCommand); - //4、ssm 给出数据 - if (!OchAutoPilotManager.canStartAutoPilotSSM()) { - OchAutopilotAnalytics.INSTANCE.triggerUnableStartAPReasonEvent( - mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, - String.valueOf(mCurrentOCHOrder.lineId),mCurrentOCHOrder.orderNo, - OCHAdasAbilityManager.getInstance().getAutopilotUnAbilityReason()); - return; - } - if(CallerAutoPilotStatusListenerManager.INSTANCE.getState() - == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING){ - ToastUtils.showShort("自驾中、请勿重复启动"); - return; - } - - //点击开始自动驾驶按钮订单状态去流转, 不再与自动驾驶是否启动成功挂钩 - if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.UserArriveAtStart.getCode()) { - startServicePilotDone(); - isRestartAutopilot = false; - } else { - isRestartAutopilot = true; - } - - AutopilotControlParameters parameters = initAutopilotControlParameters(); - - if (null == parameters) { - CallerLogger.e(M_TAXI + TAG, "AutopilotControlParameters is empty."); - return; - } - - long sessionId = OchAutoPilotManager.startAutoPilot(parameters); - - CallerLogger.d(M_TAXI + TAG, "start autopilot with parameter: %s", - GsonUtil.jsonFromObject(parameters) - + " ,startSiteName=" + mCurrentOCHOrder.startSiteAddr - + " ,endSiteName=" + mCurrentOCHOrder.endSiteAddr - + "isRestartAutopilot = " + isRestartAutopilot); - - OchAutopilotAnalytics.INSTANCE.triggerStartAutopilotEvent(isRestartAutopilot, false, - mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, - (int) mCurrentOCHOrder.lineId, - mCurrentOCHOrder.orderNo,System.currentTimeMillis(),0); - OchAutopilotAnalytics.INSTANCE.triggerUpdateStartAutoPilotSessionId(sessionId); - - if (mControllerStatusCallback != null) { - mControllerStatusCallback.startOpenAutopilot(); - } - - // TODO: 2021/8/20 无工控机环境, 手动调起自动驾驶开启返回结果,有工控机环境要删除 -// OCHTaxiUiController.getInstance().onAutoPilotStatusChanged( IMogoAdasOCHCallback.STATUS_AUTOPILOT_RUNNING, "开启自动驾驶" ); - } - - private AutopilotControlParameters initAutopilotControlParameters() { - - if (!checkCurrentOCHOrder()) { - CallerLogger.e(M_TAXI + TAG, "no order or order is empty."); - return null; - } - - AutopilotControlParameters parameters = new AutopilotControlParameters(); - - double startWgsLon = mCurrentOCHOrder.startSitePoint.get(0); - double startWgsLat = mCurrentOCHOrder.startSitePoint.get(1); - double endWgsLon = mCurrentOCHOrder.endSitePoint.get(0); - double endWgsLat = mCurrentOCHOrder.endSitePoint.get(1); - - parameters.vehicleType = mCurrentOCHOrder.businessType; - parameters.startName = PinYinUtil.getPinYinHeadChar(mCurrentOCHOrder.startSiteAddr); // 起点名称拼音首字母大写:科学城B区2号门(KXCBQ2HM) - parameters.endName = PinYinUtil.getPinYinHeadChar(mCurrentOCHOrder.endSiteAddr); // 终点名称拼音首字母大写:科学城C区三号门(KXCCQSHM) - parameters.startLatLon = new AutopilotControlParameters.AutoPilotLonLat(startWgsLat, startWgsLon); - parameters.endLatLon = new AutopilotControlParameters.AutoPilotLonLat(endWgsLat, endWgsLon); - - // TODO 这里需要增加传入 白名单点列表、黑名单点列表,顺序按照服务端传入顺序为准。 - //parameters.wayLatLons - //parameters.blackLatLons - - if (parameters.autoPilotLine == null) { - parameters.autoPilotLine = new AutopilotControlParameters.AutoPilotLine( - mCurrentOCHOrder.lineId, mCurrentOCHOrder.lineName, - mCurrentOCHOrder.csvFileUrl, mCurrentOCHOrder.csvFileMd5, - mCurrentOCHOrder.txtFileUrl, mCurrentOCHOrder.txtFileMd5, - mCurrentOCHOrder.contrailSaveTime, mCurrentOCHOrder.carModel, - mCurrentOCHOrder.csvFileUrlDPQP, mCurrentOCHOrder.csvFileMd5DPQP, - mCurrentOCHOrder.txtFileUrlDPQP, mCurrentOCHOrder.txtFileMd5DPQP, - mCurrentOCHOrder.contrailSaveTimeDPQP); - } - return parameters; - } - - //结束自动驾驶 - public void cancelAutopilot() { - try { - CallerAutoPilotControlManager.INSTANCE.cancelAutoPilot(); - CallerLogger.d(M_TAXI + TAG, "结束自动驾驶"); - } catch (Exception e) { - e.printStackTrace(); - } - } - - //根据围栏判断,是否到达起点 - private void judgeStartStation(MogoLocation location) { - if (mCurrentOCHOrder == null || mCurrentOCHOrder.startSiteGcjPoint == null - || mCurrentOCHOrder.startSiteGcjPoint.size() < 2) { - return; - } - double startLon = mCurrentOCHOrder.startSiteGcjPoint.get(0); - double startLat = mCurrentOCHOrder.startSiteGcjPoint.get(1); - double distance = CoordinateUtils.calculateLineDistance( - startLon, startLat, - location.getLongitude(), location.getLatitude()); - - CallerLogger.i(M_TAXI + TAG, "judgeStartStation() distance = " + distance); - - if (distance <= TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { - arrivedStartPoint(); - } - } - - //监听网络变化,避免启动机器时无网导致无法更新订单信息 - private final IMogoIntentListener mNetWorkIntentListener = new IMogoIntentListener() { - @Override - public void onIntentReceived(String intentStr, Intent intent) { - CallerLogger.d(M_TAXI + TAG, "onIntentReceived = %s", intentStr); - if (ConnectivityManager.CONNECTIVITY_ACTION.equals(intentStr)) { - if (NetworkUtils.isConnected(mContext)) { - startOrStopOrderLoop(LoginStatusManager.isLogin() && LoginStatusManager.isOpenOrderType()); - LoginStatusManager.queryLoginStatusByNet(false); - } - } - } - }; - - private final OchAdasStartFailureCallback mAdasStartFailureListener = new OchAdasStartFailureCallback() { - - @Override - public void onStartAutopilotFailure(@NotNull String startFailedCode, @NonNull String startFailedMessage) { - if (mADASStatusCallback != null && !FunctionBuildConfig.isDemoMode) { - CallerLogger.e(M_TAXI + TAG, "mAdasStartFailureListener = " + startFailedMessage); - mADASStatusCallback.onStartAdasFailure(); - } - } - }; - - // 自车定位 - private final IMoGoChassisLocationGCJ02Listener mMapLocationListener = new IMoGoChassisLocationGCJ02Listener() { - @Override - public void onChassisLocationGCJ02(@Nullable MogoLocation gnssInfo) { - //位置变化时,通过围栏判断是否到达x点 - if (null == gnssInfo) return; - OCHThreadPoolManager.getsInstance().locationExecute(new Runnable() { - @Override - public void run() { - if (checkCurrentOCHOrder()) { - if (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToStart) { - judgeStartStation(gnssInfo); - } - if (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd) { - judgeEndStation(gnssInfo); - } - } - } - }); - } - }; - - private void judgeEndStation(MogoLocation currentLocation) { - if (mCurrentOCHOrder == null || mCurrentOCHOrder.endSiteGcjPoint == null - || mCurrentOCHOrder.endSiteGcjPoint.size() < 2) { - return; - } - double endLon = mCurrentOCHOrder.endSiteGcjPoint.get(0); - double endLat = mCurrentOCHOrder.endSiteGcjPoint.get(1); - double distance = CoordinateUtils.calculateLineDistance( - endLon, endLat, - currentLocation.getLongitude(), currentLocation.getLatitude()); - - CallerLogger.i(M_TAXI + TAG, "judgeEndStation() distance = " + distance); - - if (distance <= TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { //1、当前位置和站点围栏15m内 - - if (!checkCurrentOCHOrder() - || (getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) { - CallerLogger.i(M_TAXI + TAG, "order exception or order ArriveAtEnd"); - return; - } - - //2、开始计算当前位置和站点的向量角度 < 90度 未经过 >90度 经过 - double stationAngle = DrivingDirectionUtils.getDegreeOfCar2Poi( - currentLocation.getLongitude(), - currentLocation.getLatitude(), - endLon, - endLat, - (int) currentLocation.getHeading()); - - CallerLogger.i(M_TAXI + TAG, "judgeEndStation() stationAngle = " + stationAngle); - - if (!checkCurrentOCHOrder() - || getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd - ) { - CallerLogger.i(M_TAXI + TAG, "order exception or order ArriveAtEnd"); - return; - } - - //3、刚过站且过站距离在15m内, 提交到站 - if (stationAngle > 90) { - CallerLogger.i(M_TAXI + TAG, "judgeEndStation() = 刚过站且在15m内"); - arriveTerminal(); - } else { - // 4、 没有过站距离小于15m 速度小于0.3(根据M1来的模数 可能要调) - if (currentLocation.getGnssSpeed() < 0.3) { - CallerLogger.i(TAG, "judgeEndStation() = 没有过站、速度基本为零且在15m内"); - arriveTerminal(); - } - } - } - - } - - /** - * 订单流转debug START - */ - public void setArriveAtStartStation() { - if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { - ToastUtils.showShort("订单状态不匹配该操作!"); - return; - } - arrivedStartPoint(); - } - - public void setDriverConfirmCondition() { - if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.UserArriveAtStart.getCode()) { - ToastUtils.showShort("订单状态不匹配该操作!"); - return; - } - confirmAutopilotConditionByDriver(); - } - - public void setArriveAtEndStation() { - if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { - ToastUtils.showShort("订单状态不匹配该操作!"); - return; - } - arriveTerminal(); - } - - /** - * 测试开启自动驾驶 - */ - public void setOnTheWayToEndStation() { - if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.UserArriveAtStart.getCode()) { - ToastUtils.showShort("订单状态不匹配该操作!"); - } - startServicePilotDone(); - } - - private final IOchAutopilotStatusListener mGoAutopilotStatusListener = new IOchAutopilotStatusListener() { - - @Override - public void onAutopilotGuardian(@Nullable MogoReportMsg.MogoReportMessage guardianInfo, long lineId) { - TaxiTrajectoryManager.getInstance().onAutopilotGuardian(guardianInfo,lineId); - } - - @Override - public void onAutopilotStatusResponseFromCan(int state) { - if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { - OchAutopilotAnalytics.INSTANCE.triggerStartAutopilotEvent(isRestartAutopilot, true, - mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, - (int) mCurrentOCHOrder.lineId, mCurrentOCHOrder.orderNo,System.currentTimeMillis(),1); - } - } - - @Override - public void onAutopilotStatusResponse(int state) { - if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { - if (mADASStatusCallback != null) { - mADASStatusCallback.onAutopilotRunning(CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - if (mCurrentOCHOrder != null - && TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == mCurrentOCHOrder.orderStatus) { - OchAutopilotAnalytics.INSTANCE.triggerStartAutopilotEvent(isRestartAutopilot, true, - mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, - (int) mCurrentOCHOrder.lineId, mCurrentOCHOrder.orderNo,System.currentTimeMillis(),0); - if (FunctionBuildConfig.isDemoMode) { - // 当美化模式(演示模式)开启时: 订单对应自动驾驶开启后,置true - FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true; - CallerAutoPilotControlManager.INSTANCE.setIgnoreConditionDraw(true); - CallerAutoPilotControlManager.INSTANCE.setIPCDemoMode(true); - CallerLogger.d(M_TAXI + TAG, "美化模式-ignore:置为true(到达出发点且已开启自动驾驶)"); - } - } - } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE) { - if (FunctionBuildConfig.isDemoMode - && checkCurrentOCHOrder() - && (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd - || getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) { - // 当美化模式(演示模式)开启时:且有订单、且为去往目的地状态,维持自动驾驶icon开启状态 - return; - } - if (mADASStatusCallback != null) { - mADASStatusCallback.onAutopilotEnable(CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - } else if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE) { - if (FunctionBuildConfig.isDemoMode - && checkCurrentOCHOrder() - && (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd - || getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) { - // 当美化模式(演示模式)开启时:且有订单、且为去往目的地状态,维持自动驾驶icon开启状态 - return; - } - if (mADASStatusCallback != null) { - mADASStatusCallback.onAutopilotDisable(CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - } else if (state == IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING) { - if (FunctionBuildConfig.isDemoMode) { - if (checkCurrentOCHOrder() - && (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd - || getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) {//订单中 - // 当美化模式(演示模式)开启时:且有订单、且为去往目的地状态,维持自动驾驶icon开启状态 - } else { //美化模式下没订单,显示人工驾驶 - if (mADASStatusCallback != null) { - mADASStatusCallback.onAutopilotDisable(CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - } - return; - } - if (mADASStatusCallback != null) { - mADASStatusCallback.onManMachineCoDriving(CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - } - } - - @Override - public void canStartAutopilot(boolean canStart) { - if (mADASStatusCallback != null) { - mADASStatusCallback.updateAutopilotStatus(canStart); - } - } - - @Override - public void onAutopilotArriveAtStation(ArrivedStation data) { - CallerLogger.i(M_TAXI + TAG, "onAutopilotArriveAtStation = " + data.toString()); - - if (data == null || !checkCurrentOCHOrder() - || (getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) { - return; - } - arriveTerminal(); - - if (FunctionBuildConfig.isDemoMode) { - // 当美化模式(演示模式)开启时: 到达目的地,置false - CallerAutoPilotControlManager.INSTANCE.setIPCDemoMode(false); - CallerLogger.d(M_TAXI + TAG, "美化模式-ignore:置为false(到达目的地)"); - } - } - }; - - private final IMoGoPlanningRottingListener moGoAutopilotPlanningListener = new IMoGoPlanningRottingListener() { - - @Override - public void onAutopilotRotting(MessagePad.GlobalPathResp routeList) { - if (null != routeList && routeList.getWayPointsList() != null) { - CallerLogger.d(M_TAXI + TAG, "getWayPointsList = " - + routeList.getWayPointsList().size()); - } - if (null != routeList && routeList.getWayPointsList().size() > 0) { - updateOrderRoute(routeList.getWayPointsList()); - updateOrderRouteInfo(routeList.getWayPointsList()); - } - } - - }; - - /** - * 设置路径规划起终点 - * - */ - public void setRouteLineMarker() { - OrderQueryRespBean.Result currentOCHOrder = getCurrentOCHOrder(); - if(currentOCHOrder!=null) { - if (currentOCHOrder.startSiteGcjPoint == null || currentOCHOrder.startSiteGcjPoint.isEmpty() || currentOCHOrder.startSiteGcjPoint.size() < 2|| - currentOCHOrder.endSiteGcjPoint == null || currentOCHOrder.endSiteGcjPoint.isEmpty() || currentOCHOrder.endSiteGcjPoint.size() < 2) { - cleanLineMarker(); - return; - } - LatLng startStation = new LatLng(currentOCHOrder.startSiteGcjPoint.get(1),currentOCHOrder.startSiteGcjPoint.get(0)); - LatLng endStation = new LatLng(currentOCHOrder.endSiteGcjPoint.get(1),currentOCHOrder.endSiteGcjPoint.get(0)); - if (mAutopilotPlanningCallback != null) { - mAutopilotPlanningCallback.setLineMarker(startStation,endStation); - } - } - } - public void cleanLineMarker(){ - if (mAutopilotPlanningCallback != null) { - mAutopilotPlanningCallback.setLineMarker(null,null); - } - } - - /** - * 上报订单全路径规划数据 - * - * @param models - */ - public void updateOrderRoute(List models) { - if (null == mCurrentOCHOrder) return; - List points = coordinateConverterWgsToGcjList(mContext, models); - TaxiServiceManager.updateOrderRoute(mContext, mCurrentOCHOrder.orderNo - , points, new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData data) { - - } - - @Override - public void onError() { - // TODO: 2022/5/18 是否在请求异常时候进行提示 - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - public static List coordinateConverterWgsToGcjList(Context mContext, List mogoLatLngList) { - List points = new ArrayList<>(); - for (MessagePad.Location m : mogoLatLngList) { - LatLng mogoLatLng = CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj(mContext, m); - OrderRouteUpdateReqBean.Result result = new OrderRouteUpdateReqBean.Result(); - result.latitude = mogoLatLng.latitude; - result.longitude = mogoLatLng.longitude; - points.add(result); - } - return points; - } - - /** - * 计算全路径长度,以及实时更新剩余距离,剩余时间,预计时间 - * - * @param models - */ - public void updateOrderRouteInfo(List models) { - if (null == models || models.size() == 0) return; - if (mCurrentOCHOrder == null) return; - CallerLogger.d(M_TAXI + TAG, "--------计算出sumLength开始---------- "); - - //转换成高德坐标系 - if (mRoutePoints.size() > 0) { - mRoutePoints.clear(); - } - mRoutePoints.addAll(CoordinateCalculateRouteUtil - .coordinateConverterWgsToGcjLocations(mContext, models)); - startDynamicCalculateRouteInfo(); - } - - public void startDynamicCalculateRouteInfo() { - CallerLogger.d(M_TAXI + TAG, "--------mCurrentOCHOrder---------- " + mCurrentOCHOrder); - - if (mCurrentOCHOrder != null && mRoutePoints.size() == 0) {//根据orderNo去查询 - queryOrderRouteList(mCurrentOCHOrder.orderNo); - } - CallerLogger.d(M_TAXI + TAG, "--------mRoutePoints.size---------- " + mRoutePoints.size()); - - if (mRoutePoints.size() > 0) { - reportTotalDisAndTime(); - } - if (mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.ArriveAtStart.getCode() ||//司机到达上车点 - mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.UserArriveAtStart.getCode() ||//乘客到达上车点 - mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()//服务中(去往目的地) - ) { - //开启实时计算剩余距离,剩余时间,预计时间 - startOrStopCalculateRouteInfo(true); - AmapNaviToDestinationModel.getInstance(mContext).destroyAmaNavi(); - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onNaviToEnd(false, false); - } - } - } - - private void reportTotalDisAndTime() { - float lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(mRoutePoints); - double lastTime = lastSumLength / TaxiConst.TAXI_AVERAGE_SPEED * 3.6; //秒 - - reportOrderRemain((long) lastSumLength, (long) lastTime); - } - - /** - * 实时计算当前剩余里程和时间 - */ - public void dynamicCalculateRouteInfo() { -// if (mLocation == null) { -// return; -// } -// if (mRoutePoints.size() > 0 && mLocation != null) { -// Map> lastPointsMap = CoordinateCalculateRouteUtil -// .getRemainPointListByCompareNew(mPreRouteIndex, mRoutePoints, mLocation); -// -// for (int index : lastPointsMap.keySet()) { -// mPreRouteIndex = index; -// break; -// } -// for (List lastPoints : lastPointsMap.values()) { -// float lastSumLength = 0; -// if (lastPoints.size() == 1) { //只是最后一个点,计算当前位置和最后一个点的距离 -// lastSumLength = CoordinateUtils.calculateLineDistance( -// lastPoints.get(0).getLongitude(), lastPoints.get(0).getLatitude(), -// mLocation.getLongitude(), mLocation.getLatitude()); -// } else { -// lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(lastPoints); -// } -// updateDistance(lastSumLength); -// break; -// } -// routeAndWipe(); -// } - } - - private void updateDistance(float lastSumLength){ - double lastTime = lastSumLength / TaxiConst.TAXI_AVERAGE_SPEED * 3.6; //秒 - CallerLogger.d(M_TAXI + "dynamicCalculateRouteInfo" - , "---lastSumLength: " + lastSumLength + "----lastTime : " + lastTime - + " thread = " + Thread.currentThread().getName()); - - if (mCurrentOCHOrder != null) { - mCurrentOCHOrder.decreaseTravelDistance(lastSumLength); - } - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onCurrentOrderDistToEndChanged((long) lastSumLength, (long) lastTime); - } - - reportOrderRemain((long) lastSumLength, (long) lastTime); - } - - private final IDistanceListener distanceListener = new IDistanceListener() { - @Override - public void distanceCallback(float distance) { - updateDistance(distance); - } - - @Override - public void stationDistanceCallback(float stationDistance) { - } - }; - - private final ITrajectoryListener trajectoryListener = (routeArrivied, routeArriving, location) -> { - if (mAutopilotPlanningCallback != null) { - List routeArriviedTemp = new ArrayList<>(); - List routeArrivingTemp = new ArrayList<>(); - LatLng temp; - for (MogoLocation mogoLocation : routeArrivied) { - temp = new LatLng(mogoLocation.getLatitude(),mogoLocation.getLongitude()); - routeArriviedTemp.add(temp); - } - for (MogoLocation mogoLocation : routeArriving) { - temp = new LatLng(mogoLocation.getLatitude(),mogoLocation.getLongitude()); - routeArrivingTemp.add(temp); - } - mAutopilotPlanningCallback.routeResult(routeArriviedTemp, routeArrivingTemp,location); - setRouteLineMarker(); - } - }; - - - /** - * 查询当前订单的全局路径 (当自动驾驶开启后,订单前往乘客上车点,杀掉应用再次进来时候) - */ - private void queryOrderRouteList(String orderNo) { - if (mCurrentOCHOrder != null) { - TaxiServiceManager.queryOrderRoute(mContext, orderNo, - new OchCommonServiceCallback() { - @Override - public void onSuccess(QueryOrderRouteResp data) { - if (data != null && data.data != null && mRoutePoints.size() == 0) { - mRoutePoints.clear(); - List routePoints = CoordinateCalculateRouteUtil - .coordinateConverterLatlngToLocation(data.data); - mRoutePoints.addAll(routePoints); - } - } - - @Override - public void onError() { - // TODO: 2022/5/18 是否在请求异常的时候提示 - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - } - - /** - * 开始轮询计算剩余里程和时间 - * - * @param isStart - */ - public void startOrStopCalculateRouteInfo(boolean isStart) { - CallerLogger.d(M_TAXI + TAG, "startOrStopOrderLoop() " + isStart); - if (isStart) { - TaxiModelLoopManager.getInstance().startCalculateRouteInfoLoop(); - } else { - mRoutePoints.clear(); - TaxiModelLoopManager.getInstance().stopCalculateRouteInfoLoop(); - } - } - - /** - * 上报订单剩余里程和时间 单位:KM, M, 单位:秒 - * - * @param lastSumLength 上报订单剩余里程 - * @param duration 上报订单剩余时间 - */ - public void reportOrderRemain(long lastSumLength, long duration) {// 米/秒 - if (mCurrentOCHOrder == null) return; - TaxiServiceManager.reportOrderRemain(mContext, mCurrentOCHOrder.orderNo - , lastSumLength, duration, new OchCommonServiceCallback() { - @Override - public void onSuccess(BaseData data) { - - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - /** - * 司机端可确认乘客已上车,调用后,后台将订单置为乘客已上车状态 - */ - public void jumpPassengerCheckDone() { - if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.ArriveAtStart.getCode()) { - ToastUtils.showShort("订单状态不匹配该操作或者订单为空!"); - return; - } - TaxiOrPassengerReadyReqBean.Result result = new TaxiOrPassengerReadyReqBean.Result(); - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - result.lat = gcj02Location.getLatitude(); - result.lon = gcj02Location.getLongitude(); - TaxiServiceManager.updatePassengerHasBoardedStatus(mContext - , mCurrentOCHOrder.orderNo - , result - , new OchCommonServiceCallback() { - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - - } - - @Override - public void onFail(int code, String msg) { - ToastUtils.showShort(msg); - } - }); - } - - public void startServicePilotDone() { - if (mCurrentOCHOrder == null) return; - - TaxiOrPassengerReadyReqBean.Result result = new TaxiOrPassengerReadyReqBean.Result(); - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - result.lat = gcj02Location.getLatitude(); - result.lon = gcj02Location.getLongitude(); - TaxiServiceManager.startServicePilotDone(mContext - , mCurrentOCHOrder.orderNo - , result - , new OchCommonServiceCallback() { - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - - } - - @Override - public void onFail(int code, String msg) { - } - }); - } - - public void arrivedStartPoint() { - if (mCurrentOCHOrder == null) return; - TaxiOrPassengerReadyReqBean.Result result = new TaxiOrPassengerReadyReqBean.Result(); - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - result.lat = gcj02Location.getLatitude(); - result.lon = gcj02Location.getLongitude(); - TaxiServiceManager.arrivedStartPoint(mContext - , mCurrentOCHOrder.orderNo - , result - , new OchCommonServiceCallback() { - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - public void arriveTerminal() { - if (mCurrentOCHOrder == null) return; - TaxiOrPassengerReadyReqBean.Result result = new TaxiOrPassengerReadyReqBean.Result(); - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - result.lat = gcj02Location.getLatitude(); - result.lon = gcj02Location.getLongitude(); - TaxiServiceManager.arriveTerminal(mContext - , mCurrentOCHOrder.orderNo - , result - , new OchCommonServiceCallback() { - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - - } - - @Override - public void onFail(int code, String msg) { - - } - }); - } - - public void orderCompleted() { - if (mCurrentOCHOrder == null) return; - TaxiOrPassengerReadyReqBean.Result result = new TaxiOrPassengerReadyReqBean.Result(); - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - result.lat = gcj02Location.getLatitude(); - result.lon = gcj02Location.getLongitude(); - TaxiServiceManager.orderCompleted(mContext - , mCurrentOCHOrder.orderNo - , result - , new OchCommonServiceCallback() { - @Override - public void onSuccess(TaxiDataBaseRespBean data) { - } - - @Override - public void onFail(int code, String msg) { - ToastUtils.showShort(msg); - } - }); - } - - // 登出 - public void logout() { - LoginStatusManager.loginOut(); - } - - //导航去订单终点目的地 - public void startNaviToEndStation(boolean isShow) { - if (mRoutePoints.size() > 0) { //使用自驾轨迹 - if (mOrderStatusCallback != null) { - mOrderStatusCallback.onNaviToEnd(false, isShow); - } - } else {//若直接要显示导航地图则直接导航, 若不是则2s后若无轨迹数据使用高德导航 - if (isShow && mOrderStatusCallback != null) { - - mOrderStatusCallback.onNaviToEnd(true, true); - } else { - UiThreadHandler.postDelayed(() -> { - if (mRoutePoints.size() == 0 && mOrderStatusCallback != null) { - mOrderStatusCallback.onNaviToEnd(true, false); - } - }, 2000L); - } - - } - } - - public void setStation(){ - OrderQueryRespBean.Result currentOCHOrder = getCurrentOCHOrder(); - if(currentOCHOrder!=null){ - MogoLocation startStation = new MogoLocation(); - startStation.setLongitude(currentOCHOrder.startSiteGcjPoint.get(0)); - startStation.setLatitude(currentOCHOrder.startSiteGcjPoint.get(1)); - MogoLocation endStation = new MogoLocation(); - endStation.setLongitude(currentOCHOrder.endSiteGcjPoint.get(0)); - endStation.setLatitude(currentOCHOrder.endSiteGcjPoint.get(1)); - TrajectoryAndDistanceManager.INSTANCE.setStationPoint(startStation,endStation,currentOCHOrder.lineId); - } - } - - public void cleanStation(){ - TrajectoryAndDistanceManager.INSTANCE.setStationPoint(null,null,-1L); - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModelLoopManager.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModelLoopManager.java deleted file mode 100644 index 83bfe4b59f..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/model/TaxiModelLoopManager.java +++ /dev/null @@ -1,176 +0,0 @@ -package com.mogo.och.taxi.model; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI_P; - -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.och.taxi.constant.TaxiConst; - -import java.util.concurrent.TimeUnit; - -import io.reactivex.Observable; -import io.reactivex.ObservableEmitter; -import io.reactivex.ObservableOnSubscribe; -import io.reactivex.android.schedulers.AndroidSchedulers; -import io.reactivex.disposables.CompositeDisposable; -import io.reactivex.disposables.Disposable; -import io.reactivex.functions.Consumer; -import io.reactivex.schedulers.Schedulers; - -/** - * Created on 2021/9/10 - * - * 管理轮询逻辑(订单轮询、新单轮询、新单抢单结果轮询等等) - */ -public class TaxiModelLoopManager { - - private static final String TAG = TaxiModelLoopManager.class.getSimpleName(); - - private static final class SingletonHolder { - private static final TaxiModelLoopManager INSTANCE = new TaxiModelLoopManager(); - } - - public static TaxiModelLoopManager getInstance() { - return SingletonHolder.INSTANCE; - } - - private Disposable mInAndWaitServiceDisposable; //进行中、待服务订单列表轮询 - private Disposable mNewBookingOrderDisposable; //新到待抢预约单轮询 - private Disposable mGrabResultDisposable; //抢单结果轮询 - private Disposable mHeartbeatDisposable; //心跳轮询 - private CompositeDisposable mCalculateRouteDisposable; //每隔2s计算一次剩余里程和时间 - - public void startInAndWaitOrdersLoop() { - if (mInAndWaitServiceDisposable != null && !mInAndWaitServiceDisposable.isDisposed()) { - return; - } - CallerLogger.i(M_TAXI + TAG, "startInAndWaitOrdersLoop()"); - mInAndWaitServiceDisposable = Observable.interval(TaxiConst.LOOP_DELAY, - TaxiConst.LOOP_PERIOD_2S, TimeUnit.MILLISECONDS) - .map((aLong -> aLong + 1)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> TaxiModel.getInstance().queryInAndWaitOrders()); - } - - public void stopInAndWaitOrdersLoop() { - if (mInAndWaitServiceDisposable != null) { - CallerLogger.i(M_TAXI + TAG, "stopInAndWaitOrdersLoop()"); - mInAndWaitServiceDisposable.dispose(); - mInAndWaitServiceDisposable = null; - } - } - - public void startNewBookingOrderLoop() { - if (mNewBookingOrderDisposable != null && !mNewBookingOrderDisposable.isDisposed()) { - return; - } - CallerLogger.i(M_TAXI + TAG, "startNewBookingOrderLoop()"); - mNewBookingOrderDisposable = Observable.interval(TaxiConst.LOOP_DELAY, - TaxiConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) - .map((aLong -> aLong + 1)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> TaxiModel.getInstance().queryNewBookingOrder()); - } - - public void stopNewBookingOrderLoop() { - if (mNewBookingOrderDisposable != null) { - CallerLogger.i(M_TAXI + TAG, "stopNewBookingOrderLoop()"); - mNewBookingOrderDisposable.dispose(); - mNewBookingOrderDisposable = null; - } - } - - public void startGrabResultLoop() { - if (mGrabResultDisposable != null && !mGrabResultDisposable.isDisposed()) { - return; - } - CallerLogger.i(M_TAXI + TAG, "startGrabResultLoop()"); - mGrabResultDisposable = Observable.interval(TaxiConst.LOOP_DELAY, - TaxiConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) - .map((aLong -> aLong + 1)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> TaxiModel.getInstance().queryOrderGrabStatus()); - } - - public void stopGrabResultLoop() { - if (mGrabResultDisposable != null) { - CallerLogger.i(M_TAXI + TAG, "stopGrabResultLoop()"); - mGrabResultDisposable.dispose(); - mGrabResultDisposable = null; - } - } - - public void startHeartbeatLoop() { - if (mHeartbeatDisposable != null && !mHeartbeatDisposable.isDisposed()) { - return; - } - CallerLogger.i(M_TAXI + TAG, "startHeartbeatLoop()"); - mHeartbeatDisposable = Observable.interval(TaxiConst.LOOP_DELAY, - TaxiConst.LOOP_PERIOD_60S, TimeUnit.MILLISECONDS) - .map((aLong -> aLong + 1)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> TaxiModel.getInstance().runCarHeartbeat()); - } - - public void stopHeartbeatLoop() { - if (mHeartbeatDisposable != null) { - CallerLogger.i(M_TAXI + TAG, "stopHeartbeatLoop()"); - mHeartbeatDisposable.dispose(); - mHeartbeatDisposable = null; - } - } - - public void startCalculateRouteInfoLoop() { - - CallerLogger.i(M_TAXI + TAG, "startCalculateRouteInfoLoop()"); - if (mCalculateRouteDisposable != null) return; - - mCalculateRouteDisposable = new CompositeDisposable(); - - Disposable disposable = loopDynamicCalculateRouteInfo() - .doOnSubscribe(new Consumer() { - @Override - public void accept(Disposable disposable) throws Exception { - - } - }).doOnError(new Consumer() { - @Override - public void accept(Throwable throwable) throws Exception { - } - }) - .delay(TaxiConst.LOOP_CALCULATEROUTE_2S, TimeUnit.MILLISECONDS, true) // 设置delayError为true,表示出现错误的时候也需要延迟5s进行通知,达到无论是请求正常还是请求失败,都是5s后重新订阅,即重新请求。 - .subscribeOn(Schedulers.io()) - .repeat() // repeat保证请求成功后能够重新订阅。 - .retry() // retry保证请求失败后能重新订阅 - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Consumer() { - @Override - public void accept(Integer integer) throws Exception { - } - }); - mCalculateRouteDisposable.add(disposable); - } - - private Observable loopDynamicCalculateRouteInfo(){ - return Observable.create(new ObservableOnSubscribe() { - @Override - public void subscribe(ObservableEmitter emitter) throws Exception { - if (emitter.isDisposed()) return; - TaxiModel.getInstance().dynamicCalculateRouteInfo(); - emitter.onComplete(); - } - }); - } - - public void stopCalculateRouteInfoLoop() { - if (mCalculateRouteDisposable != null) { - CallerLogger.i(M_TAXI + TAG, "stopCalculateRouteInfoLoop()"); - mCalculateRouteDisposable.dispose(); - mCalculateRouteDisposable = null; - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceApiNew.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceApiNew.java deleted file mode 100644 index d94db25dfe..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceApiNew.java +++ /dev/null @@ -1,308 +0,0 @@ -package com.mogo.och.taxi.network; -import com.mogo.eagle.core.data.BaseData; -import com.mogo.och.taxi.bean.CarHeartbeatReqBean; -import com.mogo.och.taxi.bean.DriverServiceDataRespBean; -import com.mogo.och.taxi.bean.DriverStatusUpdateReqBean; -import com.mogo.och.taxi.bean.OrderCancelReqBean; -import com.mogo.och.taxi.bean.OrderGrabReqBean; -import com.mogo.och.taxi.bean.OrderGrabRespBean; -import com.mogo.och.taxi.bean.OrderGrabStatusQueryRespBean; -import com.mogo.och.taxi.bean.OrderQueryReqBean; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoReqBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.bean.OrderRouteUpdateReqBean; -import com.mogo.och.taxi.bean.OrderStatusUpdateReqBean; -import com.mogo.och.taxi.bean.OrdersInServiceQueryRespBean; -import com.mogo.och.taxi.bean.OrdersListQueryReqBean; -import com.mogo.och.taxi.bean.OrdersListQueryRespBean; -import com.mogo.och.taxi.bean.OrdersNewBookingQueryRespBean; -import com.mogo.och.taxi.bean.QueryOrderRouteResp; -import com.mogo.och.taxi.bean.TaxiDataBaseRespBean; -import com.mogo.och.taxi.bean.TaxiOrPassengerReadyReqBean; -import com.mogo.och.taxi.bean.UpdateOrderDisAndTimeReqBean; - -import io.reactivex.Observable; -import retrofit2.http.Body; -import retrofit2.http.GET; -import retrofit2.http.Header; -import retrofit2.http.Headers; -import retrofit2.http.POST; -import retrofit2.http.Query; - -/** - * Created by pangfan on 2021/8/19 - * - * 网约车-出租车接口定义 - */ -interface TaxiServiceApiNew { - - /** - * 查询全部服务中/待服务订单(没有的时候返回code 0,空列表) - * @param sn - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @GET("/autopilot-car-hailing/api/v1/driver/orderInService/query") - @GET("/autopilot-car-hailing/order/v2/driver/taxi/orderInService/query") - Observable queryOrdersInAndWaitService(@Header("appId") String appId - , @Header("ticket") String ticket, @Query("sn") String sn); - - /** - * 查询新到的预约单 - * @param sn - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @GET( "/autopilot-car-hailing/api/v1/driver/newBookingOrder/query" ) - @GET( "/autopilot-car-hailing/order/v2/driver/taxi/newBookingOrder/query" ) - Observable queryNewBookingOrder(@Header ("appId") String appId - ,@Header("ticket") String ticket,@Query("sn") String sn); - - /** - * (预约单)执行抢单动作 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/grabOrder" ) - @POST( "/autopilot-car-hailing/order/v2/driver/taxi/grabOrder" ) - Observable grabOrder(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrderGrabReqBean data); - - /** - * (预约单)查询抢单结果 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/grabStatus/query" ) - @POST( "/autopilot-car-hailing/order/v2/driver/taxi/grabStatus/query" ) - Observable queryOrderGrabStatus(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrderGrabReqBean data); - - /** - * 查询订单路径规划信息(到上车点、起始点间的距离和预估时间) - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/routeInfo/query" ) - @POST( "/autopilot-car-hailing/order/v2/driver/taxi/routeInfo/query" ) - Observable queryOrderRouteInfo(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrderQueryRouteInfoReqBean data); - - /** - * 通过orderId查询订单信息(用于本地已经有orderId时) - * @param data - * @return - * @deprecated v2.1_0930需求中暂不再使用此接口 - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/queryOrderById" ) - @POST( "/autopilot-car-hailing/order/v2/driver/taxi/queryOrderById" ) - Observable queryOrderById(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrderQueryReqBean data); - - /** - * 查询服务中订单信息(用于本地无orderId时) - * 如果有多条,只会返回时间最近的一条 - * @param sn - * @return - * @deprecated v2.1_0930需求中暂不再使用此接口 - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @GET( "/autopilot-car-hailing/api/v1/driver/queryOrderInService" ) - @GET( "/autopilot-car-hailing/order/v2/driver/taxi/queryOrderInService" ) - Observable queryOrderInService(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Query("sn") String sn); - - /** - * 取消订单 - */ - @Headers({"Content-type:application/json;charset=UTF-8"}) -// @POST("/autopilot-car-hailing/api/v1/driver/cancelOrder") - @POST("/autopilot-car-hailing/order/v2/driver/taxi/cancelOrder") - Observable cancelOrder(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrderCancelReqBean data); - - /** - * 订单列表获取 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/queryOrders" ) - @POST( "/autopilot-car-hailing/order/v2/driver/taxi/queryOrders" ) - Observable queryOrdersList(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrdersListQueryReqBean data); - - /** - * 订单状态更新 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/order/updateStatus" ) -// @POST( "/autopilot-car-hailing/order/v2/driver/taxi/order/updateStatus" ) - @POST( "/autopilot-car-hailing/order/v2/vehicle/taxi/driver/updateStatus" ) - Observable updateOrderStatus(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body OrderStatusUpdateReqBean data); - - /** - * 车机端上传心跳数据(只在出车状态时上传):包含高德坐标系经纬度 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/heartbeat" ) - @POST( "/autopilot-car-hailing/location/v2/driver/taxi/heartbeat" ) - Observable runCarHeartbeat(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body CarHeartbeatReqBean data); - - /** - * 查询司机服务数据 - * @param sn - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @GET( "/autopilot-car-hailing/api/v1/driver/serviceData/query" ) - @GET( "/autopilot-car-hailing/order/v2/driver/taxi/serviceData/query" ) - Observable queryServiceData(@Header ("appId") String appId - ,@Header("ticket") String ticket,@Query("sn") String sn); - - /** - * 上传工控机返回的全路径规划数据 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST("/autopilot-car-hailing/order/v2/driver/taxi/saveOrderRoute") -// @POST("/mock/268/autopilot-car-hailing/order/v2/driver/taxi/orderRoute") - Observable updateOrderRoute(@Header ("appId") String appId - , @Header("ticket") String ticket, @Body OrderRouteUpdateReqBean data); - - /** - * 上报订单剩余里程和剩余时间 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST("/autopilot-car-hailing/order/v2/driver/taxi/reportOrderRemain") - Observable reportOrderRemain(@Header ("appId") String appId - , @Header("ticket") String ticket, @Body UpdateOrderDisAndTimeReqBean data); - - - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @GET( "/autopilot-car-hailing/api/v1/driver/serviceStatus/query" ) - @GET( "/autopilot-car-hailing/order/v2/driver/taxi/orderRoute" ) - Observable queryOrderRoute(@Header ("appId") String appId - , @Header("ticket") String ticket, @Query("orderNo") String orderNo); - - /** - * 司机端跳过乘客验证,订单状态流转为乘客已上车 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/ready/passenger" ) - Observable updatePassengerHasBoardedStatus(@Header ("appId") String appId - , @Header("ticket") String ticket, @Body TaxiOrPassengerReadyReqBean data); - - /** - * 司机端确认可开启自动驾驶 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/ready/pilot" ) - Observable confirmAutopilotConditionByDriver(@Header ("appId") String appId - , @Header("ticket") String ticket,@Body TaxiOrPassengerReadyReqBean data); - - /** - * 查询司机是否已确认可开启自动驾驶 - * @param appId - * @param ticket - * @param orderNo - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @GET( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/pilot/status" ) - Observable queryPilotStatus(@Header ("appId") String appId - , @Header("ticket") String ticket,@Query("orderNo") String orderNo); - - /** - * 开启自动驾驶成功 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/startServicePilot" ) - Observable startServicePilotDone(@Header ("appId") String appId - , @Header("ticket") String ticket,@Body TaxiOrPassengerReadyReqBean data); - - /** - * 达到乘客上车点 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/passenger/arriveStartPoint" ) - Observable arrivedStartPoint(@Header ("appId") String appId - , @Header("ticket") String ticket,@Body TaxiOrPassengerReadyReqBean data); - - /** - * 到达乘客目的地 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/arriveTerminal" ) - Observable arriveTerminal(@Header ("appId") String appId - , @Header("ticket") String ticket,@Body TaxiOrPassengerReadyReqBean data); - - /** - * 订单完成 - * @param appId - * @param ticket - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/orderCompleted" ) - Observable orderCompleted(@Header ("appId") String appId - , @Header("ticket") String ticket,@Body TaxiOrPassengerReadyReqBean data); - - /** - * 暂停接单 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/serviceStatus/update" ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/stopOrderServing" ) - Observable stopOrderServing(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body DriverStatusUpdateReqBean data); - /** - * 暂停接单 - * @param data - * @return - */ - @Headers( {"Content-type:application/json;charset=UTF-8"} ) -// @POST( "/autopilot-car-hailing/api/v1/driver/serviceStatus/update" ) - @POST( "/autopilot-car-hailing/cab/flow/v1/driver/taxi/resetOrderServing" ) - Observable resetOrderServing(@Header ("appId") String appId,@Header("ticket") String ticket - ,@Body DriverStatusUpdateReqBean data); -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt deleted file mode 100644 index 49524e0060..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.kt +++ /dev/null @@ -1,500 +0,0 @@ -package com.mogo.och.taxi.network - -import android.content.Context -import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.eagle.core.data.BaseData -import com.mogo.eagle.core.network.MoGoRetrofitFactory -import com.mogo.commons.storage.SharedPrefsMgr -import com.mogo.och.common.module.constant.OchCommonConst -import com.mogo.och.common.module.network.OchCommonServiceCallback -import com.mogo.och.common.module.network.OchCommonSubscribeImpl -import com.mogo.och.common.module.network.interceptor.transformTry -import com.mogo.och.data.taxi.OrderQueryRouteInfoReqBean -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean -import com.mogo.och.taxi.bean.* -import io.reactivex.Observable - -/** - * Created by pangfan on 2021/8/19 - */ -object TaxiServiceManager { - - - private var mOCHTaxiServiceApi: TaxiServiceApiNew = - MoGoRetrofitFactory.getInstance(OchCommonConst.getBaseUrl()).create( - TaxiServiceApiNew::class.java - ) - - /** - * 查询全部服务中/待服务订单列表 - * @param context - * @param callback - */ - @JvmStatic - fun queryOrdersInAndWaitService( - context: Context, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrdersInAndWaitService( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrdersInAndWaitService",false)) - } - - /** - * 查询新到的预约单 - * @param context - * @param callback - */ - @JvmStatic - fun queryNewBookingOrder( - context: Context, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryNewBookingOrder( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryNewBookingOrder",false)) - } - - /** - * (预约单)执行抢单动作 - * @param context - * @param orderNo - * @param callback - */ - @JvmStatic - fun grabOrder( - context: Context, orderNo: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.grabOrder( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderGrabReqBean( - SharedPrefsMgr.getInstance().sn, orderNo - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "grabOrder")) - } - - /** - * (预约单)查询抢单结果 - * @param context - * @param orderNo - * @param callback - */ - @JvmStatic - fun queryOrderGrabStatus( - context: Context, orderNo: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrderGrabStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderGrabReqBean( - SharedPrefsMgr.getInstance().sn, orderNo - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderGrabStatus",false)) - } - - /** - * 查询订单路径规划信息(到上车点、起始点间的距离和预估时间) - * @param context - * @param orderNo - * @param callback - */ - @JvmStatic - fun queryOrderRouteInfo( - context: Context, orderNo: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrderRouteInfo( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderQueryRouteInfoReqBean( - SharedPrefsMgr.getInstance().sn, orderNo - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderRouteInfo")) - } - - /** - * 通过orderId查询订单信息(用于本地已经有orderId时) - * @param context - * @param orderNo - * @param callback - */ - @JvmStatic - @Deprecated("v2.1_0930需求中暂不再使用此接口") - fun queryOrderById( - context: Context, orderNo: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrderById( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderQueryReqBean( - SharedPrefsMgr.getInstance().sn, orderNo - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderById")) - } - - /** - * 查询未完成态订单信息(用于本地无orderId时) - * 如果有多条,只会返回时间最近的一条 - * @param context - * @param callback - */ - @JvmStatic - @Deprecated("v2.1_0930需求中暂不再使用此接口") - fun queryOrderInService( - context: Context, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrderInService( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderInService")) - } - - /** - * 司机取消订单 - * @param context - * @param orderNo - * @param cancelType - * @param cancelReason - * @param callback - */ - @JvmStatic - fun cancelOrder( - context: Context, orderNo: String?, cancelType: Int, cancelReason: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.cancelOrder( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderCancelReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, cancelType, cancelReason - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "cancelOrder")) - } - - /** - * 订单列表获取 - * @param context - * @param page - * @param size - * @param callback - */ - @JvmStatic - fun queryOrdersList( - context: Context, page: Int, size: Int, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrdersList( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrdersListQueryReqBean( - SharedPrefsMgr.getInstance().sn, page, size - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrdersList")) - } - - /** - * 订单状态更新 - * @param context - * @param orderNo - * @param orderStatus - * @param callback - */ - @JvmStatic - fun updateOrderStatus( - context: Context, orderNo: String?, orderStatus: Int, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.updateOrderStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderStatusUpdateReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, orderStatus - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "updateOrderStatus")) - } - - /** - * 暂停接单 - * @param context - * @param callback - */ - @JvmStatic - fun changeOrderServing( - context: Context, isOrdering: Boolean, - callback: OchCommonServiceCallback? - ) { - val baseDataObservable: Observable = if (isOrdering) { // 正在接单去暂停 - mOCHTaxiServiceApi.stopOrderServing( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - DriverStatusUpdateReqBean( - SharedPrefsMgr.getInstance().sn - ) - ).transformTry() - } else { // 没有接单去接单 - mOCHTaxiServiceApi.resetOrderServing( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - DriverStatusUpdateReqBean( - SharedPrefsMgr.getInstance().sn - ) - ).transformTry() - } - baseDataObservable - .subscribe(OchCommonSubscribeImpl(context, callback, "updateDriverServiceStatus")) - } - - /** - * 车机端上传心跳数据(只在出车状态时上传):包含高德坐标系经纬度 - * @param context - * @param lon - * @param lat - * @param callback - */ - @JvmStatic - fun runCarHeartbeat( - context: Context, lon: Double, lat: Double, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.runCarHeartbeat( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - CarHeartbeatReqBean( - SharedPrefsMgr.getInstance().sn, lon, lat - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "runCarHeartbeat",false)) - } - - /** - * 查询司机服务数据 - * @param context - * @param callback - */ - @JvmStatic - fun queryDriverServiceData( - context: Context, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryServiceData( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - SharedPrefsMgr.getInstance().sn - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryDriverServiceData")) - } - - /** - * 根据订单上传工控机返回的全路径规划数据 - * @param context - * @param orderNo - * @param callback - */ - @JvmStatic - fun updateOrderRoute( - context: Context, orderNo: String?, points: List?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.updateOrderRoute( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - OrderRouteUpdateReqBean(orderNo, points) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "updateOrderRoute")) - } - - /** - * 上报剩余里程,时间 - * @param context - * @param orderNo - * @param distance - * @param duration - * @param callback - */ - @JvmStatic - fun reportOrderRemain( - context: Context, - orderNo: String?, - distance: Long, - duration: Long, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.reportOrderRemain( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - UpdateOrderDisAndTimeReqBean(orderNo, distance, duration) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "reportOrderRemain")) - } - - /** - * 查询订单全路径 - * @param context - * @param orderNo - * @param callback - */ - @JvmStatic - fun queryOrderRoute( - context: Context, - orderNo: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryOrderRoute( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - orderNo - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryOrderRoute")) - } - @JvmStatic - fun confirmAutopilotConditionByDriver( - context: Context, - orderNo: String?, - loc: TaxiOrPassengerReadyReqBean.Result?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.confirmAutopilotConditionByDriver( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiOrPassengerReadyReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, loc - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "confirmAutopilotConditionByDriver")) - } - @JvmStatic - fun queryAutopilotStatus( - context: Context, orderNo: String?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.queryPilotStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - orderNo - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "queryAutopilotStatus")) - } - @JvmStatic - fun updatePassengerHasBoardedStatus( - context: Context, - orderNo: String?, - loc: TaxiOrPassengerReadyReqBean.Result?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.updatePassengerHasBoardedStatus( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiOrPassengerReadyReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, loc - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "updatePassengerHasBoardedStatus")) - } - @JvmStatic - fun startServicePilotDone( - context: Context, - orderNo: String?, - loc: TaxiOrPassengerReadyReqBean.Result?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.startServicePilotDone( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiOrPassengerReadyReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, loc - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "startServicePilotDone")) - } - @JvmStatic - fun arrivedStartPoint( - context: Context, - orderNo: String?, - loc: TaxiOrPassengerReadyReqBean.Result?, - callback: OchCommonServiceCallback? - ) { - mOCHTaxiServiceApi.arrivedStartPoint( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiOrPassengerReadyReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, loc - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "arrivedStartPoint")) - } - @JvmStatic - fun arriveTerminal( - context: Context, - orderNo: String?, - loc: TaxiOrPassengerReadyReqBean.Result?, - callback: OchCommonServiceCallback - ) { - mOCHTaxiServiceApi.arriveTerminal( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiOrPassengerReadyReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, loc - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "arriveTerminal")) - } - @JvmStatic - fun orderCompleted( - context: Context, - orderNo: String?, - loc: TaxiOrPassengerReadyReqBean.Result?, - callback: OchCommonServiceCallback - ) { - mOCHTaxiServiceApi.orderCompleted( - MoGoAiCloudClientConfig.getInstance().serviceAppId, - SharedPrefsMgr.getInstance().token, - TaxiOrPassengerReadyReqBean( - SharedPrefsMgr.getInstance().sn, orderNo, loc - ) - ) - .transformTry() - .subscribe(OchCommonSubscribeImpl(context, callback, "orderCompleted")) - } - -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/NaviPresenter.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/NaviPresenter.java deleted file mode 100644 index a5b5053315..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/NaviPresenter.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.mogo.och.taxi.presenter; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import android.os.Looper; - -import androidx.annotation.NonNull; -import androidx.lifecycle.LifecycleOwner; - -import com.amap.api.maps.model.LatLng; -import com.mogo.commons.AbsMogoApplication; -import com.mogo.commons.mvp.Presenter; -import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.taxi.callback.IOCHTaxiAutopilotPlanningCallback; -import com.mogo.och.taxi.model.TaxiModel; -import com.mogo.och.taxi.ui.TaxiRottingNaviFragment; - -import java.util.List; - -/** - * @author congtaowang - * @since 2021/1/18 - * - * 描述 - */ -public class NaviPresenter extends Presenter implements IOCHTaxiAutopilotPlanningCallback { - - private static final String TAG = NaviPresenter.class.getSimpleName(); - - public NaviPresenter(TaxiRottingNaviFragment view) { - super(view); - TaxiModel.getInstance().init(AbsMogoApplication.getApp()); - initListeners(); - } - - @Override - public void onCreate( @NonNull LifecycleOwner owner ) { - super.onCreate( owner ); - CallerLogger.d( M_TAXI + TAG, " onCreate" ); - } - - @Override - public void onDestroy( @NonNull LifecycleOwner owner ) { - releaseListeners(); - super.onDestroy( owner ); - } - - private void initListeners() { - TaxiModel.getInstance().setMoGoAutopilotPlanningListener(this); - } - - private void releaseListeners() { - TaxiModel.getInstance().setMoGoAutopilotPlanningListener(null); - } - - @Override - public void setLineMarker(LatLng startStation, LatLng endStation) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.setLineMarker(startStation, endStation); - } - } - },UiThreadHandler.MODE.QUEUE); - } - - @Override - public void routeResult(List routeArrivied, List routeArriving, MogoLocation location) { - if(mView!=null) { - mView.routeResult(routeArrivied, routeArriving, location); - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiOperationalPresenter.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiOperationalPresenter.java deleted file mode 100644 index 7ee705bcbf..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiOperationalPresenter.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.mogo.och.taxi.presenter; - -import android.os.Looper; - -import com.mogo.commons.mvp.Presenter; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.taxi.callback.ITaxiCarOperationalCallback; -import com.mogo.och.taxi.model.TaxiModel; -import com.mogo.och.taxi.ui.TaxiPersonalDialogFragment; - -import java.util.List; - -import androidx.annotation.NonNull; -import androidx.lifecycle.LifecycleOwner; - -public class TaxiOperationalPresenter extends Presenter - implements ITaxiCarOperationalCallback { - public TaxiOperationalPresenter(TaxiPersonalDialogFragment view) { - super(view); - initListener(); - } - - private void initListener() { - TaxiModel.getInstance().setCarStatusCallback(this); - } - - private void releaseListener(){ - TaxiModel.getInstance().setCarStatusCallback(null); - } - - @Override - public void onDestroy(@NonNull LifecycleOwner owner) { - super.onDestroy(owner); - releaseListener(); - } - - // 获取全部订单列表 - public void queryOrdersList(int page, int size) { - TaxiModel.getInstance().queryOrdersList(page, size); - } - - @Override - public void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onServiceDataUpdate(dailyTimeDuration,dailyOrderNum); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onOrdersListPageRefresh(List ordersList) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onOrdersListPageRefresh(ordersList); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - private void runOnUIThread( Runnable executor ) { - if ( executor == null ) { - return; - } - if ( Looper.myLooper() != Looper.getMainLooper() ) { - UiThreadHandler.post( executor ); - } else { - executor.run(); - } - } - -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java deleted file mode 100644 index 3d93ae699a..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java +++ /dev/null @@ -1,522 +0,0 @@ -package com.mogo.och.taxi.presenter; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import android.os.Build; -import android.os.Looper; -import android.util.ArrayMap; - -import androidx.annotation.NonNull; -import androidx.annotation.RequiresApi; -import androidx.lifecycle.LifecycleOwner; - -import com.mogo.commons.AbsMogoApplication; -import com.mogo.commons.mvp.Presenter; -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; -import com.mogo.eagle.core.function.call.och.CallerEagleBaseFunctionCall4OchManager; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.common.module.biz.login.ILoginCallback; -import com.mogo.och.common.module.biz.login.LoginStatusEnum; -import com.mogo.och.common.module.biz.login.LoginStatusManager; -import com.mogo.och.common.module.biz.login.OpenOrderStatusEnum; -import com.mogo.och.common.module.biz.order.OrderModel; -import com.mogo.och.common.module.manager.autopilot.OCHAdasAbilityManager; -import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager; -import com.mogo.och.common.module.manager.autopilot.line.LineManager; -import com.mogo.och.common.module.voice.VoiceNotice; -import com.mogo.och.data.bean.LineInfo; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.callback.ITaxiADASStatusCallback; -import com.mogo.och.taxi.callback.ITaxiControllerStatusCallback; -import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; -import com.mogo.och.taxi.constant.TaxiConst; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.model.TaxiModel; -import com.mogo.och.taxi.ui.TaxiFragment; - -import org.jetbrains.annotations.NotNull; - -import java.util.List; - -/** - * @author congtaowang - * @since 2021/1/18 - *

- * 描述 - */ -public class TaxiPresenter extends Presenter implements ITaxiADASStatusCallback, - ITaxiOrderStatusCallback, ITaxiControllerStatusCallback, ILoginCallback { - - private static final String TAG = TaxiPresenter.class.getSimpleName(); - - public TaxiPresenter(TaxiFragment view) { - super(view); - TaxiModel.getInstance().init(AbsMogoApplication.getApp()); - OCHAdasAbilityManager.getInstance().init(AbsMogoApplication.getApp()); - initListeners(); - } - - @Override - public void onCreate(@NonNull LifecycleOwner owner) { - super.onCreate(owner); - CallerLogger.d(M_TAXI + TAG, "网约车-onCreate"); - } - - @Override - public void onDestroy(@NonNull LifecycleOwner owner) { - super.onDestroy(owner); - CallerLogger.d(M_TAXI + TAG, "网约车-onDestroy"); - releaseListeners(); - TaxiModel.getInstance().release(); - } - - private void initListeners() { - TaxiModel.getInstance().setADASStatusCallback(this); - TaxiModel.getInstance().setControllerStatusCallback(this); - TaxiModel.getInstance().setOrderStatusCallback(this); - LoginStatusManager.INSTANCE.addListener(TAG,this); - } - - private void releaseListeners() { - TaxiModel.getInstance().setADASStatusCallback(null); - TaxiModel.getInstance().setControllerStatusCallback(null); - TaxiModel.getInstance().setOrderStatusCallback(null); - LoginStatusManager.INSTANCE.removeListener(TAG); - OCHAdasAbilityManager.getInstance().release(); - } - - private void runOnUIThread(Runnable executor) { - if (executor == null) { - return; - } - if (Looper.myLooper() != Looper.getMainLooper()) { - UiThreadHandler.post(executor); - } else { - executor.run(); - } - } - - /** - * 开启自动驾驶 自驾模式 - */ - public void startAutoPilot() { - TaxiModel.getInstance().startAutoPilot(); - } - - /** - * 人工模式 - */ - public void startManualDrive() { - TaxiModel.getInstance().startServicePilotDone(); - } - - /** - * 跳过乘客验证环节 - */ - public void jumpPassengerCheckDone() { - TaxiModel.getInstance().jumpPassengerCheckDone(); - } - - /** - * 司机确认车辆环境可开启自动驾驶 - */ - public void confirmAutopilotConditionByDriver() { - TaxiModel.getInstance().confirmAutopilotConditionByDriver(); - } - - // 更新接单状态 - public void updateCarStatus() { - TaxiModel.getInstance().updateCarStatus(); - } - - - // 获取当前订单状态 - public TaxiOrderStatusEnum getCurOrderStatus() { - return TaxiModel.getInstance().getCurOrderStatus(); - } - - // 取消当前订单 - public void cancelCurOrder(int reasonType, String reason) { - TaxiModel.getInstance().cancelCurrentOrder(reasonType, reason); - } - - // 取消待服务中订单 - public void cancelOrderById(String orderNo, int reasonType, String reason) { - TaxiModel.getInstance().cancelOrderById(orderNo, reasonType, reason); - } - - // 查询当前订单route信息:预估时间、里程等 - public void queryCurOrderRouteInfo() { - TaxiModel.getInstance().queryCurOrderRouteInfo(); - } - - // 执行抢单动作 - public void grabOrder() { - TaxiModel.getInstance().grabOrder(); - } - - // 关闭新到预约单 - public void cancelNewBookingOrder() { - TaxiModel.getInstance().cancelNewBookingOrder(); - } - - //更新订单已完成状态 - public void completeOrderService() { - TaxiModel.getInstance().orderCompleted(); - } - - // 登出 - public void logout() { - TaxiModel.getInstance().logout(); - } - - //导航去订单目的地 - public void startNaviToEndStation(boolean isShow) { - TaxiModel.getInstance().startNaviToEndStation(isShow); - } - - public void reportToEndDisAndTime(long lastSumLength, long duration) {//米/秒 - TaxiModel.getInstance().reportOrderRemain(lastSumLength, duration); - } - - public void closeOrderByMan() { - TaxiModel.getInstance().arriveTerminal(); - } - - @Override - public void onAutopilotArriveEnd() { - - } - - @Override - public void onAutopilotEnable(boolean canStartAuto) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.updateAutopilotStatus( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE,canStartAuto); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onAutopilotDisable(boolean canStartAuto) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.updateAutopilotStatus( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE,canStartAuto); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onAutopilotRunning(boolean canStartAuto) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.updateAutopilotStatus( - IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING,canStartAuto); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - - @Override - public void onManMachineCoDriving(boolean canStartAuto) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onManMachineCoDriving(IMoGoAutopilotStatusListener.STATUS_PARALLEL_DRIVING,canStartAuto); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void updateAutopilotStatus(boolean canStartAuto) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.updateAutopilotStatus( - CallerAutoPilotStatusListenerManager.INSTANCE.getState(),canStartAuto); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onStartAdasFailure() { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.stopAnimAndUpdateBtnStatus(); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onOrdersInServiceChanged(@NonNull @NotNull List inServiceList) { - - } - - @Override - public void onOrdersWaitServiceChanged(@NonNull @NotNull List waitServiceList) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onOrdersWaitServiceChanged(waitServiceList); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @RequiresApi(api = Build.VERSION_CODES.P) - @Override - public void onCurrentOrderStatusChanged(OrderQueryRespBean.Result order) { - OchChainLogManager.writeChainLog("订单信息变化",order.toString()); - OrderModel.INSTANCE.invokeListener(order); - CallerLogger.d(M_TAXI + TAG, "order = " + order.toString()); - LineManager.setLineInfo(new LineInfo(order.lineId,order.lineName,new ArrayMap<>())); - if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == order.orderStatus) { - TaxiModel.getInstance().queryAutopilotStatus(true); - TaxiModel.getInstance().setStation(); - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.setGuidShow(); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus) { - TaxiModel.getInstance().startDynamicCalculateRouteInfo(); - TaxiModel.getInstance().setStation(); - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.updateCtvAutopilotStatusTag(true); - CallerEagleBaseFunctionCall4OchManager.INSTANCE.updateOrderStatus(true); - mView.setGuidHide(); - } - } - }, UiThreadHandler.MODE.QUEUE); - - } - - if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus || - TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus || - TaxiOrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus) { - TaxiModel.getInstance().startOrStopCalculateRouteInfo(false); - TaxiModel.getInstance().cleanLineMarker(); - TaxiModel.getInstance().cleanStation(); - LineManager.setLineInfo(null); - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - /* 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - mView.updateCtvAutopilotStatusTag(false); - - if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus) { - CallerEagleBaseFunctionCall4OchManager.INSTANCE.updateOrderStatus(false); - } - } - } - }, UiThreadHandler.MODE.QUEUE); - } - if (TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus) { - VoiceNotice.showNotice("乘客已取消行程"); - } - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.updateCurrentOrderStatusChanged(order); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onCurrentOrderCancelDone() { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onCurrentOrderCancelDone(); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onOrderCancelDone(String orderNo) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onOrderCancelDone(orderNo); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onCurrentOrderRouteInfoGot(OrderQueryRouteInfoRespBean.Result routeInfo) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - OchChainLogManager.writeChainLog( - "到达目的地计算距离和时间", - "距离:"+routeInfo.distanceToEnd+" 时间:"+routeInfo.durationToEnd - ); - mView.onCurrentOrderRouteInfoGot(routeInfo); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onCurrentOrderDistToStartChanged(long meters, long timeInSecond) { - } - - @Override - public void onCurrentOrderDistToEndChanged(long meters, long timeInSecond) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onCurrentOrderDistToEndChanged(meters, timeInSecond); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onNewBookingOrderGot(OrderQueryRespBean.Result order) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onNewBookingOrderGot(order); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onGrabOrderExecuteDone() { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onGrabOrderExecuteDone(); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onGrabOrderSuccess(OrderQueryRespBean.Result order) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onGrabOrderSuccess(order); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onGrabOrderFailed(OrderQueryRespBean.Result order) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onGrabOrderFailed(order); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onDriverHasCheckedPilotCondition() { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onCheckPilotConditionSafe(); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onNaviToEnd(boolean isAmap, boolean isShow) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.onNaviToEnd(isAmap, isShow); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void startOpenAutopilot() { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if(mView!=null) { - mView.startOrStopLoadingAnim(true); - } - } - }, UiThreadHandler.MODE.QUEUE); - } - - @Override - public void onStatusChange(LoginStatusEnum currentStatus) { - //设置 是否启动订单轮训 - TaxiModel.getInstance().startOrStopOrderLoop(LoginStatusManager.isLogin()&&LoginStatusManager.isOpenOrderType()); - // 设置当前用户角色 - String role = ""; - switch (LoginStatusManager.getPurpose()) { - case DEMO:{ - role = TaxiConst.DEMO_USER; - } - case TEST:{ - role = TaxiConst.TEST_USER; - } - } - } - - @Override - public void onOpenOrderStatusEnumChange(OpenOrderStatusEnum businessEnum) { - if(businessEnum==OpenOrderStatusEnum.Ordering){ - TaxiModel.getInstance().startOrStopOrderLoop(LoginStatusManager.isLogin()&&LoginStatusManager.isOpenOrderType()); - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java deleted file mode 100644 index d9363e93ac..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java +++ /dev/null @@ -1,309 +0,0 @@ -package com.mogo.och.taxi.ui; - -import static com.mogo.och.taxi.constant.TaxiConst.TIMER_START_AUTOPILOT_INTERVAL; - -import android.content.Context; -import android.content.res.Configuration; -import android.os.Bundle; -import android.os.Handler; -import android.os.Looper; -import android.view.View; -import android.widget.FrameLayout; -import android.widget.ImageView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.FragmentActivity; -import androidx.fragment.app.FragmentTransaction; - -import com.mogo.commons.mvp.IView; -import com.mogo.commons.mvp.MvpFragment; -import com.mogo.commons.mvp.Presenter; -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; -import com.mogo.eagle.core.function.api.och.toolkit.IToolKitItemClickListener; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager; -import com.mogo.eagle.core.function.call.hmi.CallerHmiViewControlListenerManager; -import com.mogo.eagle.core.function.call.och.CallerEagleBaseFunctionCall4OchManager; -import com.mogo.eagle.core.function.hmi.map.MapContainerLayout; -import com.mogo.eagle.core.function.view.MapRoamView; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.listener.IMogoMapListener; -import com.mogo.och.common.module.wigets.map.drawline.LineView; -import com.mogo.och.taxi.R; - -import java.lang.ref.WeakReference; - -/** - * 网约车基础Fragment,主要负责布局通用界面,处理站点面板和通话面板互斥情况 - *

- * 部分业务放在了此处处理 - * - * @author tongchenfei - */ -public abstract class BaseTaxiTabFragment> extends MvpFragment implements IMogoMapListener { - - private static final String TAG = "BaseOchFragment"; - private FrameLayout flNaviPanelContainer; - private ImageView mCloseNaviIcon; - protected TaxiAmapNaviFragment ochAmapNaviFragment = null; - protected TaxiRottingNaviFragment taxiRottingNaviFragment = null; - private MapRoamView mapRoamView; - private MapContainerLayout mapContainerLayout; - private final Handler mHandler = new Handler(Looper.getMainLooper()); - private String runningTaskGateWay = "RUNNINGTASKGATEWAY"; - private String lineView = "LINEVIEW"; - - // 查看运营情况 点击账户信息右边的箭头展示 - private WeakReference personalDialogFragment = null; - - - @Override - protected int getLayoutId() { - return R.layout.taxi_base_fragment; - } - - @Override - protected void initViews() { - mapContainerLayout = findViewById(R.id.mapContainerLayout); - mapRoamView = findViewById(R.id.mapRoamView); - updateCtvAutopilotStatusTag(false); - mCloseNaviIcon = findViewById(R.id.taxi_close_navi_icon); - flNaviPanelContainer = findViewById(R.id.module_mogo_och_navi_panel_container); - CallerHmiViewControlListenerManager.INSTANCE.invokeMainPageViewVisible(View.VISIBLE); - onAutopilotStatusChanged(CallerAutoPilotStatusListenerManager.INSTANCE.getState(), CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - - mCloseNaviIcon.setOnClickListener(v -> { - showAmapNaviToStationFragment(false); - showRottingToStationFragment(false); - }); - - if (getContext() != null) { - CallerEagleBaseFunctionCall4OchManager.INSTANCE.addSingleToolKitDefaultItem(runningTaskGateWay, "运营看板", R.drawable.common_biz_operation, 4); - CallerEagleBaseFunctionCall4OchManager.INSTANCE.addToolKitDefaultItemClickListener(runningTaskGateWay, new IToolKitItemClickListener() { - @Override - public void onItemClick(@NonNull String toolTag, @Nullable Context ctx) { - if (runningTaskGateWay.equals(toolTag)) { - CallerLogger.d(TAG,"runningTaskGateWay:"+runningTaskGateWay+"---toolTag:"+toolTag); - personalDialogFragment = new WeakReference<>(new TaxiPersonalDialogFragment()); - FragmentActivity activity = getActivity(); - if (activity != null) { - personalDialogFragment.get().show(activity.getSupportFragmentManager(), "service_data"); - } - } - } - }); - CallerEagleBaseFunctionCall4OchManager.INSTANCE.addSingleToolKitCustomItem(lineView, new LineView(getContext()), 10); - } - - } - - @Override - protected void initViews(Bundle savedInstanceState) { - super.initViews(savedInstanceState); - mapContainerLayout.onCreate(savedInstanceState); - mapRoamView.onCreate(savedInstanceState); - } - - @Override - public void onResume() { - super.onResume(); - mapContainerLayout.onResume(); - mapRoamView.onResume(); - } - - @Override - public void onPause() { - super.onPause(); - mapContainerLayout.onPause(); - mapRoamView.onPause(); - } - - protected void onChangeOperationStatus() { - - } - - @Override - public void onLowMemory() { - super.onLowMemory(); - mapContainerLayout.onLowMemory(); - mapRoamView.onLowMemory(); - } - - @Override - public void onSaveInstanceState(@NonNull Bundle outState) { - super.onSaveInstanceState(outState); - mapContainerLayout.onSaveInstanceState(outState); - mapRoamView.onSaveInstanceState(outState); - } - - @Override - public void onDestroyView() { - mapContainerLayout.onDestroy(); - mapRoamView.onDestroy(); - super.onDestroyView(); - flNaviPanelContainer = null; - mapContainerLayout = null; - mapRoamView = null; - mCloseNaviIcon = null; - ochAmapNaviFragment = null; - taxiRottingNaviFragment = null; - CallerAutopilotRecordListenerManager.INSTANCE.removeListener(TAG); - } - - @Override - public void onDestroy() { - super.onDestroy(); - } - - public void onAutopilotStatusChanged(int status, boolean canStart) { - UiThreadHandler.post(new Runnable() { - @Override - public void run() { - if (isStarting && IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING != status) { - // 1. 主动开启自动驾驶中,不为2(为0、1)则继续loading - return; - } - if (isStarting && IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING == status) { - // 2. 主动开启自动驾驶中,为2则停止loading,并isStarting = false - startAutopilotDone(true); - return; - } - // 3. 其他过程直接更新 - startOrStopLoadingAnim(false); - autopilotStatusAnimchanged(status, canStart); - } - }, UiThreadHandler.MODE.QUEUE); - } - - public void stopAnimAndUpdateBtnStatus() { - startOrStopLoadingAnim(false); - startAutopilotDone(false); - } - - public void onManMachineCoDriving(int manMachineCoDriving, boolean canStartAuto) { - autopilotStatusAnimchanged(manMachineCoDriving, canStartAuto); - } - - public void updateCtvAutopilotStatusTag(boolean tag) { - } - - public void onCheckPilotConditionSafe() { - updateCtvAutopilotStatusTag(true); - updateOrderBottomBtnUI(); - } - - protected abstract void updateOrderBottomBtnUI(); - - public void autopilotStatusAnimchanged(int status, boolean canStart) { - - } - - private void startAutopilotDone(boolean success) { - mHandler.postDelayed(new Runnable() { - @Override - public void run() { - startOrStopLoadingAnim(false); - onAutopilotStatusChanged(CallerAutoPilotStatusListenerManager.INSTANCE.getState(), CallerAutoPilotControlManager.INSTANCE.isCanStartAutopilot(false, 0)); - } - }, 1000L); - } - - public boolean isStarting = false; - - public void startOrStopLoadingAnim(boolean start) { - if (start) { - isStarting = true; - startingAutoApilotCountDown(); - } else { - isStarting = false; - } - } - - private void startingAutoApilotCountDown() { - UiThreadHandler.postDelayed(new Runnable() { - @Override - public void run() { //未启动成功10s后做处理 - if (isStarting) { //判断动画是否在进行 - //并且根据状态来设置自动驾驶启动成功还是失败 - startAutopilotDone(CallerAutoPilotStatusListenerManager.INSTANCE.getState() - == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING); - } - - } - }, TIMER_START_AUTOPILOT_INTERVAL); - } - - protected void showAmapNaviToStationFragment(boolean isShow) { - - FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); - closeAmapViewIFHadeAdd(); - if (isShow) { - closeRouteViewIFHadeAdd(); - ochAmapNaviFragment = TaxiAmapNaviFragment.newInstance(); - if (ochAmapNaviFragment.isAdded()) { - return; - } - transaction.add(R.id.module_mogo_och_navi_panel_container, ochAmapNaviFragment).show(ochAmapNaviFragment); - transaction.commitAllowingStateLoss(); - mCloseNaviIcon.setVisibility(View.VISIBLE); - flNaviPanelContainer.setVisibility(View.VISIBLE); - } else { - mCloseNaviIcon.setVisibility(View.GONE); - flNaviPanelContainer.setVisibility(View.INVISIBLE); - } - } - - private void closeAmapViewIFHadeAdd() { - if (ochAmapNaviFragment != null) { - FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); - ochAmapNaviFragment.onDestroy(); - transaction.remove(ochAmapNaviFragment); - transaction.commitAllowingStateLoss(); - ochAmapNaviFragment = null; - } - } - - private void closeRouteViewIFHadeAdd() { - if (taxiRottingNaviFragment != null) { - FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); - taxiRottingNaviFragment.onDestroy(); - transaction.remove(taxiRottingNaviFragment); - transaction.commitAllowingStateLoss(); - taxiRottingNaviFragment = null; - } - } - - protected void showRottingToStationFragment(boolean isShow) { - - FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); - if (isShow) { - closeAmapViewIFHadeAdd(); -// if (ochNaviFragment == null){ - taxiRottingNaviFragment = TaxiRottingNaviFragment.newInstance(); -// } - if (taxiRottingNaviFragment.isAdded()) { - return; - } - transaction.add(R.id.module_mogo_och_navi_panel_container, taxiRottingNaviFragment).show(taxiRottingNaviFragment); - transaction.commitAllowingStateLoss(); - mCloseNaviIcon.setVisibility(View.VISIBLE); - flNaviPanelContainer.setVisibility(View.VISIBLE); - } else { - closeRouteViewIFHadeAdd(); - mCloseNaviIcon.setVisibility(View.GONE); - flNaviPanelContainer.setVisibility(View.INVISIBLE); - } - } - - - public abstract void startNaviToEndStation(boolean isShow); - - public void setGuidShow() { - } - - public void setGuidHide() { - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/BaseTaxiUIFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/BaseTaxiUIFragment.java deleted file mode 100644 index 013b27bf3e..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/BaseTaxiUIFragment.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.mogo.och.taxi.ui; - -import android.os.Bundle; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.Fragment; - -/** - * @author: wangmingjun - * @date: 2021/9/9 - */ -public abstract class BaseTaxiUIFragment extends Fragment { - private View mRootView; - @Nullable - @Override - public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - if (mRootView == null) { - mRootView = inflater.inflate(getLayoutId(), container, false); - } else { - ViewGroup viewGroup = (ViewGroup) mRootView.getParent(); - if (viewGroup != null) { - viewGroup.removeView(mRootView); - } - } - initViews(mRootView); - initViews(savedInstanceState); - return mRootView; - } - /** - * 布局资源 - * - * @return - */ - protected abstract int getLayoutId(); - - protected abstract void initViews(View view); - - protected void initViews(Bundle savedInstanceState) { - } - - @Override - public void onDestroy() { - super.onDestroy(); - mRootView = null; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/ITaxiMapDirectionView.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/ITaxiMapDirectionView.java deleted file mode 100644 index cf589373ef..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/ITaxiMapDirectionView.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.mogo.och.taxi.ui; - -/** - * @author xiaoyuzhou - * @date 2021/6/24 11:33 上午 - */ -public interface ITaxiMapDirectionView { - - /** - * 绘制路径线 - */ - void drawablePolyline(); - - /** - * 清除路径线 - */ - void clearPolyline(); - - /** - * 设置路径中起终点marker - */ - void setLineMarker(); -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/ITaxiView.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/ITaxiView.java deleted file mode 100644 index a45a30f184..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/ITaxiView.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.mogo.och.taxi.ui; - -import com.mogo.commons.mvp.IView; - -public -/** - * @author congtaowang - * @since 2021/1/18 - * - * 描述 - */ -interface ITaxiView extends IView { -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiAmapNaviFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiAmapNaviFragment.java deleted file mode 100644 index f99df1959b..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiAmapNaviFragment.java +++ /dev/null @@ -1,220 +0,0 @@ -package com.mogo.och.taxi.ui; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import android.os.Bundle; -import android.view.View; - -import com.amap.api.navi.AMapNaviViewListener; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.och.common.module.map.AmapNaviToDestinationModel; -import com.mogo.och.common.module.map.ICommonNaviChangedCallback; -import com.mogo.och.common.module.map.CommonAmapNaviVIew; -import com.mogo.och.taxi.R; - -/** - * @author: wangmingjun - * @date: 2021/11/30 - */ -public class TaxiAmapNaviFragment extends BaseTaxiUIFragment implements AMapNaviViewListener { - - private CommonAmapNaviVIew mAMapNaviView; - private ICommonNaviChangedCallback mNaviToStartInfoCallback; - public static TaxiAmapNaviFragment newInstance() { - - Bundle args = new Bundle(); - - TaxiAmapNaviFragment fragment = new TaxiAmapNaviFragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_amap_navi_view; - } - - @Override - protected void initViews(View view) { - mAMapNaviView = view.findViewById(R.id.navi_view); - } - - @Override - protected void initViews(Bundle savedInstanceState) { - super.initViews(savedInstanceState); - if (mAMapNaviView != null) { - mAMapNaviView.onCreate(savedInstanceState); - } - } - - @Override - public void onResume() { - super.onResume(); - if (mAMapNaviView != null) { - mAMapNaviView.onResume(); - } - } - - @Override - public void onPause() { - super.onPause(); - if (mAMapNaviView != null) { - mAMapNaviView.onPause(); - } - } - - @Override - public void onDestroy() { - super.onDestroy(); - - AmapNaviToDestinationModel.getInstance(getContext()).setVoiceIsMute(false); - if (mAMapNaviView != null){ - mAMapNaviView.onDestroy(); - } - - if (mNaviToStartInfoCallback != null){ - mNaviToStartInfoCallback = null; - } - } - - @Override - public void onNaviSetting() { - //底部导航设置点击回调 - } - - @Override - public void onNaviCancel() { - } - - @Override - public void onNaviMapMode(int naviMode) { - //导航态车头模式,0:车头朝上状态;1:正北朝上模式。 - } - - @Override - public void onNaviTurnClick() { - //转弯view的点击回调 - } - - @Override - public void onNextRoadClick() { - //下一个道路View点击回调 - } - - - @Override - public void onScanViewButtonClick() { - //全览按钮点击回调 - } - - - @Override - public void onLockMap(boolean isLock) { - //锁地图状态发生变化时回调 - } - - @Override - public void onNaviViewLoaded() { - CallerLogger.d(M_TAXI + "wlx", "导航页面加载成功"); - CallerLogger.d(M_TAXI + "wlx", "请不要使用AMapNaviView.getMap().setOnMapLoadedListener();会overwrite导航SDK内部画线逻辑"); - } - - @Override - public void onMapTypeChanged(int i) { - - } - - @Override - public void onNaviViewShowMode(int i) { - - } - - @Override - public boolean onNaviBackClick() { - return false; - } - - /** - * 车道信息说明: - *

- * 0xFF, 无对应车道 - * 0, 直行 - * 1, 左转 - * 2, 直行+左转 - * 3, 右转 - * 4, 直行+右转 - * 5, 左掉头 - * 6, 左转+右转 - * 7, 直行+左转+右转 - * 8, 右掉头 - * 9, 直行+左掉头 - * 10, 直行+右掉头 - * 11, 左转+左掉头 - * 12, 右转+右掉头 - * 13, 直行+扩展 - * 14, 左转+左掉头+扩展 - * 15, 保留 - * 16, 直行+左转+左掉头 - * 17, 右转+左掉头 - * 18, 左转+右转+左掉头 - * 19, 直行+右转+左掉头 - * 20, 左转+右掉头 - * 21, 公交车道 - * 22, 空车道 - * 23 可变车道 - */ - - String[] array = { - "直行车道" - , "左转车道" - , "左转或直行车道" - , "右转车道" - , "右转或直行车道" - , "左掉头车道" - , "左转或者右转车道" - , " 左转或右转或直行车道" - , "右转掉头车道" - , "直行或左转掉头车道" - , "直行或右转掉头车道" - , "左转或左掉头车道" - , "右转或右掉头车道" - , "直行并且车道扩展" - , "左转+左掉头+扩展" - , "不可以选择该车道" - , "直行+左转+左掉头车道" - , "右转+左掉头" - , "左转+右转+左掉头" - , "直行+右转+左掉头" - , "左转+右掉头" - , "公交车道" - , "空车道" - , "可变车道" - }; - - String[] actions = { - "直行" - , "左转" - , "左转或直行" - , "右转" - , "右转或这行" - , "左掉头" - , "左转或者右转" - , " 左转或右转或直行" - , "右转掉头" - , "直行或左转掉头" - , "直行或右转掉头" - , "左转或左掉头" - , "右转或右掉头" - , "直行并且车道扩展" - , "左转+左掉头+扩展" - , "不可以选择" - , "直行+左转+左掉头" - , "右转+左掉头" - , "左转+右转+左掉头" - , "直行+右转+左掉头" - , "左转+右掉头" - , "公交车道" - , "空车道" - , "可变车道" - }; -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiBeingServerdOrdersFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiBeingServerdOrdersFragment.java deleted file mode 100644 index 8eafd72d76..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiBeingServerdOrdersFragment.java +++ /dev/null @@ -1,815 +0,0 @@ -package com.mogo.och.taxi.ui; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; -import static com.mogo.map.MogoMap.DEFAULT; - -import android.app.Activity; -import android.graphics.Color; -import android.graphics.drawable.GradientDrawable; -import android.os.Build; -import android.os.Bundle; -import android.text.Html; -import android.view.View; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; - -import androidx.annotation.RequiresApi; -import androidx.constraintlayout.widget.ConstraintLayout; - -import com.amap.api.navi.model.NaviLatLng; -import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; -import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; -import com.mogo.eagle.core.function.hmi.ui.widget.ItinerarySummaryDialog; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.DateTimeUtils; -import com.mogo.eagle.core.utilcode.util.ToastUtils; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.map.overlay.IMoGoOverlayManager; -import com.mogo.map.overlay.core.Level; -import com.mogo.map.overlay.point.Point; -import com.mogo.och.common.module.manager.autopilot.location.OchLocationManager; -import com.mogo.och.common.module.map.AmapNaviToDestinationModel; -import com.mogo.och.common.module.map.ICommonNaviChangedCallback; -import com.mogo.och.common.module.utils.DateTimeUtil; -import com.mogo.och.common.module.utils.NumberFormatUtil; -import com.mogo.och.common.module.utils.OCHThreadPoolManager; -import com.mogo.och.common.module.utils.ResourcesUtils; -import com.mogo.och.common.module.voice.VoiceNotice; -import com.mogo.och.common.module.wigets.OCHCommitDialog; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.constant.TaxiConst; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.model.TaxiModel; -import com.mogo.skin.utils.SkinResources; - -import java.util.Calendar; -import java.util.List; - -/** - * @author congtaowang - * @since 2021/1/18 - * 正在进行中订单 - */ -public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment - implements View.OnClickListener, ICommonNaviChangedCallback { - - public static final String TAG = "OCHTaxiBeingServerd"; - private Activity mActivity; - private TaxiFragment mTaxiFragment; - private String mOrderNo; - private volatile int mTtsLessThan200Tip = 0;//离终点200米提示播报 - private OrderQueryRespBean.Result mCurrentOrder = null; - private boolean isFirstStartAutopilotDone = true; - - private TextView mOrderStatus; - private ImageView mOrderCancel; - - private TextView mOrderServerStatus; - - private ConstraintLayout mBeingOrderLayout; - private ConstraintLayout mContentModule3; - private ConstraintLayout mContentModule2; - private TextView mDistanceAndTime3; - private TextView mDistanceAndTime2; - private TextView mStationTv2; - private TextView mOrderOtherContent3; - private TextView mArrivedStartTimeTv32; - private TextView mTitleTV2; - - private LinearLayout mContentModule31; - private TextView mStationTv31; - private ConstraintLayout mContentModule32; - private TextView mStationTv32; - private TextView mArrivedStationTitleTv32; - private TextView mGoAheadStationTitleTv31; - private TextView mCatchStationTitleTv31; - private ImageView mNaviStartIcon; - private ImageView mNaviToEndIcon; - private TextView mPassengerNum; - private TextView mPassengerPhone; - private ConstraintLayout mPassengerInfoLayout; - - private TextView mNoDatasTv; - - private ConstraintLayout mNoDataView; - - private volatile int saveOrderState = -1; - - private ItinerarySummaryDialog dialog; - - - public static TaxiBeingServerdOrdersFragment newInstance(Activity activity, TaxiFragment taxiFragment) { - Bundle args = new Bundle(); - - TaxiBeingServerdOrdersFragment fragment = new TaxiBeingServerdOrdersFragment(); - fragment.setArguments(args); - fragment.mActivity = activity; - fragment.mTaxiFragment = taxiFragment; - return fragment; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_being_order; - } - - @Override - protected void initViews(View view) { - mOrderStatus = view.findViewById(R.id.module_och_taxi_order_status); - mOrderCancel = view.findViewById(R.id.module_och_taxi_order_cancel_iv); - - mOrderServerStatus = view.findViewById(R.id.module_och_taxi_order_server_status_tv); - - mBeingOrderLayout = view.findViewById(R.id.module_och_taxi_being_order_content); - mContentModule2 = view.findViewById(R.id.module_och_taxi_order_status_station_2); - mContentModule3 = view.findViewById(R.id.module_och_taxi_order_status_station_3); - mDistanceAndTime2 = view.findViewById(R.id.module_och_taxi_order_distance_anchor_2); - mContentModule31 = view.findViewById(R.id.module_och_taxi_order_go_ahead_station_31); - mContentModule32 = view.findViewById(R.id.module_och_taxi_order_arrive_station_32); - mStationTv2 = view.findViewById(R.id.module_och_taxi_order_station_2); - mStationTv31 = view.findViewById(R.id.module_och_taxi_order_start_station_31); - mStationTv32 = view.findViewById(R.id.module_och_taxi_order_end_station_32); - mOrderOtherContent3 = view.findViewById(R.id.module_och_taxi_order_other_content_3); - mDistanceAndTime3 = view.findViewById(R.id.module_och_taxi_order_distance_anchor_3); - mArrivedStartTimeTv32 = view.findViewById(R.id.module_och_taxi_order_had_arrived_time_32); - mTitleTV2 = view.findViewById(R.id.module_och_taxi_order_station_title_2); - mCatchStationTitleTv31 = view.findViewById(R.id.go_ahead_station_catch_31); - mGoAheadStationTitleTv31 = view.findViewById(R.id.go_ahead_station_31); - mArrivedStationTitleTv32 = view.findViewById(R.id.arrive_station_32); - - mPassengerInfoLayout = view.findViewById(R.id.module_och_taxi_order_passenger_data); - mPassengerNum = view.findViewById(R.id.taxi_passenger_num); - mPassengerPhone = view.findViewById(R.id.taxi_passenger_phone); - - mNoDatasTv = view.findViewById(R.id.no_order_data_tv); - mNoDataView = view.findViewById(R.id.being_no_data_view); - - initOnClickListener(); - - initNaviView(view); - - isHaveBeingOrder(false); - - //任意模式下调试信息都打开 - initOrderTestBar(); - } - - private void initOnClickListener() { - mOrderCancel.setOnClickListener(this); - mOrderServerStatus.setOnClickListener(this); - } - - @Override - public void onResume() { - super.onResume(); - } - - private void initNaviView(View view) { - mNaviStartIcon = view.findViewById(R.id.module_och_taxi_navi_iv); - mNaviStartIcon.setOnClickListener(this); - - mNaviToEndIcon = view.findViewById(R.id.module_och_taxi_navi_end_iv); - mNaviToEndIcon.setOnClickListener(this); - - } - - /** - * 初始化订单信息 - */ - @RequiresApi(api = Build.VERSION_CODES.P) - public void updateCurrentOrderStatusChanged(OrderQueryRespBean.Result order) { - try { - if (order == null) return; - if (order.orderStatus == TaxiOrderStatusEnum.JourneyCompleted.getCode()) { - mCurrentOrder = null; - isHaveBeingOrder(false); - mDistanceAndTime2.setText("距离 - - 公里,用时 - - 分"); - mDistanceAndTime3.setText("距离 - - 公里,用时 - - 分"); - return; - } - mOrderNo = order.orderNo; - onOrderStatusChanged(order); - if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus) { - - showOrHideOrderModeBtn(false); - - mTaxiFragment.queryCurOrderRouteInfo(); - mContentModule3.setVisibility(View.GONE); - mContentModule2.setVisibility(View.VISIBLE); - CallerLogger.d(M_TAXI + TAG, "已经达到终点"); - updateOrderBottomBtn(getString(R.string.module_och_taxi_order_server_end), - Color.parseColor("#FFFFFF"), - Color.parseColor("#FF1D5EF3"), - true); - mTitleTV2.setText("送乘客至"); - mStationTv2.setText(order.endSiteAddr); - - } else if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus) { - CallerLogger.d(M_TAXI + TAG, "已经去往终点"); - - showOrHideOrderModeBtn(false); - - mContentModule3.setVisibility(View.GONE); - mContentModule2.setVisibility(View.VISIBLE); - mOrderStatus.setText(R.string.module_och_taxi_on_the_way_2_end_station); - - updateOrderBottomBtn(getString(R.string.module_och_taxi_order_close), - Color.parseColor("#FFFFFF"), - Color.parseColor("#FF1D5EF3"), - true); - mTitleTV2.setText("送乘客至"); - mStationTv2.setText(order.endSiteAddr); - } else if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == order.orderStatus - || TaxiOrderStatusEnum.ArriveAtStart.getCode() == order.orderStatus){ - - mContentModule2.setVisibility(View.GONE); - mContentModule3.setVisibility(View.VISIBLE); - mArrivedStartTimeTv32.setVisibility(View.VISIBLE); - mContentModule32.setVisibility(View.VISIBLE); - mContentModule31.setVisibility(View.GONE); - mOrderOtherContent3.setVisibility(View.GONE); - - Calendar currentCale = DateTimeUtils.getCurrentDateTime(); - String currentHM = DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.HH_mm); - String currentDay = DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.yyyy_MM_dd); - String strHtml11 = "已于
" - + "" + currentHM + "" - + "" + " " + "到达乘客上车地点"; - mArrivedStartTimeTv32.setLineHeight(60); - mArrivedStartTimeTv32.setText(Html.fromHtml(strHtml11)); - - mArrivedStationTitleTv32.setText("送乘客至"); - mStationTv32.setText(order.endSiteAddr); - currentCale.add(Calendar.MINUTE, 10); - String strHtml13 = ""; - if (currentDay.equals(DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.yyyy_MM_dd))) { - strHtml13 = "免费等待至 " - + "" + DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.HH_mm) + ""; - - } else { - strHtml13 = "免费等待至" - + "" + DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.MM_dd_HH_mm) + ""; - } - mDistanceAndTime3.setText(Html.fromHtml(strHtml13)); - - if (TaxiOrderStatusEnum.ArriveAtStart.getCode() == order.orderStatus){ - CallerLogger.d(M_TAXI + TAG, "车辆已经达到起点"); - mPassengerInfoLayout.setVisibility(View.VISIBLE); - mPassengerNum.setText(order.passengerNum + "人"); - mPassengerPhone.setText(order.passengerPhone); - mOrderStatus.setText(R.string.module_och_taxi_waiting); - - updateOrderBottomBtn(getString(R.string.module_och_taxi_order_server_start_wait_check), - Color.parseColor("#FFFFFF"), - Color.parseColor("#FF1D5EF3"), - true); - - showOrHideOrderModeBtn(false); - }else if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == order.orderStatus ){ - CallerLogger.d(M_TAXI + TAG, "乘客已上车验证成功"); - - mPassengerInfoLayout.setVisibility(View.GONE); - mOrderStatus.setText(R.string.module_och_taxi_user_check_success); - - updateOrderBottomBtn(getString(R.string.module_och_taxi_order_server_start), - Color.parseColor("#FFFFFF"), - Color.parseColor("#FF1D5EF3"), - true); - - /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - // showOrHideOrderModeBtn(true); - showOrHideOrderModeBtn(false); - CallerLogger.d(M_TAXI + TAG, "自驾模式"); - startOrEndService(); - } - - }else if (TaxiModel.getInstance().checkCurrentOCHOrder()) { - CallerLogger.d(M_TAXI + TAG, "前往乘客上车地点"); - mContentModule2.setVisibility(View.GONE); - mContentModule3.setVisibility(View.VISIBLE); - mContentModule31.setVisibility(View.VISIBLE); - mArrivedStartTimeTv32.setVisibility(View.GONE); - mContentModule32.setVisibility(View.GONE); - mOrderOtherContent3.setVisibility(View.VISIBLE); - mDistanceAndTime3.setVisibility(View.VISIBLE); - mPassengerInfoLayout.setVisibility(View.VISIBLE); - mPassengerNum.setText(order.passengerNum + "人"); - mPassengerPhone.setText(order.passengerPhone); - mOrderStatus.setText(R.string.module_och_taxi_new_order); - - showOrHideOrderModeBtn(false); - - updateOrderBottomBtn(getString(R.string.module_och_taxi_order_server_start), - Color.parseColor("#4DFFFFFF"), - Color.parseColor("#4D1D5EF3"), - false); - - mGoAheadStationTitleTv31.setText("前往"); - mCatchStationTitleTv31.setText("接乘客"); - mStationTv31.setText(order.startSiteAddr); - - Calendar currentCale = DateTimeUtils.getCurrentDateTime(); - Calendar startCale = DateTimeUtil.formatLongToCalendar(order.bookingTime); - String currentDay = DateTimeUtil.formatCalendarToString(currentCale, DateTimeUtil.yyyy_MM_dd); - String startDay = DateTimeUtil.formatCalendarToString(startCale, DateTimeUtil.yyyy_MM_dd); - String strHtml1 = ""; - if (currentDay.equals(startDay)) { - strHtml1 = "乘客将于
" - + "" + DateTimeUtil.formatCalendarToString(startCale, DateTimeUtil.HH_mm) + "" - + " 用车"; - } else { - strHtml1 = "乘客将于
" - + "" + DateTimeUtil.formatCalendarToString(startCale, DateTimeUtil.MM_dd_HH_mm) + "" - + " 用车"; - } - mOrderOtherContent3.setText(Html.fromHtml(strHtml1)); - } - }catch (NullPointerException e){ //可能会出现订单信息已经轮询回来,但进行中页面控件还未初始化完成的情况 - TaxiModel.getInstance().clearCurrentOCHOrder(); - } - } - - private void showOrHideOrderModeBtn(boolean isShow) { - if (isShow){ - mOrderServerStatus.setVisibility(View.GONE); - }else { - mOrderServerStatus.setVisibility(View.VISIBLE); - } - } - - private void startNaviToStation(boolean isVoicePlay, double stationLat, double stationLng) { - AmapNaviToDestinationModel.getInstance(getContext()).destroyAmaNavi(); - MogoLocation gcj02Location = OchLocationManager.getGCJ02Location(); - double mCurLatitude = gcj02Location.getLatitude(); - double mCurLongitude =gcj02Location.getLongitude(); - - CallerLogger.d(M_TAXI + TAG, "currentLatLng=" + mCurLatitude + " " +mCurLongitude); - - NaviLatLng startNaviLatLng = new NaviLatLng(mCurLatitude, mCurLongitude); - NaviLatLng endNaviLatLng = new NaviLatLng(stationLat, stationLng); - AmapNaviToDestinationModel.getInstance(getContext()).initAMapNavi(startNaviLatLng, endNaviLatLng); - AmapNaviToDestinationModel.getInstance(getContext()).setVoiceIsMute(isVoicePlay); - AmapNaviToDestinationModel.getInstance(getContext()).setTaxiNaviChangedCallback(this); - } - - private void showOrHideNavi(boolean isShow) { - if (!isShow) { - mNaviStartIcon.setVisibility(View.GONE); - mNaviToEndIcon.setVisibility(View.GONE); - AmapNaviToDestinationModel.getInstance(getContext()).destroyAmaNavi(); - mTaxiFragment.showAmapNaviToStationFragment(false); - mTaxiFragment.showRottingToStationFragment(false); - } - } - - /** - * 剩余里程和剩余时间 - * @param meters m - * @param timeInSecond 秒 - */ - public void updateDistanceAndTime(long meters, long timeInSecond) { - String dis = "0"; - String disUnit = "公里"; - if (meters > 0){ - if (meters / 1000 < 1){ - disUnit = "米"; - dis = String.valueOf(Math.round(meters)); - }else { - disUnit = "公里"; - dis = NumberFormatUtil.formatLong((double)meters / 1000); - } - } - int min = (int)Math.ceil((double)timeInSecond/ 60f); - String strHtml2 = "里程 " + "" + dis + "" + " "+disUnit+"" - + ",剩余 " + "" + min + "" + " 分钟"; - try { - if (mCurrentOrder != null && mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { //前往上车点 - mDistanceAndTime3.setText(Html.fromHtml(strHtml2)); - if (mNaviStartIcon.getVisibility() == View.GONE){ - mNaviStartIcon.setVisibility(View.VISIBLE); - } - - } else if (mCurrentOrder != null && mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { //前往终点 时间单位是分钟 - if (mNaviToEndIcon.getVisibility() == View.GONE){ - mNaviToEndIcon.setVisibility(View.VISIBLE); - } - - if (mTtsLessThan200Tip < 1 && meters <= 250 && meters > 150){ - speekVoice200mTipsOnce(); - } - mDistanceAndTime2.setText(Html.fromHtml(strHtml2)); - if (isFirstStartAutopilotDone){ - isFirstStartAutopilotDone = false; - } - } - }catch (NullPointerException e){ - - } - } - - private void speekVoice200mTipsOnce() { - mTtsLessThan200Tip = 1; - } - - public void onCurrentOrderRouteInfoGot(OrderQueryRouteInfoRespBean.Result routeInfo) {// 单位 米, 秒 - CallerLogger.d(M_TAXI + TAG, "durationToEnd = " + routeInfo.durationToEnd); - - String dis = "0"; - long distance = routeInfo.distanceToEnd; - long duration = routeInfo.durationToEnd; - - if (routeInfo.distanceToEnd > 0){ - - dis = NumberFormatUtil.formatLong( (double) distance/ 1000); - } - dialog.setOrderMileage(distance); - - String strHtml2 = "全程 " + "" + dis + "" + " 公里" - + ",总用时 " + "" + (int)Math.ceil( (double) duration/ 60) + "" + " 分钟"; - if (mContentModule2 != null && mContentModule2.getVisibility() == View.VISIBLE) { - mDistanceAndTime2.setText(Html.fromHtml(strHtml2)); - } else if (mContentModule3 != null && mContentModule3.getVisibility() == View.VISIBLE) { - mDistanceAndTime3.setText(Html.fromHtml(strHtml2)); - } - } - - @Override - public void onDestroyView() { - super.onDestroyView(); - mTaxiFragment = null; - mActivity = null; - AmapNaviToDestinationModel.getInstance(getContext()).destroyAmaNavi(); - } - - private void startOrEndService() { - if (mCurrentOrder == null) return; - if (TaxiOrderStatusEnum.ArriveAtStart.getCode() == mCurrentOrder.orderStatus){ //到达乘客上车点,司机可跳过乘客屏认证 - mTaxiFragment.jumpPassengerCheckDone(); - }else if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == mCurrentOrder.orderStatus) {//点击此按钮,说明通知后端准备好开启自动驾驶的条件 - mTaxiFragment.confirmAutopilotConditionByDriver(); - }else if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == mCurrentOrder.orderStatus) {//点击了完成服务,结束订单并更新订单信息 - mTaxiFragment.completeOrderService(); - //VoiceNotice.showNotice(ResourcesUtils.getString(R.string.module_och_taxi_order_server_completed_tip)); - }else if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == mCurrentOrder.orderStatus){//前往目的地过程中可提前结束行程 - //自驾中提示,接管后才能结束 - if (CallerAutoPilotStatusListenerManager.INSTANCE.getState() - == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING){ - ToastUtils.showLong(R.string.taxi_switch_line_btn_warning1); - }else { - closeOrderDialog(); - } - } - } - - private void closeOrderDialog() { - OCHCommitDialog.Builder builder = new OCHCommitDialog.Builder(); - OCHCommitDialog closeOrderDialog = builder - .title(getString(R.string.dialog_order_close_title)) - .tips(getString(R.string.dialog_order_close_content)) - .confirmStr(getString(R.string.dialog_order_close_confirm)) - .cancelStr(getString(R.string.dialog_order_close_cancel)) - .build(getContext()); - closeOrderDialog.setClickListener(new OCHCommitDialog.ClickListener() { - @Override - public void confirm() { - if (mTaxiFragment != null) mTaxiFragment.closeOrderByMan(); - } - - @Override - public void cancel() { - closeOrderDialog.dismiss(); - } - }); - closeOrderDialog.show(); - } - - public void onOrderStatusChanged(OrderQueryRespBean.Result order) { - int status = order.orderStatus; - CallerLogger.d(M_TAXI + TAG, "status==" + status); - mCurrentOrder = order; - mActivity.runOnUiThread(() -> { - if (status == TaxiOrderStatusEnum.None.getCode() || status == TaxiOrderStatusEnum.Cancel.getCode() || status == TaxiOrderStatusEnum.JourneyCompleted.getCode()) { - isHaveBeingOrder(false); - mCurrentOrder = null; - clearOrderTag(); - } else { - isHaveBeingOrder(true); - } - if (status != saveOrderState) { - TaxiOrderStatusEnum ochStatus = TaxiOrderStatusEnum.valueOf(status); - switch (ochStatus) { - case OnTheWayToStart: - if(dialog!=null&&dialog.isShowing()) { - dialog.dismiss(); - } - dialog = null; - mOrderCancel.setVisibility(View.VISIBLE); - VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_new_order)); - mTtsLessThan200Tip = 0; - isFirstStartAutopilotDone = true; - double orderStartStationLat = order.startSiteGcjPoint.get(1); - double orderStartStationLng = order.startSiteGcjPoint.get(0); - startNaviToStation(false, orderStartStationLat, orderStartStationLng); - setOrRemoveMapMaker(true, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker); - setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker); - break; - case Cancel: - if(dialog!=null&&dialog.isShowing()) { - dialog.dismiss(); - } - dialog = null; - mCurrentOrder = null; - mTtsLessThan200Tip = 0; - isFirstStartAutopilotDone = true; - mOrderCancel.setVisibility(View.VISIBLE); - //VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_order_cancel)); - showOrHideNavi(false); - setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker); - setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker); - break; - case ArriveAtStart: - case UserArriveAtStart: - if(dialog!=null&&dialog.isShowing()) { - dialog.dismiss(); - } - dialog = null; - mTtsLessThan200Tip = 0; - isFirstStartAutopilotDone = true; - mOrderCancel.setVisibility(View.VISIBLE); - if (TaxiOrderStatusEnum.UserArriveAtStart.getCode() == ochStatus.getCode()){ - //VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_order_status_ph_text_check_success)); - }else { - VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_order_status_ph_text)); - } - showOrHideNavi(false); - setOrRemoveMapMaker(true, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker); - setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker); - break; - case OnTheWayToEnd: - if(dialog!=null&&dialog.isShowing()) { - dialog.dismiss(); - } - dialog = null; - mOrderCancel.setVisibility(View.VISIBLE); - if (mTaxiFragment != null) { - showNaviToEndStationFragment(false); - } - setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker); - setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker); - break; - case ArriveAtEnd: - if(dialog==null){ - dialog = new ItinerarySummaryDialog(getContext(),true,R.style.summary_dialog); - } - if(!dialog.isShowing()) { - dialog.show(); - } - mTtsLessThan200Tip = 0; - mOrderCancel.setVisibility(View.GONE); - //VoiceNotice.showNotice(mActivity.getString(R.string.module_och_taxi_order_auto_arrive_end_tip)); - showOrHideNavi(false); - setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker); - setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker); - break; - case JourneyCompleted: - if(dialog!=null&&dialog.isShowing()) { - dialog.dismiss(); - } - dialog = null; - mCurrentOrder = null; - mTtsLessThan200Tip = 0; - isFirstStartAutopilotDone = true; - mOrderCancel.setVisibility(View.GONE); - VoiceNotice.showNotice("感谢您使用"+ SkinResources.getInstance().getString(R.string.operation_platform_name)+"智行,再见~"); - showOrHideNavi(false); - break; - } - } - saveOrderState = status; - }); - } - - private void clearOrderTag() { - saveOrderState = -1; - mDistanceAndTime2.setText("距离 - - 公里,用时 - - 分"); - mDistanceAndTime3.setText("距离 - - 公里,用时 - - 分"); - } - - /** - * 是否有正在进行的订单,进行UI显示 - * - * @param being - */ - public void isHaveBeingOrder(boolean being) { - CallerLogger.d(M_TAXI + TAG, "isHaveBeingOrder = " + being); - try { - if (being) { - mNoDataView.setVisibility(View.GONE); - mBeingOrderLayout.setVisibility(View.VISIBLE); - } else { - mNoDataView.setVisibility(View.VISIBLE); - mNoDatasTv.setText("暂无进行中订单"); - mBeingOrderLayout.setVisibility(View.GONE); - } - - }catch (NullPointerException e){ //可能会出现订单信息已经轮询回来,但进行中页面控件还未初始化完成的情况 - TaxiModel.getInstance().clearCurrentOCHOrder(); - } - } - - @Override - public void onClick(View v) { - if (v.getId() == R.id.module_och_taxi_order_server_status_tv) { - CallerLogger.d(M_TAXI + TAG, mOrderServerStatus.getText().toString()); - startOrEndService(); - } else if (v.getId() == R.id.module_och_taxi_order_cancel_iv) { - new TaxiOrderCancelDialog(mTaxiFragment, mActivity, mOrderNo, saveOrderState).show(); - } else if (v.getId() == R.id.module_och_taxi_navi_iv) { - if (mTaxiFragment != null) { - showNaviToStartStationFragment(true); - } - } else if (v.getId() == R.id.module_och_taxi_navi_end_iv){ - // TODO: 2021/11/30 打开去往乘客下车点的导航页面 - if (mTaxiFragment != null) { - showNaviToEndStationFragment(true); - } - } - } - - /** - * 显示/隐藏 前往乘客上车点的导航 - * - * @param isShow - */ - private void showNaviToStartStationFragment(boolean isShow) { - if (mCurrentOrder != null && - mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()){ - double orderStartStationLat = mCurrentOrder.startSiteGcjPoint.get(1); - double orderStartStationLng = mCurrentOrder.startSiteGcjPoint.get(0); - mTaxiFragment.showAmapNaviToStationFragment(isShow); - startNaviToStation(isShow, orderStartStationLat, orderStartStationLng); - } - } - - /** - * 显示/隐藏 前往乘客目的地的导航 - * - * @param isShow - */ - private void showNaviToEndStationFragment(boolean isShow) { - mTaxiFragment.startNaviToEndStation(isShow); - } - - - public void onCurrentOrderCancelDone() { - //去除起终点 - if (mCurrentOrder != null){ - setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,mCurrentOrder.startSitePoint,R.raw.star_marker); - setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,mCurrentOrder.endSitePoint,R.raw.end_marker); - } - //提交取消订单后的回调 - ToastUtils.showShort("订单取消成功"); - //更新界面 - isHaveBeingOrder(false); - showOrHideNavi(false); - clearOrderTag(); - } - - /** - * 订单流转debug START - */ - private void initOrderTestBar() { - mOrderStatus.setOnLongClickListener(v -> { - mTaxiFragment.clickTestBar(); - return false; - }); - } - - @Override - public void onCurrentNaviDistAndTimeChanged(int meters, long timeInSecond) { - updateDistanceAndTime(meters, timeInSecond); - if (mCurrentOrder != null - && mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ - mTaxiFragment.reportToEndDisAndTime(meters, timeInSecond); - } - } - - @Override - public void reInitNaviAmap(boolean isPlay, boolean isRestart) { - CallerLogger.d(M_TAXI + TAG, "isPlay = " + isPlay + ", isRestart=" + isRestart); - if (!isRestart) { - mTaxiFragment.showAmapNaviToStationFragment(false); - return; - } - UiThreadHandler.postDelayed(new Runnable() { - @Override - public void run() { - if (mCurrentOrder != null && - mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { - double orderStartStationLat = mCurrentOrder.startSiteGcjPoint.get(1); - double orderStartStationLng = mCurrentOrder.startSiteGcjPoint.get(0); - startNaviToStation(false, orderStartStationLat, orderStartStationLng); - } - } - }, 2000); - UiThreadHandler.postDelayed(new Runnable() { - @Override - public void run() { - if (mCurrentOrder != null && - mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { - if (mNaviStartIcon.getVisibility() == View.GONE) { - mNaviStartIcon.setVisibility(View.VISIBLE); - } - } - if (mCurrentOrder != null && - mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ - if (mNaviToEndIcon.getVisibility() == View.GONE) { - mNaviToEndIcon.setVisibility(View.VISIBLE); - } - } - } - }, 3000); - } - - public void onNaviToEndAmap(boolean isShow) { - if (mCurrentOrder != null && - mCurrentOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()){ - double orderEndStationLat = mCurrentOrder.endSiteGcjPoint.get(1); - double orderEndStationLng = mCurrentOrder.endSiteGcjPoint.get(0); - mTaxiFragment.showAmapNaviToStationFragment(isShow); - startNaviToStation(isShow,orderEndStationLat,orderEndStationLng); - } - } - - /** - * 绘制地图起点终点 - * @param isAdd - * @param uuid - * @param station - */ - private void setOrRemoveMapMaker(boolean isAdd, String uuid, List station,int resourceId){ - if (isAdd){ - //开启线程执行起终点marker设置 - Runnable setMapMarkerRunnable = () -> { - CallerLogger.d(M_TAXI + "setMapMaker= " + Thread.currentThread().getName(), - uuid + "=latitude=" + station.get(1) + ",longitude=" + station.get(0)); - - Point.Options.Builder builder = new Point.Options.Builder(TaxiConst.TYPE_MARKER_TAXI_ORDER, Level.MAP_MARKER) - .setId(uuid) - .anchor(0.5f, 0.5f) - .set3DMode(true) - .isUseGps(true) - .controlAngle(false) - .icon3DRes(resourceId) - .latitude(station.get(1)) - .longitude(station.get(0)); - IMoGoOverlayManager overlayManager = CallerMapUIServiceManager.INSTANCE.getOverlayManager(); - if (overlayManager != null) { - overlayManager.showOrUpdatePoint(builder.build(),DEFAULT); - } - }; - OCHThreadPoolManager.getsInstance().execute(setMapMarkerRunnable); - }else { - //开启线程移除起终点marker设置 - Runnable removeMapMarkerRunnable = () -> { - CallerLogger.d(M_TAXI + "RemoveMapMaker=" + Thread.currentThread().getName(), - uuid + "=latitude=" + station.get(1) + ",longitude=" + station.get(0)); -// Objects.requireNonNull(CallerMapUIServiceManager.INSTANCE.getMarkerManager(AbsMogoApplication.getApp())).removeMarkers(uuid); - IMoGoOverlayManager overlayManager = CallerMapUIServiceManager.INSTANCE.getOverlayManager(); - if (overlayManager != null) { - overlayManager.removePoint(uuid); - } - }; - OCHThreadPoolManager.getsInstance().execute(removeMapMarkerRunnable); - } - } - - public void updateOrderBottomBtnUI() { - try { - ToastUtils.showLong(ResourcesUtils.getString( - R.string.module_och_taxi_order_choose_start_autopilot_tip)); - showOrHideOrderModeBtn(false); - updateOrderBottomBtn(getString(R.string.module_och_taxi_order_server_wait_passenger_start), - Color.parseColor("#4DFFFFFF"), - Color.parseColor("#FF1D5EF3"), - false); - }catch (NullPointerException e){ - mTaxiFragment.confirmAutopilotConditionByDriver(); - } - } - - public void updateOrderBottomBtn(String txt, int txtColorId, int bgColorId,boolean isClickable){ - mOrderServerStatus.setText(txt); - mOrderServerStatus.setTextColor(txtColorId); - GradientDrawable background = (GradientDrawable) mOrderServerStatus.getBackground();//GradientDrawable是Drawable的子类 - background.setColor(bgColorId); - mOrderServerStatus.setClickable(isClickable); - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java deleted file mode 100644 index 687e46fb88..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java +++ /dev/null @@ -1,401 +0,0 @@ -package com.mogo.och.taxi.ui; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import android.os.Build; -import android.os.Bundle; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; -import androidx.fragment.app.FragmentTransaction; - -import com.mogo.eagle.core.data.temp.EventLogout; -import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.map.overlay.IMoGoOverlayManager; -import com.mogo.och.common.module.biz.login.LoginStatusManager; -import com.mogo.och.common.module.biz.login.OpenOrderStatusEnum; -import com.mogo.och.taxi.R; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.model.TaxiModel; -import com.mogo.och.taxi.presenter.TaxiPresenter; -import com.mogo.och.taxi.utils.TPRouteDataTestUtils; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -import java.lang.ref.WeakReference; -import java.util.List; - -/** - * @author congtaowang - * @since 2021/1/18 - * - * 网约车-出租车UI - */ -public class TaxiFragment extends BaseTaxiTabFragment implements ITaxiView { - - public static final String TAG = "TaxiFragment"; - - public static TaxiFragment newInstance() { - - Bundle args = new Bundle(); - - TaxiFragment fragment = new TaxiFragment(); - fragment.setArguments(args); - return fragment; - } - - // 抢单信息 - private WeakReference grabOrderFragmentWR; - // 待服务信息 - private WeakReference serverOrdersFragmentWR; - - - @Override - public void onActivityCreated(@Nullable Bundle savedInstanceState) { - super.onActivityCreated(savedInstanceState); - } - - @Nullable - @Override - public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { - EventBus.getDefault().register(this); - return super.onCreateView(inflater, container, savedInstanceState); - } - -// @Override -// public int getStationPanelViewId() { -// return R.layout.taxi_panel; -// } -// -// @Override -// public void startAutopilot() { -// // 在自动驾驶中,或者自己确认车辆环境可开启自动驾驶 则可点击 -// if ((mPresenter.getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd || -// mPresenter.getCurOrderStatus() == TaxiOrderStatusEnum.UserArriveAtStart) -// && !isStarting) { -// CallerLogger.d(M_TAXI + TAG, "startAutopilot"); -// mPresenter.startAutoPilot(); -// } -// } - - @Override - public void startNaviToEndStation(boolean isShow) { - mPresenter.startNaviToEndStation(isShow); - } - - @Override - public String getTagName() { - return "TaxiFragment"; - } - - @Override - protected void initViews() { - super.initViews(); - initFragment(); - initOrderTestBar(); - } - - private void initFragment() { -// serverOrdersFragmentWR = new WeakReference<>(TaxiServerOrdersFragment.newInstance()); -//// grabOrderFragmentWR = new WeakReference<>(TaxiGrabOrderFragment.newInstance()); -// FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); -// //默认显示OCHTaxiServerOrdersFragment -// transaction.add(R.id.fragment_container, serverOrdersFragmentWR.get()).show(serverOrdersFragmentWR.get()); -// transaction.add(R.id.fragment_container, grabOrderFragmentWR.get()).hide(grabOrderFragmentWR.get()); -// transaction.commitAllowingStateLoss(); - } - - private void showGrabFragmentAndUpdate() { -// FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); -// if (grabOrderFragmentWR == null || grabOrderFragmentWR.get() == null) { -// grabOrderFragmentWR = new WeakReference<>(TaxiGrabOrderFragment.newInstance()); -// transaction.add(R.id.fragment_container, grabOrderFragmentWR.get()) -// .show(grabOrderFragmentWR.get()).commitAllowingStateLoss(); -// } else { -// transaction.show(grabOrderFragmentWR.get()).hide(serverOrdersFragmentWR.get()).commitAllowingStateLoss(); -// } - } - - public void showServerFragmentAndUpdate() { -// FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); -// if (serverOrdersFragmentWR == null || serverOrdersFragmentWR.get() == null) { -// serverOrdersFragmentWR = new WeakReference<>(TaxiServerOrdersFragment.newInstance()); -// transaction.add(R.id.fragment_container, serverOrdersFragmentWR.get()) -// .show(serverOrdersFragmentWR.get()); -// } else { -// transaction.show(serverOrdersFragmentWR.get()).hide(grabOrderFragmentWR.get()).commitAllowingStateLoss(); -// } - } - - @NonNull - @Override - protected TaxiPresenter createPresenter() { - return new TaxiPresenter(this); - } - - @Override - protected void onChangeOperationStatus() { - mPresenter.updateCarStatus(); - } - - @Override - public void onDestroyView() { - EventBus.getDefault().unregister(this); - if (mPresenter != null) { - mPresenter.onDestroy(this); - } - super.onDestroyView(); - } - - public void updateAutopilotStatus(int status,boolean canStart) { - onAutopilotStatusChanged(status,canStart); - } - - @RequiresApi(api = Build.VERSION_CODES.P) - public void updateCurrentOrderStatusChanged(OrderQueryRespBean.Result order) { -// if (serverOrdersFragmentWR != null && serverOrdersFragmentWR.get() != null) { -// serverOrdersFragmentWR.get().updateCurrentOrderStatusChanged(order); -// } - updateTaxiTestBarInfo(); //更新调试bar中信息 - } - - public void confirmAutopilotConditionByDriver(){ - mPresenter.confirmAutopilotConditionByDriver(); - } - - public void jumpPassengerCheckDone(){ - mPresenter.jumpPassengerCheckDone(); - } - - public void completeOrderService() { - mPresenter.completeOrderService(); - } - - public void startManualDirve(){ - mPresenter.startManualDrive(); - } - - public void cancelCurOrder(int reasonType, String reaso) { - mPresenter.cancelCurOrder(reasonType, reaso); - } - - public void cancelOrderById(String orderNo, int reasonType, String reason) { - mPresenter.cancelOrderById(orderNo, reasonType, reason); - } - - public void onCurrentOrderCancelDone(){ - startOrStopLoadingAnim(false); - /** 2023.12.18 1.去除"自驾/安全"模式选择,默认自驾模式且无需点击; - * 2.server去除订单流转对"安全确认"的限制(读写接口默认反馈ok,但"开启自动驾驶成功"不再限制) - */ - updateCtvAutopilotStatusTag(false); - - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().onCurrentOrderCancelDone(); - } - - public void onOrderCancelDone(String orderNo) { - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().onOrderCancelDone(orderNo); - } - - @Override - protected void updateOrderBottomBtnUI() { - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().updateOrderBottomBtnUI(); - } - - public void onNewBookingOrderGot(OrderQueryRespBean.Result order) { - if (null == order) return; - showGrabFragmentAndUpdate(); - grabOrderFragmentWR.get().updateGrabOrder(order); - } - - public void grabOrder() { - mPresenter.grabOrder(); - } - - public void cancelNewBookingOrder() { - mPresenter.cancelNewBookingOrder(); - showServerFragmentAndUpdate(); - } - - public void onGrabOrderExecuteDone() { - if (null == grabOrderFragmentWR || grabOrderFragmentWR.get() == null) return; - grabOrderFragmentWR.get().onGrabOrderExecuteDone(); - } - - public void onGrabOrderSuccess(OrderQueryRespBean.Result order) { - if (null == grabOrderFragmentWR || grabOrderFragmentWR.get() == null) return; - if (null == order) { - showServerFragmentAndUpdate(); - return; - } - showGrabFragmentAndUpdate(); - grabOrderFragmentWR.get().onGrabOrderSuccess(); - } - - public void onGrabOrderFailed(OrderQueryRespBean.Result order) { - if (order == null) { - showServerFragmentAndUpdate(); - return; - } - if (null == grabOrderFragmentWR || grabOrderFragmentWR.get() == null) return; - showGrabFragmentAndUpdate(); - grabOrderFragmentWR.get().onGrabOrderFailed(); - } - - public void onNaviToEnd(boolean isAmap , boolean isShow){ - if (isAmap){ - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().onNaviToEndAmap(isShow); - }else if (isShow){ //使用rotting数据 - showRottingToStationFragment(true); - }else { - showAmapNaviToStationFragment(false); - } - } - - public void closeOrderByMan(){ - mPresenter.closeOrderByMan(); - } - - /** - * 高德计算出来的到达目的地的剩余里程和时间 - * @param meters - * @param timeInSecond - */ - public void reportToEndDisAndTime(int meters, long timeInSecond){ //米/秒 - mPresenter.reportToEndDisAndTime(Long.parseLong(String.valueOf(meters)),timeInSecond); - } - - - public void onOrdersWaitServiceChanged(List waitServiceList) { - if (null == waitServiceList) return; - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().onOrdersWaitServiceChanged(waitServiceList); - } - - public void queryCurOrderRouteInfo() { - mPresenter.queryCurOrderRouteInfo(); - } - - public void onCurrentOrderRouteInfoGot(OrderQueryRouteInfoRespBean.Result routeInfo) { - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().onCurrentOrderRouteInfoGot(routeInfo); - } - - public void onCurrentOrderDistToEndChanged(long meters, long timeInSecond) { - if (null == serverOrdersFragmentWR || serverOrdersFragmentWR.get() == null) return; - serverOrdersFragmentWR.get().onCurrentOrderDistToEndChanged(meters, timeInSecond); - } - - /** - * 订单流转debug START - */ - public void initOrderTestBar() { -// findViewById(R.id.test_bar_to_start).setOnClickListener(v -> { -// TaxiModel.getInstance().setArriveAtStartStation(); -// }); -// findViewById(R.id.test_bar_to_end).setOnClickListener(v -> { -// TaxiModel.getInstance().setArriveAtEndStation(); -// }); -// findViewById(R.id.test_bar_start_service_confirm).setOnClickListener(v -> { -// TaxiModel.getInstance().setDriverConfirmCondition(); -// }); -// findViewById(R.id.test_bar_on_the_way_to_end).setOnClickListener(v -> { -// if (!isStarting){ -// mPresenter.startAutoPilot(); -// } -// TaxiModel.getInstance().setOnTheWayToEndStation(); -// }); -// findViewById(R.id.test_bar_route).setOnClickListener(v -> { -// testRouteInfoUpload(); -// }); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void changeOverview(EventLogout eventLogout){ - if (eventLogout.getMessgae() == EventLogout.LOGOUT_TYPE){ - CallerLogger.d(M_TAXI + TAG,"changeOverview Event消息去登出"); - mPresenter.logout(); - } - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void openOperationalInfoView(EventLogout eventLogout){ -// if (eventLogout.getMessgae() == EventLogout.PERSONAL_TYPE){ -// CallerLogger.d(M_TAXI + TAG,"openOperationalInfoView Event个人中心"); -// openOperationalInfoView(); -// } - } - - - private void testRouteInfoUpload() { - TPRouteDataTestUtils.converToRouteData(); - } - - //region Taxi调试信息:订单、线路、轨迹等信息 - private View testBar; - private TextView testCurOrderId; - private TextView testCurLineId; - private TextView testCurLineName; - private TextView testCurTrajMd5; - private TextView testCurStopMd5; - private TextView testCurTrajMd5DPQP; - private TextView testCurStopMd5DPQP; - - public void clickTestBar() { - if (testBar == null) { - testBar = findViewById(R.id.module_och_taxi_order_status_change_test_bar); - testCurOrderId = findViewById(R.id.test_bar_current_order_id); - testCurLineId = findViewById(R.id.test_bar_current_line_id); - testCurLineName = findViewById(R.id.test_bar_current_line_name); - testCurTrajMd5 = findViewById(R.id.test_bar_current_traj_md5); - testCurStopMd5 = findViewById(R.id.test_bar_current_stop_md5); - testCurTrajMd5DPQP = findViewById(R.id.test_bar_current_traj_md5_dpqp); - testCurStopMd5DPQP = findViewById(R.id.test_bar_current_stop_md5_dpqp); - } - - if (testBar.getVisibility() == View.VISIBLE) { - testBar.setVisibility(View.GONE); - } else { - OrderQueryRespBean.Result order = TaxiModel.getInstance().getCurrentOCHOrder(); - testCurOrderId.setText("orderNo:" + (order == null ? "" : String.valueOf(order.orderNo))); - testCurLineId.setText("lineId:" + (order == null ? "" : String.valueOf(order.lineId))); - testCurLineName.setText("lineName:" + (order == null ? "" : order.lineName)); - testCurTrajMd5.setText("TMd5:" + (order == null ? "" : order.csvFileMd5)); - testCurStopMd5.setText("SMd5:" + (order == null ? "" : order.txtFileMd5)); - testCurTrajMd5DPQP.setText("TMd5DPQP:" + (order == null ? "" : order.csvFileMd5DPQP)); - testCurStopMd5DPQP.setText("SMd5DPQP:" + (order == null ? "" : order.txtFileMd5DPQP)); - testBar.setVisibility(View.VISIBLE); - } - } - - private void updateTaxiTestBarInfo() { - if (testBar != null && testBar.getVisibility() == View.VISIBLE) { - OrderQueryRespBean.Result order = TaxiModel.getInstance().getCurrentOCHOrder(); - testCurOrderId.setText("orderNo:" + (order == null ? "" : String.valueOf(order.orderNo))); - testCurLineId.setText("lineId:" + (order == null ? "" : String.valueOf(order.lineId))); - testCurLineName.setText("lineName:" + (order == null ? "" : order.lineName)); - testCurTrajMd5.setText("TMd5:" + (order == null ? "" : order.csvFileMd5)); - testCurStopMd5.setText("SMd5:" + (order == null ? "" : order.txtFileMd5)); - testCurTrajMd5DPQP.setText("TMd5DPQP:" + (order == null ? "" : order.csvFileMd5DPQP)); - testCurStopMd5DPQP.setText("SMd5DPQP:" + (order == null ? "" : order.txtFileMd5DPQP)); - } - } - - //endregion - -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiGrabOrderFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiGrabOrderFragment.java deleted file mode 100644 index 1f560df896..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiGrabOrderFragment.java +++ /dev/null @@ -1,193 +0,0 @@ -package com.mogo.och.taxi.ui; - -import android.graphics.Color; -import android.graphics.drawable.AnimationDrawable; -import android.os.Bundle; -import android.os.CountDownTimer; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.constraintlayout.widget.ConstraintLayout; - -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.common.module.utils.DateTimeUtil; -import com.mogo.och.common.module.voice.VoiceNotice; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.bean.OrderQueryRespBean; - -import java.util.Calendar; - -/** - * @author: wangmingjun - * @date: 2021/9/9 - */ -public class TaxiGrabOrderFragment extends BaseTaxiUIFragment implements View.OnClickListener { - - private TextView mOrderReserverTime; - private TextView mOrderGrabBt; - private TextView mOrderStartStation; - private TextView mOrderEndStation; - private TextView mOrderStartTitle; - private TextView mOrderEndTitle; - private ImageView mOrderCancelIv; - private ImageView mGrabResultAnimView; - private AnimationDrawable mGrabSuccessAnim; - private AnimationDrawable mGrabFailureAnim; - private CountDownTimer countDownTimer = null; - - public static TaxiGrabOrderFragment newInstance() { - - Bundle args = new Bundle(); - - TaxiGrabOrderFragment fragment = new TaxiGrabOrderFragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_order_grab_view; - } - - @Override - protected void initViews(View view) { - mOrderReserverTime = view.findViewById(R.id.grab_order_reserver_time); - mOrderCancelIv = view.findViewById(R.id.grab_order_cancel_iv); - mOrderGrabBt = view.findViewById(R.id.grab_order_tv); - mOrderStartStation = view.findViewById(R.id.grab_order_start_station); - mOrderEndStation = view.findViewById(R.id.grab_order_end_station); - mOrderEndTitle = view.findViewById(R.id.grab_order_end_station_title); - mOrderStartTitle = view.findViewById(R.id.grab_order_start_station_title); - mGrabResultAnimView = view.findViewById(R.id.grab_result_anim); - mGrabResultAnimView.setVisibility(View.GONE); - mOrderEndTitle.setVisibility(View.VISIBLE); - mOrderStartTitle.setVisibility(View.VISIBLE); - - mOrderCancelIv.setOnClickListener(this); - mOrderGrabBt.setOnClickListener(this); - } - - @Override - public void onClick(View v) { - if (v.getId() == R.id.grab_order_cancel_iv){//关闭抢单,如果是在抢单中,则只关闭界面,还继续抢单 - if (mOrderGrabBt.getText().toString().equals("抢单中...")){ - getOchTaxiFragment().showServerFragmentAndUpdate(); - return; - } - if (null != countDownTimer){ - countDownTimer.cancel(); - } - VoiceNotice.stopCurrentTts();//中断当前在播语音 - getOchTaxiFragment().cancelNewBookingOrder(); - }else if (v.getId() == R.id.grab_order_tv){ - if (!mOrderGrabBt.getText().toString().equals("抢单中...")){ - getOchTaxiFragment().grabOrder(); - } - } - } - private TaxiFragment getOchTaxiFragment(){ - return (TaxiFragment)getParentFragment(); - } - public void updateGrabOrder(OrderQueryRespBean.Result order){ - mGrabResultAnimView.setVisibility(View.GONE); - Calendar calendar = DateTimeUtil.formatLongToCalendar(order.bookingTime); - if (DateTimeUtil.compareDateIsCurrentDay(calendar)){ - mOrderReserverTime.setText("用车时间:今天 "+ DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.HH_mm)); -// VoiceNotice.showNotice("预约单,今天"+ DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.HH_mm)+"从" -// +order.startSiteAddr+"到"+order.endSiteAddr); - }else { - mOrderReserverTime.setText("用车时间:"+ DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.MM_dd_HH_mm)); -// VoiceNotice.showNotice("预约单,"+ DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.MM_dd)+"从" -// +order.startSiteAddr+"到"+order.endSiteAddr); - } - mOrderStartStation.setText(order.startSiteAddr); - mOrderEndStation.setText(order.endSiteAddr); - mOrderGrabBt.setClickable(true); - mOrderGrabBt.setTextColor(Color.parseColor("#FFFFFF")); - ConstraintLayout.LayoutParams lp = (ConstraintLayout.LayoutParams)mOrderGrabBt.getLayoutParams(); - lp.bottomMargin = 3; - mOrderGrabBt.setLayoutParams(lp); - mOrderGrabBt.setBackgroundResource(R.drawable.shape_size_grab_order_bt); - mOrderGrabBt.setText("抢单(10S)"); //开始倒计时任务 - countDownTimer = new CountDownTimer(11000,1000){ - - @Override - public void onTick(long millisUntilFinished) { - mOrderGrabBt.setText("抢单"+"("+millisUntilFinished/1000+")"); - } - - @Override - public void onFinish() {//结束倒计时,不抢单 - cancel(); - getOchTaxiFragment().cancelNewBookingOrder(); - } - }.start(); - } - public void onGrabOrderExecuteDone(){//进入抢单状态,btn样式改变,并不可点击 - if (null != countDownTimer){ - countDownTimer.cancel(); - } - mOrderGrabBt.setText("抢单中..."); - ConstraintLayout.LayoutParams lp = (ConstraintLayout.LayoutParams)mOrderGrabBt.getLayoutParams(); - lp.bottomMargin = 40; - mOrderGrabBt.setLayoutParams(lp); - mOrderGrabBt.setTextColor(Color.parseColor("#181D6D")); - mOrderGrabBt.setBackground(getResources().getDrawable(R.drawable.taxi_grabing_order_btn_bg)); - mOrderGrabBt.setClickable(false); - } -// 接单成功,语音播报“抢单成功,请合理安排后续行程接送乘客” -// 接单未成功,语音播报“接单失败,请继续接单” - public void onGrabOrderSuccess(){//抢单成功,更新btn 和 动画 语音 - VoiceNotice.showNotice("抢单成功,请合理安排后续行程接送乘客"); - mGrabResultAnimView.setVisibility(View.VISIBLE); - mGrabResultAnimView.setImageDrawable(getResources().getDrawable(R.drawable.grab_success_anmi_flow)); - mOrderGrabBt.setClickable(false); - mOrderGrabBt.setText("抢单成功!"); - mGrabSuccessAnim = (AnimationDrawable)mGrabResultAnimView.getDrawable(); - if (mGrabSuccessAnim.isOneShot()){ - return; - } - mGrabSuccessAnim.start(); - //开启动画结束的监听 - long delayMillis = (long) mGrabSuccessAnim.getDuration(0) * mGrabSuccessAnim.getNumberOfFrames(); - UiThreadHandler.postDelayed(new Runnable() { - @Override - public void run() { - if (null != mGrabSuccessAnim && mGrabSuccessAnim.isRunning()){ - mGrabSuccessAnim.stop(); - } - // if (mGrabSuccessAnim.getFrame(mGrabSuccessAnim.getNumberOfFrames()-1) == mGrabSuccessAnim.getCurrent()){ - getOchTaxiFragment().showServerFragmentAndUpdate(); -// } - } - },delayMillis); - //开启动画结束的监听 - } - public void onGrabOrderFailed(){//抢单失败,更新btn 和 动画 语音 - VoiceNotice.showNotice("接单失败,请继续接单"); - mGrabResultAnimView.setVisibility(View.VISIBLE); - mGrabResultAnimView.setImageDrawable(getResources().getDrawable(R.drawable.grab_failure_anmi_flow)); - mOrderGrabBt.setClickable(false); - mOrderGrabBt.setText("抢单失败!"); - mGrabFailureAnim = (AnimationDrawable)mGrabResultAnimView.getDrawable(); - mGrabFailureAnim.start(); - //开启动画结束的监听 - long delayMillis = (long) mGrabFailureAnim.getDuration(0) * mGrabFailureAnim.getNumberOfFrames(); - UiThreadHandler.postDelayed(new Runnable() { - @Override - public void run() { - if (null != mGrabFailureAnim && mGrabFailureAnim.isRunning()){ - mGrabFailureAnim.stop(); - } - getOchTaxiFragment().showServerFragmentAndUpdate(); - } - },delayMillis); - } - - @Override - public void onDestroy() { - super.onDestroy(); - if (countDownTimer != null) countDownTimer.cancel(); - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt deleted file mode 100644 index 8893f36bd6..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiMapDirectionView.kt +++ /dev/null @@ -1,290 +0,0 @@ -package com.mogo.och.taxi.ui - -import android.content.Context -import android.os.Bundle -import android.util.AttributeSet -import android.view.LayoutInflater -import android.view.MotionEvent -import android.widget.RelativeLayout -import com.amap.api.maps.AMap -import com.amap.api.maps.CameraUpdateFactory -import com.amap.api.maps.TextureMapView -import com.amap.api.maps.model.BitmapDescriptor -import com.amap.api.maps.model.BitmapDescriptorFactory -import com.amap.api.maps.model.CameraPosition -import com.amap.api.maps.model.CustomMapStyleOptions -import com.amap.api.maps.model.LatLng -import com.amap.api.maps.model.LatLngBounds -import com.amap.api.maps.model.Marker -import com.amap.api.maps.model.MarkerOptions -import com.amap.api.maps.model.Polyline -import com.amap.api.maps.model.PolylineOptions -import com.mogo.eagle.core.data.map.MogoLocation -import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Listener -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger.d -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant -import com.mogo.och.common.module.manager.autopilot.location.OchLocationManager -import com.mogo.och.taxi.R -import com.mogo.och.taxi.utils.TaxiMapAssetStyleUtil - -/** - * taxi司机端前往目的地小地图导航 - */ -class TaxiMapDirectionView @JvmOverloads constructor( - context: Context, - attrs: AttributeSet? = null, - defStyleAttr: Int = 0 -) : RelativeLayout(context, attrs, defStyleAttr), IMoGoChassisLocationGCJ02Listener, - ITaxiMapDirectionView, AMap.OnCameraChangeListener { - private lateinit var mAMapNaviView: TextureMapView - private lateinit var mAMap: AMap - private var mCarMarker: Marker? = null - private lateinit var mStartMarker: Marker - private lateinit var mEndMarker: Marker - private val zoomLevel = 13 - private val routeArrivied: MutableList = ArrayList() - private val routeArriving: MutableList = ArrayList() - private var location: MogoLocation? = null - private var startStation: LatLng? = null - private var endStation: LatLng? = null - private var mPolyline: Polyline? = null - var textureList: MutableList = ArrayList() - var texIndexList: MutableList = ArrayList() - private var mArrivedRes: BitmapDescriptor? = null - private var mUnArrivedRes: BitmapDescriptor? = null - - init { - try { - initView(context) - } catch (e: Exception) { - e.printStackTrace() - } - } - - private fun initView(context: Context) { - d(SceneConstant.M_TAXI + TAG, "initView") - val smpView = LayoutInflater.from(context).inflate(R.layout.taxi_map_view, this) - mAMapNaviView = smpView.findViewById(R.id.taxi_amap_view) - initAMapView() - - // 注册定位监听 - OchLocationManager.addGCJ02Listener(TAG, 3, this) - } - - override fun onDetachedFromWindow() { - super.onDetachedFromWindow() - // 注册定位监听 - OchLocationManager.removeGCJ02Listener(TAG) - } - - private fun initAMapView() { - val mCameraUpdate = CameraUpdateFactory.zoomTo(zoomLevel.toFloat()) - mAMap = mAMapNaviView.map - // 设置导航地图模式,aMap是地图控制器对象。 - mAMap.mapType = AMap.MAP_TYPE_NIGHT - - // 关闭显示实时路况图层,aMap是地图控制器对象。 - mAMap.isTrafficEnabled = false - - // 设置 锚点 图标 - mCarMarker = mAMap.addMarker(MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.taxi_map_car)).anchor(0.5f, 0.5f)) - mStartMarker = mAMap.addMarker(MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.taxi_map_view_dir_start))) - mEndMarker = mAMap.addMarker(MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.taxi_map_view_dir_end))) - mStartMarker.isVisible = false - mEndMarker.isVisible = false - mArrivedRes = BitmapDescriptorFactory.fromResource(R.drawable.taxi_map_arrow_arrived) - mUnArrivedRes = BitmapDescriptorFactory.fromResource(R.drawable.taxi_map_arrow_un_arrive) - - // 加载自定义样式 - val customMapStyleOptions = CustomMapStyleOptions() - .setEnable(true) - .setStyleData(TaxiMapAssetStyleUtil.getAssetsStyle(context, "map_style.data")) - .setStyleExtraData( - TaxiMapAssetStyleUtil.getAssetsExtraStyle( - context, - "map_style_extra.data" - ) - ) - // 设置自定义样式 - mAMap.setCustomMapStyle(customMapStyleOptions) - - //设置希望展示的地图缩放级别 - mAMap.moveCamera(mCameraUpdate) - - // 设置地图的样式 - mAMap.uiSettings.apply { - isZoomControlsEnabled = false // 地图缩放级别的交换按钮 - setAllGesturesEnabled(false) // 所有手势 - isMyLocationButtonEnabled = false // 显示默认的定位按钮 - setLogoBottomMargin(-150) //设置Logo下边界距离屏幕底部的边距,设置为负值即可 - } - mAMap.setOnMapLoadedListener(AMap.OnMapLoadedListener { - d(SceneConstant.M_TAXI + TAG, "smp---onMapLoaded") - // 加载自定义样式 - val customMapStyleOptions = CustomMapStyleOptions() - .setEnable(true) - .setStyleData(TaxiMapAssetStyleUtil.getAssetsStyle(context, "map_style.data")) - .setStyleExtraData( - TaxiMapAssetStyleUtil.getAssetsExtraStyle( - context, - "map_style_extra.data" - ) - ) - // 设置自定义样式 - mAMap.setCustomMapStyle(customMapStyleOptions) - mAMapNaviView.map.setPointToCenter( - mAMapNaviView.width / 2, - mAMapNaviView.height / 2 - ) - }) - - //设置地图状态的监听接口 - mAMap.setOnCameraChangeListener(this) - } - - override fun onInterceptTouchEvent(ev: MotionEvent): Boolean { - return true - } - - override fun onChassisLocationGCJ02(mogoLocation: MogoLocation?) { - if (mogoLocation == null) { - return - } - try { - val currentLatLng = LatLng(mogoLocation.latitude, mogoLocation.longitude) - if (mPolyline != null && mPolyline!!.points.size > 1) { - val points = mPolyline!!.points - //圈定地图显示范围 - val endLatLng = points[points.size - 1] - //存放经纬度 - val boundsBuilder = LatLngBounds.Builder() - boundsBuilder.include(currentLatLng) - boundsBuilder.include(endLatLng) - //第二个参数为四周留空宽度 - mAMap.moveCamera( - CameraUpdateFactory.newLatLngBoundsRect(boundsBuilder.build(), 100, 100, 100, 100) - ) - } else { - //设置希望展示的地图缩放级别 - val cameraPosition = CameraPosition.Builder() - .target(mCarMarker!!.position).tilt(0f).bearing(mogoLocation.heading.toFloat()) - .zoom(zoomLevel.toFloat()).build() - mAMap.moveCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)) - } - //更新车辆位置 - if (mCarMarker != null) { - mCarMarker!!.rotateAngle = (360 - mogoLocation.heading).toFloat() - mCarMarker!!.position = currentLatLng - mCarMarker!!.setToTop() - } - } catch (e: Exception) { - e.printStackTrace() - } - } - - override fun setLineMarker() { - if (mStartMarker.isVisible && mEndMarker.isVisible - ) { - return - } - if (startStation != null && endStation != null) { - // 设置开始结束Marker位置 - mStartMarker.position = startStation - mStartMarker.isVisible = true - mEndMarker.position = endStation - mEndMarker.isVisible = true - } - } - - override fun drawablePolyline() { - if (routeArrivied.isEmpty() && routeArriving.isEmpty()) { - d(SceneConstant.M_TAXI + TAG, "没有点") - return - } - texIndexList.clear() - val allPoints = ArrayList(routeArrivied) - for (i in routeArrivied.indices) { - if (routeArrivied.size > 1 && i < routeArrivied.size - 1) { - texIndexList.add(0) - } - } - texIndexList.add(0) - allPoints.add(LatLng(location!!.latitude, location!!.longitude)) - allPoints.addAll(routeArriving) - for (ignored in routeArrivied) { - texIndexList.add(1) - } - if (mPolyline != null) { - mPolyline!!.points = allPoints - mPolyline!!.options.customTextureIndex = texIndexList - return - } - if(textureList.isEmpty()) { - textureList.add(mArrivedRes) - textureList.add(mUnArrivedRes) - } - //设置线段纹理 - val polylineOptions = PolylineOptions().apply { - addAll(allPoints) - isUseTexture = true - width(15f) - lineCapType(PolylineOptions.LineCapType.LineCapRound) - customTextureList = textureList - customTextureIndex = texIndexList - } - - // 绘制线 - mPolyline = mAMap.addPolyline(polylineOptions) - } - - override fun clearPolyline() { - if (mPolyline != null) { - mPolyline!!.remove() - mPolyline = null - } - mStartMarker.isVisible = false - mEndMarker.isVisible = false - } - - fun onCreateView(savedInstanceState: Bundle?) { - mAMapNaviView.onCreate(savedInstanceState) - } - - fun onResume() { - mAMapNaviView.onResume() - } - - fun onPause() { - mAMapNaviView.onPause() - } - - fun onDestroy() { - mAMapNaviView.onDestroy() - mAMap.clear() - } - - fun setStartMarkAndEndMark(startStation: LatLng?, endStation: LatLng?) { - this.startStation = startStation - this.endStation = endStation - } - - fun setCoordinatesLatLng( - routeArrivied: List?, - routeArriving: List?, - location: MogoLocation? - ) { - this.routeArrivied.clear() - this.routeArrivied.addAll(routeArrivied!!) - this.routeArriving.clear() - this.routeArriving.addAll(routeArriving!!) - this.location = location - } - - override fun onCameraChange(cameraPosition: CameraPosition) {} - override fun onCameraChangeFinish(cameraPosition: CameraPosition) {} - - companion object { - //小地图名称 - const val TAG = "TaxiMapDirectionView" - } -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiOperationDatasFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiOperationDatasFragment.java deleted file mode 100644 index aaea75f515..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiOperationDatasFragment.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.mogo.och.taxi.ui; - -import android.content.Context; -import android.os.Bundle; -import android.text.Html; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; - -import com.mogo.och.common.module.utils.DateTimeUtil; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.model.TaxiModel; - -import java.util.ArrayList; -import java.util.List; - -/** - * @author: wangmingjun - * @date: 2021/9/10 - */ -public class TaxiOperationDatasFragment extends BaseTaxiUIFragment { - - private RecyclerView mRecyclerView; - private static Context mContext; - private List mDurationData = new ArrayList<>(); - private List mOrderNumData = new ArrayList<>(); - private List mData = new ArrayList<>(); - private static int mType = 0;//0: 运营时长 1:运营单数 - private OperationDataAdapter mAdapter; - - public static TaxiOperationDatasFragment newInstance(Context context, int type) { - mContext = context; - mType = type; - Bundle args = new Bundle(); - TaxiOperationDatasFragment fragment = new TaxiOperationDatasFragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_operation_data_view; - } - - @Override - protected void initViews(View view) { - mRecyclerView = view.findViewById(R.id.operation_data_recycler_view); - mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext)); - mAdapter = new OperationDataAdapter(mContext, mData); - mRecyclerView.setAdapter(mAdapter); - initDatas(); - } - - private void initDatas() { - TaxiModel.getInstance().queryDriverServiceData(); - } - - public void setmType(int type) { - mType = type; - mData.clear(); - if (mType == 0){ - mData.addAll(mDurationData); - }else if (mType == 1){ - mData.addAll(mOrderNumData); - } - if (mAdapter != null) mAdapter.notifyDataSetChanged(); - } - - public void updateData(long dailyTimeDuration, long dailyOrderNum) { - mDurationData.clear(); - mOrderNumData.clear(); - mData.clear(); - mDurationData.add(dailyTimeDuration); - mOrderNumData.add(dailyOrderNum); - mData.addAll(mDurationData); - if (mAdapter != null) mAdapter.notifyDataSetChanged(); - } - - class OperationDataAdapter extends RecyclerView.Adapter { - private List datas; - private Context context; - - public OperationDataAdapter(Context context, List datas) { - this.datas = datas; - this.context = context; - } - - @NonNull - @Override - public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - View view = LayoutInflater.from(context).inflate(R.layout.taxi_operation_data_item_view, parent, false); - OperationDataViewHolder viewHolder = new OperationDataViewHolder(view); - return viewHolder; - } - - @Override - public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { - if (holder instanceof OperationDataViewHolder) { - OperationDataViewHolder viewHolder = (OperationDataViewHolder) holder; - if (0 == mType){ - String hourData = TextUtils.isEmpty(DateTimeUtil.secondsToHourStr(datas.get(position))) ? "0": DateTimeUtil.secondsToHourStr(datas.get(position)); - String minuteData = DateTimeUtil.secondsToMinuteStr(datas.get(position)); - String data = "" + hourData + "" + "" + minuteData + ""; - viewHolder.operationDataTv.setText(Html.fromHtml(data)); - viewHolder.operationDataTitle.setText("今日在线时长"); - }else if (1 == mType){ - String data = "" + String.valueOf(datas.get(position)) + "" + " 单" + ""; - viewHolder.operationDataTv.setText(Html.fromHtml(data)); - viewHolder.operationDataTitle.setText("今日订单完成数"); - } - } - } - - @Override - public int getItemCount() { - return datas.size(); - } - } - - class OperationDataViewHolder extends RecyclerView.ViewHolder { - private TextView operationDataTv; - private TextView operationDataTitle; - - public OperationDataViewHolder(@NonNull View itemView) { - super(itemView); - operationDataTv = itemView.findViewById(R.id.operation_data_tv); - operationDataTitle = itemView.findViewById(R.id.operation_data_title_tv); - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiOrderCancelDialog.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiOrderCancelDialog.java deleted file mode 100644 index 43ba8495ed..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiOrderCancelDialog.java +++ /dev/null @@ -1,231 +0,0 @@ -package com.mogo.och.taxi.ui; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import android.app.AlertDialog; -import android.content.Context; -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; -import android.os.Build; -import android.os.Bundle; -import android.text.TextUtils; -import android.view.Display; -import android.view.Gravity; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.view.Window; -import android.view.WindowManager; -import android.widget.AdapterView; -import android.widget.BaseAdapter; -import android.widget.GridView; -import android.widget.TextView; - -import androidx.annotation.RequiresApi; - -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.ToastUtils; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.constant.TaxiOrderCancelReasons; - -import java.lang.ref.WeakReference; -/** - * @author: wangmingjun - * @date: 2021/8/18 - */ -public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickListener,AdapterView.OnItemClickListener { - - private static final String TAG = "OCHTaxiOrderCancelDial"; - protected WeakReference contextWeakReference; - private GridView mContentView; - private TextView mCancelCommitTv; - private TextView mDialogCancelTv; - private String mCurrentReason = ""; - private ContentAdapter mContentAdapter; - private int mOrderStatus;//1:预约单,其他为即时单的状态, 主要是控制乘客上车 乘客下车这几个选项的显示 - private String[] mContentArrays; - private WeakReference mOchTaxiFragmentWeak; - private String mOrderNo; - - protected TaxiOrderCancelDialog(TaxiFragment fragment, Context context, String orderNo, int orderStatus) { - super(context,R.style.OrderCancelDialog); - mOrderNo = orderNo; - mOchTaxiFragmentWeak = new WeakReference<>(fragment); - this.mOrderStatus = orderStatus; - contextWeakReference = new WeakReference<>(context); - initReasonArray(); - } - - private void initReasonArray() { - if (1 == mOrderStatus) { - mContentArrays = new String[]{TaxiOrderCancelReasons.BookPassengerCancel.getMsg(), TaxiOrderCancelReasons.CarBroken.getMsg(), - TaxiOrderCancelReasons.BookJourneyConflict.getMsg(), TaxiOrderCancelReasons.BatteryLow.getMsg(), - TaxiOrderCancelReasons.BookOther.getMsg()}; - return; - } - TaxiOrderStatusEnum ochStatus = TaxiOrderStatusEnum.valueOf(mOrderStatus); - switch (ochStatus) { - case OnTheWayToStart: - mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), - TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), - TaxiOrderCancelReasons.StartStationFaraway.getMsg(), TaxiOrderCancelReasons.Other.getMsg(), - TaxiOrderCancelReasons.PassengerCancel.getMsg()}; - break; - case ArriveAtStart: - mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), - TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), - TaxiOrderCancelReasons.PassengerNotArrive.getMsg(),TaxiOrderCancelReasons.UnContractPassenger.getMsg(), - TaxiOrderCancelReasons.PassengerCancel.getMsg(),TaxiOrderCancelReasons.Other.getMsg()}; - break; - case OnTheWayToEnd: - case ArriveAtEnd: - mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), - TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), - TaxiOrderCancelReasons.PassengerStopOver.getMsg(),TaxiOrderCancelReasons.Other.getMsg()}; - break; - default: - mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), - TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), - TaxiOrderCancelReasons.PassengerNotArrive.getMsg(), TaxiOrderCancelReasons.PassengerStopOver.getMsg(), - TaxiOrderCancelReasons.Other.getMsg()}; - break; - - } - } - - protected TaxiOrderCancelDialog(Context context, boolean cancelable, OnCancelListener cancelListener) { - super(context, cancelable, cancelListener); - } - - protected TaxiOrderCancelDialog(Context context, int themeResId) { - super(context, themeResId); - } - - @RequiresApi(api = Build.VERSION_CODES.M) - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - getWindow().setBackgroundDrawableResource(R.drawable.taxi_order_cancel_dialog_bg); - setContentView(R.layout.taxi_order_cancel_view); - initView(); - setCancelable(false); - setCanceledOnTouchOutside(false); - - initWindowView(); - } - - private void initWindowView() { - Window window = getWindow(); - //dialog padding 去掉 - window.getDecorView().setPadding(0,0,0,0); - window.setDimAmount(0.5f); - window.getDecorView().setBackgroundColor(Color.parseColor("#00FFFFFF"));//设置背景, 不然显示不全 - - WindowManager.LayoutParams params = window.getAttributes(); - window.setGravity(Gravity.CENTER); - WindowManager m = window.getWindowManager(); - Display d = m.getDefaultDisplay(); - params.height = d.getHeight() - 500; - window.setAttributes(params); - } - - @RequiresApi(api = Build.VERSION_CODES.M) - private void initView() { - mContentView = findViewById(R.id.module_och_taxi_order_cancel_content_gv); - mCancelCommitTv = findViewById(R.id.order_cancel_commit_tv); - mDialogCancelTv = findViewById(R.id.order_dialog_cancel_tv); - mContentAdapter = new ContentAdapter(contextWeakReference.get(), mContentArrays); - mContentView.setAdapter(mContentAdapter); - mContentView.setSelector(new ColorDrawable(Color.TRANSPARENT)); - mContentView.setOnItemClickListener(this); - mCancelCommitTv.setOnClickListener(this); - mDialogCancelTv.setOnClickListener(this); - mContentView.setOnItemClickListener(this); - } - - @Override - public void onClick(View v) { - if (v.getId() == R.id.order_cancel_commit_tv) {//bt commit - if (!TextUtils.isEmpty(mCurrentReason) && TaxiOrderCancelReasons.getType(mCurrentReason) != 0) { - if (1 == mOrderStatus){//预约单 - mOchTaxiFragmentWeak.get().cancelOrderById(mOrderNo, TaxiOrderCancelReasons.getType(mCurrentReason),mCurrentReason); - }else {//即时单 - mOchTaxiFragmentWeak.get().cancelCurOrder(TaxiOrderCancelReasons.getType(mCurrentReason),mCurrentReason); - } - dismiss(); - }else { - ToastUtils.showShort("取消原因不能为空"); - } - }else if (v.getId() == R.id.order_dialog_cancel_tv){//close icon - mCurrentReason = ""; - dismiss(); - } - } - - @Override - public void onItemClick(AdapterView parent, View view, int position, long id) { - CallerLogger.d(M_TAXI + TAG,"mCurrentReason ="+ mContentArrays[position]); - mCurrentReason = mContentArrays[position]; -// GradientDrawable background = (GradientDrawable) mCancelBt.getBackground();//GradientDrawable是Drawable的子类 -// background.setColor(Color.parseColor("#2B6EFF")); -// mCancelBt.setTextColor(Color.parseColor("#FFFFFF")); -// mCancelBt.setClickable(true); - mContentAdapter.notifyCurrentReasons(mCurrentReason); - } - - class ContentAdapter extends BaseAdapter{ - - private Context context; - private String[] datas; - private LayoutInflater layoutInflater; - private String currentReasons = ""; - - public ContentAdapter(Context context, String[] array){ - this.context = context; - datas = array; - layoutInflater = LayoutInflater.from(context); - } - @Override - public int getCount() { - return datas.length; - } - - @Override - public Object getItem(int position) { - return datas[position]; - } - - @Override - public long getItemId(int position) { - return 0; - } - - @Override - public View getView(int position, View convertView, ViewGroup parent) { - ViewHolder viewHolder = null; - if (convertView == null){ - convertView = layoutInflater.inflate(R.layout.taxi_order_checkbox_item,null); - viewHolder = new ViewHolder(); - viewHolder.checkBoxTv = convertView.findViewById(R.id.item_checkbox); - convertView.setTag(viewHolder); - }else { - viewHolder = (ViewHolder) convertView.getTag(); - } - viewHolder.checkBoxTv.setText(datas[position]); - if(viewHolder.checkBoxTv.getText().toString().equals(currentReasons)){ - viewHolder.checkBoxTv.setCompoundDrawablesWithIntrinsicBounds(context.getResources().getDrawable(R.drawable.shape_size_taxi_selected_btn),null,null,null); - }else { - viewHolder.checkBoxTv.setCompoundDrawablesWithIntrinsicBounds(context.getResources().getDrawable(R.drawable.shape_size_taxi_unselected_btn),null,null,null); - } - return convertView; - } - public void notifyCurrentReasons(String reason){ - currentReasons = reason; - notifyDataSetChanged(); - } - class ViewHolder { - TextView checkBoxTv; - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiPersonalDialogFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiPersonalDialogFragment.java deleted file mode 100644 index a948351547..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiPersonalDialogFragment.java +++ /dev/null @@ -1,522 +0,0 @@ -package com.mogo.och.taxi.ui; - -import android.app.Dialog; -import android.content.Context; -import android.graphics.Color; -import android.graphics.Point; -import android.graphics.Typeface; -import android.os.Build; -import android.os.Bundle; -import android.util.TypedValue; -import android.view.Gravity; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.view.Window; -import android.view.WindowManager; -import android.widget.Button; -import android.widget.ImageView; -import android.widget.RelativeLayout; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; -import androidx.constraintlayout.widget.ConstraintLayout; -import androidx.core.content.ContextCompat; -import androidx.fragment.app.Fragment; -import androidx.fragment.app.FragmentManager; -import androidx.fragment.app.FragmentPagerAdapter; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; -import androidx.viewpager.widget.ViewPager; - -import com.google.android.material.tabs.TabLayout; -import com.mogo.commons.mvp.MvpDialogFragment; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.och.common.module.utils.DateTimeUtil; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.taxi.constant.TaxiOrderTypeEnum; -import com.mogo.och.taxi.presenter.TaxiOperationalPresenter; -import com.mogo.och.taxi.ui.base.AvoidLeakDialog; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.List; - -import static androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE; -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import me.jessyan.autosize.utils.AutoSizeUtils; - -/** - * @author: wangmingjun - * @date: 2021/8/18 - */ -public class TaxiPersonalDialogFragment extends - MvpDialogFragment - implements View.OnClickListener { - - private final static String TAG = "OCHTaxiOrdersDialog"; - - private RelativeLayout mOperationDataRl; - private ImageView mCloseIv; - private RecyclerView mOrdersRv; - private Button mShowOrdersBt; - private TabLayout mOperationTab; - private ViewPager mOperationViewPager; - private OrderAdapter mAdapter; - private ConstraintLayout mNoDatas; - private final List orders = new ArrayList<>(); - private final String[] mTabTitles = {"在线时长","订单完成数"}; - private final List fragments = new ArrayList<>(); - private int mNextPage = 1;//订单列表分页从1开始 - private final int mPerPageSize = 10; - private static boolean serverHadNoData = false; - - @NonNull - @Override - public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) { - AvoidLeakDialog dialog = new AvoidLeakDialog(getContext()); - dialog.setHostFragmentReference(this); - return dialog; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_orders_list_view; - } - - @Override - protected void initViews() { - initView(); - } - - @NonNull - @Override - protected TaxiOperationalPresenter createPresenter() { - return new TaxiOperationalPresenter(this); - } - - @Override - public String getTagName() { - return TAG; - } - - @Override - public void dismissAllowingStateLoss() { - super.dismissAllowingStateLoss(); - } - - @Override - public void onStart() { - super.onStart(); - setCancelable(false); - getDialog().setCanceledOnTouchOutside(true); - Window window = getDialog().getWindow(); - //dialog padding 去掉 - window.getDecorView().setPadding(0,0,0,0); - window.setDimAmount(0f); - WindowManager.LayoutParams params = window.getAttributes(); - params.x = 0; - params.y = 0; - WindowManager windowManager = (WindowManager)getContext().getSystemService(Context.WINDOW_SERVICE); - Point point = new Point(); - windowManager.getDefaultDisplay().getSize(point); - params.width = (int)(point.x * 0.375); - params.height = ViewGroup.LayoutParams.MATCH_PARENT; - CallerLogger.d(M_TAXI + TAG,"width= "+params.width+"height= "+params.height); - window.setAttributes(params); - window.getDecorView().setBackgroundColor(Color.parseColor("#00FFFFFF"));//设置背景, 不然显示不全 - window.setGravity(Gravity.LEFT|Gravity.BOTTOM); - } - private void initView() { - initOperationTabDatas(); - mCloseIv = findViewById(R.id.module_och_taxi_order_list_close_iv); - mOperationDataRl = findViewById(R.id.module_och_taxi_operation_data_rl); - mShowOrdersBt = findViewById(R.id.module_och_taxi_order_list_show_bt); - mOrdersRv = findViewById(R.id.module_och_taxi_order_list); - - mNoDatas = findViewById(R.id.no_order_data_view); - ImageView imageView = findViewById(R.id.no_order_data_iv); - imageView.setImageResource(R.drawable.no_order_data); - ConstraintLayout.LayoutParams params = (ConstraintLayout.LayoutParams)imageView.getLayoutParams(); - params.width = 480; - params.height = 480; - imageView.setLayoutParams(params); - - mOrdersRv.setVisibility(View.GONE); - mNoDatas.setVisibility(View.GONE); - - mShowOrdersBt.setOnClickListener(this); - - mCloseIv.setOnClickListener(this); - - } - - private void initOperationTabDatas() { - mOperationTab = findViewById(R.id.operation_data_tablayout); - mOperationViewPager = findViewById(R.id.operation_data_viewpager); - for (int i= 0;i < mTabTitles.length; i++){ - TabLayout.Tab tab = mOperationTab.newTab(); - tab.view.setBackgroundColor(Color.parseColor("#00000000")); - View tabView = View.inflate(getContext(),R.layout.taxi_operation_tab_item_custom,null); - TextView tv = tabView.findViewById(R.id.operation_tab_title); - tv.setText(mTabTitles[i]); - tab.setCustomView(tabView); - if (0 == i){ - mOperationTab.addTab(tab,true); - changeOperationTabLayoutTabUI(tab,true); - fragments.add(TaxiOperationDatasFragment.newInstance(getActivity(),0)); - }else if (1 == i){ - mOperationTab.addTab(tab); - changeOperationTabLayoutTabUI(tab,false); - fragments.add(TaxiOperationDatasFragment.newInstance(getActivity(),1)); - } - } - mOperationTab.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { - @Override - public void onTabSelected(TabLayout.Tab tab) { - mOperationViewPager.setCurrentItem(tab.getPosition()); - changeOperationTabLayoutTabUI(tab,true); - fragments.get(tab.getPosition()).setmType(tab.getPosition()); - } - - @Override - public void onTabUnselected(TabLayout.Tab tab) { - changeOperationTabLayoutTabUI(tab,false); - } - - @Override - public void onTabReselected(TabLayout.Tab tab) { - - } - }); - mOperationViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { - } - - @Override - public void onPageSelected(int position) { - mOperationTab.getTabAt(position).select(); - } - - @Override - public void onPageScrollStateChanged(int state) { - } - }); - mOperationViewPager.setAdapter(new OrdersOperationFragmentAdapter( - getChildFragmentManager(), FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT)); - fragments.get(0).setmType(0); - } - - public void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum){ - for (int i=0; i< fragments.size();i++){ - fragments.get(i).updateData(dailyTimeDuration,dailyOrderNum); - } - } - - private void changeOperationTabLayoutTabUI(TabLayout.Tab tab, boolean isSelected) { - TextView textView = (TextView) tab.getCustomView().findViewById(R.id.operation_tab_title); - ImageView imageView = (ImageView) tab.getCustomView().findViewById(R.id.operation_tab_line_iv); - if (isSelected){ - textView.setTextSize(TypedValue.COMPLEX_UNIT_PX,AutoSizeUtils.dp2px(getContext(),46)); - CallerLogger.d(M_TAXI + TAG,"SelectTv = "+ textView.getText()); - textView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD)); - textView.setTextColor(Color.parseColor("#FFFFFF")); - if(getContext()!=null) { - imageView.setImageDrawable(getResources().getDrawable(R.drawable.taxi_driver_operation_tab_line)); - } - }else { - textView.setTextSize(TypedValue.COMPLEX_UNIT_PX,AutoSizeUtils.dp2px(getContext(),40)); - CallerLogger.d(M_TAXI + TAG,"unSelectTv = "+ textView.getText()); - textView.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL)); - textView.setTextColor(Color.parseColor("#A7B6F0")); - imageView.setImageDrawable(null); - } - } - - @Override - public void onClick(View v) { - if (v.getId() == R.id.module_och_taxi_order_list_close_iv){ - dismiss(); - }else { - mOrdersRv.setVisibility(View.VISIBLE); - mOperationDataRl.setVisibility(View.GONE); - mNoDatas.setVisibility(View.GONE); - initOrdersView(); - mPresenter.queryOrdersList(mNextPage, mPerPageSize); - } - } - - private void initOrdersView() { - mAdapter = new OrderAdapter(getContext(),orders); - LinearLayoutManager manager = new LinearLayoutManager(getContext()); - mOrdersRv.setLayoutManager(manager); - mOrdersRv.addOnScrollListener(new OnTaxiOrderRvOnScrollListener() { - @Override - public void onLoadMore() { - if (!serverHadNoData){ - mPresenter.queryOrdersList(mNextPage, mPerPageSize); - } - } - }); - mOrdersRv.setAdapter(mAdapter); - } - - public void onOrdersListPageRefresh(List ordersList){ - try { - if (null == ordersList && mNextPage == 0 || - (ordersList != null && ordersList.size() == 0)){//无数据 - mOrdersRv.setVisibility(View.GONE); - mNoDatas.setVisibility(View.VISIBLE); - return; - } - mOrdersRv.setVisibility(View.VISIBLE); - mNoDatas.setVisibility(View.GONE); - if ((null == ordersList) || (ordersList.size() < mPerPageSize && mNextPage > 0)){//已经没有更多数据,提示无数据 - //已经没有更多数据 - serverHadNoData = true; - orders.addAll(ordersList); - mAdapter.notifyDataSetChanged(); - mNextPage = mNextPage +1; - return; - } - serverHadNoData = false; - orders.addAll(ordersList); - if(mAdapter!=null) { - mAdapter.notifyDataSetChanged(); - } - mNextPage = mNextPage +1; - }catch (Exception e){ - e.fillInStackTrace(); - } - } - - class OrderAdapter extends RecyclerView.Adapter{ - private static final int ORDER_DETAIL_ITEM = 0; - private static final int DAY_GROUP_ITEM = 1; - private Context context; - List orders; - public OrderAdapter(Context context,List datas){ - this.context = context; - this.orders = datas; - } - - @NonNull - @Override - public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - if (viewType == ORDER_DETAIL_ITEM){ - View view = LayoutInflater.from(context).inflate(R.layout.taxi_orders_list_item,parent,false); - return new OrderDetailViewHolder(view); - }else if (viewType == DAY_GROUP_ITEM){ - View view = LayoutInflater.from(context).inflate(R.layout.taxi_orders_list_day_item,parent,false); - return new DayGroupViewHolder(view); - } - return null; - } - - @Override - public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { - OrderQueryRespBean.Result queryRespBean = orders.get(position); - if (null == queryRespBean) return; - if (holder instanceof DayGroupViewHolder){ - DayGroupViewHolder groupViewHolder = (DayGroupViewHolder)holder; - groupViewHolder.dayGroupTv.setText(DateTimeUtil.getYMDTime(queryRespBean.createTime)); - bindOrderDetailData(queryRespBean,groupViewHolder.orderTimeTv,groupViewHolder.startStationTv,groupViewHolder.endStationTv, - groupViewHolder.orderStatusBt,groupViewHolder.orderTypeBt,groupViewHolder.orderNumTv); - if (isNoLineItem(position)){ - groupViewHolder.dividerLine.setVisibility(View.VISIBLE); - }else { - groupViewHolder.dividerLine.setVisibility(View.GONE); - } - if (position == orders.size()-1 && serverHadNoData){ - groupViewHolder.mBootNoDataView.setVisibility(View.VISIBLE); - }else { - groupViewHolder.mBootNoDataView.setVisibility(View.GONE); - } - }else if (holder instanceof OrderDetailViewHolder){ - OrderDetailViewHolder detailViewHolder = (OrderDetailViewHolder)holder; - bindOrderDetailData(queryRespBean,detailViewHolder.orderTimeTv,detailViewHolder.startStationTv,detailViewHolder.endStationTv, - detailViewHolder.orderStatusBt,detailViewHolder.orderTypeBt,detailViewHolder.orderNumTv); - if (isNoLineItem(position)){ - detailViewHolder.dividerLine.setVisibility(View.VISIBLE); - }else { - detailViewHolder.dividerLine.setVisibility(View.GONE); - } - if (position == orders.size()-1 && serverHadNoData){ - detailViewHolder.mBootNoDataView.setVisibility(View.VISIBLE); - }else { - detailViewHolder.mBootNoDataView.setVisibility(View.GONE); - } - } - } - - @Override - public long getItemId(int position) { - return position; - } - - @Override - public int getItemViewType(int position) { - //第一个要显示时间 - if (position == 0){ - return DAY_GROUP_ITEM; - } - String currentDate = DateTimeUtil.getYMDTime(orders.get(position).createTime);//获取当前订单时间 - int prevIndex = position - 1; - String preDate = DateTimeUtil.getYMDTime(orders.get(prevIndex).createTime); - boolean isDifferent = !preDate.equals(currentDate);//前一个订单的日期跟第二个订单的日期是否一致 - return isDifferent ? DAY_GROUP_ITEM : ORDER_DETAIL_ITEM;//一样订单详情, 不一样新添加分组 - } - - private boolean isNoLineItem(int position){ - if (position == orders.size() -1){ - return false; - }else { - String currentDate = DateTimeUtil.getYMDTime(orders.get(position).createTime);//获取当前订单时间 - int nextIndex = position + 1; - String preDate = DateTimeUtil.getYMDTime(orders.get(nextIndex).createTime); - return preDate.equals(currentDate);//一样有划分线, 不一样没有划分线 - } - } - - @Override - public int getItemCount() { - return orders.size(); - } - - private void bindOrderDetailData(OrderQueryRespBean.Result queryRespBean, TextView orderTimeTv, TextView startStationTv, TextView endStationTv, - Button orderStatusBt, Button orderTypeBt, TextView orderNumTv){ - Calendar calendar= Calendar.getInstance(); - calendar.setTimeInMillis(queryRespBean.createTime); - orderTimeTv.setText(DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.HH_mm)); - startStationTv.setText(queryRespBean.startSiteAddr); - endStationTv.setText(queryRespBean.endSiteAddr); - orderStatusBt.setText(getOrderStatus(queryRespBean.orderStatus,orderStatusBt)); - orderTypeBt.setText(getOrderType(queryRespBean.orderType,orderTypeBt)); - orderNumTv.setText("订单编号:"+String.valueOf(queryRespBean.orderNo)); - } - - private String getOrderStatus(int status, Button button){ - TaxiOrderStatusEnum orderStatus = TaxiOrderStatusEnum.valueOf(status); - switch (orderStatus){ - case JourneyCompleted: - button.setBackground(context.getDrawable(R.drawable.taxi_order_button_status_canceled_bg)); - return "已完成"; - case Cancel: - button.setBackground(context.getDrawable(R.drawable.taxi_order_button_status_canceled_bg)); - return "已取消"; - default: - button.setBackground(context.getDrawable(R.drawable.taxi_order_button_status_bg)); - return "服务中"; - } - } - - private String getOrderType(int type, Button button){ - if (type == TaxiOrderTypeEnum.Reserved.getType()){ - button.setBackground(context.getDrawable(R.drawable.taxi_order_button_type_reserver_bg)); - return "预约单"; - }else{ - button.setBackground(context.getDrawable(R.drawable.taxi_order_button_type_bg)); - return "即时单"; - } - } - - } - - class OrderDetailViewHolder extends RecyclerView.ViewHolder{ - - protected TextView orderTimeTv; - protected Button orderStatusBt; - protected TextView startStationTv; - protected TextView endStationTv; - protected TextView orderNumTv; - protected Button orderTypeBt; - protected View dividerLine; - protected View mBootNoDataView; - - public OrderDetailViewHolder(@NonNull View itemView) { - super(itemView); - orderTimeTv = itemView.findViewById(R.id.order_time_hm_tv); - orderStatusBt = itemView.findViewById(R.id.order_status_bt); - startStationTv = itemView.findViewById(R.id.grab_order_start_station); - endStationTv = itemView.findViewById(R.id.grab_order_end_station); - orderNumTv = itemView.findViewById(R.id.order_num); - orderTypeBt = itemView.findViewById(R.id.order_type_bt); - dividerLine = itemView.findViewById(R.id.module_och_taxi_order_divider); - mBootNoDataView = itemView.findViewById(R.id.boot_refresh_no_data_view); - } - } - - class DayGroupViewHolder extends OrderDetailViewHolder{ - - private TextView dayGroupTv; - public DayGroupViewHolder(@NonNull View itemView) { - super(itemView); - dayGroupTv = itemView.findViewById(R.id.order_day_tv); - } - } - - abstract class OnTaxiOrderRvOnScrollListener extends RecyclerView.OnScrollListener{ - - private boolean isUpwardSliding = false; - - @Override - public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) { - RecyclerView.LayoutManager manager = recyclerView.getLayoutManager(); - //不滑动 - if (manager instanceof LinearLayoutManager && newState == SCROLL_STATE_IDLE){ - LinearLayoutManager linearLayoutManager = (LinearLayoutManager) manager; - int lastItemPosition = linearLayoutManager.findLastCompletelyVisibleItemPosition(); - int itemCount = linearLayoutManager.getItemCount(); - CallerLogger.d(M_TAXI + TAG,"lastItemPosition=="+lastItemPosition+",itemCount=="+itemCount); - //向上滑动到最后一个 - if ((lastItemPosition == itemCount-1) && isUpwardSliding){ - onLoadMore(); - } - } - } - - @Override - public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { - super.onScrolled(recyclerView, dx, dy); - isUpwardSliding = dy > 0; - } - public abstract void onLoadMore(); - } - - @Override - public void dismiss() { - super.dismiss(); - mNextPage = 0; - orders.clear(); - } - - private class OrdersOperationFragmentAdapter extends FragmentPagerAdapter{ - - public OrdersOperationFragmentAdapter(@NonNull FragmentManager fm, int behavior) { - super(fm, behavior); - } - - @NonNull - @Override - public Fragment getItem(int position) { - return fragments.get(position); - } - - @Override - public int getCount() { - return fragments.size(); - } - - @Nullable - @Override - public CharSequence getPageTitle(int position) { - return mTabTitles[position]; - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiReserveOrdersFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiReserveOrdersFragment.java deleted file mode 100644 index 850ea6ede0..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiReserveOrdersFragment.java +++ /dev/null @@ -1,186 +0,0 @@ -package com.mogo.och.taxi.ui; - -import android.app.Activity; -import android.content.Context; -import android.os.Bundle; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ImageView; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.constraintlayout.widget.ConstraintLayout; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; - -import com.mogo.eagle.core.utilcode.util.ToastUtils; -import com.mogo.och.common.module.utils.DateTimeUtil; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.List; - -import static androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE; - -/** - * @author: wangmingjun - * @date: 2021/9/2 - * 待服务订单列表 - */ -public class TaxiReserveOrdersFragment extends BaseTaxiUIFragment { - - private RecyclerView mRecyclerView; - private TextView mNodataTv; - private ConstraintLayout mNoDataView; - private View mBootRefreshNoDataView; - private List mDatas = new ArrayList<>(); - private ToBeServedOrdersAdapter mAdapter; - private TaxiFragment mTaxiFragment; - private boolean isUpwardSliding = false; - - public static TaxiReserveOrdersFragment newInstance(Activity activity, TaxiFragment taxiFragment){ - Bundle args = new Bundle(); - TaxiReserveOrdersFragment fragment = new TaxiReserveOrdersFragment(); - fragment.setArguments( args ); - fragment.mTaxiFragment = taxiFragment; - return fragment; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_reserve_orders; - } - - @Override - protected void initViews(View view) { - mRecyclerView = view.findViewById(R.id.order_to_be_served_rv); - mNodataTv = view.findViewById(R.id.no_order_data_tv); - mNoDataView = view.findViewById(R.id.no_order_data_view); - mNodataTv.setText("暂无待服务订单"); - mBootRefreshNoDataView = view.findViewById(R.id.list_boot_refresh_no_data_view); - mBootRefreshNoDataView.setVisibility(View.GONE); - mAdapter = new ToBeServedOrdersAdapter(getActivity(),mDatas); - mRecyclerView.setLayoutManager(new LinearLayoutManager(getParentFragment().getActivity())); - mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { - @Override - public void onScrollStateChanged(@NonNull RecyclerView recyclerView, int newState) { - RecyclerView.LayoutManager manager = recyclerView.getLayoutManager(); - //不滑动 - if (manager instanceof LinearLayoutManager && newState == SCROLL_STATE_IDLE){ - LinearLayoutManager linearLayoutManager = (LinearLayoutManager) manager; - int lastItemPosition = linearLayoutManager.findLastCompletelyVisibleItemPosition(); - int itemCount = manager.getItemCount(); - if ((lastItemPosition == itemCount-1) && !isUpwardSliding){ - //显示没有更多数据 - mBootRefreshNoDataView.setVisibility(View.VISIBLE); - } - } - } - - @Override - public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) { - super.onScrolled(recyclerView, dx, dy); - isUpwardSliding = dy > 0; - } - }); - mRecyclerView.setAdapter(mAdapter); - } - public void onOrdersWaitServiceChanged(List waitServiceList){//待服务订单展示 - if (waitServiceList.size() == 0){ - showNoDataTip(); - return; - } - mNoDataView.setVisibility(View.GONE); - mRecyclerView.setVisibility(View.VISIBLE); - mDatas.clear(); - mDatas.addAll(waitServiceList); - mAdapter.notifyDataSetChanged(); - } - - private void showNoDataTip() { - mBootRefreshNoDataView.setVisibility(View.GONE); - mNoDataView.setVisibility(View.VISIBLE); - mRecyclerView.setVisibility(View.GONE); - } - - class ToBeServedOrdersAdapter extends RecyclerView.Adapter{ - private List datas; - private Context context; - public ToBeServedOrdersAdapter(Context context, List datas){ - this.datas = datas; - this.context = context; - } - - @NonNull - @Override - public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - View view = LayoutInflater.from(context).inflate(R.layout.taxi_order_reserve_item,parent,false); - ToBeServedOrdersViewHolder viewHolder = new ToBeServedOrdersViewHolder(view); - return viewHolder; - } - - @Override - public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) { - if (datas != null && datas.size() >0 ){ - ToBeServedOrdersViewHolder viewHolder = (ToBeServedOrdersViewHolder)holder; - OrderQueryRespBean.Result order = datas.get(position); - Calendar calendar = DateTimeUtil.formatLongToCalendar(order.bookingTime); - if (DateTimeUtil.compareDateIsCurrentDay(calendar)){ - viewHolder.orderTime.setText("用车时间:今天"+ DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.HH_mm)); - }else { - viewHolder.orderTime.setText("用车时间:"+ DateTimeUtil.formatCalendarToString(calendar, DateTimeUtil.MM_dd_HH_mm)); - } - viewHolder.orderCancel.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - new TaxiOrderCancelDialog(mTaxiFragment,context,order.orderNo,1).show(); - } - }); - viewHolder.startStation.setText(order.startSiteAddr); - viewHolder.endStation.setText(order.endSiteAddr); - if (position == mDatas.size() -1){ - viewHolder.deliverLine.setVisibility(View.GONE); - } - } - } - - @Override - public int getItemCount() { - return datas.size(); - } - } - class ToBeServedOrdersViewHolder extends RecyclerView.ViewHolder{ - TextView orderTime; - ImageView orderCancel; - TextView startStation; - TextView endStation; - View deliverLine; - public ToBeServedOrdersViewHolder(@NonNull View itemView) { - super(itemView); - orderTime = itemView.findViewById(R.id.to_be_order_time); - orderCancel = itemView.findViewById(R.id.to_be_order_cancel_iv); - startStation = itemView.findViewById(R.id.base_start_station); - endStation = itemView.findViewById(R.id.base_end_station); - deliverLine = itemView.findViewById(R.id.to_be_order_divider); - } - } - public void onOrderCancelDone(String orderNo){ - ToastUtils.showShort("订单取消成功"); - for (int i=0; i< mDatas.size();i++){ - OrderQueryRespBean.Result result = mDatas.get(i); - if (orderNo.equals(result.orderNo)){ - mDatas.remove(i); - mAdapter.notifyDataSetChanged(); - break; - } - } - } - - @Override - public void onDestroy() { - super.onDestroy(); - mTaxiFragment = null; - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiRottingNaviFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiRottingNaviFragment.java deleted file mode 100644 index 003c211eaa..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiRottingNaviFragment.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.mogo.och.taxi.ui; - -import android.os.Bundle; - -import androidx.annotation.NonNull; - -import com.amap.api.maps.model.LatLng; -import com.mogo.commons.mvp.MvpFragment; -import com.mogo.eagle.core.data.map.MogoLocation; -import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.presenter.NaviPresenter; - -import java.util.List; - -/** - * @author: wangmingjun - * @date: 2021/11/30 - */ -public class TaxiRottingNaviFragment extends MvpFragment { - - private final String TAG = TaxiRottingNaviFragment.class.getSimpleName(); - - private TaxiMapDirectionView mMapDirectionView; - public static TaxiRottingNaviFragment newInstance() { - - Bundle args = new Bundle(); - - TaxiRottingNaviFragment fragment = new TaxiRottingNaviFragment(); - fragment.setArguments(args); - return fragment; - } - - @Override - protected int getLayoutId() { - return R.layout.taxi_rotting_navi_view; - } - - @Override - public String getTagName() { - return TAG; - } - - @Override - protected void initViews() { - - } - - @Override - protected void initViews(Bundle savedInstanceState) { - super.initViews(savedInstanceState); - mMapDirectionView = mRootView.findViewById(R.id.rotting_navi_view); - mMapDirectionView.onCreateView(savedInstanceState); - } - - @Override - public void onResume() { - super.onResume(); - mMapDirectionView.onResume(); - } - - @Override - public void onPause() { - super.onPause(); - mMapDirectionView.onPause(); - } - - @Override - public void onDestroy() { - super.onDestroy(); - - if (mMapDirectionView != null){ - mMapDirectionView.onDestroy(); - } - } - - @NonNull - @Override - protected NaviPresenter createPresenter() { - return new NaviPresenter(this); - } - - public void routeResult(List routeArrivied, List routeArriving, MogoLocation location){ - if ((routeArrivied.size()+routeArriving.size()) > 0) { - drawablePolylineByRoute(routeArrivied,routeArriving,location); - } else { - clearPolyline(); - } - } - - public void setLineMarker(LatLng startStation, LatLng endStation){ - if (startStation!=null&&endStation!=null) { - if (mMapDirectionView != null) { - mMapDirectionView.setStartMarkAndEndMark(startStation,endStation); - UiThreadHandler.post(() -> mMapDirectionView.setLineMarker()); - } - } else { - clearPolyline(); - } - } - - public void drawablePolylineByRoute(List routeArrivied, List routeArriving, MogoLocation location){ - if (mMapDirectionView != null){ - mMapDirectionView.setCoordinatesLatLng(routeArrivied,routeArriving,location); - UiThreadHandler.post(() -> mMapDirectionView.drawablePolyline()); - } - } - private void clearPolyline() { - if (mMapDirectionView != null) { - UiThreadHandler.post(() -> mMapDirectionView.clearPolyline()); - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java deleted file mode 100644 index c006376d84..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java +++ /dev/null @@ -1,233 +0,0 @@ -package com.mogo.och.taxi.ui; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -import android.graphics.Color; -import android.graphics.Typeface; -import android.os.Build; -import android.os.Bundle; -import android.util.TypedValue; -import android.view.View; -import android.widget.TextView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; -import androidx.fragment.app.Fragment; -import androidx.fragment.app.FragmentManager; -import androidx.fragment.app.FragmentPagerAdapter; -import androidx.fragment.app.FragmentTransaction; -import androidx.viewpager.widget.ViewPager; - -import com.google.android.material.tabs.TabLayout; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.och.taxi.R; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.data.taxi.OrderQueryRouteInfoRespBean; - -import java.util.ArrayList; -import java.util.List; - -import me.jessyan.autosize.utils.AutoSizeUtils; - -/** - * @author congtaowang - * @since 2021/1/18 - * - * 网约车-出租车UI - */ -public class TaxiServerOrdersFragment extends BaseTaxiUIFragment { - - public static final String TAG = "TaxiFragment"; - - public static TaxiServerOrdersFragment newInstance() { - - Bundle args = new Bundle(); - - TaxiServerOrdersFragment fragment = new TaxiServerOrdersFragment(); - fragment.setArguments( args ); - return fragment; - } - private FragmentTransaction mFragmentTransaction; - private TabLayout mTaxiOrderTab; - private TextView mWaitOrderSum; - private ViewPager mTaxiOrderPager; - private String[] mTabTitles = {"进行中","待服务"}; - private List fragments = new ArrayList<>(); - private TaxiBeingServerdOrdersFragment beingServerdOrdersFragment = null; - private TaxiReserveOrdersFragment reserveOrdersFragment = null; - - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - @Override - protected int getLayoutId() { - return R.layout.taxi_server_orders_panel; - } - - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - @Override - protected void initViews(View view) { - initOrderTab(view); - } - - - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - private void initOrderTab(View view) { - mWaitOrderSum = view.findViewById(R.id.wait_order_num); - mTaxiOrderTab = view.findViewById(R.id.module_och_taxi_tab); - mTaxiOrderPager = view.findViewById(R.id.module_och_taxi_view_pager); - for (int i= 0;i < mTabTitles.length; i++){ - TabLayout.Tab tab = mTaxiOrderTab.newTab(); - tab.view.setBackgroundColor(Color.parseColor("#00000000")); - TextView tabView = (TextView) View.inflate(getActivity(),R.layout.taxi_tab_item_custom,null); - tabView.setText(mTabTitles[i]); - tabView.setHeight(AutoSizeUtils.dp2px(getContext(),115)); - tab.setCustomView(tabView); - if (0 == i){ - mTaxiOrderTab.addTab(tab,true); - changeTabLayoutTabUI(tab,true); - beingServerdOrdersFragment = TaxiBeingServerdOrdersFragment.newInstance(getActivity(),(TaxiFragment) getParentFragment()); - fragments.add(beingServerdOrdersFragment); - }else if (1 == i){ - mTaxiOrderTab.addTab(tab); - changeTabLayoutTabUI(tab,false); - reserveOrdersFragment = TaxiReserveOrdersFragment.newInstance(getActivity(),(TaxiFragment) getParentFragment()); - fragments.add(reserveOrdersFragment); - } - - } - CallerLogger.d(M_TAXI + TAG,"activity="+getActivity()); - mTaxiOrderTab.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - @Override - public void onTabSelected(TabLayout.Tab tab) { - mTaxiOrderPager.setCurrentItem(tab.getPosition()); - changeTabLayoutTabUI(tab,true); - } - - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - @Override - public void onTabUnselected(TabLayout.Tab tab) { - changeTabLayoutTabUI(tab,false); - } - - @Override - public void onTabReselected(TabLayout.Tab tab) { - - } - }); - mTaxiOrderPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { - } - - @Override - public void onPageSelected(int position) { - mTaxiOrderTab.getTabAt(position).select(); - } - - @Override - public void onPageScrollStateChanged(int state) { - } - }); - mTaxiOrderPager.setAdapter(new OrdersFragmentAdapter(getChildFragmentManager(),FragmentPagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT)); - } - - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - private void changeTabLayoutTabUI(TabLayout.Tab tab, boolean isSelected){ - TextView textView = (TextView) tab.getCustomView().findViewById(R.id.tab_title); - if (isSelected){ - textView.setBackground(getActivity().getDrawable(R.drawable.taxi_driver_tab_item_bg)); - textView.setTextSize(TypedValue.COMPLEX_UNIT_PX,AutoSizeUtils.dp2px(getContext(),40)); - CallerLogger.d(M_TAXI + TAG,"SelectTv = "+ textView.getText()); - textView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD)); - textView.setTextColor(Color.parseColor("#FFFFFF")); - }else { - textView.setBackground(null); - textView.setTextSize(TypedValue.COMPLEX_UNIT_PX,AutoSizeUtils.dp2px(getContext(),36)); - CallerLogger.d(M_TAXI + TAG,"unSelectTv = "+ textView.getText()); - textView.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL)); - textView.setTextColor(Color.parseColor("#CCD4F5")); - } - } - - class OrdersFragmentAdapter extends FragmentPagerAdapter{ - - private FragmentManager fragmentManager; - - public OrdersFragmentAdapter(@NonNull FragmentManager fm, int behavior) { - super(fm, behavior); - this.fragmentManager = fm; - } - - @NonNull - @Override - public Fragment getItem(int position) { - CallerLogger.d( M_TAXI + TAG, "getItem="+position); - return fragments.get(position); - } - - @Override - public int getCount() { - return fragments.size(); - } - - @Nullable - @Override - public CharSequence getPageTitle(int position) { - CallerLogger.d( M_TAXI + TAG, "getPageTitle="+position); - return mTabTitles[position]; - } - } - - @Override - public void onDestroy() { - super.onDestroy(); - beingServerdOrdersFragment = null; - reserveOrdersFragment = null; - } - - @RequiresApi(api = Build.VERSION_CODES.P) - public void updateCurrentOrderStatusChanged(OrderQueryRespBean.Result order){ - if (beingServerdOrdersFragment != null){ - mTaxiOrderTab.getTabAt(0).select(); - beingServerdOrdersFragment.updateCurrentOrderStatusChanged(order); - } - } - public void onOrdersWaitServiceChanged(List waitServiceList){ - if (waitServiceList.size() == 0){ - mWaitOrderSum.setVisibility(View.GONE); - }else { - mWaitOrderSum.setText(String.valueOf(waitServiceList.size())); - mWaitOrderSum.setVisibility(View.VISIBLE); - } - if (null == reserveOrdersFragment) return; - reserveOrdersFragment.onOrdersWaitServiceChanged(waitServiceList); - } - public void onOrderCancelDone(String orderNo){ - if (null == reserveOrdersFragment) return; - reserveOrdersFragment.onOrderCancelDone(orderNo); - } - public void onCurrentOrderCancelDone(){ - if (null == beingServerdOrdersFragment) return; - beingServerdOrdersFragment.onCurrentOrderCancelDone(); - } - - public void onCurrentOrderDistToEndChanged(long meters, long timeInSecond){ - if (null == beingServerdOrdersFragment) return; - beingServerdOrdersFragment.updateDistanceAndTime(meters,timeInSecond); - } - public void onCurrentOrderRouteInfoGot(OrderQueryRouteInfoRespBean.Result routeInfo){ - if (null == beingServerdOrdersFragment) return; - beingServerdOrdersFragment.onCurrentOrderRouteInfoGot(routeInfo); - } - - public void updateOrderBottomBtnUI() { - if (null == beingServerdOrdersFragment) return; - beingServerdOrdersFragment.updateOrderBottomBtnUI(); - } - - public void onNaviToEndAmap(boolean isShow){ - if (null == beingServerdOrdersFragment) return; - beingServerdOrdersFragment.onNaviToEndAmap(isShow); - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/base/AvoidLeakDialog.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/base/AvoidLeakDialog.java deleted file mode 100644 index e332766931..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/ui/base/AvoidLeakDialog.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.mogo.och.taxi.ui.base; - -import android.app.Dialog; -import android.content.Context; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.fragment.app.DialogFragment; -import java.lang.ref.WeakReference; - -/** - * @author: wangmingjun - * @date: 2022/9/1 - */ -public class AvoidLeakDialog extends Dialog { - - private WeakReference hostFragmentReference; - - public void setHostFragmentReference(DialogFragment hostFragment) { - this.hostFragmentReference = new WeakReference<>(hostFragment); - } - - public AvoidLeakDialog(@NonNull Context context) { - super(context); - } - - public AvoidLeakDialog(@NonNull Context context, int themeResId) { - super(context, themeResId); - } - - protected AvoidLeakDialog(@NonNull Context context, boolean cancelable, @Nullable OnCancelListener cancelListener) { - super(context, cancelable, cancelListener); - } - - @Override - public void setOnCancelListener(@Nullable OnCancelListener listener) { - } - - @Override - public void setOnDismissListener(@Nullable OnDismissListener listener) { - } - - @Override - public void setOnShowListener(@Nullable OnShowListener listener) { - } - - @Override - public void dismiss() { - super.dismiss(); - if (null != hostFragmentReference && null != hostFragmentReference.get()) { - hostFragmentReference.get().dismissAllowingStateLoss(); - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/OrderUtil.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/OrderUtil.java deleted file mode 100644 index 4c61f04ebb..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/OrderUtil.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.mogo.och.taxi.utils; - -import com.mogo.och.taxi.bean.OrderQueryRespBean; - -import java.util.Arrays; -import java.util.List; - -/** - * Created on 2021/9/11 - */ -public class OrderUtil { - - // 判断两个list中的订单是否相同:依据orderId - public static boolean haveSameOrders(List list1, - List list2) { - OrderQueryRespBean.Result[] arr1 = list1.toArray(new OrderQueryRespBean.Result[]{}); - OrderQueryRespBean.Result[] arr2 = list2.toArray(new OrderQueryRespBean.Result[]{}); - Arrays.sort(arr1); - Arrays.sort(arr1); - return Arrays.equals(arr1,arr2); - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java deleted file mode 100644 index 5adc1a9531..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TPRouteDataTestUtils.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.mogo.och.taxi.utils; - -import com.mogo.och.taxi.model.TaxiModel; - -import org.json.JSONArray; -import org.json.JSONException; -import org.json.JSONObject; - -import java.util.ArrayList; -import java.util.List; - -import mogo.telematics.pad.MessagePad; - -/** - * @author: wangmingjun - * @date: 2022/4/13 - */ -public class TPRouteDataTestUtils { - - static String jsonStr ="{\n" + - " \"models\": [\n" + - " {\n" + - " \"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927760268911,\"lon\":116.73512607061035,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927736555187,\"lon\":116.73498243020299,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927135941599,\"lon\":116.73482951462647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199260672670036,\"lon\":116.73468429259535,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199251260349946,\"lon\":116.73453933465,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924691997577,\"lon\":116.7343756435551,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199247953493625,\"lon\":116.73421240809087,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19924986849947,\"lon\":116.73400425509712,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199249431152175,\"lon\":116.73378579041055,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199248921305724,\"lon\":116.73357811807278,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925012387371,\"lon\":116.73337650020184,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252270195075,\"lon\":116.73318223781153,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992521615169,\"lon\":116.73298632625203,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19925202633083,\"lon\":116.73279582043983,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199261230205735,\"lon\":116.73263403473568,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199327991681926,\"lon\":116.73251962434813,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19944850496711,\"lon\":116.73249661840195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199582026896415,\"lon\":116.73251038561487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199743326352014,\"lon\":116.73253087453938,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199908347167394,\"lon\":116.73255070500186,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200065950595445,\"lon\":116.7325720694418,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20022747460407,\"lon\":116.73259461416663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384057310536,\"lon\":116.73261575018056,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20053849777916,\"lon\":116.73263451936387,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200696919444624,\"lon\":116.7326540541723,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2008524952796,\"lon\":116.7326743511824,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20101429705625,\"lon\":116.73269393580199,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118279997041,\"lon\":116.73271564378308,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201342388452076,\"lon\":116.73273653366076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201476063822355,\"lon\":116.73275292393079,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163479199852,\"lon\":116.73277440686762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181243476041,\"lon\":116.7328052766508,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201991767093304,\"lon\":116.7328453845644,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20215573733484,\"lon\":116.73287624009339,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202313648759784,\"lon\":116.73289887933315,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434745374454,\"lon\":116.7329182210956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253164952098,\"lon\":116.73297539811277,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258043275509,\"lon\":116.73312335324984,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20258233576585,\"lon\":116.73331077089557,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20257107560234,\"lon\":116.73351244039137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202561578580514,\"lon\":116.73370176209845,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20256256788661,\"lon\":116.73391325024126,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20255633158834,\"lon\":116.73413195000244,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202543311179575,\"lon\":116.73436614303907,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20253067346457,\"lon\":116.73458032609663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20251776111356,\"lon\":116.73477082198242,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202503997557805,\"lon\":116.73498624001282,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20249129260376,\"lon\":116.73518976336872,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247877796589,\"lon\":116.73537786253135,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246651610268,\"lon\":116.73559239130266,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245754388014,\"lon\":116.73574239922202,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20244749208,\"lon\":116.73589674090469,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243806550113,\"lon\":116.73607057284322,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243550556816,\"lon\":116.73628106525871,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243654127756,\"lon\":116.7364949950665,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243738221016,\"lon\":116.7367061649993,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243672476754,\"lon\":116.73691115930336,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243590788176,\"lon\":116.73710722104272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202436434375336,\"lon\":116.73730688607075,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243749821501,\"lon\":116.73750140347998,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243625962803,\"lon\":116.73771330926793,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202434515480725,\"lon\":116.73791895606205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024326561388,\"lon\":116.73815206945737,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20243092086137,\"lon\":116.73838655528765,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202430876006126,\"lon\":116.73861890759498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242914053177,\"lon\":116.73882029918758,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242843336561,\"lon\":116.73904465495175,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242661219026,\"lon\":116.73922453252953,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426462811076,\"lon\":116.7393708046956,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242687134937,\"lon\":116.73954685547025,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20242694967377,\"lon\":116.73975021183773,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202424630601236,\"lon\":116.73999740812975,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202422502184625,\"lon\":116.74028266774337,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202419634158936,\"lon\":116.7405942561498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241975959762,\"lon\":116.7409069557092,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241920524113,\"lon\":116.74120156191647,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241765540262,\"lon\":116.74149288504978,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241569149764,\"lon\":116.7418080096762,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202414529497084,\"lon\":116.74210262897205,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241419532155,\"lon\":116.74241767661879,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202413879360954,\"lon\":116.7427571218185,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241287045245,\"lon\":116.7431284691325,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241214965105,\"lon\":116.74343354359334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241141271715,\"lon\":116.7437220210538,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2024080520075,\"lon\":116.74399113498052,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202391714280026,\"lon\":116.74427625698272,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20238163805639,\"lon\":116.74452083315958,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379293010274,\"lon\":116.74475703837204,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202379007817086,\"lon\":116.7449961645494,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20237814181231,\"lon\":116.7452036063558,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202375477619896,\"lon\":116.74539567654291,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2023632396621,\"lon\":116.74555457589031,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20229396554444,\"lon\":116.7456716047369,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20217800547467,\"lon\":116.74574081942625,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202047498095304,\"lon\":116.74573659255675,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20188573786706,\"lon\":116.74571018281719,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201738240263026,\"lon\":116.74568463148606,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20157507049073,\"lon\":116.74565525041498,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20137985142042,\"lon\":116.745619970576,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201187335613575,\"lon\":116.74558631350607,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20098251429043,\"lon\":116.74555055587679,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2007748533628,\"lon\":116.74551426934663,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20057082986032,\"lon\":116.74547749663195,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20036944224329,\"lon\":116.74544156175533,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016365229035,\"lon\":116.74540577510051,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1999958572445,\"lon\":116.74537505807076,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19984100521566,\"lon\":116.7453433678602,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1996863960282,\"lon\":116.74529675648621,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19953919567943,\"lon\":116.74525916493474,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19940587189373,\"lon\":116.74523402869453,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19929047792381,\"lon\":116.74518617038383,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922141745155,\"lon\":116.74506912884067,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920798885308,\"lon\":116.744896716334,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920912644279,\"lon\":116.74467216715483,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199209186509314,\"lon\":116.74448257515108,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19920910709997,\"lon\":116.74430613406223,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992100786082,\"lon\":116.74410888316238,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921081961254,\"lon\":116.74391968819582,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921040855518,\"lon\":116.7437082083402,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921085053439,\"lon\":116.74346931155634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921197237373,\"lon\":116.74325149697013,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921248248983,\"lon\":116.74301103786591,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992139724646,\"lon\":116.74277237066539,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215818352386,\"lon\":116.74253219408898,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216175018876,\"lon\":116.74228853120842,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199215970354246,\"lon\":116.74204663206451,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199216627492966,\"lon\":116.74183871233049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19921789170398,\"lon\":116.74165788334192,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922000138535,\"lon\":116.74144512197054,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199221559127494,\"lon\":116.741249370491,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922287231889,\"lon\":116.7410525810756,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922229019589,\"lon\":116.74085266662037,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.1992216995901,\"lon\":116.74061957723823,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922263073874,\"lon\":116.74041638149129,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922478093337,\"lon\":116.7402123910757,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199227066091595,\"lon\":116.74003419421553,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199228634241756,\"lon\":116.73985841944678,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19922951636012,\"lon\":116.7397079274105,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199252095329484,\"lon\":116.73956265582487,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199346162997905,\"lon\":116.73944690416265,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199470799628024,\"lon\":116.73941941053417,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19962513314346,\"lon\":116.7394280706812,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199780626058924,\"lon\":116.73944255215424,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199961525343376,\"lon\":116.73945856750177,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20016196947193,\"lon\":116.73947572081121,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200384479551936,\"lon\":116.7394949225795,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200595083817475,\"lon\":116.73951027963179,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200792203321086,\"lon\":116.73952526850614,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200985930701684,\"lon\":116.73954125209579,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20115978977055,\"lon\":116.73955610094161,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201321019536124,\"lon\":116.7395695239138,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20147117943043,\"lon\":116.7395823299481,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20163699848565,\"lon\":116.73959633422596,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20178484338371,\"lon\":116.7396085776486,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201962185646316,\"lon\":116.73962351991214,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021018923927,\"lon\":116.7396354059821,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2022137620686,\"lon\":116.73964348380458,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20232600820075,\"lon\":116.73961190446633,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20241090270993,\"lon\":116.73951649703137,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20245777783807,\"lon\":116.73937664238166,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246906634823,\"lon\":116.73920146119093,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470916682884,\"lon\":116.73898763065634,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247034830421,\"lon\":116.73878158418357,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246978204673,\"lon\":116.73857680142473,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247082638905,\"lon\":116.73834517890637,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202471943178196,\"lon\":116.7381047689514,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247131648035,\"lon\":116.73787761484981,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202470799473765,\"lon\":116.73766230702478,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247013054322,\"lon\":116.73743619407796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246999515433,\"lon\":116.73724916823292,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247199652478,\"lon\":116.73704888970806,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202473960263525,\"lon\":116.73684083235807,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202474504753205,\"lon\":116.73665462440796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20247501354581,\"lon\":116.73650710371837,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20246541231906,\"lon\":116.73635807696789,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.202426768984274,\"lon\":116.73622283382787,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20236638788854,\"lon\":116.73610589402243,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20227106919894,\"lon\":116.73600895001849,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2021428343084,\"lon\":116.73596816020945,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20197815580698,\"lon\":116.73594623645097,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20181789535303,\"lon\":116.73593148707488,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201667906886954,\"lon\":116.73591743008926,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.201505897730755,\"lon\":116.7359002912543,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20135083580946,\"lon\":116.73588579696379,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20118617904595,\"lon\":116.73586970398149,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20102374028594,\"lon\":116.73585314703226,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20085554043743,\"lon\":116.73583763953049,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20069451888229,\"lon\":116.73582073901778,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.200530837344964,\"lon\":116.73580314359012,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.2003608457064,\"lon\":116.73578183888779,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20021770046798,\"lon\":116.73575292592922,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.20003454701824,\"lon\":116.7357174959358,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19986125116602,\"lon\":116.73569499961796,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19969408518737,\"lon\":116.73567725223492,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19955533048882,\"lon\":116.73566375985422,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19943174810538,\"lon\":116.73564927714162,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19933167546824,\"lon\":116.735595995086,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.199280357603875,\"lon\":116.73546293260645,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19927848361656,\"lon\":116.73531579486274,\"speed\":0.0},{\"altitude\":0.0,\"angle\":0.0,\"duration\":0,\"lat\":40.19928127892504,\"lon\":116.73505848474375,\"speed\": 0.0\n" + - " }\n" + - " ]\n" + - "}"; - public static void converToRouteData(){ - List list = new ArrayList<>(); - - try { - JSONObject jsonObject = new JSONObject(jsonStr); - JSONArray jsonElements = jsonObject.getJSONArray("models"); - for (int i = 0; i < jsonElements.length(); i++) { - JSONObject s = jsonElements.getJSONObject(i); - MessagePad.Location.Builder builder = MessagePad.Location.newBuilder(); - builder.setLatitude(s.getDouble("lat")); - builder.setLongitude(s.getDouble("lon")); - list.add(builder.build()); - } -// TaxiModel.getInstance().updateOrderRoute(list); - TaxiModel.getInstance().updateOrderRouteInfo(list); - } catch (JSONException e) { - e.printStackTrace(); - } - } -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt deleted file mode 100644 index 11b6304564..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsManager.kt +++ /dev/null @@ -1,40 +0,0 @@ -package com.mogo.och.taxi.utils - -import com.mogo.och.common.module.manager.autopilot.autopilot.IOchEventKey - -/** - * OCH Taxi埋点工具 - * - * Created on 2022/3/24 - */ -object TaxiAnalyticsManager : IOchEventKey { - - // 埋点key:开启自动驾驶前已识别的异常,会导致无法开启自驾 - const val EVENT_KEY_AP_UNABLE_START_REASON = "event_key_och_taxi_ap_unable_start_reason" - - // 埋点key:接管后点击'自动驾驶'按钮启动 - const val EVENT_KEY_RESTART_AUTOPILOT = "event_key_och_taxi_restart_autopilot" - - // 埋点key:开始服务开启自动驾驶(成功/失败) - const val EVENT_KEY_START_SERVICE = "event_key_och_taxi_start_service" - - // 埋点key:点击启动自驾 - private const val EVENT_KEY_CLICK_START_AUTOPILOT = "event_key_och_taxi_click_start_autopilot" - - - override fun getEventKeyStartService(): String { - return EVENT_KEY_START_SERVICE - } - - override fun getEventKeyRestartService(): String { - return EVENT_KEY_RESTART_AUTOPILOT - } - - override fun getEventKeyApUnableStartReason(): String { - return EVENT_KEY_AP_UNABLE_START_REASON - } - - override fun getEventKeyClickStartAutopilot(): String { - return EVENT_KEY_CLICK_START_AUTOPILOT - } -} \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiMapAssetStyleUtil.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiMapAssetStyleUtil.java deleted file mode 100644 index 4e991eda96..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiMapAssetStyleUtil.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.mogo.och.taxi.utils; - - -import android.content.Context; - -import java.io.IOException; -import java.io.InputStream; - -/** - * @author donghongyu - * @date 12/18/20 5:37 PM - */ -public class TaxiMapAssetStyleUtil { - - public static byte[] getAssetsStyle(Context context,String fileName) { - byte[] buffer1 = null; - InputStream is1 = null; - try { - is1 = context.getResources().getAssets().open(fileName); //eg. over_view_style.data - int lenght1 = is1.available(); - buffer1 = new byte[lenght1]; - is1.read(buffer1); - } catch (IOException e) { - e.printStackTrace(); - } finally { - try { - if (is1 != null) { - is1.close(); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - return buffer1; - } - - - public static byte[] getAssetsExtraStyle(Context context, String fileName) { - byte[] buffer1 = null; - InputStream is1 = null; - try { - is1 = context.getResources().getAssets().open(fileName); //eg. over_view_style_extra.data - int lenght1 = is1.available(); - buffer1 = new byte[lenght1]; - is1.read(buffer1); - } catch (IOException e) { - e.printStackTrace(); - } finally { - try { - if (is1 != null) { - is1.close(); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - return buffer1; - } - - -} diff --git a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java b/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java deleted file mode 100644 index 29057170d9..0000000000 --- a/OCH/taxi/driver/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java +++ /dev/null @@ -1,205 +0,0 @@ -package com.mogo.och.taxi.utils; - -import androidx.annotation.Nullable; - -import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; -import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.GsonUtils; -import com.mogo.och.common.module.manager.logchainanalytic.OchChainLogManager; -import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.taxi.constant.TaxiConst; -import com.mogo.och.common.module.biz.order.TaxiOrderStatusEnum; -import com.mogo.och.taxi.model.TaxiModel; - -import java.util.concurrent.TimeUnit; - -import io.reactivex.Observable; -import io.reactivex.android.schedulers.AndroidSchedulers; -import io.reactivex.disposables.Disposable; -import io.reactivex.schedulers.Schedulers; -import mogo_msg.MogoReportMsg; - -import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI; - -/** - * Taxi轨迹管理:给MEC下发用于轨迹下载的信息 - * Created on 2022/6/22 - */ -public class TaxiTrajectoryManager { - private static final String TAG = TaxiTrajectoryManager.class.getSimpleName(); - - private static final class SingletonHolder { - private static final TaxiTrajectoryManager INSTANCE = new TaxiTrajectoryManager(); - } - - public static TaxiTrajectoryManager getInstance() { - return TaxiTrajectoryManager.SingletonHolder.INSTANCE; - } - - private AutopilotControlParameters.AutoPilotLine mAutoPilotLine = null; - private Disposable mSendReqDisposable = null; - private String mPrevOrderNo = ""; - - public TaxiTrajectoryManager() { - mAutoPilotLine = new AutopilotControlParameters.AutoPilotLine(-1, "", - "", "", "", "", 0, "", - "", "", "", "", 0); - } - - /** - * 同步订单信息 - */ - public void syncTrajectoryInfo() { - OrderQueryRespBean.Result orderInfo = TaxiModel.getInstance().getCurrentOCHOrder(); - if (orderInfo == null || orderInfo.orderStatus >= TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { - CallerLogger.d(M_TAXI + TAG, "syncTrajectoryInfo() stop."); - stopTrajReqLoop(); - } else { - if (mPrevOrderNo.equals(orderInfo.orderNo)) { - CallerLogger.d(M_TAXI + TAG, "syncTrajectoryInfo() 重复订单."); - } else { - mPrevOrderNo = orderInfo.orderNo; - CallerLogger.d(M_TAXI + TAG, "syncTrajectoryInfo() start."); - startTrajReqLoop(); - } - } - } - - public void onAutopilotGuardian(@Nullable MogoReportMsg.MogoReportMessage guardianInfo, long lineId) { - onAutopilotGuardian(guardianInfo); - } - - /** - * 接口MEC反馈的常规信息(MAP v2.5.0新增轨迹相关信息) - * @param guardianInfo - */ - public void onAutopilotGuardian(@Nullable MogoReportMsg.MogoReportMessage guardianInfo) { - if (guardianInfo == null || !guardianInfo.hasCode()) return; - if ("ISYS_INIT_TRAJECTORY_START".equals(guardianInfo.getCode())) { - // 1. 轨迹管理_轨迹开始下载(本地已有对应轨迹也触发) - CallerLogger.d(M_TAXI + TAG, "onAutopilotGuardian() 轨迹开始下载"); - OchChainLogManager.writeChainLog("轨迹监控","onAutopilotGuardian() 轨迹开始下载", true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - // ToastUtils.showShort("轨迹开始下载"); - stopTrajReqLoop(); - } else if ("ISYS_INIT_TRAJECTORY_SUCCESS".equals(guardianInfo.getCode())) { - // 2. 轨迹管理_轨迹下载成功(本地已有对应轨迹也触发) - CallerLogger.d(M_TAXI + TAG, "onAutopilotGuardian() 轨迹下载成功"); - OchChainLogManager.writeChainLog("轨迹监控","onAutopilotGuardian() 轨迹下载成功", true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - // ToastUtils.showShort("轨迹下载成功"); - stopTrajReqLoop(); - } else if ("ISYS_INIT_TRAJECTORY_FAILURE".equals(guardianInfo.getCode())) { - // 3. 轨迹管理_轨迹下载失败,本地无对应轨迹 - CallerLogger.d(M_TAXI + TAG, "onAutopilotGuardian() " + - "轨迹下载失败,本地无对应轨迹"); - OchChainLogManager.writeChainLog("轨迹监控","onAutopilotGuardian() 轨迹下载失败,本地无对应轨迹", true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - // ToastUtils.showShort("轨迹下载失败,本地无对应轨迹"); - } else if ("ISYS_INIT_TRAJECTORY_WARNING".equals(guardianInfo.getCode())) { - // 4. 轨迹管理_轨迹下载失败,本地有对应轨迹,认为成功 - CallerLogger.d(M_TAXI + TAG, "onAutopilotGuardian() " + - "轨迹下载失败,本地有对应轨迹,认为成功"); - OchChainLogManager.writeChainLog("轨迹监控","onAutopilotGuardian() 轨迹下载失败,本地有对应轨迹,认为成功", true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - // ToastUtils.showShort("轨迹下载失败,本地有对应轨迹,认为成功"); - } else if ("ISYS_INIT_TRAJECTORY_TIMEOUT".equals(guardianInfo.getCode())) { - // 5. 轨迹管理_轨迹下载超时 - CallerLogger.d(M_TAXI + TAG, "onAutopilotGuardian() 轨迹下载超时"); - OchChainLogManager.writeChainLog("轨迹监控","onAutopilotGuardian() 轨迹下载超时", true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - // ToastUtils.showShort("轨迹下载超时"); - } else if ("ISSM_FUNC_AUTO_PILOT_READY".equals(guardianInfo.getCode())) { - // 收到ssm的自动驾驶变为ready,再次下发轨迹下载.解决:域控重启,或者102域控启动太早,107节点初始化未完成导致的轨迹未进行下载。 - CallerLogger.d(M_TAXI + TAG, "onAutopilotGuardian() ssm ready,再次发起下载"); - OchChainLogManager.writeChainLog("轨迹监控","onAutopilotGuardian() 再次发起下载", true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - syncTrajectoryInfo(); - } - } - - private void setupAutoPilotLine() { - OrderQueryRespBean.Result order = TaxiModel.getInstance().getCurrentOCHOrder(); - if (order == null) { - CallerLogger.e(M_TAXI + TAG, - "setupAutoPilotLine(): orderInfo is null."); - return; - } else { - if (mAutoPilotLine == null) { - mAutoPilotLine = new AutopilotControlParameters.AutoPilotLine(order.lineId, order.lineName, - order.csvFileUrl, order.csvFileMd5, order.txtFileUrl, order.txtFileMd5, - order.contrailSaveTime, order.carModel, - order.csvFileUrlDPQP, order.csvFileMd5DPQP, order.txtFileUrlDPQP, order.txtFileMd5DPQP, - order.contrailSaveTimeDPQP); - } else { - mAutoPilotLine.setLineId(order.lineId); - mAutoPilotLine.setLineName(order.lineName); - mAutoPilotLine.setTrajUrl(order.csvFileUrl); - mAutoPilotLine.setTrajMd5(order.csvFileMd5); - mAutoPilotLine.setStopUrl(order.txtFileUrl); - mAutoPilotLine.setStopMd5(order.txtFileMd5); - mAutoPilotLine.setTimestamp(order.contrailSaveTime); - mAutoPilotLine.setVehicleModel(order.carModel); - mAutoPilotLine.setTrajUrl_dpqp(order.csvFileUrlDPQP); - mAutoPilotLine.setTrajMd5_dpqp(order.csvFileMd5DPQP); - mAutoPilotLine.setStopUrl_dpqp(order.txtFileUrlDPQP); - mAutoPilotLine.setStopMd5_dpqp(order.txtFileMd5DPQP); - mAutoPilotLine.setTimestamp_dpqp(order.contrailSaveTimeDPQP); - } - } - } - - private void clearAutoPilotLine() { - if (mAutoPilotLine == null) return; - mAutoPilotLine.setLineId(-1); - mAutoPilotLine.setLineName(""); - mAutoPilotLine.setTrajUrl(""); - mAutoPilotLine.setTrajMd5(""); - mAutoPilotLine.setStopUrl(""); - mAutoPilotLine.setStopMd5(""); - mAutoPilotLine.setTimestamp(0); - mAutoPilotLine.setVehicleModel(""); - mAutoPilotLine.setTrajUrl_dpqp(""); - mAutoPilotLine.setTrajMd5_dpqp(""); - mAutoPilotLine.setStopUrl_dpqp(""); - mAutoPilotLine.setStopMd5_dpqp(""); - mAutoPilotLine.setTimestamp_dpqp(0); - } - - private void startTrajReqLoop() { - if (mSendReqDisposable != null && !mSendReqDisposable.isDisposed()) { - return; - } - CallerLogger.d(M_TAXI + TAG, "startTrajReqLoop()"); - setupAutoPilotLine(); - mSendReqDisposable = Observable.interval(TaxiConst.LOOP_DELAY, - TaxiConst.LOOP_PERIOD_10S, TimeUnit.MILLISECONDS) - .map((aLong -> aLong + 1)) - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> { - if (aLong > TaxiConst.LOOP_SEND_TRAJ_TIMES) { - mPrevOrderNo = ""; //重发超时后将mPrevOrderNo置空,这样订单进入下个状态时还可以重发 - stopTrajReqLoop(); - return; - } - CallerLogger.d(M_TAXI + TAG, "loop sendTrajectoryReq: " + aLong); - sendTrajectoryReq(); - }); - } - - private void stopTrajReqLoop() { - if (mSendReqDisposable != null) { - CallerLogger.d(M_TAXI + TAG, "stopTrajReqLoop()"); - mSendReqDisposable.dispose(); - mSendReqDisposable = null; - clearAutoPilotLine(); - } - } - - private void sendTrajectoryReq() { - if (mAutoPilotLine == null) { - CallerLogger.e(M_TAXI + TAG, "sendTrajectoryReq(): mAutoPilotLine is null!!!"); - return; - } - OchChainLogManager.writeChainLog("轨迹监控","sendTrajectoryReq() 下发轨迹 轨迹id"+mAutoPilotLine.getLineId(), true, OchChainLogManager.EVENT_KEY_INFE_WITH_TRAJECTORY); - CallerAutoPilotControlManager.INSTANCE.sendTrajectoryDownloadReq(mAutoPilotLine); - CallerLogger.d(M_TAXI + TAG, "sendTrajectoryReq(): " - + GsonUtils.toJson(mAutoPilotLine)); - } -} diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00001.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00001.png deleted file mode 100644 index a45d5016fa..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00001.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00002.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00002.png deleted file mode 100644 index cdb7a7a6a9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00002.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00003.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00003.png deleted file mode 100644 index d23de4ef53..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00003.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00004.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00004.png deleted file mode 100644 index c3c8cb6ec6..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00004.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00005.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00005.png deleted file mode 100644 index c3c8cb6ec6..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00005.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00006.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00006.png deleted file mode 100644 index c3c8cb6ec6..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00006.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00007.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00007.png deleted file mode 100644 index 815f83bf47..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00007.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00008.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00008.png deleted file mode 100644 index 2771e6cef3..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00008.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00009.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00009.png deleted file mode 100644 index f66b6a0d55..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00009.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00010.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00010.png deleted file mode 100644 index bab043383a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00010.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00011.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00011.png deleted file mode 100644 index dde1edcb4d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00011.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00012.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00012.png deleted file mode 100644 index f9d513b742..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00012.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00013.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00013.png deleted file mode 100644 index 813fbfe3b2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00013.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00014.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00014.png deleted file mode 100644 index 820eda75e2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00014.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00015.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00015.png deleted file mode 100644 index 544aeac6f3..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00015.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00016.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00016.png deleted file mode 100644 index 7173a3c9f9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00016.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00017.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00017.png deleted file mode 100644 index 518bb6d32d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00017.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00018.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00018.png deleted file mode 100644 index 52cb8e1bab..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00018.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00019.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00019.png deleted file mode 100644 index df48bba777..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00019.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00020.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00020.png deleted file mode 100644 index ac35dd6e89..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00020.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00021.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00021.png deleted file mode 100644 index 2b553e8263..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00021.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00022.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00022.png deleted file mode 100644 index 79f25eaef8..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00022.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00023.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00023.png deleted file mode 100644 index 2f5cd12f81..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00023.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00024.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00024.png deleted file mode 100644 index 820eda75e2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00024.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00025.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00025.png deleted file mode 100644 index bfd6fc9aee..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00025.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00026.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00026.png deleted file mode 100644 index 96671ead5a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00026.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00027.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00027.png deleted file mode 100644 index 8a16ccea5c..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00027.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00028.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00028.png deleted file mode 100644 index af98dbd5d3..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00028.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00029.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00029.png deleted file mode 100644 index b05765193b..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00029.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00030.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00030.png deleted file mode 100644 index dbf91b1e26..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00030.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00031.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00031.png deleted file mode 100644 index 6e3bd8cf35..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00031.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00032.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00032.png deleted file mode 100644 index c3c8cb6ec6..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00032.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00033.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00033.png deleted file mode 100644 index 815f83bf47..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00033.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00034.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00034.png deleted file mode 100644 index 2771e6cef3..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00034.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00035.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00035.png deleted file mode 100644 index f66b6a0d55..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00035.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00036.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00036.png deleted file mode 100644 index bab043383a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00036.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00037.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00037.png deleted file mode 100644 index dde1edcb4d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00037.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00038.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00038.png deleted file mode 100644 index f9d513b742..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00038.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00039.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00039.png deleted file mode 100644 index 813fbfe3b2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00039.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00040.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00040.png deleted file mode 100644 index 820eda75e2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00040.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00041.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00041.png deleted file mode 100644 index 544aeac6f3..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00041.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00042.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00042.png deleted file mode 100644 index 7173a3c9f9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00042.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00043.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00043.png deleted file mode 100644 index 6dd8ca6079..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00043.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00044.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00044.png deleted file mode 100644 index c3c8cb6ec6..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00044.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00045.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00045.png deleted file mode 100644 index d1c3e43a46..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/heart_00045.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00001.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00001.png deleted file mode 100644 index 0e2c5b1db9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00001.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00002.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00002.png deleted file mode 100644 index 317bc9d185..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00002.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00003.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00003.png deleted file mode 100644 index 743c950458..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00003.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00004.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00004.png deleted file mode 100644 index 5e2e72b97d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00004.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00005.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00005.png deleted file mode 100644 index 5e3f4087d0..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00005.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00006.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00006.png deleted file mode 100644 index 069d93edcd..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00006.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00007.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00007.png deleted file mode 100644 index 0c4a13be2a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00007.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00008.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00008.png deleted file mode 100644 index 3e1a8cd7f9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00008.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00009.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00009.png deleted file mode 100644 index ba1d7bd275..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00009.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00010.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00010.png deleted file mode 100644 index 7a371cfcff..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00010.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00011.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00011.png deleted file mode 100644 index eb7d2d5e4b..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00011.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00012.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00012.png deleted file mode 100644 index ec5dc4b49a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00012.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00013.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00013.png deleted file mode 100644 index d19f752212..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00013.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00014.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00014.png deleted file mode 100644 index 3c5f8afd16..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00014.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00015.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00015.png deleted file mode 100644 index d63cfc7e6c..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00015.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00016.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00016.png deleted file mode 100644 index a13bbea6da..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00016.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00017.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00017.png deleted file mode 100644 index b80f8b07d8..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00017.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00018.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00018.png deleted file mode 100644 index c9887df6a9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00018.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00019.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00019.png deleted file mode 100644 index c8bc1850f8..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00019.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00020.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00020.png deleted file mode 100644 index 01f4d95b8d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00020.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00021.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00021.png deleted file mode 100644 index d21124dcc0..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00021.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00022.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00022.png deleted file mode 100644 index 8c9a4d9e62..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00022.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00023.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00023.png deleted file mode 100644 index 587fdbb097..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00023.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00024.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00024.png deleted file mode 100644 index 1913a44095..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00024.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00025.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00025.png deleted file mode 100644 index be85d5037a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00025.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00026.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00026.png deleted file mode 100644 index 40bd64d32a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00026.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00027.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00027.png deleted file mode 100644 index ed4862fc94..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00027.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00028.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00028.png deleted file mode 100644 index 24f9605b4c..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00028.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00029.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00029.png deleted file mode 100644 index 5886329415..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00029.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00030.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00030.png deleted file mode 100644 index e5309cf535..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00030.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00031.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00031.png deleted file mode 100644 index 9d5034a29e..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00031.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00032.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00032.png deleted file mode 100644 index 0d8177691a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00032.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00033.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00033.png deleted file mode 100644 index 7cbd992f9f..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00033.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00034.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00034.png deleted file mode 100644 index 617050c90d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00034.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00035.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00035.png deleted file mode 100644 index e2222d7b54..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00035.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00036.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00036.png deleted file mode 100644 index c189fbec50..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00036.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00037.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00037.png deleted file mode 100644 index 608da06dfb..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00037.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00038.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00038.png deleted file mode 100644 index 6477259f2a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00038.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00039.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00039.png deleted file mode 100644 index c5bfee922b..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00039.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00040.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00040.png deleted file mode 100644 index c5cca129d0..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00040.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00041.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00041.png deleted file mode 100644 index eea120cbf6..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00041.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00042.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00042.png deleted file mode 100644 index a7ce8a753e..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00042.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00043.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00043.png deleted file mode 100644 index e552f4f5b0..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00043.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00044.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00044.png deleted file mode 100644 index 6beab6b438..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00044.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00045.png b/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00045.png deleted file mode 100644 index 31fdcc6f45..0000000000 Binary files a/OCH/taxi/driver/src/main/res/ani/drawable-nodpi/success_00045.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/color/taxi_autopilot_text_color_selector.xml b/OCH/taxi/driver/src/main/res/color/taxi_autopilot_text_color_selector.xml deleted file mode 100644 index 16cef94271..0000000000 --- a/OCH/taxi/driver/src/main/res/color/taxi_autopilot_text_color_selector.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/end_maker_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/end_maker_icon.png deleted file mode 100755 index 8acf113151..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/end_maker_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_ai_normal_och.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_ai_normal_och.png deleted file mode 100755 index e98738b192..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_ai_normal_och.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_ai_select_och.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_ai_select_och.png deleted file mode 100755 index d3e0107c02..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_ai_select_och.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_bad_case_normal_och.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_bad_case_normal_och.png deleted file mode 100755 index c0a978fc2b..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_bad_case_normal_och.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_bad_case_select_och.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_bad_case_select_och.png deleted file mode 100755 index ebacf3a11a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_bad_case_select_och.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_station_start_end.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_station_start_end.png deleted file mode 100644 index 04580a8f0d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/icon_station_start_end.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/no_order_data.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/no_order_data.png deleted file mode 100644 index 0e61996d3f..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/no_order_data.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/start_maker_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/start_maker_icon.png deleted file mode 100644 index 9eca61e199..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/start_maker_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_autopilot_pingxjs.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_autopilot_pingxjs.png deleted file mode 100644 index 78bfa2687f..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_autopilot_pingxjs.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_autopilot_success.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_autopilot_success.png deleted file mode 100755 index 84246fd323..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_autopilot_success.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_back_btn.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_back_btn.png deleted file mode 100644 index 35e13ff68c..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_back_btn.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_icon_in_autopilot.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_icon_in_autopilot.png deleted file mode 100644 index 75c26c3d71..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_icon_in_autopilot.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_icon_not_in_autopilot.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_icon_not_in_autopilot.png deleted file mode 100644 index 927296d690..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_icon_not_in_autopilot.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_notice_box_bg.9.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_notice_box_bg.9.png deleted file mode 100644 index 8b4b579b56..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_notice_box_bg.9.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_slide_block.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_slide_block.png deleted file mode 100644 index 8ffd0abe52..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_base_slide_block.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_close_navi_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_close_navi_icon.png deleted file mode 100644 index 56525e7ed2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_close_navi_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_dot_line.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_dot_line.png deleted file mode 100644 index a720a532ea..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_dot_line.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_blue_big.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_blue_big.png deleted file mode 100644 index 0c73689e8e..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_blue_big.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_blue_small.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_blue_small.png deleted file mode 100644 index e9f6d32873..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_blue_small.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_green_big.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_green_big.png deleted file mode 100644 index 650c5132c2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_green_big.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_green_small.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_green_small.png deleted file mode 100644 index e300c1038c..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_circle_green_small.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_grab_order_bt.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_grab_order_bt.png deleted file mode 100644 index 88b524d007..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_grab_order_bt.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_image_circle_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_image_circle_icon.png deleted file mode 100644 index 5e3b7c7a06..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_image_circle_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_operation_tab_line.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_operation_tab_line.png deleted file mode 100644 index 3f1a233b35..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_operation_tab_line.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_tab_item_bg.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_tab_item_bg.png deleted file mode 100644 index f26800ecbf..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_driver_tab_item_bg.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_grab_dot_line.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_grab_dot_line.png deleted file mode 100644 index a75cc835fa..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_grab_dot_line.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_grad_order_close_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_grad_order_close_icon.png deleted file mode 100644 index 38584a971e..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_grad_order_close_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot.png deleted file mode 100644 index 539e106058..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_bg.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_bg.png deleted file mode 100755 index 5737f93ad8..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_bg.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_bg_pressed.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_bg_pressed.png deleted file mode 100755 index af32c20cb5..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_bg_pressed.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_disable.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_disable.png deleted file mode 100644 index 695515a366..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_disable.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_failed.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_failed.png deleted file mode 100644 index 3347b2bfc2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_failed.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_loading.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_loading.png deleted file mode 100644 index a71cf9a4f9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_loading.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_success.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_success.png deleted file mode 100644 index dd7dc2d6b2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_ic_autopilot_success.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_icon_arrived_station.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_icon_arrived_station.png deleted file mode 100644 index 8a065b66dd..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_icon_arrived_station.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_icon_arriving_station.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_icon_arriving_station.png deleted file mode 100644 index 4ed57a0e30..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_icon_arriving_station.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_light_green_nor.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_light_green_nor.png deleted file mode 100644 index bc9fed952d..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_light_green_nor.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_light_red_nor.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_light_red_nor.png deleted file mode 100644 index 8732508ded..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_light_red_nor.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_lightyellow_nor.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_lightyellow_nor.png deleted file mode 100644 index bae01408fd..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_lightyellow_nor.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_arrow_arrived.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_arrow_arrived.png deleted file mode 100644 index 36ef2e88d3..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_arrow_arrived.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_arrow_un_arrive.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_arrow_un_arrive.png deleted file mode 100644 index baa35592cb..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_arrow_un_arrive.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_car.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_car.png deleted file mode 100644 index dedaf093e9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_car.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_view_dir_end.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_view_dir_end.png deleted file mode 100644 index a81336d4c2..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_view_dir_end.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_view_dir_start.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_view_dir_start.png deleted file mode 100644 index 3cee184981..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_map_view_dir_start.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_masking.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_masking.png deleted file mode 100644 index b33738106e..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_masking.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_arrow_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_arrow_icon.png deleted file mode 100644 index a83b7c9e74..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_arrow_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_direction_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_direction_icon.png deleted file mode 100755 index 1b96799531..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_direction_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_icon.png deleted file mode 100644 index bd4e6ccde4..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_line_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_line_icon.png deleted file mode 100644 index 7f758d5999..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_navi_line_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_bg.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_bg.png deleted file mode 100644 index 81cdcd3e4e..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_bg.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_cancel_close.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_cancel_close.png deleted file mode 100644 index 8311715c9a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_cancel_close.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_cancel_close1.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_cancel_close1.png deleted file mode 100644 index 370b61de38..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_cancel_close1.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_list_close_iv.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_list_close_iv.png deleted file mode 100644 index 8311715c9a..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_list_close_iv.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_list_page.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_list_page.png deleted file mode 100644 index 2a814bbfa9..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_order_list_page.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_out_btn.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_out_btn.png deleted file mode 100644 index a3a771d686..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_out_btn.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_overmap_tag.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_overmap_tag.png deleted file mode 100644 index b0bcc4fc03..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_overmap_tag.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_personal_btn.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_personal_btn.png deleted file mode 100644 index 0cb863cecb..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_personal_btn.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_report_order_cancel_icon.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_report_order_cancel_icon.png deleted file mode 100644 index ffda52cbdb..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_report_order_cancel_icon.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_selected_btn.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_selected_btn.png deleted file mode 100644 index 2ff45e6bba..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_selected_btn.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_setting_btn_bg.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_setting_btn_bg.png deleted file mode 100644 index a21f54cc53..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_setting_btn_bg.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_speed_bg.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_speed_bg.png deleted file mode 100644 index 62942a7a42..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_speed_bg.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_switch_map_long.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_switch_map_long.png deleted file mode 100755 index cf3e5a3778..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_switch_map_long.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_switch_map_medium.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_switch_map_medium.png deleted file mode 100755 index bdc2725468..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_switch_map_medium.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_unselect_btn.png b/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_unselect_btn.png deleted file mode 100644 index 6936596ebb..0000000000 Binary files a/OCH/taxi/driver/src/main/res/drawable-nodpi/taxi_unselect_btn.png and /dev/null differ diff --git a/OCH/taxi/driver/src/main/res/drawable/ai_collect_selector_och.xml b/OCH/taxi/driver/src/main/res/drawable/ai_collect_selector_och.xml deleted file mode 100755 index a130b0115b..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/ai_collect_selector_och.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/bad_case_selector_och.xml b/OCH/taxi/driver/src/main/res/drawable/bad_case_selector_och.xml deleted file mode 100755 index fbc6c83a08..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/bad_case_selector_och.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/bg_taxi_traffic_light_background.xml b/OCH/taxi/driver/src/main/res/drawable/bg_taxi_traffic_light_background.xml deleted file mode 100644 index d93d55da56..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/bg_taxi_traffic_light_background.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/grab_failure_anmi_flow.xml b/OCH/taxi/driver/src/main/res/drawable/grab_failure_anmi_flow.xml deleted file mode 100644 index 5a0649a2c5..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/grab_failure_anmi_flow.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/grab_success_anmi_flow.xml b/OCH/taxi/driver/src/main/res/drawable/grab_success_anmi_flow.xml deleted file mode 100644 index 0447f8441d..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/grab_success_anmi_flow.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/shape_size_grab_order_bt.xml b/OCH/taxi/driver/src/main/res/drawable/shape_size_grab_order_bt.xml deleted file mode 100644 index 8659116cbc..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/shape_size_grab_order_bt.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/shape_size_operation_back.xml b/OCH/taxi/driver/src/main/res/drawable/shape_size_operation_back.xml deleted file mode 100644 index ec1ff5c06d..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/shape_size_operation_back.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/shape_size_operation_out.xml b/OCH/taxi/driver/src/main/res/drawable/shape_size_operation_out.xml deleted file mode 100644 index b505323904..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/shape_size_operation_out.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/shape_size_see_all_order.xml b/OCH/taxi/driver/src/main/res/drawable/shape_size_see_all_order.xml deleted file mode 100644 index 09e02705e4..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/shape_size_see_all_order.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/shape_size_taxi_selected_btn.xml b/OCH/taxi/driver/src/main/res/drawable/shape_size_taxi_selected_btn.xml deleted file mode 100644 index ac27d621f3..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/shape_size_taxi_selected_btn.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/shape_size_taxi_unselected_btn.xml b/OCH/taxi/driver/src/main/res/drawable/shape_size_taxi_unselected_btn.xml deleted file mode 100644 index b29cd86d64..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/shape_size_taxi_unselected_btn.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_autopilot_bg_selector.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_autopilot_bg_selector.xml deleted file mode 100644 index 350b784c17..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_autopilot_bg_selector.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_autopilot_status_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_autopilot_status_bg.xml deleted file mode 100644 index e323eca4c3..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_autopilot_status_bg.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_base_autopilot_status_icon_selector.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_base_autopilot_status_icon_selector.xml deleted file mode 100644 index 58aca03b29..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_base_autopilot_status_icon_selector.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_cancel_button_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_cancel_button_bg.xml deleted file mode 100644 index 60eb252eab..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_cancel_button_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_checkbox_selector.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_checkbox_selector.xml deleted file mode 100644 index adc3fce148..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_checkbox_selector.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_grab_order_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_grab_order_bg.xml deleted file mode 100644 index b59f68a14b..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_grab_order_bg.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_grabing_order_btn_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_grabing_order_btn_bg.xml deleted file mode 100644 index 4e5a7642d4..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_grabing_order_btn_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_line_bg1.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_line_bg1.xml deleted file mode 100644 index 7fcd53f564..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_line_bg1.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_line_bg2.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_line_bg2.xml deleted file mode 100644 index e0861580ee..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_line_bg2.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_data_item_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_operation_data_item_bg.xml deleted file mode 100644 index d81e0cd834..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_data_item_bg.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_bg.xml deleted file mode 100644 index f4769a12ce..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_bg.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_bg_selector.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_bg_selector.xml deleted file mode 100755 index b62b2a8188..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_bg_selector.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_select_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_select_bg.xml deleted file mode 100644 index f617cd9fce..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_operation_status_select_bg.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_status_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_status_bg.xml deleted file mode 100644 index c0b127ce27..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_status_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_status_canceled_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_status_canceled_bg.xml deleted file mode 100644 index 71d6873641..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_status_canceled_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_type_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_type_bg.xml deleted file mode 100644 index 3dc16fc865..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_type_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_type_reserver_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_type_reserver_bg.xml deleted file mode 100644 index f029529adc..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_order_button_type_reserver_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_order_cancel_dialog_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_order_cancel_dialog_bg.xml deleted file mode 100644 index 7d8f9d8621..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_order_cancel_dialog_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_order_viewpager_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_order_viewpager_bg.xml deleted file mode 100644 index 3b20f9cbe8..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_order_viewpager_bg.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_panel_bkg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_panel_bkg.xml deleted file mode 100644 index 323940f31b..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_panel_bkg.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_panel_distance_bkg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_panel_distance_bkg.xml deleted file mode 100644 index c2046ded94..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_panel_distance_bkg.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_setting_tip_red_cir_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_setting_tip_red_cir_bg.xml deleted file mode 100644 index 2c07ab2a64..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_setting_tip_red_cir_bg.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_show_orders_bg.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_show_orders_bg.xml deleted file mode 100644 index e5981a10d7..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_show_orders_bg.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/drawable/taxi_speed_selector.xml b/OCH/taxi/driver/src/main/res/drawable/taxi_speed_selector.xml deleted file mode 100644 index c87ede1476..0000000000 --- a/OCH/taxi/driver/src/main/res/drawable/taxi_speed_selector.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_amap_navi_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_amap_navi_view.xml deleted file mode 100644 index b6d0282e06..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_amap_navi_view.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_base_fragment.xml b/OCH/taxi/driver/src/main/res/layout/taxi_base_fragment.xml deleted file mode 100644 index a71da62b6f..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_base_fragment.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_being_order.xml b/OCH/taxi/driver/src/main/res/layout/taxi_being_order.xml deleted file mode 100644 index b5de2ba236..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_being_order.xml +++ /dev/null @@ -1,306 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_map_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_map_view.xml deleted file mode 100644 index 07a25f406b..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_map_view.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_no_data_common_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_no_data_common_view.xml deleted file mode 100644 index 9ccbe981ef..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_no_data_common_view.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_operation_data_item_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_operation_data_item_view.xml deleted file mode 100644 index 30f972ca38..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_operation_data_item_view.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_operation_data_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_operation_data_view.xml deleted file mode 100644 index 04c3b385de..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_operation_data_view.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_operation_tab_item_custom.xml b/OCH/taxi/driver/src/main/res/layout/taxi_operation_tab_item_custom.xml deleted file mode 100644 index 762a3346ab..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_operation_tab_item_custom.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_order_cancel_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_order_cancel_view.xml deleted file mode 100644 index 0be1796d6d..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_order_cancel_view.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_order_checkbox_item.xml b/OCH/taxi/driver/src/main/res/layout/taxi_order_checkbox_item.xml deleted file mode 100644 index 6cc1730044..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_order_checkbox_item.xml +++ /dev/null @@ -1,10 +0,0 @@ - - diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_order_grab_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_order_grab_view.xml deleted file mode 100644 index 96f9445fe9..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_order_grab_view.xml +++ /dev/null @@ -1,167 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_order_list_boot_no_data_view.xml b/OCH/taxi/driver/src/main/res/layout/taxi_order_list_boot_no_data_view.xml deleted file mode 100644 index 47f9446ca7..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_order_list_boot_no_data_view.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_order_reserve_item.xml b/OCH/taxi/driver/src/main/res/layout/taxi_order_reserve_item.xml deleted file mode 100644 index 1890c0baa1..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_order_reserve_item.xml +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_orders_list_day_item.xml b/OCH/taxi/driver/src/main/res/layout/taxi_orders_list_day_item.xml deleted file mode 100644 index c5e9947df0..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_orders_list_day_item.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - \ No newline at end of file diff --git a/OCH/taxi/driver/src/main/res/layout/taxi_orders_list_item.xml b/OCH/taxi/driver/src/main/res/layout/taxi_orders_list_item.xml deleted file mode 100644 index b9d6794ace..0000000000 --- a/OCH/taxi/driver/src/main/res/layout/taxi_orders_list_item.xml +++ /dev/null @@ -1,137 +0,0 @@ - - - - - -