diff --git a/OCH/README.md b/OCH/README.md index 56d1764db2..1c22eb2ceb 100644 --- a/OCH/README.md +++ b/OCH/README.md @@ -1,7 +1,6 @@ # 网约车(Online Car Hailing) - -## 小巴 - -## 出租车 - -## 无实现 \ No newline at end of file +1. mogo-och-bus:Bus司机端(Bus) +2. mogo-och-bus-passenger:Bus乘客端(BusPassenger) +3. mogo-och-taxi:Taxi司机端(Taxi) +4. mogo-och-taxi-passenger:Taxi乘客端(TaxiPassenger) +5. mogo-och-noop:空实现,用于独立鹰眼打包 \ No newline at end of file diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java index 7d71a9c5a9..6364ef050e 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/model/BusPassengerModel.java @@ -5,12 +5,12 @@ import android.content.Intent; import android.location.Location; import android.net.ConnectivityManager; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.mogo.aicloud.services.socket.IMogoLifecycleListener; import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; import com.mogo.commons.debug.DebugConfig; -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPlanningListener; @@ -32,6 +32,7 @@ import com.mogo.service.statusmanager.StatusDescriptor; import org.jetbrains.annotations.NotNull; import java.util.ArrayList; +import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -243,6 +244,11 @@ public class BusPassengerModel { private final IMoGoAutopilotPlanningListener moGoAutopilotPlanningListener = new IMoGoAutopilotPlanningListener(){ + @Override + public void onAutopilotTrajectory(@NonNull List trajectoryInfos) { + + } + @Override public void onAutopilotRotting(@Nullable MessagePad.GlobalPathResp routeList) { if (null != routeList && routeList.getWayPointsList().size() > 0){ @@ -251,10 +257,6 @@ public class BusPassengerModel { } } - @Override - public void onAutopilotTrajectory(ArrayList trajectoryInfos) { - - } }; } diff --git a/OCH/mogo-och-bus/src/main/AndroidManifest.xml b/OCH/mogo-och-bus/src/main/AndroidManifest.xml index b0136c57cc..0e09e1a997 100644 --- a/OCH/mogo-och-bus/src/main/AndroidManifest.xml +++ b/OCH/mogo-och-bus/src/main/AndroidManifest.xml @@ -3,7 +3,7 @@ - + diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/OchBusProvider.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java similarity index 91% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/OchBusProvider.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java index 3491e3fbac..43e18b13f0 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/OchBusProvider.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/BusProvider.java @@ -12,8 +12,8 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.map.MogoMapUIController; import com.mogo.module.common.MogoApisHandler; -import com.mogo.och.bus.constant.OchBusConst; -import com.mogo.och.bus.fragment.OchBusFragment; +import com.mogo.och.bus.constant.BusConst; +import com.mogo.och.bus.fragment.BusFragment; import com.mogo.service.statusmanager.IMogoStatusChangedListener; import com.mogo.service.statusmanager.StatusDescriptor; @@ -25,12 +25,12 @@ import org.jetbrains.annotations.Nullable; * * @author tongchenfei */ -@Route(path = OchBusConst.PATH) -public class OchBusProvider implements IMogoOCH { +@Route(path = BusConst.PATH) +public class BusProvider implements IMogoOCH { - private static final String TAG = "OchBusProvider"; + private static final String TAG = "BusProvider"; - private OchBusFragment busFragment; + private BusFragment busFragment; private int containerId; private FragmentActivity activity; @@ -52,7 +52,7 @@ public class OchBusProvider implements IMogoOCH { private void showFragment() { if (busFragment == null) { CallerLogger.INSTANCE.d(TAG, "准备add fragment======"); - busFragment = new OchBusFragment(); + busFragment = new BusFragment(); activity.getSupportFragmentManager().beginTransaction().add(containerId, busFragment).commitAllowingStateLoss(); return; } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/adapter/OchBusStationAdapter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/adapter/OchBusStationAdapter.java deleted file mode 100644 index 8322cd8a35..0000000000 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/adapter/OchBusStationAdapter.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.mogo.och.bus.adapter; - -import android.content.Context; -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.recyclerview.widget.RecyclerView; - -import com.mogo.och.bus.R; -import com.mogo.och.bus.bean.OchBusStation; -import com.mogo.och.bus.constant.OchBusConst; -import com.mogo.och.bus.view.VerticalDashLineView; - -import java.util.ArrayList; -import java.util.List; - -/** - * Station Panel 中的车站列表adapter - * - * @author tongchenfei - */ -public class OchBusStationAdapter extends RecyclerView.Adapter { - private final Context context; - private final List stationList = new ArrayList<>(); - private int currentStation; - - public OchBusStationAdapter(Context context) { - this.context = context; - } - - public void refreshStationList(List stationList) { - this.stationList.clear(); - this.stationList.addAll(stationList); - for (int i = 0; i < stationList.size(); i++) { - OchBusStation station = stationList.get(i); - if (station.getDrivingStatus() == OchBusConst.STATION_STATUS_ARRIVING || station.getDrivingStatus() == OchBusConst.STATION_STATUS_STOPPED ) { - currentStation = i; - break; - } - } - notifyDataSetChanged(); - } - - @NonNull - @Override - public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { - return new ViewHolder(LayoutInflater.from(context).inflate(R.layout.item_och_bus_station, parent, false)); - } - - @Override - public void onBindViewHolder(@NonNull ViewHolder holder, int position) { -// CallerLogger.INSTANCE.d(M_BUS + "OchBusStationAdapter", "position: " + position + " currPos: " + currentStation + " station: " + stationList.get(position)); - holder.tvStationName.setText(stationList.get(position).getName()); - if (position == currentStation) { - if (currentStation == 0) { - // 在起始点 - holder.tvStationName.setTextColor(context.getResources().getColor(R.color.bus_arrived_station_name_text_color)); - holder.ivIcon.setImageResource(R.drawable.bus_icon_arrived_station); - holder.vDashBottom.setColor(context.getResources().getColor(R.color.bus_not_arrive_dash_color)); - } else { - holder.tvStationName.setTextColor(context.getResources().getColor(R.color.bus_current_station_name_text_color)); - holder.ivIcon.setImageResource(R.drawable.bus_icon_arriving_station); - holder.vDashTop.setGradient(context.getResources().getColor(R.color.bus_arriving_start_dash_color), context.getResources().getColor(R.color.bus_arriving_end_dash_color)); - holder.vDashBottom.setColor(context.getResources().getColor(R.color.bus_not_arrive_dash_color)); - } - } else if (position < currentStation) { - // 驶过 - holder.tvStationName.setTextColor(context.getResources().getColor(R.color.bus_arrived_station_name_text_color)); - holder.ivIcon.setImageResource(R.drawable.bus_icon_arrived_station); - if (position == currentStation - 1) { - holder.vDashBottom.setGradient(context.getResources().getColor(R.color.bus_leaving_start_dash_color), context.getResources().getColor(R.color.bus_leaving_end_dash_color)); - holder.vDashTop.setColor(context.getResources().getColor(R.color.bus_arrived_dash_color)); - } else { - holder.vDashTop.setColor(context.getResources().getColor(R.color.bus_arrived_dash_color)); - holder.vDashBottom.setColor(context.getResources().getColor(R.color.bus_arrived_dash_color)); - } - } else { - holder.tvStationName.setTextColor(context.getResources().getColor(R.color.bus_not_arrive_station_name_text_color)); - holder.ivIcon.setImageResource(R.drawable.bus_icon_not_arrive_station); - holder.vDashTop.setColor(context.getResources().getColor(R.color.bus_not_arrive_dash_color)); - holder.vDashBottom.setColor(context.getResources().getColor(R.color.bus_not_arrive_dash_color)); - } - - if (position == 0) { - holder.tvStationNotice.setText("起点"); - holder.tvStationNotice.setVisibility(View.VISIBLE); - holder.vDashTop.setVisibility(View.GONE); - holder.vDashBottom.setVisibility(View.VISIBLE); - } else if (position == getItemCount() - 1) { - holder.tvStationNotice.setText("终点"); - holder.tvStationNotice.setVisibility(View.VISIBLE); - holder.vDashTop.setVisibility(View.VISIBLE); - holder.vDashBottom.setVisibility(View.GONE); - } else { - holder.tvStationNotice.setVisibility(View.GONE); - holder.vDashTop.setVisibility(View.VISIBLE); - holder.vDashBottom.setVisibility(View.VISIBLE); - - } - - } - - @Override - public int getItemCount() { - return stationList.size(); - } - - static class ViewHolder extends RecyclerView.ViewHolder { - ImageView ivIcon; - TextView tvStationName; - TextView tvStationNotice; - VerticalDashLineView vDashBottom, vDashTop; - - public ViewHolder(@NonNull View itemView) { - super(itemView); - ivIcon = itemView.findViewById(R.id.module_mogo_och_bus_station_icon); - tvStationName = itemView.findViewById(R.id.module_mogo_och_bus_station_name); - tvStationNotice = itemView.findViewById(R.id.module_mogo_och_bus_station_notice); - vDashTop = itemView.findViewById(R.id.module_mogo_och_bus_station_top_dash); - vDashBottom = itemView.findViewById(R.id.module_mogo_och_bus_station_bottom_dash); - } - } -} diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOperationStatusRequest.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java similarity index 87% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOperationStatusRequest.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java index fcc762be44..0ab375e2d4 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOperationStatusRequest.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOperationStatusRequest.java @@ -10,12 +10,12 @@ public * * 小巴车运营状态请求参数 */ -class OchBusOperationStatusRequest { +class BusOperationStatusRequest { private String sn; private double lat; private double lon; - public OchBusOperationStatusRequest(double lon, double lat) { + public BusOperationStatusRequest(double lon, double lat) { this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); this.lat = lat; this.lon = lon; diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOperationStatusResponse.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOperationStatusResponse.java similarity index 82% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOperationStatusResponse.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOperationStatusResponse.java index fd60cc3b4d..744fbac9c5 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOperationStatusResponse.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOperationStatusResponse.java @@ -8,7 +8,7 @@ import com.mogo.eagle.core.data.BaseData; * * 小巴车运营状态返回参数 */ -public class OchBusOperationStatusResponse extends BaseData { +public class BusOperationStatusResponse extends BaseData { public Result data; diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOrder.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOrderBean.java similarity index 97% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOrder.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOrderBean.java index b1a1208681..85c3a1da58 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOrder.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOrderBean.java @@ -6,7 +6,7 @@ package com.mogo.och.bus.bean; *

* 小巴订单 */ -public class OchBusOrder { +public class BusOrderBean { /** * orderNo number @@ -74,7 +74,7 @@ public class OchBusOrder { @Override public String toString() { - return "OchBusOrder{" + + return "BusOrderBean{" + "orderNo=" + orderNo + ", passengerPhone='" + passengerPhone + '\'' + ", startStationId=" + startStationId + diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOrdersResponse.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOrdersResponse.java similarity index 70% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOrdersResponse.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOrdersResponse.java index 252858472b..2215a298a5 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusOrdersResponse.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusOrdersResponse.java @@ -8,15 +8,15 @@ import java.util.List; * @author: wangmingjun * @date: 2021/10/19 */ -public class OchBusOrdersResponse extends BaseData { +public class BusOrdersResponse extends BaseData { public Result data; public static class Result{ - public List orders; + public List orders; } @Override public String toString() { - return "OchBusOrdersResponse{" + + return "BusOrdersResponse{" + "data=" + data + '}'; } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusQueryLineStationsRequest.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java similarity index 83% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusQueryLineStationsRequest.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java index fdd0d7461e..6485027084 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusQueryLineStationsRequest.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusQueryLineStationsRequest.java @@ -9,7 +9,7 @@ public * * 根据车机行驶线路站点信息 */ -class OchBusQueryLineStationsRequest { +class BusQueryLineStationsRequest { private String sn; private double lat; @@ -17,7 +17,7 @@ class OchBusQueryLineStationsRequest { private boolean markDrivingStatus; // 默认false;true:是否需要返回站点的行驶状态,对应返回的drivingStatus // 0 - 关闭、1 - 启动 // public String status; - public OchBusQueryLineStationsRequest(double lon, double lat,boolean markDrivingStatus) { + public BusQueryLineStationsRequest(double lon, double lat, boolean markDrivingStatus) { this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); this.lat = lat; this.lon = lon; @@ -51,12 +51,12 @@ class OchBusQueryLineStationsRequest { public double getLon() { return lon; } - // public OchBusOperationStatusRequest shutdown() { + // public BusOperationStatusRequest shutdown() { // status = "0"; // return this; // } // -// public OchBusOperationStatusRequest launch() { +// public BusOperationStatusRequest launch() { // status = "1"; // return this; // } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetDrivingLineRequest.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java similarity index 77% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetDrivingLineRequest.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java index 4faf1980a8..c27264694f 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusResetDrivingLineRequest.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusResetDrivingLineRequest.java @@ -7,11 +7,11 @@ import com.mogo.commons.network.Utils; * @author: wangmingjun * @date: 2021/10/18 */ -public class OchBusResetDrivingLineRequest { +public class BusResetDrivingLineRequest { public String sn; public int lineId; //切换到的线路id - public OchBusResetDrivingLineRequest(int lineId) { + public BusResetDrivingLineRequest(int lineId) { sn = MoGoAiCloudClientConfig.getInstance().getSn(); this.lineId = lineId; } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusRoutesResponse.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusRoutesResponse.java similarity index 58% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusRoutesResponse.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusRoutesResponse.java index 0b7c31b096..2c9bad3e3c 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusRoutesResponse.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusRoutesResponse.java @@ -7,20 +7,20 @@ import com.mogo.eagle.core.data.BaseData; * * @author tongchenfei */ -public class OchBusRoutesResponse extends BaseData { - private OchBusRoutesResult data; +public class BusRoutesResponse extends BaseData { + private BusRoutesResult data; - public OchBusRoutesResult getResult() { + public BusRoutesResult getResult() { return data; } - public void setResult(OchBusRoutesResult data) { + public void setResult(BusRoutesResult data) { this.data = data; } @Override public String toString() { - return "OchBusRoutesResponse{" + + return "BusRoutesResponse{" + "data=" + data + '}'; } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusRoutesResult.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusRoutesResult.java similarity index 79% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusRoutesResult.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusRoutesResult.java index c55f12b3db..3a99d5d57e 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusRoutesResult.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusRoutesResult.java @@ -7,8 +7,8 @@ import java.util.List; * * @author tongchenfei */ -public class OchBusRoutesResult { - private List sites; +public class BusRoutesResult { + private List sites; private int lineId; private String name; private int lineType; //线路类型,0:环形 @@ -23,17 +23,17 @@ public class OchBusRoutesResult { return name; } - public List getSites() { + public List getSites() { return sites; } - public void setSite(List site) { + public void setSite(List site) { this.sites = sites; } @Override public String toString() { - return "OchBusRoutesResult{" + + return "BusRoutesResult{" + "sites=" + sites + ", lineId=" + lineId + ", name='" + name + '\'' + diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusStation.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusStationBean.java similarity index 98% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusStation.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusStationBean.java index e70d321a40..4e8b00eb18 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusStation.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusStationBean.java @@ -5,7 +5,7 @@ package com.mogo.och.bus.bean; * * @author tongchenfei */ -public class OchBusStation { +public class BusStationBean { // private int lineId; // private int siteId; // private String siteName; @@ -134,7 +134,7 @@ public class OchBusStation { @Override public String toString() { - return "OchBusStation{" + + return "BusStationBean{" + "name='" + name + '\'' + ", description='" + description + '\'' + ", cityCode='" + cityCode + '\'' + diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusUpdateSiteStatusRequest.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java similarity index 79% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusUpdateSiteStatusRequest.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java index ed5923c905..a9552157ff 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/OchBusUpdateSiteStatusRequest.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/BusUpdateSiteStatusRequest.java @@ -9,7 +9,7 @@ import com.mogo.commons.network.Utils; * * 小巴车运营状态请求参数 */ -public class OchBusUpdateSiteStatusRequest { +public class BusUpdateSiteStatusRequest { public String sn; public int seq;//站点序号 @@ -17,7 +17,7 @@ public class OchBusUpdateSiteStatusRequest { public double lon; public double lat; - public OchBusUpdateSiteStatusRequest(int seq, int siteId, double lon, double lat) { + public BusUpdateSiteStatusRequest(int seq, int siteId, double lon, double lat) { this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); this.seq = seq; this.siteId = siteId; diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/CarHeartbeatReqBean.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/CarHeartbeatReqBean.java index c85a2d0b82..dcacb5e380 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/CarHeartbeatReqBean.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/CarHeartbeatReqBean.java @@ -1,6 +1,6 @@ package com.mogo.och.bus.bean; -import com.mogo.och.bus.constant.OchBusConst; +import com.mogo.och.bus.constant.BusConst; import java.util.UUID; @@ -21,6 +21,6 @@ public class CarHeartbeatReqBean { this.lon = lon; this.lat = lat; this.msgId = UUID.randomUUID().toString(); - this.interval = (int) (OchBusConst.LOOP_PERIOD_60S / 1000); + this.interval = (int) (BusConst.LOOP_PERIOD_60S / 1000); } } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/QueryOchBusOperationStatusRequest.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/QueryOchBusOperationStatusRequest.java deleted file mode 100644 index ceaf72c7f8..0000000000 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/bean/QueryOchBusOperationStatusRequest.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.mogo.och.bus.bean; - -import com.mogo.cloud.passport.MoGoAiCloudClientConfig; -import com.mogo.commons.network.Utils; - -public -/** - * @author congtaowang - * @since 2021/3/22 - * - * 小巴车运营状态请求参数 - */ -class QueryOchBusOperationStatusRequest { - - public String sn; - - - public QueryOchBusOperationStatusRequest() { - this.sn = MoGoAiCloudClientConfig.getInstance().getSn(); - } -} diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IOCHBusControllerStatusCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java similarity index 89% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IOCHBusControllerStatusCallback.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java index 1e7bd30279..e03e963942 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IOCHBusControllerStatusCallback.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusControllerStatusCallback.java @@ -7,7 +7,7 @@ import android.location.Location; * * Model->Presenter回调:状态控制器监听(accOn、adas ui show、voice ui show、push ui show、v2x ui show等等) */ -public interface IOCHBusControllerStatusCallback { +public interface IBusControllerStatusCallback { // 是否vr map模式 void onVRModeChanged(boolean isVRMode); // 自车定位 diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/BusLinesCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusLinesCallback.java similarity index 86% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/BusLinesCallback.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusLinesCallback.java index 9f35270323..b181736278 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/BusLinesCallback.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IBusLinesCallback.java @@ -6,7 +6,7 @@ import com.mogo.och.bus.bean.BusQueryLinesResponse; * @author: wangmingjun * @date: 2022/2/9 */ -public interface BusLinesCallback { +public interface IBusLinesCallback { void onBusLinesChange(BusQueryLinesResponse lines); void onChangeLineIdSuccess(); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/CarOperationStatusCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/ICarOperationStatusCallback.java similarity index 75% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/CarOperationStatusCallback.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/ICarOperationStatusCallback.java index 0e9cd198da..d414f71e2c 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/CarOperationStatusCallback.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/ICarOperationStatusCallback.java @@ -4,6 +4,6 @@ package com.mogo.och.bus.callback; * @author: wangmingjun * @date: 2021/10/22 */ -public interface CarOperationStatusCallback { +public interface ICarOperationStatusCallback { void changeOperationStatus(boolean changeStatus); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IRefreshBusStationsCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IRefreshBusStationsCallback.java new file mode 100644 index 0000000000..854a2699d5 --- /dev/null +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/IRefreshBusStationsCallback.java @@ -0,0 +1,13 @@ +package com.mogo.och.bus.callback; + +import com.mogo.och.bus.bean.BusStationBean; + +import java.util.List; + +/** + * @author: wangmingjun + * @date: 2021/10/22 + */ +public interface IRefreshBusStationsCallback { + void refreshBusStations(List stationList, int currentStation, int nextStation, boolean isArrived); +} diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/SlidePannelHideCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/ISlidePannelHideCallback.java similarity index 72% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/SlidePannelHideCallback.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/ISlidePannelHideCallback.java index 11dd2f0d36..16e6893135 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/SlidePannelHideCallback.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/ISlidePannelHideCallback.java @@ -4,6 +4,6 @@ package com.mogo.och.bus.callback; * @author: wangmingjun * @date: 2021/10/22 */ -public interface SlidePannelHideCallback { +public interface ISlidePannelHideCallback { void hideSlidePanel(); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/RefreshBusStationsCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/RefreshBusStationsCallback.java deleted file mode 100644 index bc59a7ba79..0000000000 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/callback/RefreshBusStationsCallback.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.mogo.och.bus.callback; - -import com.mogo.och.bus.bean.OchBusStation; - -import java.util.List; - -/** - * @author: wangmingjun - * @date: 2021/10/22 - */ -public interface RefreshBusStationsCallback { - void refreshBusStations(List stationList, int currentStation, int nextStation,boolean isArrived); -} diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/OchBusConst.kt b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt similarity index 99% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/OchBusConst.kt rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt index 5f07d5d097..563b0825a5 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/OchBusConst.kt +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/constant/BusConst.kt @@ -5,7 +5,7 @@ import com.mogo.commons.debug.DebugConfig /** * Created on 2021/12/6 */ -class OchBusConst { +class BusConst { companion object { private const val BASE_URL_OCH_DEV = "http://tech-dev.zhidaohulian.com" diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java similarity index 97% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java index c62af56dd5..5b7e2eca1e 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseOchBusTabFragment.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/fragment/BaseBusTabFragment.java @@ -24,9 +24,10 @@ import com.mogo.commons.mvp.Presenter; import com.mogo.commons.voice.AIAssist; import com.mogo.eagle.core.data.config.HmiBuildConfig; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener; +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener; 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.autopilot.CallerAutopilotIdentifyListenerManager; +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; @@ -53,7 +54,7 @@ import record_cache.RecordPanelOuterClass; * * @author tongchenfei */ -public abstract class BaseOchBusTabFragment> extends MvpFragment implements IMogoMapListener, IMoGoAutopilotIdentifyListener { +public abstract class BaseBusTabFragment> extends MvpFragment implements IMogoMapListener, IMoGoAutopilotRecordListener { private static final String TAG = "BaseOchFragment"; @@ -218,7 +219,7 @@ public abstract class BaseOchBusTabFragment +public class BusFragment extends BaseBusTabFragment implements SlidePanelView.OnSlidePanelMoveToEndListener, View.OnClickListener { - private static final String TAG = "OchBusFragment"; + private static final String TAG = "BusFragment"; private TextView mCurrentStationName; private TextView mStartStationFlag; @@ -50,12 +50,12 @@ public class OchBusFragment extends BaseOchBusTabFragment stationList, int currentStation, int nextStation, boolean isArrived) { + public void refreshBusStations(List stationList, int currentStation, int nextStation, boolean isArrived) { mCurrentStation = currentStation; if (getActivity() == null) { return; @@ -149,7 +149,7 @@ public class OchBusFragment extends BaseOchBusTabFragment stationList, int currentStation + private void renderCurrentStationStatus(List stationList, int currentStation , int nextStation, boolean isArrived) { CallerLogger.INSTANCE.d(M_BUS + "MapMaker ", "currentStation=" + currentStation + ",nextStation=" + nextStation + "isArrived=" + isArrived); String currentStationName = null; @@ -173,16 +173,16 @@ public class OchBusFragment extends BaseOchBusTabFragment 0 && currentStation < stationList.size() - 1) {// 是否到达站点 isArriveAtStation = true; - setOrRemoveMapMaker(false, OchBusConst.BUS_START_MAP_MAKER, startStation.getLat() + setOrRemoveMapMaker(false, BusConst.BUS_START_MAP_MAKER, startStation.getLat() , startStation.getLon()); - setOrRemoveMapMaker(true, OchBusConst.BUS_END_MAP_MAKER, endStation.getLat() + setOrRemoveMapMaker(true, BusConst.BUS_END_MAP_MAKER, endStation.getLat() , endStation.getLon()); } else if (currentStation == stationList.size() - 1) {// 是否到达终点 isArriveEndStation = true; @@ -191,14 +191,14 @@ public class OchBusFragment extends BaseOchBusTabFragment callback){ + public void resetStationStatus(Context context, int lineId, IBusServiceCallback callback){ mService.resetStationStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId() - ,MoGoAiCloudClientConfig.getInstance().getToken(),new OchBusResetDrivingLineRequest(lineId)) + ,MoGoAiCloudClientConfig.getInstance().getToken(),new BusResetDrivingLineRequest(lineId)) .subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()) .subscribe(getSubscribeImpl(context,callback,"debugResetStationStatus")); } @@ -85,11 +85,11 @@ public class OCHBusServiceManager { * @param siteId * @param callback */ - public void leaveStation(Context context,int seq,int siteId,OCHServiceCallback callback){ + public void leaveStation(Context context, int seq, int siteId, IBusServiceCallback callback){ mService.leaveStation(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() - ,new OchBusUpdateSiteStatusRequest(seq,siteId,OchBusOrderModel.getInstance().mLongitude - ,OchBusOrderModel.getInstance().mLatitude)) + ,new BusUpdateSiteStatusRequest(seq,siteId, BusOrderModel.getInstance().mLongitude + , BusOrderModel.getInstance().mLatitude)) .subscribeOn( Schedulers.io() ) .observeOn( AndroidSchedulers.mainThread() ) .subscribe(getSubscribeImpl(context,callback,"leaveStation")); @@ -102,11 +102,11 @@ public class OCHBusServiceManager { * @param siteId * @param callback */ - public void arriveSiteStation(Context context,int seq,int siteId,OCHServiceCallback callback){ + public void arriveSiteStation(Context context, int seq, int siteId, IBusServiceCallback callback){ mService.arriveSiteStation(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() - ,new OchBusUpdateSiteStatusRequest(seq,siteId - ,OchBusOrderModel.getInstance().mLongitude,OchBusOrderModel.getInstance().mLatitude)) + ,new BusUpdateSiteStatusRequest(seq,siteId + , BusOrderModel.getInstance().mLongitude, BusOrderModel.getInstance().mLatitude)) .subscribeOn( Schedulers.io() ) .observeOn( AndroidSchedulers.mainThread() ) .subscribe(getSubscribeImpl(context,callback,"leaveStation")); @@ -119,8 +119,8 @@ public class OCHBusServiceManager { * @param siteId * @param callback */ - public void queryStationLeaveAwayPassengers(Context context,int seq,int siteId - ,OCHServiceCallback callback){ + public void queryStationLeaveAwayPassengers(Context context, int seq, int siteId + , IBusServiceCallback callback){ mService.queryStationLeaveAwayPassengers( MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken(),new QueryLeaveAwayPassengersRequest(seq,siteId)) .subscribeOn( Schedulers.io() ) @@ -133,11 +133,11 @@ public class OCHBusServiceManager { * @param context * @param callback */ - public void stopTakeOrder(Context context,OCHServiceCallback callback){ + public void stopTakeOrder(Context context, IBusServiceCallback callback){ mService.stopTakeOrder(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() - ,new OchBusOperationStatusRequest(OchBusOrderModel.getInstance().mLongitude - ,OchBusOrderModel.getInstance().mLatitude)) + ,new BusOperationStatusRequest(BusOrderModel.getInstance().mLongitude + , BusOrderModel.getInstance().mLatitude)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(getSubscribeImpl(context,callback,"stopTakeOrder")); @@ -148,11 +148,11 @@ public class OCHBusServiceManager { * @param context * @param callback */ - public void startTakeOrder(Context context,OCHServiceCallback callback){ + public void startTakeOrder(Context context, IBusServiceCallback callback){ mService.startTakeOrder(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() - ,new OchBusOperationStatusRequest(OchBusOrderModel.getInstance().mLongitude - ,OchBusOrderModel.getInstance().mLatitude)) + ,new BusOperationStatusRequest(BusOrderModel.getInstance().mLongitude + , BusOrderModel.getInstance().mLatitude)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(getSubscribeImpl(context,callback,"startTakeOrder")); @@ -163,7 +163,7 @@ public class OCHBusServiceManager { * @param context * @param callback */ - public void queryOperationStatus(Context context,OCHServiceCallback callback){ + public void queryOperationStatus(Context context, IBusServiceCallback callback){ mService.queryOperationStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken(),MoGoAiCloudClientConfig.getInstance().getSn()) .subscribeOn( Schedulers.io() ) @@ -176,7 +176,7 @@ public class OCHBusServiceManager { * @param context * @param callback */ - public void queryBusOrders(Context context, OCHServiceCallback callback){ + public void queryBusOrders(Context context, IBusServiceCallback callback){ mService.queryBusOrders(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken(),MoGoAiCloudClientConfig.getInstance().getSn()) .subscribeOn(Schedulers.io()) @@ -184,7 +184,7 @@ public class OCHBusServiceManager { .subscribe(getSubscribeImpl(context,callback,"queryBusOrders")); } - public void queryBusLines(Context context, OCHServiceCallback callback){ + public void queryBusLines(Context context, IBusServiceCallback callback){ mService.queryBusLines(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken(),MoGoAiCloudClientConfig.getInstance().getSn()) .subscribeOn(Schedulers.io()) @@ -200,7 +200,7 @@ public class OCHBusServiceManager { * @param callback */ public void runCarHeartbeat(Context context, double lon, double lat, - OCHServiceCallback callback) { + IBusServiceCallback callback) { mService.runCarHeartbeat(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken(),new CarHeartbeatReqBean( MoGoAiCloudClientConfig.getInstance().getSn(), lon, lat)) @@ -209,7 +209,7 @@ public class OCHBusServiceManager { .subscribe(getSubscribeImpl(context, callback, "runCarHeartbeat")); } - private SubscribeImpl getSubscribeImpl(Context context, OCHServiceCallback callback, String apiName){ + private SubscribeImpl getSubscribeImpl(Context context, IBusServiceCallback callback, String apiName){ return new SubscribeImpl(RequestOptions.create(context)){ @Override public void onSuccess(T o) { diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IOchBusApiService.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IBusApiService.java similarity index 78% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IOchBusApiService.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IBusApiService.java index 3ba0aa2c76..31a4af6df5 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IOchBusApiService.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IBusApiService.java @@ -1,16 +1,16 @@ package com.mogo.och.bus.net; import com.mogo.eagle.core.data.BaseData; +import com.mogo.och.bus.bean.BusOperationStatusRequest; +import com.mogo.och.bus.bean.BusOrdersResponse; import com.mogo.och.bus.bean.BusQueryLinesResponse; +import com.mogo.och.bus.bean.BusRoutesResponse; import com.mogo.och.bus.bean.CarHeartbeatReqBean; -import com.mogo.och.bus.bean.OchBusOperationStatusRequest; -import com.mogo.och.bus.bean.OchBusQueryLineStationsRequest; -import com.mogo.och.bus.bean.OchBusOperationStatusResponse; -import com.mogo.och.bus.bean.OchBusOrdersResponse; -import com.mogo.och.bus.bean.OchBusRoutesResponse; +import com.mogo.och.bus.bean.BusQueryLineStationsRequest; +import com.mogo.och.bus.bean.BusOperationStatusResponse; import com.mogo.och.bus.bean.QueryLeaveAwayPassengersRequest; import com.mogo.och.bus.bean.QueryLeaveAwayPassengersResponse; -import com.mogo.och.bus.bean.OchBusResetDrivingLineRequest; -import com.mogo.och.bus.bean.OchBusUpdateSiteStatusRequest; +import com.mogo.och.bus.bean.BusResetDrivingLineRequest; +import com.mogo.och.bus.bean.BusUpdateSiteStatusRequest; import io.reactivex.Observable; import retrofit2.http.Body; @@ -27,7 +27,7 @@ import retrofit2.http.Query; *

* wiki: http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=48970072 */ -public interface IOchBusApiService { +public interface IBusApiService { /** * 根据车机坐标获取所在区域全部站点信息 * @@ -38,7 +38,7 @@ public interface IOchBusApiService { // @POST( "/autopilot-car-hailing/line/v2/lineDataWithDriver/query" ) @POST( "/autopilot-car-hailing/line/v2/driver/bus/lineDataWithDriver/query" ) // @POST( "/mock/268/autopilot-car-hailing/bus/api/lineDataWithDriver/query" ) - Observable< OchBusRoutesResponse > querySiteByCoordinate(@Header ("appId") String appId,@Header("ticket") String ticket,@Body OchBusQueryLineStationsRequest request); + Observable querySiteByCoordinate(@Header ("appId") String appId, @Header("ticket") String ticket, @Body BusQueryLineStationsRequest request); /** * 重置巴士路线: 点击小巴车tab 或者出车后会使用 @@ -50,7 +50,7 @@ public interface IOchBusApiService { // @POST( "/autopilot-car-hailing/car/v2/bus/drivingLine/reset" ) @POST( "/autopilot-car-hailing/car/v2/driver/bus/drivingLine/reset" ) // @POST( "/mock/268/autopilot-car-hailing/bus/api/drivingLine/reset" ) - Observable< OchBusRoutesResponse > resetStationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Body OchBusResetDrivingLineRequest request); + Observable resetStationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Body BusResetDrivingLineRequest request); /** * 离站,通知服务器 @@ -61,7 +61,7 @@ public interface IOchBusApiService { // @POST("/autopilot-car-hailing/car/v2/bus/driving/away") @POST("/autopilot-car-hailing/car/v2/driver/bus/driving/away") // @POST("/mock/268/autopilot-car-hailing/bus/api/driving/away") - Observable< OchBusRoutesResponse > leaveStation(@Header ("appId") String appId,@Header("ticket") String ticket,@Body OchBusUpdateSiteStatusRequest request); + Observable leaveStation(@Header ("appId") String appId, @Header("ticket") String ticket, @Body BusUpdateSiteStatusRequest request); /** * 到站 更新到站信息 @@ -72,7 +72,7 @@ public interface IOchBusApiService { // @POST("/autopilot-car-hailing/order/v2/bus/driving/attachSite") @POST("/autopilot-car-hailing/order/v2/driver/bus/driving/attachSite") // @POST("/mock/268/autopilot-car-hailing/bus/api/driving/attachSite") - Observable< BaseData > arriveSiteStation(@Header ("appId") String appId,@Header("ticket") String ticket,@Body OchBusUpdateSiteStatusRequest request); + Observable< BaseData > arriveSiteStation(@Header ("appId") String appId,@Header("ticket") String ticket,@Body BusUpdateSiteStatusRequest request); /** @@ -95,7 +95,7 @@ public interface IOchBusApiService { // @POST("/autopilot-car-hailing/car/v2/bus/startTakeOrder") @POST("/autopilot-car-hailing/car/v2/driver/bus/startTakeOrder") // @POST("/mock/268/autopilot-car-hailing/bus/api/startTakeOrder") - Observable startTakeOrder(@Header ("appId") String appId,@Header("ticket") String ticket,@Body OchBusOperationStatusRequest request); + Observable startTakeOrder(@Header ("appId") String appId,@Header("ticket") String ticket,@Body BusOperationStatusRequest request); /** * 收车 @@ -106,7 +106,7 @@ public interface IOchBusApiService { // @POST("/autopilot-car-hailing/car/v2/bus/stopTakeOrder") @POST("/autopilot-car-hailing/car/v2/driver/bus/stopTakeOrder") // @POST("/mock/268/autopilot-car-hailing/bus/api/stopTakeOrder") - Observable stopTakeOrder(@Header ("appId") String appId,@Header("ticket") String ticket,@Body OchBusOperationStatusRequest request); + Observable stopTakeOrder(@Header ("appId") String appId,@Header("ticket") String ticket,@Body BusOperationStatusRequest request); /** * 查询小巴出车/收车状态 @@ -117,13 +117,13 @@ public interface IOchBusApiService { // @GET("/autopilot-car-hailing/car/v2/bus/takeOrderStatus/query") @GET("/autopilot-car-hailing/car/v2/driver/bus/takeOrderStatus/query") // @GET("/mock/268/autopilot-car-hailing/bus/api/takeOrderStatus/query") - Observable queryOperationStatus(@Header ("appId") String appId,@Header("ticket") String ticket,@Query("sn") String sn); + Observable queryOperationStatus(@Header ("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); @Headers({"Content-type:application/json;charset=UTF-8"}) // @GET("/autopilot-car-hailing/order/v2/bus/servicingOrders/query") @GET("/autopilot-car-hailing/order/v2/driver/bus/servicingOrders/query") // @GET("/mock/268/autopilot-car-hailing/bus/api/servicingOrders/query") - Observable queryBusOrders(@Header ("appId") String appId,@Header("ticket") String ticket,@Query("sn") String sn); + Observable queryBusOrders(@Header ("appId") String appId, @Header("ticket") String ticket, @Query("sn") String sn); /** * 车机端上传心跳数据(只在出车状态时上传):包含高德坐标系经纬度 diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/OCHServiceCallback.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IBusServiceCallback.java similarity index 80% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/OCHServiceCallback.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IBusServiceCallback.java index a243248570..966a86d980 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/OCHServiceCallback.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/net/IBusServiceCallback.java @@ -4,7 +4,7 @@ package com.mogo.och.bus.net; * @author: wangmingjun * @date: 2021/10/20 */ -public interface OCHServiceCallback< T >{ +public interface IBusServiceCallback< T >{ void onSuccess(T o); void onFail(String failMsg); diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusLineModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLineModel.java similarity index 62% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusLineModel.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLineModel.java index 7764957647..84f715c78e 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusLineModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLineModel.java @@ -5,40 +5,40 @@ import android.content.Context; import com.mogo.commons.AbsMogoApplication; import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import com.mogo.och.bus.bean.BusQueryLinesResponse; -import com.mogo.och.bus.bean.OchBusRoutesResponse; -import com.mogo.och.bus.callback.BusLinesCallback; -import com.mogo.och.bus.net.OCHBusServiceManager; -import com.mogo.och.bus.net.OCHServiceCallback; +import com.mogo.och.bus.bean.BusRoutesResponse; +import com.mogo.och.bus.callback.IBusLinesCallback; +import com.mogo.och.bus.net.BusServiceManager; +import com.mogo.och.bus.net.IBusServiceCallback; /** * @author: wangmingjun * @date: 2022/2/9 */ -public class OchBusLineModel { - private static volatile OchBusLineModel sInstance; +public class BusLineModel { + private static volatile BusLineModel sInstance; private Context mContext; - private BusLinesCallback mBusLinesCallback; - public static OchBusLineModel getInstance() { + private IBusLinesCallback mBusLinesCallback; + public static BusLineModel getInstance() { if ( sInstance == null ) { - synchronized ( OchBusLineModel.class ) { + synchronized ( BusLineModel.class ) { if ( sInstance == null ) { - sInstance = new OchBusLineModel(); + sInstance = new BusLineModel(); } } } return sInstance; } - private OchBusLineModel() { + private BusLineModel() { } public void init() { mContext = AbsMogoApplication.getApp(); } - public void setBusLinesCallback(BusLinesCallback callback){ + public void setBusLinesCallback(IBusLinesCallback callback){ mBusLinesCallback = callback; } public void queryBusLines(){ - OCHBusServiceManager.getInstance().queryBusLines(mContext, new OCHServiceCallback() { + BusServiceManager.getInstance().queryBusLines(mContext, new IBusServiceCallback() { @Override public void onSuccess(BusQueryLinesResponse data) { if (null == data && mBusLinesCallback != null) { @@ -59,9 +59,9 @@ public class OchBusLineModel { } public void commitSwitchLineId(int lineId){ - OCHBusServiceManager.getInstance().resetStationStatus(mContext,lineId, new OCHServiceCallback() { + BusServiceManager.getInstance().resetStationStatus(mContext,lineId, new IBusServiceCallback() { @Override - public void onSuccess(OchBusRoutesResponse o) { + public void onSuccess(BusRoutesResponse o) { if (mBusLinesCallback != null){ mBusLinesCallback.onChangeLineIdSuccess(); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java new file mode 100644 index 0000000000..04bf358f4e --- /dev/null +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusLinePresenter.java @@ -0,0 +1,74 @@ +package com.mogo.och.bus.presenter; + +import android.os.Looper; + +import androidx.annotation.NonNull; +import androidx.lifecycle.LifecycleOwner; + +import com.mogo.commons.mvp.Presenter; +import com.mogo.eagle.core.utilcode.util.UiThreadHandler; +import com.mogo.och.bus.bean.BusQueryLinesResponse; +import com.mogo.och.bus.callback.IBusLinesCallback; +import com.mogo.och.bus.ui.BusSwitchLineView; + +/** + * @author: wangmingjun + * @date: 2022/2/9 + */ +public class BusLinePresenter extends Presenter implements IBusLinesCallback { + + public BusLinePresenter(BusSwitchLineView view) { + super(view); + BusLineModel.getInstance().init(); + BusOrderModel.getInstance().init(); + } + + @Override + public void onCreate(@NonNull LifecycleOwner owner) { + super.onCreate(owner); + initListener(); + } + + private void initListener() { + BusLineModel.getInstance().setBusLinesCallback(this); + } + + private void runOnUIThread( Runnable executor ) { + if ( executor == null ) { + return; + } + if ( Looper.myLooper() != Looper.getMainLooper() ) { + UiThreadHandler.post( executor ); + } else { + executor.run(); + } + } + + @Override + public void onBusLinesChange(BusQueryLinesResponse lines) { + runOnUIThread(() -> mView.onBusLinesChange(lines)); + } + + @Override + public void onChangeLineIdSuccess() { + runOnUIThread(() -> mView.onChangeLineIdSuccess()); + } + + public void queryBusLines(){ + BusLineModel.getInstance().queryBusLines(); + } + + public void commitSwitchLineId(int lineId){ + BusLineModel.getInstance().commitSwitchLineId(lineId); + } + + public void queryBusRoutes(){ + BusOrderModel.getInstance().queryBusRoutes(); + } + + @Override + public void onDestroy(@NonNull LifecycleOwner owner) { + super.onDestroy(owner); + BusLineModel.getInstance().setBusLinesCallback(null); + } +} diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusModelLoopManager.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java similarity index 70% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusModelLoopManager.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java index 14a1defb3e..73127227d9 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusModelLoopManager.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusModelLoopManager.java @@ -3,7 +3,7 @@ package com.mogo.och.bus.presenter; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.och.bus.constant.OchBusConst; +import com.mogo.och.bus.constant.BusConst; import java.util.concurrent.TimeUnit; @@ -17,15 +17,15 @@ import io.reactivex.schedulers.Schedulers; * * 管理轮询逻辑(订单轮询、新单轮询、新单抢单结果轮询等等) */ -public class OchBusModelLoopManager { +public class BusModelLoopManager { - private static final String TAG = OchBusModelLoopManager.class.getSimpleName(); + private static final String TAG = BusModelLoopManager.class.getSimpleName(); private static final class SingletonHolder { - private static final OchBusModelLoopManager INSTANCE = new OchBusModelLoopManager(); + private static final BusModelLoopManager INSTANCE = new BusModelLoopManager(); } - public static OchBusModelLoopManager getInstance() { + public static BusModelLoopManager getInstance() { return SingletonHolder.INSTANCE; } @@ -36,12 +36,12 @@ public class OchBusModelLoopManager { return; } CallerLogger.INSTANCE.i(M_BUS + TAG, "startHeartbeatLoop()"); - mHeartbeatDisposable = Observable.interval(OchBusConst.LOOP_DELAY, - OchBusConst.LOOP_PERIOD_60S, TimeUnit.MILLISECONDS) + mHeartbeatDisposable = Observable.interval(BusConst.LOOP_DELAY, + BusConst.LOOP_PERIOD_60S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> OchBusOrderModel.getInstance().runCarHeartbeat()); + .subscribe(aLong -> BusOrderModel.getInstance().runCarHeartbeat()); } public void stopHeartbeatLoop() { diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusOrderModel.java similarity index 86% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusOrderModel.java index b191a1e1eb..a12c6fbe6a 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusOrderModel.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusOrderModel.java @@ -1,7 +1,7 @@ package com.mogo.och.bus.presenter; import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS; -import static com.mogo.och.bus.constant.OchBusConst.STATION_STATUS_STOPPED; +import static com.mogo.och.bus.constant.BusConst.STATION_STATUS_STOPPED; import android.content.Context; import android.location.Location; @@ -24,21 +24,21 @@ import com.mogo.eagle.core.utilcode.util.NetworkUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.map.navi.IMogoCarLocationChangedListener2; import com.mogo.module.common.MogoApisHandler; -import com.mogo.och.bus.bean.OchBusOperationStatusResponse; -import com.mogo.och.bus.bean.OchBusOrder; -import com.mogo.och.bus.bean.OchBusOrdersResponse; -import com.mogo.och.bus.bean.OchBusRoutesResponse; -import com.mogo.och.bus.bean.OchBusRoutesResult; -import com.mogo.och.bus.bean.OchBusStation; +import com.mogo.och.bus.bean.BusOperationStatusResponse; +import com.mogo.och.bus.bean.BusOrderBean; +import com.mogo.och.bus.bean.BusOrdersResponse; +import com.mogo.och.bus.bean.BusRoutesResponse; +import com.mogo.och.bus.bean.BusRoutesResult; +import com.mogo.och.bus.bean.BusStationBean; import com.mogo.och.bus.bean.QueryLeaveAwayPassengersResponse; -import com.mogo.och.bus.callback.CarOperationStatusCallback; -import com.mogo.och.bus.callback.IOCHBusControllerStatusCallback; -import com.mogo.och.bus.callback.RefreshBusStationsCallback; -import com.mogo.och.bus.callback.SlidePannelHideCallback; -import com.mogo.och.bus.constant.OchBusConst; -import com.mogo.och.bus.net.OCHBusServiceManager; -import com.mogo.och.bus.net.OCHServiceCallback; -import com.mogo.och.bus.util.OchBusAnalyticsUtil; +import com.mogo.och.bus.callback.ICarOperationStatusCallback; +import com.mogo.och.bus.callback.IBusControllerStatusCallback; +import com.mogo.och.bus.callback.IRefreshBusStationsCallback; +import com.mogo.och.bus.callback.ISlidePannelHideCallback; +import com.mogo.och.bus.constant.BusConst; +import com.mogo.och.bus.net.BusServiceManager; +import com.mogo.och.bus.net.IBusServiceCallback; +import com.mogo.och.bus.util.BusAnalyticsUtil; import com.mogo.och.bus.util.PinYinUtil; import com.mogo.service.statusmanager.IMogoStatusChangedListener; import com.mogo.service.statusmanager.StatusDescriptor; @@ -63,8 +63,8 @@ import mogo.telematics.pad.MessagePad; * * 小巴订单管理 */ -public class OchBusOrderModel { - private final String TAG = OchBusOrderModel.class.getSimpleName(); +public class BusOrderModel { + private final String TAG = BusOrderModel.class.getSimpleName(); private int currentLineId = -1; private int currentStationIndex = 0; //因为服务端和前台对于当前站不一致,所以设置两个current index, 一个用于前台展示, 一个用于服务端接口请求 private int backgroundCurrentStationIndex = 0;//A->B 此处值是A站点索引 @@ -72,14 +72,14 @@ public class OchBusOrderModel { * 运营状态、后端更具运营状态来判断车辆是否派单 */ private boolean mIsWorking = false; - private static volatile OchBusOrderModel sInstance; + private static volatile BusOrderModel sInstance; public double mLongitude = 0; public double mLatitude = 0; private Context mContext; private Disposable mBusOrdersDisposable; //定时轮询小巴车订单 private List prevBusOrderNos = new ArrayList<>(); - private final List< OchBusStation > stationList = new ArrayList<>(); - private OchBusRoutesResult ochBusRoutesResult = null; + private final List stationList = new ArrayList<>(); + private BusRoutesResult busRoutesResult = null; /** * 用来表示是否正在开往下一站 */ @@ -89,10 +89,10 @@ public class OchBusOrderModel { private static final int MSG_QUERY_BUS_STATION = 1001; private static final long QUERY_BUS_STATION_DELAY = 5000; - private CarOperationStatusCallback carOperationStatusCallback; - private RefreshBusStationsCallback refreshBusStationsCallback; - private SlidePannelHideCallback slidePannelHideCallback; - private IOCHBusControllerStatusCallback mControllerStatusCallback; //Model->Presenter:VR mode等 + private ICarOperationStatusCallback carOperationStatusCallback; + private IRefreshBusStationsCallback refreshBusStationsCallback; + private ISlidePannelHideCallback slidePannelHideCallback; + private IBusControllerStatusCallback mControllerStatusCallback; //Model->Presenter:VR mode等 private boolean hadQueryLeaveAwayPassager = false; @@ -100,25 +100,25 @@ public class OchBusOrderModel { @Override public boolean handleMessage(Message msg) { if ( msg.what == MSG_QUERY_BUS_STATION ) { - OchBusOrderModel.getInstance().queryBusRoutes(); + BusOrderModel.getInstance().queryBusRoutes(); return true; } return false; } }); - public static OchBusOrderModel getInstance() { + public static BusOrderModel getInstance() { if ( sInstance == null ) { - synchronized ( OchBusOrderModel.class ) { + synchronized ( BusOrderModel.class ) { if ( sInstance == null ) { - sInstance = new OchBusOrderModel(); + sInstance = new BusOrderModel(); } } } return sInstance; } - private OchBusOrderModel() { + private BusOrderModel() { } @@ -178,19 +178,19 @@ public class OchBusOrderModel { startLoopBusOrders(); } - public void setCarOperationStatusCallback(CarOperationStatusCallback callback){ + public void setCarOperationStatusCallback(ICarOperationStatusCallback callback){ this.carOperationStatusCallback = callback; } - public void setRefreshBusStationsCallback(RefreshBusStationsCallback callback){ + public void setRefreshBusStationsCallback(IRefreshBusStationsCallback callback){ this.refreshBusStationsCallback = callback; } - public void setSlidePannelHideCallback(SlidePannelHideCallback callback){ + public void setSlidePannelHideCallback(ISlidePannelHideCallback callback){ this.slidePannelHideCallback = callback; } - public void setControllerStatusCallback(IOCHBusControllerStatusCallback callback) { + public void setControllerStatusCallback(IBusControllerStatusCallback callback) { this.mControllerStatusCallback = callback; } @@ -201,8 +201,8 @@ public class OchBusOrderModel { if (mBusOrdersDisposable != null && !mBusOrdersDisposable.isDisposed()) { return; } - mBusOrdersDisposable = Observable.interval(OchBusConst.LOOP_DELAY, - OchBusConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) + mBusOrdersDisposable = Observable.interval(BusConst.LOOP_DELAY, + BusConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) @@ -210,14 +210,14 @@ public class OchBusOrderModel { } private void queryBusOrders() { - OCHBusServiceManager.getInstance().queryBusOrders(mContext, new OCHServiceCallback() { + BusServiceManager.getInstance().queryBusOrders(mContext, new IBusServiceCallback() { @Override - public void onSuccess(OchBusOrdersResponse o) { + public void onSuccess(BusOrdersResponse o) { if (o.data != null && o.data.orders != null && o.data.orders.size() > 0) { CallerLogger.INSTANCE.d( M_BUS + TAG, "获取到bus订单数据: " + o.data.orders.toString() ); - List busOrders = o.data.orders; + List busOrders = o.data.orders; for (int i = 0; i < busOrders.size(); i++) { - OchBusOrder order = busOrders.get(i); + BusOrderBean order = busOrders.get(i); if (order == null) return; if (TextUtils.isEmpty(order.getPassengerPhone())) return; if (prevBusOrderNos.contains(order.getOrderNo())) continue; @@ -300,9 +300,9 @@ public class OchBusOrderModel { */ public void queryBusRoutes() { CallerLogger.INSTANCE.d(M_BUS + TAG, "查询小巴路线"); - OCHBusServiceManager.getInstance().queryBusRoutes(mContext, new OCHServiceCallback() { + BusServiceManager.getInstance().queryBusRoutes(mContext, new IBusServiceCallback() { @Override - public void onSuccess(OchBusRoutesResponse data) { + public void onSuccess(BusRoutesResponse data) { if ( data == null || data.getResult() == null || data.getResult().getSites() == null @@ -326,10 +326,10 @@ public class OchBusOrderModel { */ public void debugResetStationStatus() { CallerLogger.INSTANCE.d( M_BUS + TAG, "测试、重置站点状态"); - OCHBusServiceManager.getInstance().resetStationStatus(mContext, currentLineId - , new OCHServiceCallback() { + BusServiceManager.getInstance().resetStationStatus(mContext, currentLineId + , new IBusServiceCallback() { @Override - public void onSuccess(OchBusRoutesResponse o) { + public void onSuccess(BusRoutesResponse o) { CallerLogger.INSTANCE.d(M_BUS + TAG, "获取到小巴路线数据: " + o); isGoingToNextStation = false; if (o.getResult() == null || o.getResult().getSites() == null || o.getResult().getSites().isEmpty()) { @@ -352,10 +352,10 @@ public class OchBusOrderModel { */ public void leaveStation(boolean isOneWayOver,boolean isRestart){ CallerLogger.INSTANCE.d(M_BUS + TAG,"leaveStation-backgroundCurrentStationIndex = "+backgroundCurrentStationIndex); - OCHBusServiceManager.getInstance().leaveStation(mContext, stationList.get(backgroundCurrentStationIndex).getSeq() - , stationList.get(backgroundCurrentStationIndex).getSiteId(), new OCHServiceCallback() { + BusServiceManager.getInstance().leaveStation(mContext, stationList.get(backgroundCurrentStationIndex).getSeq() + , stationList.get(backgroundCurrentStationIndex).getSiteId(), new IBusServiceCallback() { @Override - public void onSuccess(OchBusRoutesResponse o) { + public void onSuccess(BusRoutesResponse o) { if ( o.getResult() == null || o.getResult().getSites() == null || o.getResult().getSites().isEmpty() ) { return; } @@ -386,7 +386,7 @@ public class OchBusOrderModel { * 服务端返回的OchBusRoutesResult逻辑, 离开站为当前站, 到达下一站后才会将下一站置为当前站, * 车机端展示是离开当前站,下一站设置为当前站, 所以服务端数据回来要做处理,不能直接渲染 */ - private void RenderLeaveStationSuccess(OchBusRoutesResult result,boolean isRestart) { + private void RenderLeaveStationSuccess(BusRoutesResult result, boolean isRestart) { renderBusStationsStatus(result); if (slidePannelHideCallback != null) { slidePannelHideCallback.hideSlidePanel(); @@ -406,8 +406,8 @@ public class OchBusOrderModel { * @param isRestart */ private void startAutopilot(boolean isRestart) { - OchBusStation currentStation = stationList.get( currentStationIndex -1); - OchBusStation nextStation = stationList.get( currentStationIndex); + BusStationBean currentStation = stationList.get( currentStationIndex -1); + BusStationBean nextStation = stationList.get( currentStationIndex); // if (IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE // == CallerAutoPilotStatusListenerManager.INSTANCE.getAutoPilotStatusInfo().getState()) { @@ -438,9 +438,9 @@ public class OchBusOrderModel { */ private void arriveSiteStation(boolean isRestart) { CallerLogger.INSTANCE.d(M_BUS + TAG,"arriveSiteStation-currentStationIndex = "+currentStationIndex); - OCHBusServiceManager.getInstance().arriveSiteStation(mContext + BusServiceManager.getInstance().arriveSiteStation(mContext , stationList.get(currentStationIndex).getSeq(), stationList.get(currentStationIndex).getSiteId() - , new OCHServiceCallback() { + , new IBusServiceCallback() { @Override public void onSuccess(BaseData o) { CallerLogger.INSTANCE.d(M_BUS + TAG,"arriveSiteStation success"); @@ -459,7 +459,7 @@ public class OchBusOrderModel { } private void renderArriveBusStation() { - List< OchBusStation > site = ochBusRoutesResult.getSites(); + List site = busRoutesResult.getSites(); if (site != null && site.size() > 0){ backgroundCurrentStationIndex = currentStationIndex; if (refreshBusStationsCallback != null){ @@ -475,9 +475,9 @@ public class OchBusOrderModel { private void queryStationLeaveAwayPassengers() { CallerLogger.INSTANCE.d( M_BUS + TAG, "查询到站下车乘客"); - OCHBusServiceManager.getInstance().queryStationLeaveAwayPassengers(mContext + BusServiceManager.getInstance().queryStationLeaveAwayPassengers(mContext , stationList.get(currentStationIndex).getSeq(), stationList.get(currentStationIndex).getSiteId() - , new OCHServiceCallback() { + , new IBusServiceCallback() { @Override public void onSuccess(QueryLeaveAwayPassengersResponse o) { hadQueryLeaveAwayPassager = true; @@ -498,7 +498,7 @@ public class OchBusOrderModel { * 收车 */ public void stopTakeOrder(){ - OCHBusServiceManager.getInstance().stopTakeOrder(mContext, new OCHServiceCallback() { + BusServiceManager.getInstance().stopTakeOrder(mContext, new IBusServiceCallback() { @Override public void onSuccess(BaseData o) { mIsWorking = !mIsWorking; @@ -520,7 +520,7 @@ public class OchBusOrderModel { * 出车 */ public void startTakeOrder(){ - OCHBusServiceManager.getInstance().startTakeOrder(mContext, new OCHServiceCallback() { + BusServiceManager.getInstance().startTakeOrder(mContext, new IBusServiceCallback() { @Override public void onSuccess(BaseData o) { mIsWorking = !mIsWorking; @@ -548,10 +548,10 @@ public class OchBusOrderModel { */ public void queryOperationStatus() { CallerLogger.INSTANCE.d( M_BUS + TAG, "查询运营状态"); - OCHBusServiceManager.getInstance().queryOperationStatus(mContext - , new OCHServiceCallback() { + BusServiceManager.getInstance().queryOperationStatus(mContext + , new IBusServiceCallback() { @Override - public void onSuccess(OchBusOperationStatusResponse o) { + public void onSuccess(BusOperationStatusResponse o) { if ( o.data != null ) { mIsWorking = o.data.serviceStatus == 1; CallerLogger.INSTANCE.d( M_BUS + TAG, "查询运营状态 result.status: " + o.data.serviceStatus); @@ -586,15 +586,15 @@ public class OchBusOrderModel { * 车机端展示是离开当前站,下一站设置为当前站, 所以服务端数据回来要做处理current index,不能直接渲染 * @param result */ - private void renderBusStationsStatus(OchBusRoutesResult result) { + private void renderBusStationsStatus(BusRoutesResult result) { if (result == null) return; - ochBusRoutesResult = result; - List< OchBusStation > site = result.getSites(); + busRoutesResult = result; + List site = result.getSites(); currentLineId = result.getLineId(); stationList.clear(); stationList.addAll( site ); for ( int i = 0; i < stationList.size(); i++ ) { - OchBusStation s = stationList.get( i ); + BusStationBean s = stationList.get( i ); // 是否正在开往下一站 if ( s.isLeaving()) { isGoingToNextStation = true; @@ -606,7 +606,7 @@ public class OchBusOrderModel { } } backgroundCurrentStationIndex = currentStationIndex; - OchBusStation currentStation = stationList.get(currentStationIndex); + BusStationBean currentStation = stationList.get(currentStationIndex); CallerLogger.INSTANCE.d( M_BUS + TAG, "渲染站点信息服务端currentStationIndex="+currentStationIndex +" isLeaving()="+currentStation.isLeaving()); //当前站点是始发站,告诉服务端到达始发站。 如果没有这个节点, 服务器不知道始发站到达状态 @@ -802,8 +802,8 @@ public class OchBusOrderModel { // 车机端上传心跳数据(只在出车状态时上传) public void runCarHeartbeat() { - OCHBusServiceManager.getInstance().runCarHeartbeat(mContext, mLongitude, mLatitude, - new OCHServiceCallback() { + BusServiceManager.getInstance().runCarHeartbeat(mContext, mLongitude, mLatitude, + new IBusServiceCallback() { @Override public void onSuccess(BaseData data) { @@ -819,9 +819,9 @@ public class OchBusOrderModel { private void startOrStopOrderLoop(boolean start) { CallerLogger.INSTANCE.d(M_BUS + TAG, "startOrStopOrderLoop() " + start); if (start) { - OchBusModelLoopManager.getInstance().startHeartbeatLoop(); + BusModelLoopManager.getInstance().startHeartbeatLoop(); } else { - OchBusModelLoopManager.getInstance().stopHeartbeatLoop(); + BusModelLoopManager.getInstance().stopHeartbeatLoop(); } } @@ -829,9 +829,9 @@ public class OchBusOrderModel { if (stationList == null || currentStationIndex >= stationList.size()) { return; } - OchBusStation currentStation = stationList.get( currentStationIndex -1); - OchBusStation nextStation = stationList.get( currentStationIndex); - OchBusAnalyticsUtil.triggerStartServiceEvent(send, + BusStationBean currentStation = stationList.get( currentStationIndex -1); + BusStationBean nextStation = stationList.get( currentStationIndex); + BusAnalyticsUtil.triggerStartServiceEvent(send, currentStation.getName(), nextStation.getName(), currentLineId); } } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java similarity index 64% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java index 3a01e43818..8c2f855e50 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusPresenter.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/BusPresenter.java @@ -15,12 +15,12 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.bus.bean.OchBusStation; -import com.mogo.och.bus.callback.CarOperationStatusCallback; -import com.mogo.och.bus.callback.IOCHBusControllerStatusCallback; -import com.mogo.och.bus.callback.RefreshBusStationsCallback; -import com.mogo.och.bus.callback.SlidePannelHideCallback; -import com.mogo.och.bus.fragment.OchBusFragment; +import com.mogo.och.bus.bean.BusStationBean; +import com.mogo.och.bus.callback.ICarOperationStatusCallback; +import com.mogo.och.bus.callback.IBusControllerStatusCallback; +import com.mogo.och.bus.callback.IRefreshBusStationsCallback; +import com.mogo.och.bus.callback.ISlidePannelHideCallback; +import com.mogo.och.bus.fragment.BusFragment; import org.jetbrains.annotations.NotNull; @@ -35,119 +35,116 @@ import mogo_msg.MogoReportMsg; * * @author tongchenfei */ -public class OchBusPresenter extends Presenter - implements CarOperationStatusCallback, RefreshBusStationsCallback, SlidePannelHideCallback - , IMoGoAutopilotStatusListener, IOCHBusControllerStatusCallback { +public class BusPresenter extends Presenter + implements ICarOperationStatusCallback, IRefreshBusStationsCallback, ISlidePannelHideCallback + , IMoGoAutopilotStatusListener, IBusControllerStatusCallback { - private static final String TAG = "OchBusPresenter"; + private static final String TAG = "BusPresenter"; private int currentAutopilotStatus = -1; private boolean isAnimateRunning = false; - private List mStationList = new ArrayList<>(); + private List mStationList = new ArrayList<>(); private int mCurrentStation = 0; - public OchBusPresenter(OchBusFragment view) { + public BusPresenter(BusFragment view) { super(view); //2021.11.1 鹰眼架构整合,由IMoGoAutopilotStatusListener逐步替代IMogoAdasOCHCallback接口 CallerAutoPilotStatusListenerManager.INSTANCE.addListener(TAG, this); - OchBusOrderModel.getInstance().init(); + BusOrderModel.getInstance().init(); } @Override public void onCreate(@NonNull LifecycleOwner owner) { super.onCreate(owner); - OchBusOrderModel.getInstance().queryOperationStatus(); - OchBusOrderModel.getInstance().queryBusRoutes(); + BusOrderModel.getInstance().queryOperationStatus(); + BusOrderModel.getInstance().queryBusRoutes(); initModelListener(); } @Override public void onDestroy(@NonNull LifecycleOwner owner) { super.onDestroy(owner); - OchBusOrderModel.getInstance().release(); + BusOrderModel.getInstance().release(); releaseListener(); } public void initModelListener() { - OchBusOrderModel.getInstance().setCarOperationStatusCallback(this); - OchBusOrderModel.getInstance().setRefreshBusStationsCallback(this); - OchBusOrderModel.getInstance().setSlidePannelHideCallback(this); - OchBusOrderModel.getInstance().setControllerStatusCallback(this); + BusOrderModel.getInstance().setCarOperationStatusCallback(this); + BusOrderModel.getInstance().setRefreshBusStationsCallback(this); + BusOrderModel.getInstance().setSlidePannelHideCallback(this); + BusOrderModel.getInstance().setControllerStatusCallback(this); } public void releaseListener() { - OchBusOrderModel.getInstance().setCarOperationStatusCallback(null); - OchBusOrderModel.getInstance().setRefreshBusStationsCallback(null); - OchBusOrderModel.getInstance().setSlidePannelHideCallback(null); - OchBusOrderModel.getInstance().setControllerStatusCallback(null); + BusOrderModel.getInstance().setCarOperationStatusCallback(null); + BusOrderModel.getInstance().setRefreshBusStationsCallback(null); + BusOrderModel.getInstance().setSlidePannelHideCallback(null); + BusOrderModel.getInstance().setControllerStatusCallback(null); } public void queryBusRoutes() { - OchBusOrderModel.getInstance().queryBusRoutes(); + BusOrderModel.getInstance().queryBusRoutes(); } public void debugResetStationStatus() { - OchBusOrderModel.getInstance().debugResetStationStatus(); + BusOrderModel.getInstance().debugResetStationStatus(); } public void autoDriveToNextStation(boolean isRestart) { currentAutopilotStatus = -1; - OchBusOrderModel.getInstance().autoDriveToNextStation(isRestart); + BusOrderModel.getInstance().autoDriveToNextStation(isRestart); } public void restartAutopilot() { currentAutopilotStatus = -1; - OchBusOrderModel.getInstance().restartAutopilot(); + BusOrderModel.getInstance().restartAutopilot(); } public void onChangeOperationStatus() { - OchBusOrderModel.getInstance().onChangeOperationStatus(); + BusOrderModel.getInstance().onChangeOperationStatus(); } @Override public void changeOperationStatus(boolean changeStatus) { if (mView != null) { - mView.changeOperationStatus(changeStatus); + runOnUIThread(() -> mView.changeOperationStatus(changeStatus)); } } @Override - public void refreshBusStations(List stationList, int currentStation, int nextStation, boolean isArrived) { + public void refreshBusStations(List stationList, int currentStation, int nextStation, boolean isArrived) { mStationList.clear(); mStationList.addAll(stationList); mCurrentStation = currentStation; functionDemoModeChange(); - CallerLogger.INSTANCE.d(M_BUS + "OchBusOrderModel =", " mCurrentStation =" + mCurrentStation); + CallerLogger.INSTANCE.d(M_BUS + "BusOrderModel =", " mCurrentStation =" + mCurrentStation); if (mView != null) { - mView.refreshBusStations(stationList, currentStation, nextStation, isArrived); + runOnUIThread(() -> mView.refreshBusStations( + stationList, currentStation, nextStation, isArrived)); } } private void functionDemoModeChange() { -// CallerLogger.INSTANCE.d(M_BUS + "OchBusOrderModel ="," functionDemoModeChange ="+mCurrentStation); +// CallerLogger.INSTANCE.d(M_BUS + "BusOrderModel ="," functionDemoModeChange ="+mCurrentStation); if (FunctionBuildConfig.isDemoMode - && ( - (mCurrentStation > 0 && mCurrentStation < mStationList.size() - 1) - || ( - (mCurrentStation == 0 || mCurrentStation == mStationList.size() - 1) - && OchBusOrderModel.getInstance().isGoingToNextStation() - ) - ) - ) { - mView.onAutopilotStatusChanged(IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING, false); + && ((mCurrentStation > 0 && mCurrentStation < mStationList.size() - 1) + || ((mCurrentStation == 0 || mCurrentStation == mStationList.size() - 1) + && BusOrderModel.getInstance().isGoingToNextStation()))) { + runOnUIThread(() -> mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING, false)); } } @Override public void hideSlidePanel() { if (mView != null) { - mView.hideSlidePanel(); + runOnUIThread(() -> mView.hideSlidePanel()); } } @Override public void onAutopilotArriveAtStation(MessagePad.ArrivalNotification arrivalNotification) { - OchBusOrderModel.getInstance().onArriveAt(arrivalNotification); + BusOrderModel.getInstance().onArriveAt(arrivalNotification); } @Override @@ -168,24 +165,24 @@ public class OchBusPresenter extends Presenter } currentAutopilotStatus = IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE; // 设置UI【自动驾驶】按钮是否展示 - mView.onAutopilotEnableChange(true); - if (OchBusOrderModel.getInstance().isGoingToNextStation()) { - mView.hideSlidePanel(); + runOnUIThread(() -> mView.onAutopilotEnableChange(true)); + if (BusOrderModel.getInstance().isGoingToNextStation()) { + runOnUIThread(() -> mView.hideSlidePanel()); } if (FunctionBuildConfig.isDemoMode && ( (mCurrentStation > 0 && mCurrentStation < mStationList.size() - 1) || ( (mCurrentStation == 0 || mCurrentStation == mStationList.size() - 1) - && OchBusOrderModel.getInstance().isGoingToNextStation() + && BusOrderModel.getInstance().isGoingToNextStation() ) ) ) { - CallerLogger.INSTANCE.d(M_BUS + "OchBusOrderModel=", "有美化功能"); + CallerLogger.INSTANCE.d(M_BUS + "BusOrderModel=", "有美化功能"); return; } // 改变UI自动驾驶状态 - mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning); + runOnUIThread(() -> mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning)); } break; case IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING: @@ -193,8 +190,8 @@ public class OchBusPresenter extends Presenter if (currentAutopilotStatus != IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { currentAutopilotStatus = IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING; // 改变UI自动驾驶状态 - mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning); - OchBusOrderModel.getInstance().triggerStartServiceEvent(true); + runOnUIThread(() -> mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning)); + BusOrderModel.getInstance().triggerStartServiceEvent(true); } isAnimateRunning = false; break; @@ -209,20 +206,22 @@ public class OchBusPresenter extends Presenter (mCurrentStation > 0 && mCurrentStation < mStationList.size() - 1) || ( (mCurrentStation == 0 || mCurrentStation == mStationList.size() - 1) - && OchBusOrderModel.getInstance().isGoingToNextStation() + && BusOrderModel.getInstance().isGoingToNextStation() ) ) ) { - CallerLogger.INSTANCE.d(M_BUS + "OchBusOrderModel=", "有美化功能"); + CallerLogger.INSTANCE.d(M_BUS + "BusOrderModel=", "有美化功能"); return; } - mView.onAutopilotEnableChange(false); - mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning); + runOnUIThread(() -> { + mView.onAutopilotEnableChange(false); + mView.onAutopilotStatusChanged(currentAutopilotStatus, isAnimateRunning); + }); } isAnimateRunning = false; break; default: - mView.onAutopilotEnableChange(false); + runOnUIThread(() -> mView.onAutopilotEnableChange(false)); break; } } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusLinePresenter.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusLinePresenter.java deleted file mode 100644 index de2289284a..0000000000 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/presenter/OchBusLinePresenter.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.mogo.och.bus.presenter; - -import androidx.annotation.NonNull; -import androidx.lifecycle.LifecycleOwner; - -import com.mogo.commons.mvp.Presenter; -import com.mogo.och.bus.bean.BusQueryLinesResponse; -import com.mogo.och.bus.callback.BusLinesCallback; -import com.mogo.och.bus.ui.BusSwitchLineActivity; -import com.mogo.och.bus.ui.BusSwitchLineView; - -/** - * @author: wangmingjun - * @date: 2022/2/9 - */ -public class OchBusLinePresenter extends Presenter implements BusLinesCallback { - - public OchBusLinePresenter(BusSwitchLineView view) { - super(view); - OchBusLineModel.getInstance().init(); - OchBusOrderModel.getInstance().init(); - } - - @Override - public void onCreate(@NonNull LifecycleOwner owner) { - super.onCreate(owner); - initListener(); - } - - private void initListener() { - OchBusLineModel.getInstance().setBusLinesCallback(this); - } - - @Override - public void onBusLinesChange(BusQueryLinesResponse lines) { - mView.onBusLinesChange(lines); - } - - @Override - public void onChangeLineIdSuccess() { - mView.onChangeLineIdSuccess(); - } - - public void queryBusLines(){ - OchBusLineModel.getInstance().queryBusLines(); - } - - public void commitSwitchLineId(int lineId){ - OchBusLineModel.getInstance().commitSwitchLineId(lineId); - } - - public void queryBusRoutes(){ - OchBusOrderModel.getInstance().queryBusRoutes(); - } - - @Override - public void onDestroy(@NonNull LifecycleOwner owner) { - super.onDestroy(owner); - OchBusLineModel.getInstance().setBusLinesCallback(null); - } -} diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/receiver/TestOchBusBroadcastReceiver.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/receiver/TestBusBroadcastReceiver.java similarity index 73% rename from OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/receiver/TestOchBusBroadcastReceiver.java rename to OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/receiver/TestBusBroadcastReceiver.java index 92cf8694ad..b9ffc6d492 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/receiver/TestOchBusBroadcastReceiver.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/receiver/TestBusBroadcastReceiver.java @@ -7,7 +7,7 @@ import android.content.Context; import android.content.Intent; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.och.bus.constant.OchBusConst; +import com.mogo.och.bus.constant.BusConst; /** * 测试小巴车的场景 @@ -15,8 +15,8 @@ import com.mogo.och.bus.constant.OchBusConst; * @author donghongyu * @date 4/26/21 12:08 PM */ -public class TestOchBusBroadcastReceiver extends BroadcastReceiver { - private static final String TAG = "TestOchBusBroadcastReceiver"; +public class TestBusBroadcastReceiver extends BroadcastReceiver { + private static final String TAG = "TestBusBroadcastReceiver"; private Context mContext; @@ -24,7 +24,7 @@ public class TestOchBusBroadcastReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { try { this.mContext = context; - int sceneType = intent.getIntExtra(OchBusConst.BROADCAST_TEST_BUS_CONTROL_TYPE_EXTRA_KEY, 0); + int sceneType = intent.getIntExtra(BusConst.BROADCAST_TEST_BUS_CONTROL_TYPE_EXTRA_KEY, 0); CallerLogger.INSTANCE.d(M_BUS + TAG, "sceneType:" + sceneType); // 分发场景 diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.java index 6dc465f911..1c772f89d2 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusSwitchLineActivity.java @@ -23,7 +23,7 @@ import com.mogo.commons.mvp.MvpActivity; import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import com.mogo.och.bus.R; import com.mogo.och.bus.bean.BusQueryLinesResponse; -import com.mogo.och.bus.presenter.OchBusLinePresenter; +import com.mogo.och.bus.presenter.BusLinePresenter; import java.util.ArrayList; import java.util.List; @@ -32,7 +32,7 @@ import java.util.List; * @author: wangmingjun * @date: 2022/2/8 */ -public class BusSwitchLineActivity extends MvpActivity +public class BusSwitchLineActivity extends MvpActivity implements View.OnClickListener, BusSwitchLineView { private ImageView mClose; @@ -50,8 +50,8 @@ public class BusSwitchLineActivity extends MvpActivity params = new HashMap<>(); - params.put(OchBusConst.EVENT_PARAM_SN, sn); - params.put(OchBusConst.EVENT_PARAM_PLATE_NUM, TextUtils.isEmpty(plateNum) ? "" : plateNum); - params.put(OchBusConst.EVENT_PARAM_ENV_ONLINE, + params.put(BusConst.EVENT_PARAM_SN, sn); + params.put(BusConst.EVENT_PARAM_PLATE_NUM, TextUtils.isEmpty(plateNum) ? "" : plateNum); + params.put(BusConst.EVENT_PARAM_ENV_ONLINE, DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE ? true : false); - params.put(OchBusConst.EVENT_PARAM_TIME, dateTime); - params.put(OchBusConst.EVENT_PARAM_START_NAME, startName); - params.put(OchBusConst.EVENT_PARAM_END_NAME, endName); - params.put(OchBusConst.EVENT_PARAM_LINE_ID, lineId); + params.put(BusConst.EVENT_PARAM_TIME, dateTime); + params.put(BusConst.EVENT_PARAM_START_NAME, startName); + params.put(BusConst.EVENT_PARAM_END_NAME, endName); + params.put(BusConst.EVENT_PARAM_LINE_ID, lineId); Runnable runnable = () -> { // 15s内未开启,上报失败埋点 - params.put(OchBusConst.EVENT_PARAM_START_RESULT, false); - AnalyticsManager.INSTANCE.track(OchBusConst.EVENT_KEY_START_SERVICE, params); + params.put(BusConst.EVENT_PARAM_START_RESULT, false); + AnalyticsManager.INSTANCE.track(BusConst.EVENT_KEY_START_SERVICE, params); }; if (send) { @@ -54,10 +54,10 @@ public class OchBusAnalyticsUtil { if (runnable != null && UiThreadHandler.getsUiHandler().hasCallbacks(runnable)) { UiThreadHandler.removeCallbacks(runnable); } - params.put(OchBusConst.EVENT_PARAM_START_RESULT, true); - AnalyticsManager.INSTANCE.track(OchBusConst.EVENT_KEY_START_SERVICE, params); + params.put(BusConst.EVENT_PARAM_START_RESULT, true); + AnalyticsManager.INSTANCE.track(BusConst.EVENT_KEY_START_SERVICE, params); } else { - UiThreadHandler.postDelayed(runnable, OchBusConst.LOOP_PERIOD_15S); + UiThreadHandler.postDelayed(runnable, BusConst.LOOP_PERIOD_15S); } } } diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java index 4b10e44624..91ad233a8d 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/model/TaxiPassengerModel.java @@ -6,6 +6,7 @@ import android.location.Location; import android.net.ConnectivityManager; import android.os.Looper; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.amap.api.maps.model.LatLng; @@ -14,7 +15,6 @@ import com.elegant.network.utils.GsonUtil; import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.debug.DebugConfig; -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPlanningListener; @@ -556,6 +556,11 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback private final IMoGoAutopilotPlanningListener moGoAutopilotPlanningListener = new IMoGoAutopilotPlanningListener(){ + @Override + public void onAutopilotTrajectory(@NonNull List trajectoryInfos) { + + } + @Override public void onAutopilotRotting(@Nullable MessagePad.GlobalPathResp routeList) { if (null != routeList && routeList.getWayPointsList().size() > 0){ @@ -564,11 +569,6 @@ public class TaxiPassengerModel implements IOCHTaxiPassengerNaviChangedCallback } } - @Override - public void onAutopilotTrajectory(ArrayList trajectoryInfos) { - - } - }; /** diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.java index 3b670315d9..92f9623830 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/presenter/BaseTaxiPassengerPresenter.java @@ -94,17 +94,20 @@ public class BaseTaxiPassengerPresenter extends Presenter mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE)); } @Override public void onAutopilotDisable() { - mView.onAutopilotStatusChanged(IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE); + runOnUIThread(() -> mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE)); } @Override public void onAutopilotRunning() { - mView.onAutopilotStatusChanged(IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING); + runOnUIThread(() -> mView.onAutopilotStatusChanged( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING)); } @Override @@ -141,25 +144,29 @@ public class BaseTaxiPassengerPresenter extends Presenter { + mView.showOrHideServingOrderFragment(false); + mView.showOrHideArrivedEndLayout(false, ""); + }); mCurrentPassengerOrder = null; return; } diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerMapDirectionView.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerMapDirectionView.java index 940d814ba7..0de3dd3cbc 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerMapDirectionView.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerMapDirectionView.java @@ -182,7 +182,7 @@ public class TaxiPassengerMapDirectionView //更新车辆位置 if (mCarMarker != null) { CallerLogger.INSTANCE.d(M_TAXI_P + TAG, "location.getBearing() = " + location.getBearing()); - mCarMarker.setRotateAngle(location.getBearing()); + mCarMarker.setRotateAngle(360 - location.getBearing()); mCarMarker.setPosition(currentLatLng); mCarMarker.setToTop(); } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/OCHTaxiOverlayManager.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiOverlayManager.java similarity index 96% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/OCHTaxiOverlayManager.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiOverlayManager.java index 102212c192..096e6c7c04 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/OCHTaxiOverlayManager.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiOverlayManager.java @@ -14,7 +14,7 @@ import com.mogo.module.common.MogoApisHandler; import java.util.ArrayList; import java.util.List; -public class OCHTaxiOverlayManager { +public class TaxiOverlayManager { private IMogoPolyline mMoGoPolyline; @@ -26,7 +26,7 @@ public class OCHTaxiOverlayManager { private List mPolylineColors; private Context mContext; IMogoOverlayManager mogoOverlayManager; - public OCHTaxiOverlayManager(Context context) { + public TaxiOverlayManager(Context context) { mPolylineOptions = new MogoPolylineOptions(); // 绘制路径集合 mPolylinePointList = new ArrayList<>(); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxi.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java similarity index 89% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxi.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java index 52359ab13e..c926c94b65 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/MogoOCHTaxi.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/TaxiProvider.java @@ -12,8 +12,8 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.map.MogoMapUIController; import com.mogo.module.common.MogoApisHandler; -import com.mogo.och.taxi.constant.OCHTaxiConst; -import com.mogo.och.taxi.ui.OCHTaxiFragment; +import com.mogo.och.taxi.constant.TaxiConst; +import com.mogo.och.taxi.ui.TaxiFragment; import com.mogo.service.statusmanager.IMogoStatusChangedListener; import com.mogo.service.statusmanager.StatusDescriptor; @@ -27,11 +27,11 @@ public *

* 网约车-出租车 */ -@Route( path = OCHTaxiConst.PATH ) -class MogoOCHTaxi implements IMogoOCH , IMogoStatusChangedListener { +@Route( path = TaxiConst.PATH ) +class TaxiProvider implements IMogoOCH , IMogoStatusChangedListener { - private static final String TAG = "MogoOCHTaxi"; - private OCHTaxiFragment ochTaxiFragment; + private static final String TAG = "TaxiProvider"; + private TaxiFragment ochTaxiFragment; private FragmentActivity mActivity; private int mContainerId; @Override @@ -52,7 +52,7 @@ class MogoOCHTaxi implements IMogoOCH , IMogoStatusChangedListener { private void showFragment() { if (ochTaxiFragment == null) { CallerLogger.INSTANCE.d(M_TAXI + TAG, "准备add fragment======"); - ochTaxiFragment = new OCHTaxiFragment(); + ochTaxiFragment = new TaxiFragment(); mActivity.getSupportFragmentManager().beginTransaction().add(mContainerId, ochTaxiFragment).commitAllowingStateLoss(); return; } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java index b95cb5c3da..d82de2425e 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/bean/CarHeartbeatReqBean.java @@ -1,6 +1,6 @@ package com.mogo.och.taxi.bean; -import com.mogo.och.taxi.constant.OCHTaxiConst; +import com.mogo.och.taxi.constant.TaxiConst; import java.util.UUID; @@ -21,6 +21,6 @@ public class CarHeartbeatReqBean { this.lon = lon; this.lat = lat; this.msgId = UUID.randomUUID().toString(); - this.interval = (int) (OCHTaxiConst.LOOP_PERIOD_60S / 1000); + this.interval = (int) (TaxiConst.LOOP_PERIOD_60S / 1000); } } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/Shadow.kt b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IShadow.kt similarity index 66% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/Shadow.kt rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IShadow.kt index 59c9d02eba..1bf997c223 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/Shadow.kt +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IShadow.kt @@ -6,36 +6,36 @@ import androidx.annotation.ColorRes * @author: wangmingjun * @date: 2022/1/21 */ -interface Shadow { +interface IShadow { //设置阴影半径 - fun setShadowRadius(radius:Float):Shadow + fun setShadowRadius(radius:Float):IShadow //添加单位设置 - fun setShadowRadius(unit:Int,radius: Float):Shadow + fun setShadowRadius(unit:Int,radius: Float):IShadow //设置应用颜色 - fun setShadowColor(color:Int):Shadow + fun setShadowColor(color:Int):IShadow //设置阴影颜色资源文件id - fun setShadowColorRes(@ColorRes color: Int):Shadow + fun setShadowColorRes(@ColorRes color: Int):IShadow /** * 设置模糊半径 * @param radius */ - fun setBlurRadius(radius:Float):Shadow + fun setBlurRadius(radius:Float):IShadow /** * * @param unit @{@link android.util.TypedValue#TYPE_DIMENSION} * @param radius 模糊半径 */ - fun setBlurRadius(unit:Int,radius:Float):Shadow + fun setBlurRadius(unit:Int,radius:Float):IShadow /** * 设置水平方向的偏移量 * @param offset x轴偏移 */ - fun setXOffset(offset:Float):Shadow + fun setXOffset(offset:Float):IShadow /** @@ -43,20 +43,20 @@ interface Shadow { * @param unit @{@link android.util.TypedValue#TYPE_DIMENSION} * @param offset x轴偏移 */ - fun setXOffset(unit:Int,offset:Float):Shadow + fun setXOffset(unit:Int,offset:Float):IShadow /** * 设置竖直方向的偏移量 * @param offset y轴偏移 */ - fun setYOffset(offset:Float):Shadow + fun setYOffset(offset:Float):IShadow /** * 设置竖直方向的偏移量,带单位 * @param unit @{@link android.util.TypedValue#TYPE_DIMENSION} * @param offset y轴偏移 */ - fun setYOffset(unit:Int,offset:Float):Shadow + fun setYOffset(unit:Int,offset:Float):IShadow /** * 更新绘制 diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiADASStatusCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiADASStatusCallback.java similarity index 90% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiADASStatusCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiADASStatusCallback.java index 0b8b59420c..278b1ac9dc 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiADASStatusCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiADASStatusCallback.java @@ -5,7 +5,7 @@ package com.mogo.och.taxi.callback; * * Model->Presenter回调:ADAS相关(自动驾驶状态回调,到达终点等等) */ -public interface IOCHTaxiADASStatusCallback { +public interface ITaxiADASStatusCallback { // 自动驾驶触发的已到达目的地:暂未用到 void onAutopilotArriveEnd(); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiAutopilotPlanningCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiAutopilotPlanningCallback.java similarity index 79% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiAutopilotPlanningCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiAutopilotPlanningCallback.java index 9d5760ca70..32226d2dd4 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiAutopilotPlanningCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiAutopilotPlanningCallback.java @@ -9,6 +9,6 @@ import mogo.telematics.pad.MessagePad; * @author: wangmingjun * @date: 2021/11/1 */ -public interface IOCHTaxiAutopilotPlanningCallback { +public interface ITaxiAutopilotPlanningCallback { void routeResult(List models); } \ No newline at end of file diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiCarStatusCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiCarStatusCallback.java similarity index 85% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiCarStatusCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiCarStatusCallback.java index 9763d6414d..531a6e1cf6 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiCarStatusCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiCarStatusCallback.java @@ -5,7 +5,7 @@ package com.mogo.och.taxi.callback; * * Model->Presenter回调:出车/收车状态变更 */ -public interface IOCHTaxiCarStatusCallback { +public interface ITaxiCarStatusCallback { void onCarStatusChanged(boolean inOperation,String role); void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiControllerStatusCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiControllerStatusCallback.java similarity index 87% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiControllerStatusCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiControllerStatusCallback.java index f4fce22cc1..ad3229062c 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiControllerStatusCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiControllerStatusCallback.java @@ -7,7 +7,7 @@ import android.location.Location; * * Model->Presenter回调:状态控制器监听(accOn、adas ui show、voice ui show、push ui show、v2x ui show等等) */ -public interface IOCHTaxiControllerStatusCallback { +public interface ITaxiControllerStatusCallback { // 是否vr map模式 void onVRModeChanged(boolean isVRMode); // 自车定位 diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiNaviChangedCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiNaviChangedCallback.java similarity index 86% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiNaviChangedCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiNaviChangedCallback.java index cc3117acc7..138de6b9b1 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiNaviChangedCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiNaviChangedCallback.java @@ -4,7 +4,7 @@ package com.mogo.och.taxi.callback; * @author: wangmingjun * @date: 2021/12/3 */ -public interface IOCHTaxiNaviChangedCallback { +public interface ITaxiNaviChangedCallback { // 当前位置距离上车点的距离(米)、预估时间(秒) void onCurrentNaviDistAndTimeChanged(int meters, long timeInSecond); void reInitNaviAmap(boolean isPlay,boolean isRestart); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiOrderStatusCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiOrderStatusCallback.java similarity index 97% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiOrderStatusCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiOrderStatusCallback.java index 70ee58527c..b4dd23a2eb 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/IOCHTaxiOrderStatusCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/callback/ITaxiOrderStatusCallback.java @@ -12,7 +12,7 @@ import java.util.List; * * Model->Presenter回调:订单相关(进行中/待服务单变更,当前进行单状态变更,新到预约单,抢单,抢单结果状态等等) */ -public interface IOCHTaxiOrderStatusCallback { +public interface ITaxiOrderStatusCallback { // 进行中单变更:暂未用到 void onOrdersInServiceChanged(@NonNull List inServiceList); // 待服务单变更 diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OCHTaxiConst.kt b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt similarity index 99% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OCHTaxiConst.kt rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt index 9102614a1f..bb1fffec68 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OCHTaxiConst.kt +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiConst.kt @@ -5,7 +5,7 @@ import com.mogo.commons.debug.DebugConfig /** * Created on 2021/12/6 */ -class OCHTaxiConst { +class TaxiConst { companion object { private const val BASE_URL_OCH_DEV = "http://tech-dev.zhidaohulian.com" diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/DriverRoleEnum.kt b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiDriverRoleEnum.kt similarity index 75% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/DriverRoleEnum.kt rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiDriverRoleEnum.kt index 3f81dba2fc..07572efcd4 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/DriverRoleEnum.kt +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiDriverRoleEnum.kt @@ -4,7 +4,7 @@ package com.mogo.och.taxi.constant * Created on 2021/12/7 * 1 运营, 2 测试, 3演示 */ -enum class DriverRoleEnum(val code: Int) { +enum class TaxiDriverRoleEnum(val code: Int) { OPERATION( 1), TEST( 2), DEMO( 3); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderCancelReasons.kt b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderCancelReasons.kt similarity index 94% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderCancelReasons.kt rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderCancelReasons.kt index 060e152a83..be9f951a93 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderCancelReasons.kt +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderCancelReasons.kt @@ -20,7 +20,7 @@ package com.mogo.och.taxi.constant * 2003 车电量不足 * 2004 其他 */ -enum class OrderCancelReasons(val type: Int, val msg: String) { +enum class TaxiOrderCancelReasons(val type: Int, val msg: String) { CarBroken(1000, "车况异常"), DeviceBroken(1001, "设备异常"), BatteryLow(1002, "电量不足"), diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderStatusEnum.kt b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderStatusEnum.kt similarity index 90% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderStatusEnum.kt rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderStatusEnum.kt index b84cd602c5..1f703d0f2a 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderStatusEnum.kt +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderStatusEnum.kt @@ -23,7 +23,7 @@ package com.mogo.och.taxi.constant * 60 已完成, * 70 已取消 */ -enum class OrderStatusEnum(val code: Int) { +enum class TaxiOrderStatusEnum(val code: Int) { None( 0 ), OnTheWayToStart( 10), ArriveAtStart( 20), @@ -35,7 +35,7 @@ enum class OrderStatusEnum(val code: Int) { companion object { @JvmStatic - fun valueOf(code: Int): OrderStatusEnum? { + fun valueOf(code: Int): TaxiOrderStatusEnum? { for (value in values()) { if (value.code == code) { return value diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderTypeEnum.kt b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderTypeEnum.kt similarity index 77% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderTypeEnum.kt rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderTypeEnum.kt index 97ffeb20e1..34b09c6cc7 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/OrderTypeEnum.kt +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/constant/TaxiOrderTypeEnum.kt @@ -5,7 +5,7 @@ package com.mogo.och.taxi.constant * * Created on 2021/12/6 */ -enum class OrderTypeEnum(val type: Int) { +enum class TaxiOrderTypeEnum(val type: Int) { Instant(1), // 即时单 Reserved(2) // 预约单 } \ No newline at end of file diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/NaviToDestinationModel.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/NaviToDestinationModel.java index d362461175..5de88ce119 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/NaviToDestinationModel.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/NaviToDestinationModel.java @@ -27,7 +27,7 @@ import com.autonavi.tbt.TrafficFacilityInfo; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import com.mogo.eagle.core.utilcode.util.NetworkUtils; -import com.mogo.och.taxi.callback.IOCHTaxiNaviChangedCallback; +import com.mogo.och.taxi.callback.ITaxiNaviChangedCallback; import com.mogo.och.taxi.utils.PermissionUtil; import java.util.ArrayList; @@ -44,7 +44,7 @@ public class NaviToDestinationModel implements AMapNaviListener { protected final List sList = new ArrayList(); protected final List eList = new ArrayList(); protected List mWayPointList = new ArrayList(); - private IOCHTaxiNaviChangedCallback mNaviChangedCallback; + private ITaxiNaviChangedCallback mNaviChangedCallback; private AtomicInteger errorCount = new AtomicInteger(0); private boolean isPlay; public static NaviToDestinationModel getInstance(Context context) { @@ -92,7 +92,7 @@ public class NaviToDestinationModel implements AMapNaviListener { } } - public void setOCHTaciNaviChangedCallback(IOCHTaxiNaviChangedCallback callback){ + public void setOCHTaciNaviChangedCallback(ITaxiNaviChangedCallback callback){ this.mNaviChangedCallback = callback; } @Override diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/MogoOCHTaxiModelNew.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java similarity index 85% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/MogoOCHTaxiModelNew.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java index cdcb22cea9..9ddc43412d 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/MogoOCHTaxiModelNew.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModel.java @@ -7,6 +7,7 @@ import android.content.Intent; import android.location.Location; import android.net.ConnectivityManager; +import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.amap.api.maps.model.LatLng; @@ -15,7 +16,6 @@ import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; import com.mogo.cloud.commons.utils.CoordinateUtils; import com.mogo.commons.debug.DebugConfig; import com.mogo.eagle.core.data.BaseData; -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; @@ -42,18 +42,18 @@ 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.callback.IOCHTaxiADASStatusCallback; -import com.mogo.och.taxi.callback.IOCHTaxiCarStatusCallback; -import com.mogo.och.taxi.callback.IOCHTaxiControllerStatusCallback; -import com.mogo.och.taxi.callback.IOCHTaxiOrderStatusCallback; -import com.mogo.och.taxi.constant.DriverRoleEnum; -import com.mogo.och.taxi.constant.OCHTaxiConst; -import com.mogo.och.taxi.constant.OrderStatusEnum; -import com.mogo.och.taxi.constant.OrderTypeEnum; -import com.mogo.och.taxi.network.OCHTaxiServiceCallback; -import com.mogo.och.taxi.network.OCHTaxiServiceManagerNew; +import com.mogo.och.taxi.callback.ITaxiADASStatusCallback; +import com.mogo.och.taxi.callback.ITaxiCarStatusCallback; +import com.mogo.och.taxi.callback.ITaxiControllerStatusCallback; +import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; +import com.mogo.och.taxi.constant.TaxiDriverRoleEnum; +import com.mogo.och.taxi.constant.TaxiConst; +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; +import com.mogo.och.taxi.constant.TaxiOrderTypeEnum; +import com.mogo.och.taxi.network.TaxiServiceCallback; +import com.mogo.och.taxi.network.TaxiServiceManager; import com.mogo.och.taxi.utils.CoordinateCalculateRouteUtil; -import com.mogo.och.taxi.utils.OchTaxiAnalyticsUtil; +import com.mogo.och.taxi.utils.TaxiAnalyticsUtil; import com.mogo.och.taxi.utils.OrderUtil; import com.mogo.och.taxi.utils.PinYinUtil; import com.mogo.aicloud.services.socket.IMogoLifecycleListener; @@ -79,15 +79,15 @@ import mogo_msg.MogoReportMsg; *

* 网约车 - 出租车业务逻辑处理 */ -public class MogoOCHTaxiModelNew { +public class TaxiModel { - private static final String TAG = MogoOCHTaxiModelNew.class.getSimpleName(); + private static final String TAG = TaxiModel.class.getSimpleName(); private static final class SingletonHolder { - private static final MogoOCHTaxiModelNew INSTANCE = new MogoOCHTaxiModelNew(); + private static final TaxiModel INSTANCE = new TaxiModel(); } - public static MogoOCHTaxiModelNew getInstance() { + public static TaxiModel getInstance() { return SingletonHolder.INSTANCE; } @@ -100,31 +100,31 @@ public class MogoOCHTaxiModelNew { private volatile List mInServiceList = Collections.emptyList(); //进行中订单 private volatile List mWaitServiceList = Collections.emptyList(); //待服务订单 - private IOCHTaxiADASStatusCallback mADASStatusCallback; //Model->Presenter:自动驾驶状态相关 - private IOCHTaxiCarStatusCallback mCarStatusCallback; //Model->Presenter:出车/收车状态 - private IOCHTaxiControllerStatusCallback mControllerStatusCallback; //Model->Presenter:VR mode等 - private IOCHTaxiOrderStatusCallback mOrderStatusCallback; //Model->Presenter:订单变更 + private ITaxiADASStatusCallback mADASStatusCallback; //Model->Presenter:自动驾驶状态相关 + private ITaxiCarStatusCallback mCarStatusCallback; //Model->Presenter:出车/收车状态 + private ITaxiControllerStatusCallback mControllerStatusCallback; //Model->Presenter:VR mode等 + private ITaxiOrderStatusCallback mOrderStatusCallback; //Model->Presenter:订单变更 private List mRoutePoints = new ArrayList<>(); private double mLongitude, mLatitude; - private MogoOCHTaxiModelNew() { + private TaxiModel() { } - public void setADASStatusCallback(IOCHTaxiADASStatusCallback callback) { + public void setADASStatusCallback(ITaxiADASStatusCallback callback) { this.mADASStatusCallback = callback; } - public void setCarStatusCallback(IOCHTaxiCarStatusCallback callback) { + public void setCarStatusCallback(ITaxiCarStatusCallback callback) { this.mCarStatusCallback = callback; } - public void setControllerStatusCallback(IOCHTaxiControllerStatusCallback callback) { + public void setControllerStatusCallback(ITaxiControllerStatusCallback callback) { this.mControllerStatusCallback = callback; } - public void setOrderStatusCallback(IOCHTaxiOrderStatusCallback callback) { + public void setOrderStatusCallback(ITaxiOrderStatusCallback callback) { this.mOrderStatusCallback = callback; } @@ -240,20 +240,20 @@ public class MogoOCHTaxiModelNew { private void startOrStopOrderLoop(boolean start) { CallerLogger.INSTANCE.d(M_TAXI + TAG, "startOrStopOrderLoop() " + start); if (start) { - OCHTaxiModelLoopManager.getInstance().startInAndWaitOrdersLoop(); - OCHTaxiModelLoopManager.getInstance().startNewBookingOrderLoop(); - OCHTaxiModelLoopManager.getInstance().startHeartbeatLoop(); + TaxiModelLoopManager.getInstance().startInAndWaitOrdersLoop(); + TaxiModelLoopManager.getInstance().startNewBookingOrderLoop(); + TaxiModelLoopManager.getInstance().startHeartbeatLoop(); } else { - OCHTaxiModelLoopManager.getInstance().stopInAndWaitOrdersLoop(); - OCHTaxiModelLoopManager.getInstance().stopNewBookingOrderLoop(); - OCHTaxiModelLoopManager.getInstance().stopHeartbeatLoop(); + TaxiModelLoopManager.getInstance().stopInAndWaitOrdersLoop(); + TaxiModelLoopManager.getInstance().stopNewBookingOrderLoop(); + TaxiModelLoopManager.getInstance().stopHeartbeatLoop(); } } //查询出车/收车状态 public void queryCarStatus() { - OCHTaxiServiceManagerNew.getInstance().queryDriverServiceStatus(mContext, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryDriverServiceStatus(mContext, + new TaxiServiceCallback() { @Override public void onSuccess(DriverStatusQueryRespBean data) { if (null != data && 0 == data.code) { @@ -262,10 +262,10 @@ public class MogoOCHTaxiModelNew { CallerLogger.INSTANCE.d(M_TAXI + TAG, "changeCarStatus:" + mOCHCarStatus); // startOrStopOrderLoop(mOCHCarStatus == 1); todo 只从一个入口开始订单轮询 String role = ""; - if (DriverRoleEnum.DEMO.getCode() == data.data.purpose){ - role = OCHTaxiConst.DEMO_USER; - }else if (DriverRoleEnum.TEST.getCode() == data.data.purpose){ - role = OCHTaxiConst.TEST_USER; + if (TaxiDriverRoleEnum.DEMO.getCode() == data.data.purpose){ + role = TaxiConst.DEMO_USER; + }else if (TaxiDriverRoleEnum.TEST.getCode() == data.data.purpose){ + role = TaxiConst.TEST_USER; } if (mCarStatusCallback != null) { mCarStatusCallback.onCarStatusChanged(mOCHCarStatus == 1 , role); @@ -294,8 +294,8 @@ public class MogoOCHTaxiModelNew { return; } final int status = mOCHCarStatus == 1 ? 0 : 1; - OCHTaxiServiceManagerNew.getInstance().updateDriverServiceStatus(mContext, status, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().updateDriverServiceStatus(mContext, status, + new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { if (null != data && 0 == data.code) { @@ -325,8 +325,8 @@ public class MogoOCHTaxiModelNew { * 才更新最新进行中单到本地 */ public void queryInAndWaitOrders() { - OCHTaxiServiceManagerNew.getInstance().queryOrdersInAndWaitService(mContext, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrdersInAndWaitService(mContext, + new TaxiServiceCallback() { @Override public void onSuccess(OrdersInServiceQueryRespBean data) { if (data == null || data.data == null) { @@ -399,15 +399,15 @@ public class MogoOCHTaxiModelNew { return; } final String orderNo = mCurrentOCHOrder.orderNo; - OCHTaxiServiceManagerNew.getInstance().queryOrderById(mContext, orderNo, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrderById(mContext, orderNo, + new TaxiServiceCallback() { @Override public void onSuccess(OrderQueryRespBean data) { if (data != null && data.data != null && mCurrentOCHOrder != null && mCurrentOCHOrder.orderNo.equals(data.data.orderNo)) { - if (data.data.orderStatus == OrderStatusEnum.Cancel.getCode() - || data.data.orderStatus == OrderStatusEnum.JourneyCompleted.getCode() - || data.data.orderStatus == OrderStatusEnum.None.getCode()) { + if (data.data.orderStatus == TaxiOrderStatusEnum.Cancel.getCode() + || data.data.orderStatus == TaxiOrderStatusEnum.JourneyCompleted.getCode() + || data.data.orderStatus == TaxiOrderStatusEnum.None.getCode()) { clearCurrentOCHOrder(); cancelAutopilot(); } else { @@ -427,13 +427,13 @@ public class MogoOCHTaxiModelNew { } //更新当前订单状态 - public void updateOCHOrderStatus(final OrderStatusEnum orderStatus) { + public void updateOCHOrderStatus(final TaxiOrderStatusEnum orderStatus) { if (mCurrentOCHOrder == null) { return; } final String orderNo = mCurrentOCHOrder.orderNo; - OCHTaxiServiceManagerNew.getInstance().updateOrderStatus(mContext, orderNo, - orderStatus.getCode(), new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().updateOrderStatus(mContext, orderNo, + orderStatus.getCode(), new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { if (null != data && 0 == data.code @@ -466,8 +466,8 @@ public class MogoOCHTaxiModelNew { return; } final String orderNo = mCurrentOCHOrder.orderNo; - OCHTaxiServiceManagerNew.getInstance().cancelOrder(mContext, orderNo, reasonType, reason, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().cancelOrder(mContext, orderNo, reasonType, reason, + new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { if (null != data && 0 == data.code @@ -489,8 +489,8 @@ public class MogoOCHTaxiModelNew { // 取消待服务中订单 public void cancelOrderById(final String orderNo, int reasonType, String reason) { - OCHTaxiServiceManagerNew.getInstance().cancelOrder(mContext, orderNo, reasonType, reason, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().cancelOrder(mContext, orderNo, reasonType, reason, + new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { if (null != data && 0 == data.code) { @@ -513,8 +513,8 @@ public class MogoOCHTaxiModelNew { return; } final String orderNo = mCurrentOCHOrder.orderNo; - OCHTaxiServiceManagerNew.getInstance().queryOrderRouteInfo(mContext, orderNo, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrderRouteInfo(mContext, orderNo, + new TaxiServiceCallback() { @Override public void onSuccess(OrderQueryRouteInfoRespBean data) { if (null != data && 0 == data.code @@ -534,8 +534,8 @@ public class MogoOCHTaxiModelNew { // 获取全部订单列表 public void queryOrdersList(int page, int size) { - OCHTaxiServiceManagerNew.getInstance().queryOrdersList(mContext, page, size, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrdersList(mContext, page, size, + new TaxiServiceCallback() { @Override public void onSuccess(OrdersListQueryRespBean data) { if (null != data && 0 == data.code) { @@ -558,8 +558,8 @@ public class MogoOCHTaxiModelNew { * 注:只有在本地缓存mNewBookingOrder为null时(执行完抢单or司机关闭改单),才更新新到待抢单 */ public void queryNewBookingOrder() { - OCHTaxiServiceManagerNew.getInstance().queryNewBookingOrder(mContext, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryNewBookingOrder(mContext, + new TaxiServiceCallback() { @Override public void onSuccess(OrdersNewBookingQueryRespBean data) { if (data != null && data.code == 0 @@ -585,13 +585,13 @@ public class MogoOCHTaxiModelNew { // 仅限于获取到新待抢单且需要展示时查询该单信息:(queryOrderById接口可以查询属于该车的单、未派的单) private void queryNewBookingContent(final String orderNo) { - OCHTaxiServiceManagerNew.getInstance().queryOrderById(mContext, orderNo, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrderById(mContext, orderNo, + new TaxiServiceCallback() { @Override public void onSuccess(OrderQueryRespBean data) { if (data != null && data.code == 0 && data.data != null && data.data.orderNo.equals(orderNo) - && data.data.orderType == OrderTypeEnum.Reserved.getType()) { + && data.data.orderType == TaxiOrderTypeEnum.Reserved.getType()) { mNewBookingOrder = data.data; mPrevOrderNo = data.data.orderNo; if (mOrderStatusCallback != null) { @@ -616,15 +616,15 @@ public class MogoOCHTaxiModelNew { return; } final String orderNo = mNewBookingOrder.orderNo; - OCHTaxiServiceManagerNew.getInstance().grabOrder(mContext, orderNo, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().grabOrder(mContext, orderNo, + new TaxiServiceCallback() { @Override public void onSuccess(OrderGrabRespBean data) { if (data != null && data.code == 0 && mNewBookingOrder != null && mNewBookingOrder.orderNo.equals(orderNo)) { if (mOrderStatusCallback != null) { mOrderStatusCallback.onGrabOrderExecuteDone(); - OCHTaxiModelLoopManager.getInstance().startGrabResultLoop(); + TaxiModelLoopManager.getInstance().startGrabResultLoop(); } } } @@ -639,18 +639,18 @@ public class MogoOCHTaxiModelNew { // 查询抢单结果 public void queryOrderGrabStatus() { if (mNewBookingOrder == null) { - OCHTaxiModelLoopManager.getInstance().stopGrabResultLoop(); + TaxiModelLoopManager.getInstance().stopGrabResultLoop(); if (mOrderStatusCallback != null) { mOrderStatusCallback.onGrabOrderFailed(null); } return; } final String orderNo = mNewBookingOrder.orderNo; - OCHTaxiServiceManagerNew.getInstance().queryOrderGrabStatus(mContext, orderNo, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrderGrabStatus(mContext, orderNo, + new TaxiServiceCallback() { @Override public void onSuccess(OrderGrabStatusQueryRespBean data) { - //OCHTaxiModelLoopManager.getInstance().stopGrabResultLoop(); + //TaxiModelLoopManager.getInstance().stopGrabResultLoop(); if (data != null && data.code == 0 && mNewBookingOrder != null && mNewBookingOrder.orderNo.equals(orderNo)) { if (data.data.grabStatus == 0) { @@ -672,7 +672,7 @@ public class MogoOCHTaxiModelNew { mOrderStatusCallback.onGrabOrderFailed(null); } } - OCHTaxiModelLoopManager.getInstance().stopGrabResultLoop(); + TaxiModelLoopManager.getInstance().stopGrabResultLoop(); cancelNewBookingOrder(); } @@ -685,8 +685,8 @@ public class MogoOCHTaxiModelNew { // 车机端上传心跳数据(只在出车状态时上传) public void runCarHeartbeat() { - OCHTaxiServiceManagerNew.getInstance().runCarHeartbeat(mContext, mLongitude, mLatitude, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().runCarHeartbeat(mContext, mLongitude, mLatitude, + new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { @@ -701,8 +701,8 @@ public class MogoOCHTaxiModelNew { // 查询司机服务数据 public void queryDriverServiceData() { - OCHTaxiServiceManagerNew.getInstance().queryDriverServiceData(mContext, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryDriverServiceData(mContext, + new TaxiServiceCallback() { @Override public void onSuccess(DriverServiceDataRespBean data) { if (data != null && data.code == 0 @@ -732,12 +732,12 @@ public class MogoOCHTaxiModelNew { } // 获取当前订单状态 - public OrderStatusEnum getCurOrderStatus() { - OrderQueryRespBean.Result order = MogoOCHTaxiModelNew.getInstance().getCurrentOCHOrder(); + public TaxiOrderStatusEnum getCurOrderStatus() { + OrderQueryRespBean.Result order = TaxiModel.getInstance().getCurrentOCHOrder(); if (order == null) { - return OrderStatusEnum.None; + return TaxiOrderStatusEnum.None; } - return OrderStatusEnum.valueOf(order.orderStatus); + return TaxiOrderStatusEnum.valueOf(order.orderStatus); } //更新本地currentOrder信息,并保存订单到本地避免车机重启丢失数据 @@ -746,10 +746,10 @@ public class MogoOCHTaxiModelNew { return; } mCurrentOCHOrder = data; - SharedPrefsMgr.getInstance(mContext).putString(OCHTaxiConst.SP_KEY_OCH_TAXI_ORDER, + SharedPrefsMgr.getInstance(mContext).putString(TaxiConst.SP_KEY_OCH_TAXI_ORDER, GsonUtil.jsonFromObject(data)); if (FunctionBuildConfig.isDemoMode - && mCurrentOCHOrder.orderStatus == OrderStatusEnum.OnTheWayToEnd.getCode()) { + && mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { // 当美化模式(演示模式)开启时: 订单对应自动驾驶开启后,置true FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true; CallerLogger.INSTANCE.d(M_TAXI + TAG, "美化模式-ignore:置为true(更新本地order信息)"); @@ -759,7 +759,7 @@ public class MogoOCHTaxiModelNew { //清除订单信息 public void clearCurrentOCHOrder() { mCurrentOCHOrder = null; - SharedPrefsMgr.getInstance(mContext).remove(OCHTaxiConst.SP_KEY_OCH_TAXI_ORDER); + SharedPrefsMgr.getInstance(mContext).remove(TaxiConst.SP_KEY_OCH_TAXI_ORDER); if (FunctionBuildConfig.isDemoMode) { // 当美化模式(演示模式)开启时: 取消或订单已完成时,置false FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = false; @@ -807,7 +807,7 @@ public class MogoOCHTaxiModelNew { CallerLogger.INSTANCE.d(M_TAXI + TAG, "start autopilot with parameter: %s", GsonUtil.jsonFromObject(parameters) + " ,startSiteName=" + mCurrentOCHOrder.startSiteAddr + " ,endSiteName=" + mCurrentOCHOrder.endSiteAddr); - OchTaxiAnalyticsUtil.triggerStartServiceEvent(false, + TaxiAnalyticsUtil.triggerStartServiceEvent(false, mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, mCurrentOCHOrder.orderNo); if (DebugConfig.isDebug()) { @@ -840,7 +840,7 @@ public class MogoOCHTaxiModelNew { startLon, startLat, location.getLongitude(), location.getLatitude()); - if (DebugConfig.isDebug() && mCurrentOCHOrder.orderStatus == OrderStatusEnum.OnTheWayToStart.getCode()) { + if (DebugConfig.isDebug() && mCurrentOCHOrder.orderStatus == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { // TipToast.shortTip("距离上车点:" + Double.valueOf(distance).intValue()); } @@ -849,14 +849,14 @@ public class MogoOCHTaxiModelNew { // mOrderStatusCallback.onCurrentOrderDistToStartChanged((long) distance, 0); // } - if (distance > OCHTaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { + if (distance > TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { distance = CoordinateUtils.calculateLineDistance(startLon, startLat, CallerAutoPilotStatusListenerManager.INSTANCE.getCurWgs84Lon(), CallerAutoPilotStatusListenerManager.INSTANCE.getCurWgs84Lat()); } - if (distance <= OCHTaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { - updateOCHOrderStatus(OrderStatusEnum.ArriveAtStart); + if (distance <= TaxiConst.ARRIVE_AT_START_STATION_DISTANCE) { + updateOCHOrderStatus(TaxiOrderStatusEnum.ArriveAtStart); return; } } @@ -926,7 +926,7 @@ public class MogoOCHTaxiModelNew { public void onCarLocationChanged2(Location location) { //位置变化时,通过围栏判断是否到达x点 if (location != null && checkCurrentOCHOrder()) { - if (getCurOrderStatus() == OrderStatusEnum.OnTheWayToStart) { + if (getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToStart) { judgeStartStation(location); } // else if (getCurOrderStatus() == OrderStatusEnum.OnTheWayToEndStation) { @@ -946,20 +946,20 @@ public class MogoOCHTaxiModelNew { */ public void setArriveAtStartStation() { if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != OrderStatusEnum.OnTheWayToStart.getCode()) { + || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { TipToast.shortTip("订单状态不匹配该操作!"); return; } - updateOCHOrderStatus(OrderStatusEnum.ArriveAtStart); + updateOCHOrderStatus(TaxiOrderStatusEnum.ArriveAtStart); } public void setArriveAtEndStation() { if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != OrderStatusEnum.OnTheWayToEnd.getCode()) { + || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.OnTheWayToEnd.getCode()) { TipToast.shortTip("订单状态不匹配该操作!"); return; } - updateOCHOrderStatus(OrderStatusEnum.ArriveAtEnd); + updateOCHOrderStatus(TaxiOrderStatusEnum.ArriveAtEnd); } /** @@ -968,10 +968,10 @@ public class MogoOCHTaxiModelNew { public void setOnTheWayToEndStation() { if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotRunning(); if (mCurrentOCHOrder == null - || mCurrentOCHOrder.orderStatus != OrderStatusEnum.ArriveAtStart.getCode()) { + || mCurrentOCHOrder.orderStatus != TaxiOrderStatusEnum.ArriveAtStart.getCode()) { TipToast.shortTip("订单状态不匹配该操作!"); } - updateOCHOrderStatus(OrderStatusEnum.OnTheWayToEnd); + updateOCHOrderStatus(TaxiOrderStatusEnum.OnTheWayToEnd); } private final IMoGoAutopilotStatusListener mGoAutopilotStatusListener = new IMoGoAutopilotStatusListener() { @@ -989,13 +989,13 @@ public class MogoOCHTaxiModelNew { if (state == IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING) { if (mADASStatusCallback != null) mADASStatusCallback.onAutopilotRunning(); if (mCurrentOCHOrder != null - && getCurOrderStatus() == OrderStatusEnum.ArriveAtStart + && getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtStart && state != mPrevAPStatus) { // 当高频返回autopilot 2时,不重复调用订单状态变更 mPrevAPStatus = state; // 每个状态单独赋值,解决无订单时已经是2的状态导致的新订单来时无法进入此逻辑更新状态 - updateOCHOrderStatus(OrderStatusEnum.OnTheWayToEnd); + updateOCHOrderStatus(TaxiOrderStatusEnum.OnTheWayToEnd); - OchTaxiAnalyticsUtil.triggerStartServiceEvent(true, + TaxiAnalyticsUtil.triggerStartServiceEvent(true, mCurrentOCHOrder.startSiteAddr, mCurrentOCHOrder.endSiteAddr, mCurrentOCHOrder.orderNo); if (FunctionBuildConfig.isDemoMode) { @@ -1008,7 +1008,7 @@ public class MogoOCHTaxiModelNew { mPrevAPStatus = state; if (FunctionBuildConfig.isDemoMode && checkCurrentOCHOrder() - && getCurOrderStatus() == OrderStatusEnum.OnTheWayToEnd) { + && getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd) { // 当美化模式(演示模式)开启时:且有订单、且为去往目的地状态,维持自动驾驶icon开启状态 return; } @@ -1017,7 +1017,7 @@ public class MogoOCHTaxiModelNew { mPrevAPStatus = state; if (FunctionBuildConfig.isDemoMode && checkCurrentOCHOrder() - && getCurOrderStatus() == OrderStatusEnum.OnTheWayToEnd) { + && getCurOrderStatus() == TaxiOrderStatusEnum.OnTheWayToEnd) { // 当美化模式(演示模式)开启时:且有订单、且为去往目的地状态,维持自动驾驶icon开启状态 return; } @@ -1035,17 +1035,22 @@ public class MogoOCHTaxiModelNew { CallerLogger.INSTANCE.i(M_TAXI + TAG, "onAutopilotArriveAtStation = " + data.toString()); if (data == null || !checkCurrentOCHOrder() - || (getCurOrderStatus() == OrderStatusEnum.ArriveAtEnd)) { + || (getCurOrderStatus() == TaxiOrderStatusEnum.ArriveAtEnd)) { return; } if (DebugConfig.isDebug()) { // TipToast.shortTip("到达目的地"); } - updateOCHOrderStatus(OrderStatusEnum.ArriveAtEnd); + updateOCHOrderStatus(TaxiOrderStatusEnum.ArriveAtEnd); } }; private final IMoGoAutopilotPlanningListener moGoAutopilotPlanningListener = new IMoGoAutopilotPlanningListener() { + @Override + public void onAutopilotTrajectory(@NonNull List trajectoryInfos) { + + } + @Override public void onAutopilotRotting(MessagePad.GlobalPathResp routeList) { if (null != routeList && routeList.getWayPointsList().size() > 0){ @@ -1054,11 +1059,6 @@ public class MogoOCHTaxiModelNew { } } - @Override - public void onAutopilotTrajectory(ArrayList trajectoryInfos) { - - } - }; /** @@ -1069,8 +1069,8 @@ public class MogoOCHTaxiModelNew { if (null == mCurrentOCHOrder) return; List points = CoordinateCalculateRouteUtil.coordinateConverterWgsToGcjList(mContext,models); - OCHTaxiServiceManagerNew.getInstance().updateOrderRoute(mContext, mCurrentOCHOrder.orderNo - , points, new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().updateOrderRoute(mContext, mCurrentOCHOrder.orderNo + , points, new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { @@ -1125,7 +1125,7 @@ public class MogoOCHTaxiModelNew { lastSumLength = CoordinateCalculateRouteUtil.calculateRouteSumLength(lastPoints); } - double lastTime = lastSumLength / OCHTaxiConst.TAXI_AVERAGE_SPEED * 3.6 ; //秒 + double lastTime = lastSumLength / TaxiConst.TAXI_AVERAGE_SPEED * 3.6 ; //秒 Logger.d(M_TAXI + "dynamicCalculateRouteInfo" , "---lastSumLength: "+lastSumLength+"----lastTime : "+lastTime); @@ -1142,8 +1142,8 @@ public class MogoOCHTaxiModelNew { */ private void queryOrderRouteList(String orderNo) { if (mCurrentOCHOrder != null){ - OCHTaxiServiceManagerNew.getInstance().queryOrderRoute(mContext, orderNo, - new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().queryOrderRoute(mContext, orderNo, + new TaxiServiceCallback() { @Override public void onSuccess(QueryOrderRouteResp data) { if (data != null && data.data != null){ @@ -1167,10 +1167,10 @@ public class MogoOCHTaxiModelNew { public void startOrStopCalculateRouteInfo(boolean isStart) { CallerLogger.INSTANCE.d(M_TAXI + TAG, "startOrStopOrderLoop() " + isStart); if (isStart) { - OCHTaxiModelLoopManager.getInstance().startCalculateRouteInfoLoop(); + TaxiModelLoopManager.getInstance().startCalculateRouteInfoLoop(); } else { mRoutePoints.clear(); - OCHTaxiModelLoopManager.getInstance().stopCalculateRouteInfLoop(); + TaxiModelLoopManager.getInstance().stopCalculateRouteInfLoop(); } } @@ -1181,8 +1181,8 @@ public class MogoOCHTaxiModelNew { */ private void reportOrderRemain(long lastSumLength, long duration) {// 米/分钟 if (mCurrentOCHOrder == null) return; - OCHTaxiServiceManagerNew.getInstance().reportOrderRemain(mContext, mCurrentOCHOrder.orderNo - , lastSumLength, duration, new OCHTaxiServiceCallback() { + TaxiServiceManager.getInstance().reportOrderRemain(mContext, mCurrentOCHOrder.orderNo + , lastSumLength, duration, new TaxiServiceCallback() { @Override public void onSuccess(BaseData data) { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/OCHTaxiModelLoopManager.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModelLoopManager.java similarity index 74% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/OCHTaxiModelLoopManager.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModelLoopManager.java index b0bac1f31f..32b07a27bc 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/OCHTaxiModelLoopManager.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/model/TaxiModelLoopManager.java @@ -4,7 +4,7 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAX 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.OCHTaxiConst; +import com.mogo.och.taxi.constant.TaxiConst; import java.util.concurrent.TimeUnit; @@ -18,15 +18,15 @@ import io.reactivex.schedulers.Schedulers; * * 管理轮询逻辑(订单轮询、新单轮询、新单抢单结果轮询等等) */ -public class OCHTaxiModelLoopManager { +public class TaxiModelLoopManager { - private static final String TAG = OCHTaxiModelLoopManager.class.getSimpleName(); + private static final String TAG = TaxiModelLoopManager.class.getSimpleName(); private static final class SingletonHolder { - private static final OCHTaxiModelLoopManager INSTANCE = new OCHTaxiModelLoopManager(); + private static final TaxiModelLoopManager INSTANCE = new TaxiModelLoopManager(); } - public static OCHTaxiModelLoopManager getInstance() { + public static TaxiModelLoopManager getInstance() { return SingletonHolder.INSTANCE; } @@ -41,12 +41,12 @@ public class OCHTaxiModelLoopManager { return; } CallerLogger.INSTANCE.i(M_TAXI + TAG, "startInAndWaitOrdersLoop()"); - mInAndWaitServiceDisposable = Observable.interval(OCHTaxiConst.LOOP_DELAY, - OCHTaxiConst.LOOP_PERIOD_2S, TimeUnit.MILLISECONDS) + mInAndWaitServiceDisposable = Observable.interval(TaxiConst.LOOP_DELAY, + TaxiConst.LOOP_PERIOD_2S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> MogoOCHTaxiModelNew.getInstance().queryInAndWaitOrders()); + .subscribe(aLong -> TaxiModel.getInstance().queryInAndWaitOrders()); } public void stopInAndWaitOrdersLoop() { @@ -62,12 +62,12 @@ public class OCHTaxiModelLoopManager { return; } CallerLogger.INSTANCE.i(M_TAXI + TAG, "startNewBookingOrderLoop()"); - mNewBookingOrderDisposable = Observable.interval(OCHTaxiConst.LOOP_DELAY, - OCHTaxiConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) + mNewBookingOrderDisposable = Observable.interval(TaxiConst.LOOP_DELAY, + TaxiConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> MogoOCHTaxiModelNew.getInstance().queryNewBookingOrder()); + .subscribe(aLong -> TaxiModel.getInstance().queryNewBookingOrder()); } public void stopNewBookingOrderLoop() { @@ -83,12 +83,12 @@ public class OCHTaxiModelLoopManager { return; } CallerLogger.INSTANCE.i(M_TAXI + TAG, "startGrabResultLoop()"); - mGrabResultDisposable = Observable.interval(OCHTaxiConst.LOOP_DELAY, - OCHTaxiConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) + mGrabResultDisposable = Observable.interval(TaxiConst.LOOP_DELAY, + TaxiConst.LOOP_PERIOD_1S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> MogoOCHTaxiModelNew.getInstance().queryOrderGrabStatus()); + .subscribe(aLong -> TaxiModel.getInstance().queryOrderGrabStatus()); } public void stopGrabResultLoop() { @@ -104,12 +104,12 @@ public class OCHTaxiModelLoopManager { return; } CallerLogger.INSTANCE.i(M_TAXI + TAG, "startHeartbeatLoop()"); - mHeartbeatDisposable = Observable.interval(OCHTaxiConst.LOOP_DELAY, - OCHTaxiConst.LOOP_PERIOD_60S, TimeUnit.MILLISECONDS) + mHeartbeatDisposable = Observable.interval(TaxiConst.LOOP_DELAY, + TaxiConst.LOOP_PERIOD_60S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> MogoOCHTaxiModelNew.getInstance().runCarHeartbeat()); + .subscribe(aLong -> TaxiModel.getInstance().runCarHeartbeat()); } public void stopHeartbeatLoop() { @@ -125,12 +125,12 @@ public class OCHTaxiModelLoopManager { return; } CallerLogger.INSTANCE.i(M_TAXI_P + TAG, "startCalculateRouteInfoLoop()"); - mCalculateRouteDisposable = Observable.interval(OCHTaxiConst.LOOP_DELAY, - OCHTaxiConst.LOOP_CALCULATEROUTE_2S, TimeUnit.MILLISECONDS) + mCalculateRouteDisposable = Observable.interval(TaxiConst.LOOP_DELAY, + TaxiConst.LOOP_CALCULATEROUTE_2S, TimeUnit.MILLISECONDS) .map((aLong -> aLong + 1)) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) - .subscribe(aLong -> MogoOCHTaxiModelNew.getInstance().dynamicCalculateRouteInfo()); + .subscribe(aLong -> TaxiModel.getInstance().dynamicCalculateRouteInfo()); } public void stopCalculateRouteInfLoop() { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceApiNew.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceApiNew.java similarity index 99% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceApiNew.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceApiNew.java index b47fd6aadd..734138f74c 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceApiNew.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceApiNew.java @@ -34,7 +34,7 @@ import retrofit2.http.Query; * * 网约车-出租车接口定义 */ -interface OCHTaxiServiceApiNew { +interface TaxiServiceApiNew { /** * 查询全部服务中/待服务订单(没有的时候返回code 0,空列表) diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceCallback.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceCallback.java similarity index 83% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceCallback.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceCallback.java index 2a015c2d7c..2f3e2ed507 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceCallback.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceCallback.java @@ -6,7 +6,7 @@ package com.mogo.och.taxi.network; * * 修改订单状态回调接口 */ -public interface OCHTaxiServiceCallback< T > { +public interface TaxiServiceCallback< T > { void onSuccess(T data); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceManagerNew.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.java similarity index 87% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceManagerNew.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.java index 86ee65d526..8d5bc8c7d3 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/OCHTaxiServiceManagerNew.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/network/TaxiServiceManager.java @@ -30,7 +30,7 @@ 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.UpdateOrderDisAndTimeReqBean; -import com.mogo.och.taxi.constant.OCHTaxiConst; +import com.mogo.och.taxi.constant.TaxiConst; import java.util.List; @@ -40,22 +40,22 @@ import io.reactivex.schedulers.Schedulers; /** * Created by pangfan on 2021/8/19 */ -public class OCHTaxiServiceManagerNew { - private static final String TAG = OCHTaxiServiceManagerNew.class.getSimpleName(); +public class TaxiServiceManager { + private static final String TAG = TaxiServiceManager.class.getSimpleName(); private static final class SingletonHolder { - private static final OCHTaxiServiceManagerNew INSTANCE = new OCHTaxiServiceManagerNew(); + private static final TaxiServiceManager INSTANCE = new TaxiServiceManager(); } - public static OCHTaxiServiceManagerNew getInstance() { + public static TaxiServiceManager getInstance() { return SingletonHolder.INSTANCE; } - private OCHTaxiServiceApiNew mOCHTaxiServiceApi; + private TaxiServiceApiNew mOCHTaxiServiceApi; - private OCHTaxiServiceManagerNew() { + private TaxiServiceManager() { if (mOCHTaxiServiceApi == null){ - mOCHTaxiServiceApi = MoGoRetrofitFactory.getInstance(OCHTaxiConst.getBaseUrl()).create(OCHTaxiServiceApiNew.class); + mOCHTaxiServiceApi = MoGoRetrofitFactory.getInstance(TaxiConst.getBaseUrl()).create(TaxiServiceApiNew.class); } } @@ -65,7 +65,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryOrdersInAndWaitService(Context context, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrdersInAndWaitService(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,MoGoAiCloudClientConfig.getInstance().getSn()) @@ -80,7 +80,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryNewBookingOrder(Context context, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryNewBookingOrder(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,MoGoAiCloudClientConfig.getInstance().getSn()) @@ -96,7 +96,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void grabOrder(Context context, String orderNo, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.grabOrder(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderGrabReqBean( @@ -113,7 +113,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryOrderGrabStatus(Context context, String orderNo, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrderGrabStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderGrabReqBean( @@ -130,7 +130,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryOrderRouteInfo(Context context, String orderNo, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrderRouteInfo(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderQueryRouteInfoReqBean( @@ -148,7 +148,7 @@ public class OCHTaxiServiceManagerNew { * @deprecated v2.1_0930需求中暂不再使用此接口 */ public void queryOrderById(Context context, String orderNo, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrderById(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderQueryReqBean( @@ -166,7 +166,7 @@ public class OCHTaxiServiceManagerNew { * @deprecated v2.1_0930需求中暂不再使用此接口 */ public void queryOrderInService(Context context, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrderInService(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,MoGoAiCloudClientConfig.getInstance().getSn()) @@ -178,13 +178,13 @@ public class OCHTaxiServiceManagerNew { /** * 司机取消订单 * @param context - * @param orderId + * @param orderNo * @param cancelType * @param cancelReason * @param callback */ public void cancelOrder(Context context, String orderNo, int cancelType, String cancelReason, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.cancelOrder(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderCancelReqBean( @@ -202,7 +202,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryOrdersList(Context context, int page, int size, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrdersList(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrdersListQueryReqBean( @@ -220,7 +220,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void updateOrderStatus(Context context, String orderNo, int orderStatus, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.updateOrderStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderStatusUpdateReqBean( @@ -237,7 +237,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void updateDriverServiceStatus(Context context, int status, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.updateDriverServiceStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new DriverStatusUpdateReqBean( @@ -253,7 +253,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryDriverServiceStatus(Context context, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryDriverServiceStatus(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,MoGoAiCloudClientConfig.getInstance().getSn()) @@ -270,7 +270,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void runCarHeartbeat(Context context, double lon, double lat, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.runCarHeartbeat(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new CarHeartbeatReqBean( @@ -286,7 +286,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void queryDriverServiceData(Context context, - OCHTaxiServiceCallback callback) { + TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryServiceData(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,MoGoAiCloudClientConfig.getInstance().getSn()) @@ -302,7 +302,7 @@ public class OCHTaxiServiceManagerNew { * @param callback */ public void updateOrderRoute(Context context, String orderNo, List points, - OCHTaxiServiceCallback callback){ + TaxiServiceCallback callback){ mOCHTaxiServiceApi.updateOrderRoute(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,new OrderRouteUpdateReqBean(orderNo,points)) @@ -319,8 +319,8 @@ public class OCHTaxiServiceManagerNew { * @param duration * @param callback */ - public void reportOrderRemain(Context context, String orderNo,long distance, long duration - ,OCHTaxiServiceCallback callback){ + public void reportOrderRemain(Context context, String orderNo, long distance, long duration + , TaxiServiceCallback callback){ mOCHTaxiServiceApi.reportOrderRemain(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() @@ -336,7 +336,7 @@ public class OCHTaxiServiceManagerNew { * @param orderNo * @param callback */ - public void queryOrderRoute(Context context, String orderNo,OCHTaxiServiceCallback callback) { + public void queryOrderRoute(Context context, String orderNo, TaxiServiceCallback callback) { mOCHTaxiServiceApi.queryOrderRoute(MoGoAiCloudClientConfig.getInstance().getServiceAppId() ,MoGoAiCloudClientConfig.getInstance().getToken() ,orderNo) @@ -346,7 +346,7 @@ public class OCHTaxiServiceManagerNew { } private SubscribeImpl getSubscribeImpl( - Context context, OCHTaxiServiceCallback callback, String apiName) { + Context context, TaxiServiceCallback callback, String apiName) { return new SubscribeImpl(RequestOptions.create(context)) { @Override public void onSuccess(T o) { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/OCHTaxiPresenter.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java similarity index 52% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/OCHTaxiPresenter.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java index eb64a5ff78..b002924cab 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/OCHTaxiPresenter.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/presenter/TaxiPresenter.java @@ -15,15 +15,15 @@ import com.mogo.commons.mvp.Presenter; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.taxi.constant.OrderStatusEnum; +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.bean.OrderQueryRespBean; import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.callback.IOCHTaxiADASStatusCallback; -import com.mogo.och.taxi.callback.IOCHTaxiCarStatusCallback; -import com.mogo.och.taxi.callback.IOCHTaxiControllerStatusCallback; -import com.mogo.och.taxi.callback.IOCHTaxiOrderStatusCallback; -import com.mogo.och.taxi.model.MogoOCHTaxiModelNew; -import com.mogo.och.taxi.ui.OCHTaxiFragment; +import com.mogo.och.taxi.callback.ITaxiADASStatusCallback; +import com.mogo.och.taxi.callback.ITaxiCarStatusCallback; +import com.mogo.och.taxi.callback.ITaxiControllerStatusCallback; +import com.mogo.och.taxi.callback.ITaxiOrderStatusCallback; +import com.mogo.och.taxi.model.TaxiModel; +import com.mogo.och.taxi.ui.TaxiFragment; import org.jetbrains.annotations.NotNull; @@ -35,14 +35,14 @@ import java.util.List; * * 描述 */ -public class OCHTaxiPresenter extends Presenter implements IOCHTaxiADASStatusCallback, - IOCHTaxiCarStatusCallback, IOCHTaxiOrderStatusCallback, IOCHTaxiControllerStatusCallback { +public class TaxiPresenter extends Presenter implements ITaxiADASStatusCallback, + ITaxiCarStatusCallback, ITaxiOrderStatusCallback, ITaxiControllerStatusCallback { - private static final String TAG = OCHTaxiPresenter.class.getSimpleName(); + private static final String TAG = TaxiPresenter.class.getSimpleName(); - public OCHTaxiPresenter(OCHTaxiFragment view) { + public TaxiPresenter(TaxiFragment view) { super(view); - MogoOCHTaxiModelNew.getInstance().init(AbsMogoApplication.getApp()); + TaxiModel.getInstance().init(AbsMogoApplication.getApp()); initListeners(); } @@ -57,23 +57,23 @@ public class OCHTaxiPresenter extends Presenter implements IOCH super.onDestroy( owner ); releaseListeners(); - MogoOCHTaxiModelNew.getInstance().release(); + TaxiModel.getInstance().release(); } private void initListeners() { - MogoOCHTaxiModelNew.getInstance().setADASStatusCallback(this); - MogoOCHTaxiModelNew.getInstance().setCarStatusCallback(this); - MogoOCHTaxiModelNew.getInstance().setControllerStatusCallback(this); - MogoOCHTaxiModelNew.getInstance().setOrderStatusCallback(this); -// MogoOCHTaxiModelNew.getInstance().setMoGoAutopilotPlanningListener(this); + TaxiModel.getInstance().setADASStatusCallback(this); + TaxiModel.getInstance().setCarStatusCallback(this); + TaxiModel.getInstance().setControllerStatusCallback(this); + TaxiModel.getInstance().setOrderStatusCallback(this); +// TaxiModel.getInstance().setMoGoAutopilotPlanningListener(this); } private void releaseListeners() { - MogoOCHTaxiModelNew.getInstance().setADASStatusCallback(null); - MogoOCHTaxiModelNew.getInstance().setCarStatusCallback(null); - MogoOCHTaxiModelNew.getInstance().setControllerStatusCallback(null); - MogoOCHTaxiModelNew.getInstance().setOrderStatusCallback(null); -// MogoOCHTaxiModelNew.getInstance().setMoGoAutopilotPlanningListener(null); + TaxiModel.getInstance().setADASStatusCallback(null); + TaxiModel.getInstance().setCarStatusCallback(null); + TaxiModel.getInstance().setControllerStatusCallback(null); + TaxiModel.getInstance().setOrderStatusCallback(null); +// TaxiModel.getInstance().setMoGoAutopilotPlanningListener(null); } private void runOnUIThread( Runnable executor ) { @@ -89,57 +89,57 @@ public class OCHTaxiPresenter extends Presenter implements IOCH // 开启自动驾驶 public void startAutoPilot() { - MogoOCHTaxiModelNew.getInstance().startAutoPilot(); + TaxiModel.getInstance().startAutoPilot(); } // 更新出车/收车状态 public void updateCarStatus() { - MogoOCHTaxiModelNew.getInstance().updateCarStatus(); + TaxiModel.getInstance().updateCarStatus(); } // 更新当前订单状态(当前订单状态流转) - public void updateCurOrderStatus(OrderStatusEnum status) { - MogoOCHTaxiModelNew.getInstance().updateOCHOrderStatus(status); + public void updateCurOrderStatus(TaxiOrderStatusEnum status) { + TaxiModel.getInstance().updateOCHOrderStatus(status); } // 获取当前订单状态 - public OrderStatusEnum getCurOrderStatus() { - return MogoOCHTaxiModelNew.getInstance().getCurOrderStatus(); + public TaxiOrderStatusEnum getCurOrderStatus() { + return TaxiModel.getInstance().getCurOrderStatus(); } // 取消当前订单 public void cancelCurOrder(int reasonType, String reason) { - MogoOCHTaxiModelNew.getInstance().cancelCurrentOrder(reasonType, reason); + TaxiModel.getInstance().cancelCurrentOrder(reasonType, reason); } // 取消待服务中订单 public void cancelOrderById(String orderNo, int reasonType, String reason) { - MogoOCHTaxiModelNew.getInstance().cancelOrderById(orderNo, reasonType, reason); + TaxiModel.getInstance().cancelOrderById(orderNo, reasonType, reason); } // 查询当前订单route信息:预估时间、里程等 public void queryCurOrderRouteInfo() { - MogoOCHTaxiModelNew.getInstance().queryCurOrderRouteInfo(); + TaxiModel.getInstance().queryCurOrderRouteInfo(); } // 获取全部订单列表 public void queryOrdersList(int page, int size) { - MogoOCHTaxiModelNew.getInstance().queryOrdersList(page, size); + TaxiModel.getInstance().queryOrdersList(page, size); } // 执行抢单动作 public void grabOrder() { - MogoOCHTaxiModelNew.getInstance().grabOrder(); + TaxiModel.getInstance().grabOrder(); } // 关闭新到预约单 public void cancelNewBookingOrder() { - MogoOCHTaxiModelNew.getInstance().cancelNewBookingOrder(); + TaxiModel.getInstance().cancelNewBookingOrder(); } // 查询司机服务数据 public void queryDriverServiceData() { - MogoOCHTaxiModelNew.getInstance().queryDriverServiceData(); + TaxiModel.getInstance().queryDriverServiceData(); } @Override @@ -149,27 +149,30 @@ public class OCHTaxiPresenter extends Presenter implements IOCH @Override public void onAutopilotEnable() { - mView.updateAutopilotStatus(IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE); + runOnUIThread(() -> mView.updateAutopilotStatus( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_ENABLE)); } @Override public void onAutopilotDisable() { - mView.updateAutopilotStatus(IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE); + runOnUIThread(() -> mView.updateAutopilotStatus( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_DISABLE)); } @Override public void onAutopilotRunning() { - mView.updateAutopilotStatus(IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING); + runOnUIThread(() -> mView.updateAutopilotStatus( + IMoGoAutopilotStatusListener.STATUS_AUTOPILOT_RUNNING)); } @Override public void onCarStatusChanged(boolean inOperation, String role) { - mView.updateOperationStatus(inOperation,role); + runOnUIThread(() -> mView.updateOperationStatus(inOperation,role)); } @Override public void onServiceDataUpdate(long dailyTimeDuration, long dailyOrderNum) { - mView.onServiceDataUpdate(dailyTimeDuration,dailyOrderNum); + runOnUIThread(() -> mView.onServiceDataUpdate(dailyTimeDuration,dailyOrderNum)); } @Override @@ -179,72 +182,72 @@ public class OCHTaxiPresenter extends Presenter implements IOCH @Override public void onOrdersWaitServiceChanged(@NonNull @NotNull List waitServiceList) { - mView.onOrdersWaitServiceChanged(waitServiceList); + runOnUIThread(() -> mView.onOrdersWaitServiceChanged(waitServiceList)); } @RequiresApi(api = Build.VERSION_CODES.P) @Override public void onCurrentOrderStatusChanged(OrderQueryRespBean.Result order) { CallerLogger.INSTANCE.d(M_TAXI + TAG,"order = "+order.toString()); - if (OrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus){ - MogoOCHTaxiModelNew.getInstance().startDynamicCalculateRouteInfo(); + if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus){ + TaxiModel.getInstance().startDynamicCalculateRouteInfo(); } - if (OrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus || - OrderStatusEnum.Cancel.getCode() == order.orderStatus || - OrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus){ - MogoOCHTaxiModelNew.getInstance().startOrStopCalculateRouteInfo(false); + if (TaxiOrderStatusEnum.ArriveAtEnd.getCode() == order.orderStatus || + TaxiOrderStatusEnum.Cancel.getCode() == order.orderStatus || + TaxiOrderStatusEnum.JourneyCompleted.getCode() == order.orderStatus){ + TaxiModel.getInstance().startOrStopCalculateRouteInfo(false); } - mView.updateCurrentOrderStatusChanged(order); + runOnUIThread(() -> mView.updateCurrentOrderStatusChanged(order)); } @Override public void onCurrentOrderCancelDone() { - mView.onCurrentOrderCancelDone(); + runOnUIThread(() -> mView.onCurrentOrderCancelDone()); } @Override public void onOrderCancelDone(String orderNo) { - mView.onOrderCancelDone(orderNo); + runOnUIThread(() -> mView.onOrderCancelDone(orderNo)); } @Override public void onCurrentOrderRouteInfoGot(OrderQueryRouteInfoRespBean.Result routeInfo) { - mView.onCurrentOrderRouteInfoGot(routeInfo); + runOnUIThread(() -> mView.onCurrentOrderRouteInfoGot(routeInfo)); } @Override public void onCurrentOrderDistToStartChanged(long meters, long timeInSecond) { - mView.onCurrentOrderDistToStartChanged(meters,timeInSecond); + runOnUIThread(() -> mView.onCurrentOrderDistToStartChanged(meters,timeInSecond)); } @Override public void onCurrentOrderDistToEndChanged(long meters, long timeInSecond) { - mView.onCurrentOrderDistToEndChanged(meters,timeInSecond); + runOnUIThread(() -> mView.onCurrentOrderDistToEndChanged(meters,timeInSecond)); } @Override public void onOrdersListPageRefresh(List ordersList) { - mView.onOrdersListPageRefresh(ordersList); + runOnUIThread(() -> mView.onOrdersListPageRefresh(ordersList)); } @Override public void onNewBookingOrderGot(OrderQueryRespBean.Result order) { - mView.onNewBookingOrderGot(order); + runOnUIThread(() -> mView.onNewBookingOrderGot(order)); } @Override public void onGrabOrderExecuteDone() { - mView.onGrabOrderExecuteDone(); + runOnUIThread(() -> mView.onGrabOrderExecuteDone()); } @Override public void onGrabOrderSuccess(OrderQueryRespBean.Result order) { - mView.onGrabOrderSuccess(order); + runOnUIThread(() -> mView.onGrabOrderSuccess(order)); } @Override public void onGrabOrderFailed(OrderQueryRespBean.Result order) { - mView.onGrabOrderFailed(order); + runOnUIThread(() -> mView.onGrabOrderFailed(order)); } @Override @@ -255,8 +258,10 @@ public class OCHTaxiPresenter extends Presenter implements IOCH @Override public void onCarLocationChanged(Location location) { if (null != location){ - runOnUIThread(() -> mView.updateSpeedView(location.getSpeed())); - mView.updateLocation(location.getLatitude(),location.getLongitude()); + runOnUIThread(() -> { + mView.updateSpeedView(location.getSpeed()); + mView.updateLocation(location.getLatitude(),location.getLongitude()); + }); } } // @Override diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java similarity index 97% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java index 000bbc5051..aaec11f51b 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseOchTaxiTabFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/BaseTaxiTabFragment.java @@ -28,11 +28,11 @@ import com.mogo.commons.mvp.Presenter; import com.mogo.commons.voice.AIAssist; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; import com.mogo.eagle.core.data.config.HmiBuildConfig; -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener; +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager; -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager; +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager; import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; import com.mogo.eagle.core.function.call.map.CallerSmpManager; @@ -46,7 +46,6 @@ import com.mogo.module.common.constants.DataTypes; import com.mogo.module.common.view.OnPreventFastClickListener; import com.mogo.och.taxi.R; -import mogo.telematics.pad.MessagePad; import record_cache.RecordPanelOuterClass; @@ -57,7 +56,7 @@ import record_cache.RecordPanelOuterClass; * * @author tongchenfei */ -public abstract class BaseOchTaxiTabFragment> extends MvpFragment implements IMogoMapListener, IMoGoAutopilotIdentifyListener { +public abstract class BaseTaxiTabFragment> extends MvpFragment implements IMogoMapListener, IMoGoAutopilotRecordListener { private static final String TAG = "BaseOchFragment"; private LinearLayout ctvAutopilotStatus; @@ -76,7 +75,7 @@ public abstract class BaseOchTaxiTabFragment { AIAssist.getInstance(getContext()).speakTTSVoice(notice); @@ -472,7 +467,9 @@ public abstract class BaseOchTaxiTabFragment { - if (tvOperationStatus == null) return; + if (tvOperationStatus == null) { + return; + } tvOperationStatus.setVisibility(visible); }); } @@ -501,7 +498,7 @@ public abstract class BaseOchTaxiTabFragment距离 " + "- -" + " 公里," // + "用时 " + "- -" + " 分钟"; // mDistanceAndTime.setText(Html.fromHtml(strHtml2)); - } else if (OrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus) { + } else if (TaxiOrderStatusEnum.OnTheWayToEnd.getCode() == order.orderStatus) { CallerLogger.INSTANCE.d(M_TAXI + TAG, "已经去往终点"); mContentModule3.setVisibility(View.GONE); mContentModule2.setVisibility(View.VISIBLE); @@ -190,7 +190,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem mTitleTV2.setText("送乘客至"); mStationTv2.setText(order.endSiteAddr); - } else if (OrderStatusEnum.ArriveAtStart.getCode() == order.orderStatus) { + } else if (TaxiOrderStatusEnum.ArriveAtStart.getCode() == order.orderStatus) { CallerLogger.INSTANCE.d(M_TAXI + TAG, "已经达到起点"); mContentModule2.setVisibility(View.GONE); mContentModule3.setVisibility(View.VISIBLE); @@ -205,8 +205,8 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem mOrderServerStatus.setTextColor(Color.parseColor("#FFFFFF")); mOrderServerStatus.setClickable(true); Calendar currentCale = DateTimeUtils.getCurrentDateTime(); - String currentHM = OchTaxiUtils.formatCalendarToString(currentCale, OchTaxiUtils.TAXI_HH_mm); - String currentDay = OchTaxiUtils.formatCalendarToString(currentCale, OchTaxiUtils.TAXI_yyyy_MM_dd); + String currentHM = TaxiDateTimeUtil.formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_HH_mm); + String currentDay = TaxiDateTimeUtil.formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_yyyy_MM_dd); String strHtml11 = "已于
" + "" + currentHM + "" + "" + " " + "到达乘客上车地点"; @@ -218,16 +218,16 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem mStationTv32.setText(order.endSiteAddr); currentCale.add(Calendar.MINUTE, 10); String strHtml13 = ""; - if (currentDay.equals(OchTaxiUtils.formatCalendarToString(currentCale, OchTaxiUtils.TAXI_yyyy_MM_dd))) { + if (currentDay.equals(TaxiDateTimeUtil.formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_yyyy_MM_dd))) { strHtml13 = "免费等待至 " - + "" + OchTaxiUtils.formatCalendarToString(currentCale, OchTaxiUtils.TAXI_HH_mm) + ""; + + "" + TaxiDateTimeUtil.formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_HH_mm) + ""; } else { strHtml13 = "免费等待至" - + "" + OchTaxiUtils.formatCalendarToString(currentCale, OchTaxiUtils.TAXI_MM_dd_HH_mm) + ""; + + "" + TaxiDateTimeUtil.formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_MM_dd_HH_mm) + ""; } mDistanceAndTime3.setText(Html.fromHtml(strHtml13)); - } else if (MogoOCHTaxiModelNew.getInstance().checkCurrentOCHOrder()) { + } else if (TaxiModel.getInstance().checkCurrentOCHOrder()) { CallerLogger.INSTANCE.d(M_TAXI + TAG, "前往乘客上车地点"); mContentModule2.setVisibility(View.GONE); mContentModule3.setVisibility(View.VISIBLE); @@ -249,17 +249,17 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem // + "接乘客"; mStationTv31.setText(order.startSiteAddr); Calendar currentCale = DateTimeUtils.getCurrentDateTime(); - Calendar startCale = OchTaxiUtils.formatLongToCalendar(order.bookingTime); - String currentDay = OchTaxiUtils.formatCalendarToString(currentCale, OchTaxiUtils.TAXI_yyyy_MM_dd); - String startDay = OchTaxiUtils.formatCalendarToString(startCale, OchTaxiUtils.TAXI_yyyy_MM_dd); + Calendar startCale = TaxiDateTimeUtil.formatLongToCalendar(order.bookingTime); + String currentDay = TaxiDateTimeUtil.formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_yyyy_MM_dd); + String startDay = TaxiDateTimeUtil.formatCalendarToString(startCale, TaxiDateTimeUtil.TAXI_yyyy_MM_dd); String strHtml1 = ""; if (currentDay.equals(startDay)) { strHtml1 = "乘客将于
" - + "" + OchTaxiUtils.formatCalendarToString(startCale, OchTaxiUtils.TAXI_HH_mm) + "" + + "" + TaxiDateTimeUtil.formatCalendarToString(startCale, TaxiDateTimeUtil.TAXI_HH_mm) + "" + " 用车"; } else { strHtml1 = "乘客将于
" - + "" + OchTaxiUtils.formatCalendarToString(startCale, OchTaxiUtils.TAXI_MM_dd_HH_mm) + "" + + "" + TaxiDateTimeUtil.formatCalendarToString(startCale, TaxiDateTimeUtil.TAXI_MM_dd_HH_mm) + "" + " 用车"; } mOrderOtherContent3.setText(Html.fromHtml(strHtml1)); @@ -301,7 +301,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem dis = String.valueOf(Math.round(meters)); }else { disUnit = "公里"; - dis = OchTaxiUtils.formatLong((double)meters / 1000); + dis = TaxiDateTimeUtil.formatLong((double)meters / 1000); } } String strHtml2 = "里程 " + "" + dis + "" + " "+disUnit+"" @@ -334,7 +334,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem if (routeInfo.distanceToEnd > 0){ - dis = OchTaxiUtils.formatLong( (double) distance/ 1000); + dis = TaxiDateTimeUtil.formatLong( (double) distance/ 1000); } String strHtml2 = "距离 " + "" + dis + "" + " 公里" @@ -355,7 +355,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem private void startOrEndService(String step) { if (step.equals(getResources().getString(R.string.module_och_taxi_order_server_end))) {//点击了完成服务,结束订单并更新订单信息 // isHaveBeingOrder(false); - mTaxiFragment.completeOrderService(OrderStatusEnum.JourneyCompleted); + mTaxiFragment.completeOrderService(TaxiOrderStatusEnum.JourneyCompleted); showNotice(getResources().getString(R.string.module_och_taxi_order_server_completed_tip)); return; } else if (step.equals(getResources().getString(R.string.module_och_taxi_order_server_start))) {//点击服务,开启自动驾驶 @@ -369,14 +369,14 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem CallerLogger.INSTANCE.d(M_TAXI + TAG, "status==" + status); mCurrentOrder = order; mActivity.runOnUiThread(() -> { - if (status == OrderStatusEnum.None.getCode() || status == OrderStatusEnum.Cancel.getCode() || status == OrderStatusEnum.JourneyCompleted.getCode()) { + if (status == TaxiOrderStatusEnum.None.getCode() || status == TaxiOrderStatusEnum.Cancel.getCode() || status == TaxiOrderStatusEnum.JourneyCompleted.getCode()) { isHaveBeingOrder(false); mCurrentOrder = null; } else { isHaveBeingOrder(true); } if (status != saveOrderState) { - OrderStatusEnum ochStatus = OrderStatusEnum.valueOf(status); + TaxiOrderStatusEnum ochStatus = TaxiOrderStatusEnum.valueOf(status); switch (ochStatus) { case OnTheWayToStart: mOrderCancel.setVisibility(View.VISIBLE); @@ -384,8 +384,8 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem mTtsLessThan200Tip = 0; startNaviToStartStation(false, mOrderStartStationLat, mOrderStartStationLng); showOrHideNavi(true); - setOrRemoveMapMaker(true, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); - setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); + setOrRemoveMapMaker(true, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); + setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); break; case Cancel: mCurrentOrder = null; @@ -393,23 +393,23 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem mOrderCancel.setVisibility(View.VISIBLE); showNotice(mActivity.getString(R.string.module_och_taxi_order_cancel)); showOrHideNavi(false); - setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); - setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); break; case ArriveAtStart: mTtsLessThan200Tip = 0; mOrderCancel.setVisibility(View.VISIBLE); showNotice(mActivity.getString(R.string.module_och_taxi_order_status_ph_text)); showOrHideNavi(false); - setOrRemoveMapMaker(true, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); - setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); + setOrRemoveMapMaker(true, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); + setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); break; case OnTheWayToEnd: // showNotice("欢迎使用蘑菇智行"); mOrderCancel.setVisibility(View.VISIBLE); showOrHideNavi(false); - setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); - setOrRemoveMapMaker(true,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); + setOrRemoveMapMaker(true, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); break; case ArriveAtEnd: mCurrentOrder = null; @@ -417,8 +417,8 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem mOrderCancel.setVisibility(View.GONE); showNotice(mActivity.getString(R.string.module_och_taxi_order_auto_arrive_end_tip)); showOrHideNavi(false); - setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); - setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint); break; case JourneyCompleted: mCurrentOrder = null; @@ -463,7 +463,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem break; } } else if (v.getId() == R.id.module_och_taxi_order_cancel_iv) { - new OCHTaxiOrderCancelDialog(mTaxiFragment, mActivity, mOrderNo, saveOrderState).show(); + new TaxiOrderCancelDialog(mTaxiFragment, mActivity, mOrderNo, saveOrderState).show(); } else if (v.getId() == R.id.module_och_taxi_navi_iv) { // TODO: 2021/11/30 打开去往乘客上车点的导航页面 if (mTaxiFragment != null) { @@ -486,8 +486,8 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem public void onCurrentOrderCancelDone() { //去除起终点 if (mCurrentOrder != null){ - setOrRemoveMapMaker(false, OCHTaxiConst.TAXI_START_MAP_MAKER,mCurrentOrder.startSitePoint); - setOrRemoveMapMaker(false,OCHTaxiConst.TAXI_END_MAP_MAKER,mCurrentOrder.endSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,mCurrentOrder.startSitePoint); + setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,mCurrentOrder.endSitePoint); } //提交取消订单后的回调 TipToast.tip("订单取消成功"); @@ -528,7 +528,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem UiThreadHandler.postDelayed(new Runnable() { @Override public void run() { - if (saveOrderState == OrderStatusEnum.OnTheWayToStart.getCode()) { + if (saveOrderState == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { startNaviToStartStation(false, mOrderStartStationLat, mOrderStartStationLng); } } @@ -536,7 +536,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem UiThreadHandler.postDelayed(new Runnable() { @Override public void run() { - if (saveOrderState == OrderStatusEnum.OnTheWayToStart.getCode()) { + if (saveOrderState == TaxiOrderStatusEnum.OnTheWayToStart.getCode()) { if (mNaviIcon.getVisibility() == View.GONE) { mNaviIcon.setVisibility(View.VISIBLE); } @@ -558,7 +558,7 @@ public class OCHTaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implem +station.get(1)+",longitude="+station.get(0)); MogoMarkerOptions options = new MogoMarkerOptions() - .owner(OCHTaxiConst.TYPE_MARKER_TAXI_ORDER) + .owner(TaxiConst.TYPE_MARKER_TAXI_ORDER) .anchor(0.5f, 0.5f) .set3DMode(true) .gps(true) diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java similarity index 90% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java index efda226b61..e395d1894c 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiFragment.java @@ -16,11 +16,11 @@ import com.mogo.commons.debug.DebugConfig; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.module.common.MogoApisHandler; import com.mogo.och.taxi.R; -import com.mogo.och.taxi.constant.OrderStatusEnum; +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.bean.OrderQueryRespBean; import com.mogo.och.taxi.bean.OrderQueryRouteInfoRespBean; -import com.mogo.och.taxi.model.MogoOCHTaxiModelNew; -import com.mogo.och.taxi.presenter.OCHTaxiPresenter; +import com.mogo.och.taxi.model.TaxiModel; +import com.mogo.och.taxi.presenter.TaxiPresenter; import com.mogo.och.taxi.utils.PinYinUtil; import org.json.JSONArray; @@ -39,22 +39,22 @@ import mogo.telematics.pad.MessagePad; * * 网约车-出租车UI */ -public class OCHTaxiFragment extends BaseOchTaxiTabFragment implements OCHTaxiView { +public class TaxiFragment extends BaseTaxiTabFragment implements ITaxiView { - public static final String TAG = "OCHTaxiFragment"; + public static final String TAG = "TaxiFragment"; - public static OCHTaxiFragment newInstance() { + public static TaxiFragment newInstance() { Bundle args = new Bundle(); - OCHTaxiFragment fragment = new OCHTaxiFragment(); + TaxiFragment fragment = new TaxiFragment(); fragment.setArguments(args); return fragment; } - private OCHTaxiGrabOrderFragment grabOrderFragment; - private OCHTaxiServerOrdersFragment serverOrdersFragment; - private WeakReference personalDialogFragment = null; + private TaxiGrabOrderFragment grabOrderFragment; + private TaxiServerOrdersFragment serverOrdersFragment; + private WeakReference personalDialogFragment = null; protected double mCurLatitude = 0.0; protected double mCurLongitude = 0.0; @@ -66,7 +66,7 @@ public class OCHTaxiFragment extends BaseOchTaxiTabFragment(new OCHTaxiPersonalDialogFragment(this)); + personalDialogFragment = new WeakReference<>(new TaxiPersonalDialogFragment(this)); personalDialogFragment.get().show(getActivity().getSupportFragmentManager(), "service_data"); } @@ -197,7 +197,7 @@ public class OCHTaxiFragment extends BaseOchTaxiTabFragment ordersList) { if (null == personalDialogFragment) - personalDialogFragment = new WeakReference<>(new OCHTaxiPersonalDialogFragment(this)); + personalDialogFragment = new WeakReference<>(new TaxiPersonalDialogFragment(this)); personalDialogFragment.get().onOrdersListPageRefresh(ordersList); } @@ -346,14 +346,14 @@ public class OCHTaxiFragment extends BaseOchTaxiTabFragment { - MogoOCHTaxiModelNew.getInstance().setArriveAtStartStation(); + TaxiModel.getInstance().setArriveAtStartStation(); }); findViewById(R.id.test_bar_to_end).setOnClickListener(v -> { - MogoOCHTaxiModelNew.getInstance().setArriveAtEndStation(); + TaxiModel.getInstance().setArriveAtEndStation(); }); findViewById(R.id.test_bar_on_the_way_to_end).setOnClickListener(v -> { showNotice("自动驾驶已启动,请系好安全带"); - MogoOCHTaxiModelNew.getInstance().setOnTheWayToEndStation(); + TaxiModel.getInstance().setOnTheWayToEndStation(); testRouteInfoUpload(); }); } @@ -548,8 +548,8 @@ public class OCHTaxiFragment extends BaseOchTaxiTabFragment trafficData) { - - } } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiGrabOrderFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiGrabOrderFragment.java similarity index 88% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiGrabOrderFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiGrabOrderFragment.java index f23cf81700..c1c8528425 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiGrabOrderFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiGrabOrderFragment.java @@ -13,7 +13,7 @@ import androidx.constraintlayout.widget.ConstraintLayout; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; import com.mogo.och.taxi.R; import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.taxi.utils.OchTaxiUtils; +import com.mogo.och.taxi.utils.TaxiDateTimeUtil; import java.util.Calendar; @@ -21,7 +21,7 @@ import java.util.Calendar; * @author: wangmingjun * @date: 2021/9/9 */ -public class OCHTaxiGrabOrderFragment extends BaseTaxiUIFragment implements View.OnClickListener { +public class TaxiGrabOrderFragment extends BaseTaxiUIFragment implements View.OnClickListener { private TextView mOrderReserverTime; private TextView mOrderGrabBt; @@ -35,11 +35,11 @@ public class OCHTaxiGrabOrderFragment extends BaseTaxiUIFragment implements View private AnimationDrawable mGrabFailureAnim; private CountDownTimer countDownTimer = null; - public static OCHTaxiGrabOrderFragment newInstance() { + public static TaxiGrabOrderFragment newInstance() { Bundle args = new Bundle(); - OCHTaxiGrabOrderFragment fragment = new OCHTaxiGrabOrderFragment(); + TaxiGrabOrderFragment fragment = new TaxiGrabOrderFragment(); fragment.setArguments(args); return fragment; } @@ -85,19 +85,19 @@ public class OCHTaxiGrabOrderFragment extends BaseTaxiUIFragment implements View } } } - private OCHTaxiFragment getOchTaxiFragment(){ - return (OCHTaxiFragment)getParentFragment(); + private TaxiFragment getOchTaxiFragment(){ + return (TaxiFragment)getParentFragment(); } public void updateGrabOrder(OrderQueryRespBean.Result order){ mGrabResultAnimView.setVisibility(View.GONE); - Calendar calendar = OchTaxiUtils.formatLongToCalendar(order.bookingTime); - if (OchTaxiUtils.compareDateIsCurrentDay(calendar)){ - mOrderReserverTime.setText("用车时间:今天 "+OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_HH_mm)); - getOchTaxiFragment().showNotice("预约单,今天"+OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_HH_mm)+"从" + Calendar calendar = TaxiDateTimeUtil.formatLongToCalendar(order.bookingTime); + if (TaxiDateTimeUtil.compareDateIsCurrentDay(calendar)){ + mOrderReserverTime.setText("用车时间:今天 "+ TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_HH_mm)); + getOchTaxiFragment().showNotice("预约单,今天"+ TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_HH_mm)+"从" +order.startSiteAddr+"到"+order.endSiteAddr); }else { - mOrderReserverTime.setText("用车时间:"+OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_MM_dd_HH_mm)); - getOchTaxiFragment().showNotice("预约单,"+OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_MM_dd)+"从" + mOrderReserverTime.setText("用车时间:"+ TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_MM_dd_HH_mm)); + getOchTaxiFragment().showNotice("预约单,"+ TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_MM_dd)+"从" +order.startSiteAddr+"到"+order.endSiteAddr); } mOrderStartStation.setText(order.startSiteAddr); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHNaviFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiNaviFragment.java similarity index 96% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHNaviFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiNaviFragment.java index 627fab50a1..8899f882a0 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHNaviFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiNaviFragment.java @@ -15,25 +15,25 @@ import com.amap.api.navi.model.RouteOverlayOptions; import com.mogo.eagle.core.utilcode.mogo.MapAssetStyleUtils; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.och.taxi.R; -import com.mogo.och.taxi.callback.IOCHTaxiNaviChangedCallback; +import com.mogo.och.taxi.callback.ITaxiNaviChangedCallback; import com.mogo.och.taxi.model.NaviToDestinationModel; /** * @author: wangmingjun * @date: 2021/11/30 */ -public class OCHNaviFragment extends BaseTaxiUIFragment implements AMapNaviViewListener, View.OnClickListener { +public class TaxiNaviFragment extends BaseTaxiUIFragment implements AMapNaviViewListener, View.OnClickListener { private AMapNaviView mAMapNaviView; // private OverviewButtonView mOverviewButtonView; // private NextTurnTipView mNextTurnTipView; private AMap aMap; - private IOCHTaxiNaviChangedCallback mNaviToStartInfoCallback; // 前往乘客上车点 - public static OCHNaviFragment newInstance() { + private ITaxiNaviChangedCallback mNaviToStartInfoCallback; // 前往乘客上车点 + public static TaxiNaviFragment newInstance() { Bundle args = new Bundle(); - OCHNaviFragment fragment = new OCHNaviFragment(); + TaxiNaviFragment fragment = new TaxiNaviFragment(); fragment.setArguments(args); return fragment; } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiOperationDatasFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiOperationDatasFragment.java similarity index 88% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiOperationDatasFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiOperationDatasFragment.java index e341a55dd7..884c644c6d 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiOperationDatasFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiOperationDatasFragment.java @@ -14,7 +14,7 @@ import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import com.mogo.och.taxi.R; -import com.mogo.och.taxi.utils.OchTaxiUtils; +import com.mogo.och.taxi.utils.TaxiDateTimeUtil; import java.util.ArrayList; import java.util.List; @@ -23,7 +23,7 @@ import java.util.List; * @author: wangmingjun * @date: 2021/9/10 */ -public class OCHTaxiOperationDatasFragment extends BaseTaxiUIFragment { +public class TaxiOperationDatasFragment extends BaseTaxiUIFragment { private RecyclerView mRecyclerView; private static Context mContext; @@ -33,11 +33,11 @@ public class OCHTaxiOperationDatasFragment extends BaseTaxiUIFragment { private static int mType = 0;//0: 运营时长 1:运营单数 private OperationDataAdapter mAdapter; - public static OCHTaxiOperationDatasFragment newInstance(Context context, int type) { + public static TaxiOperationDatasFragment newInstance(Context context, int type) { mContext = context; mType = type; Bundle args = new Bundle(); - OCHTaxiOperationDatasFragment fragment = new OCHTaxiOperationDatasFragment(); + TaxiOperationDatasFragment fragment = new TaxiOperationDatasFragment(); fragment.setArguments(args); return fragment; } @@ -98,8 +98,8 @@ public class OCHTaxiOperationDatasFragment extends BaseTaxiUIFragment { if (holder instanceof OperationDataViewHolder) { OperationDataViewHolder viewHolder = (OperationDataViewHolder) holder; if (0 == mType){ - String hourData = TextUtils.isEmpty(OchTaxiUtils.secondsToHourStr(datas.get(position))) ? "0": OchTaxiUtils.secondsToHourStr(datas.get(position)); - String minuteData = OchTaxiUtils.secondsToMinuteStr(datas.get(position)); + String hourData = TextUtils.isEmpty(TaxiDateTimeUtil.secondsToHourStr(datas.get(position))) ? "0": TaxiDateTimeUtil.secondsToHourStr(datas.get(position)); + String minuteData = TaxiDateTimeUtil.secondsToMinuteStr(datas.get(position)); String data = "" + hourData + "" + "" + minuteData + ""; viewHolder.operationDataTv.setText(Html.fromHtml(data)); viewHolder.operationDataTitle.setText("今日在线时长"); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiOrderCancelDialog.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiOrderCancelDialog.java similarity index 72% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiOrderCancelDialog.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiOrderCancelDialog.java index 0cdd1359a1..9d425de002 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiOrderCancelDialog.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiOrderCancelDialog.java @@ -22,16 +22,16 @@ import androidx.annotation.RequiresApi; import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; -import com.mogo.och.taxi.constant.OrderStatusEnum; +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.R; -import com.mogo.och.taxi.constant.OrderCancelReasons; +import com.mogo.och.taxi.constant.TaxiOrderCancelReasons; import java.lang.ref.WeakReference; /** * @author: wangmingjun * @date: 2021/8/18 */ -public class OCHTaxiOrderCancelDialog extends AlertDialog implements View.OnClickListener,AdapterView.OnItemClickListener { +public class TaxiOrderCancelDialog extends AlertDialog implements View.OnClickListener,AdapterView.OnItemClickListener { private static final String TAG = "OCHTaxiOrderCancelDial"; protected WeakReference contextWeakReference; @@ -42,10 +42,10 @@ public class OCHTaxiOrderCancelDialog extends AlertDialog implements View.OnClic private ContentAdapter mContentAdapter; private int mOrderStatus;//1:预约单,其他为即时单的状态, 主要是控制乘客上车 乘客下车这几个选项的显示 private String[] mContentArrays; - private WeakReference mOchTaxiFragmentWeak; + private WeakReference mOchTaxiFragmentWeak; private String mOrderNo; - protected OCHTaxiOrderCancelDialog(OCHTaxiFragment fragment, Context context, String orderNo, int orderStatus) { + protected TaxiOrderCancelDialog(TaxiFragment fragment, Context context, String orderNo, int orderStatus) { super(context,R.style.OrderCancelDialog); mOrderNo = orderNo; mOchTaxiFragmentWeak = new WeakReference<>(fragment); @@ -56,41 +56,41 @@ public class OCHTaxiOrderCancelDialog extends AlertDialog implements View.OnClic private void initReasonArray() { if (1 == mOrderStatus) { - mContentArrays = new String[]{OrderCancelReasons.BookPassengerCancel.getMsg(), OrderCancelReasons.CarBroken.getMsg(), - OrderCancelReasons.BookJourneyConflict.getMsg(), OrderCancelReasons.BatteryLow.getMsg(), - OrderCancelReasons.BookOther.getMsg()}; + mContentArrays = new String[]{TaxiOrderCancelReasons.BookPassengerCancel.getMsg(), TaxiOrderCancelReasons.CarBroken.getMsg(), + TaxiOrderCancelReasons.BookJourneyConflict.getMsg(), TaxiOrderCancelReasons.BatteryLow.getMsg(), + TaxiOrderCancelReasons.BookOther.getMsg()}; return; } - OrderStatusEnum ochStatus = OrderStatusEnum.valueOf(mOrderStatus); + TaxiOrderStatusEnum ochStatus = TaxiOrderStatusEnum.valueOf(mOrderStatus); switch (ochStatus) { case OnTheWayToStart: - mContentArrays = new String[]{OrderCancelReasons.CarBroken.getMsg(), OrderCancelReasons.DeviceBroken.getMsg(), - OrderCancelReasons.BatteryLow.getMsg(), OrderCancelReasons.DriverIsIll.getMsg()}; + mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), + TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg()}; break; case ArriveAtStart: - mContentArrays = new String[]{OrderCancelReasons.CarBroken.getMsg(), OrderCancelReasons.DeviceBroken.getMsg(), - OrderCancelReasons.BatteryLow.getMsg(), OrderCancelReasons.DriverIsIll.getMsg(), - OrderCancelReasons.PassengerNotArrive.getMsg()}; + mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), + TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), + TaxiOrderCancelReasons.PassengerNotArrive.getMsg()}; break; case OnTheWayToEnd: case ArriveAtEnd: - mContentArrays = new String[]{OrderCancelReasons.CarBroken.getMsg(), OrderCancelReasons.DeviceBroken.getMsg(), - OrderCancelReasons.BatteryLow.getMsg(), OrderCancelReasons.DriverIsIll.getMsg(), OrderCancelReasons.PassengerStopOver.getMsg()}; + mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), + TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), TaxiOrderCancelReasons.PassengerStopOver.getMsg()}; break; default: - mContentArrays = new String[]{OrderCancelReasons.CarBroken.getMsg(), OrderCancelReasons.DeviceBroken.getMsg(), - OrderCancelReasons.BatteryLow.getMsg(), OrderCancelReasons.DriverIsIll.getMsg(), - OrderCancelReasons.PassengerNotArrive.getMsg(), OrderCancelReasons.PassengerStopOver.getMsg()}; + mContentArrays = new String[]{TaxiOrderCancelReasons.CarBroken.getMsg(), TaxiOrderCancelReasons.DeviceBroken.getMsg(), + TaxiOrderCancelReasons.BatteryLow.getMsg(), TaxiOrderCancelReasons.DriverIsIll.getMsg(), + TaxiOrderCancelReasons.PassengerNotArrive.getMsg(), TaxiOrderCancelReasons.PassengerStopOver.getMsg()}; break; } } - protected OCHTaxiOrderCancelDialog(Context context, boolean cancelable, OnCancelListener cancelListener) { + protected TaxiOrderCancelDialog(Context context, boolean cancelable, OnCancelListener cancelListener) { super(context, cancelable, cancelListener); } - protected OCHTaxiOrderCancelDialog(Context context, int themeResId) { + protected TaxiOrderCancelDialog(Context context, int themeResId) { super(context, themeResId); } @@ -128,11 +128,11 @@ public class OCHTaxiOrderCancelDialog extends AlertDialog implements View.OnClic @Override public void onClick(View v) { if (v.getId() == R.id.order_cancel_commit_tv) {//bt commit - if (!TextUtils.isEmpty(mCurrentReason) && OrderCancelReasons.getType(mCurrentReason) != 0) { + if (!TextUtils.isEmpty(mCurrentReason) && TaxiOrderCancelReasons.getType(mCurrentReason) != 0) { if (1 == mOrderStatus){//预约单 - mOchTaxiFragmentWeak.get().cancelOrderById(mOrderNo,OrderCancelReasons.getType(mCurrentReason),mCurrentReason); + mOchTaxiFragmentWeak.get().cancelOrderById(mOrderNo, TaxiOrderCancelReasons.getType(mCurrentReason),mCurrentReason); }else {//即时单 - mOchTaxiFragmentWeak.get().cancelCurOrder(OrderCancelReasons.getType(mCurrentReason),mCurrentReason); + mOchTaxiFragmentWeak.get().cancelCurOrder(TaxiOrderCancelReasons.getType(mCurrentReason),mCurrentReason); } dismiss(); }else { diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiPersonalDialogFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiPersonalDialogFragment.java similarity index 93% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiPersonalDialogFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiPersonalDialogFragment.java index 88437c70ac..d89ea427ed 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiPersonalDialogFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiPersonalDialogFragment.java @@ -31,11 +31,11 @@ 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.constant.OrderStatusEnum; +import com.mogo.och.taxi.constant.TaxiOrderStatusEnum; import com.mogo.och.taxi.R; import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.taxi.constant.OrderTypeEnum; -import com.mogo.och.taxi.utils.OchTaxiUtils; +import com.mogo.och.taxi.constant.TaxiOrderTypeEnum; +import com.mogo.och.taxi.utils.TaxiDateTimeUtil; import java.util.ArrayList; import java.util.Calendar; @@ -48,7 +48,7 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAX * @author: wangmingjun * @date: 2021/8/18 */ -public class OCHTaxiPersonalDialogFragment extends DialogFragment implements View.OnClickListener { +public class TaxiPersonalDialogFragment extends DialogFragment implements View.OnClickListener { private final static String TAG = "OCHTaxiOrdersDialog"; @@ -62,16 +62,16 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie private ConstraintLayout mNoDatas; private List orders = new ArrayList<>(); private String[] mTabTitles = {"在线时长","订单完成数"}; - private List fragments = new ArrayList<>(); + private List fragments = new ArrayList<>(); private int mNextPage = 0; private int mPerPageSize = 10; - private static OCHTaxiFragment mTaxiFragment; + private static TaxiFragment mTaxiFragment; private static boolean serverHadNoData = false; - public OCHTaxiPersonalDialogFragment(){ + public TaxiPersonalDialogFragment(){ } - public OCHTaxiPersonalDialogFragment(OCHTaxiFragment taxiFragment){ + public TaxiPersonalDialogFragment(TaxiFragment taxiFragment){ mTaxiFragment = taxiFragment; } @Nullable @@ -141,11 +141,11 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie if (0 == i){ mOperationTab.addTab(tab,true); changeOperationTabLayoutTabUI(tab,true); - fragments.add(OCHTaxiOperationDatasFragment.newInstance(getActivity(),0)); + fragments.add(TaxiOperationDatasFragment.newInstance(getActivity(),0)); }else if (1 == i){ mOperationTab.addTab(tab); changeOperationTabLayoutTabUI(tab,false); - fragments.add(OCHTaxiOperationDatasFragment.newInstance(getActivity(),1)); + fragments.add(TaxiOperationDatasFragment.newInstance(getActivity(),1)); } } mOperationTab.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { @@ -302,7 +302,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie if (null == queryRespBean) return; if (holder instanceof DayGroupViewHolder){ DayGroupViewHolder groupViewHolder = (DayGroupViewHolder)holder; - groupViewHolder.dayGroupTv.setText(OchTaxiUtils.getYMDTime(queryRespBean.createTime)); + groupViewHolder.dayGroupTv.setText(TaxiDateTimeUtil.getYMDTime(queryRespBean.createTime)); bindOrderDetailData(queryRespBean,groupViewHolder.orderTimeTv,groupViewHolder.startStationTv,groupViewHolder.endStationTv, groupViewHolder.orderStatusBt,groupViewHolder.orderTypeBt,groupViewHolder.orderNumTv); if (isNoLineItem(position)){ @@ -343,9 +343,9 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie if (position == 0){ return DAY_GROUP_ITEM; } - String currentDate = OchTaxiUtils.getYMDTime(orders.get(position).createTime);//获取当前订单时间 + String currentDate = TaxiDateTimeUtil.getYMDTime(orders.get(position).createTime);//获取当前订单时间 int prevIndex = position - 1; - String preDate = OchTaxiUtils.getYMDTime(orders.get(prevIndex).createTime); + String preDate = TaxiDateTimeUtil.getYMDTime(orders.get(prevIndex).createTime); boolean isDifferent = !preDate.equals(currentDate);//前一个订单的日期跟第二个订单的日期是否一致 return isDifferent ? DAY_GROUP_ITEM : ORDER_DETAIL_ITEM;//一样订单详情, 不一样新添加分组 } @@ -354,9 +354,9 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie if (position == orders.size() -1){ return false; }else { - String currentDate = OchTaxiUtils.getYMDTime(orders.get(position).createTime);//获取当前订单时间 + String currentDate = TaxiDateTimeUtil.getYMDTime(orders.get(position).createTime);//获取当前订单时间 int nextIndex = position + 1; - String preDate = OchTaxiUtils.getYMDTime(orders.get(nextIndex).createTime); + String preDate = TaxiDateTimeUtil.getYMDTime(orders.get(nextIndex).createTime); boolean isDifferent = preDate.equals(currentDate);//订单跟后一个订单是否是同一天 return isDifferent;//一样有划分线, 不一样没有划分线 } @@ -372,7 +372,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie Button orderStatusBt, Button orderTypeBt, TextView orderNumTv){ Calendar calendar= Calendar.getInstance(); calendar.setTimeInMillis(queryRespBean.createTime); - orderTimeTv.setText(OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_HH_mm)); + orderTimeTv.setText(TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_HH_mm)); startStationTv.setText(queryRespBean.startSiteAddr); endStationTv.setText(queryRespBean.endSiteAddr); orderStatusBt.setText(getOrderStatus(queryRespBean.orderStatus,orderStatusBt)); @@ -382,7 +382,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) private String getOrderStatus(int status, Button button){ - OrderStatusEnum orderStatus = OrderStatusEnum.valueOf(status); + TaxiOrderStatusEnum orderStatus = TaxiOrderStatusEnum.valueOf(status); switch (orderStatus){ case JourneyCompleted: button.setBackground(context.getDrawable(R.drawable.taxi_order_button_status_canceled_bg)); @@ -398,7 +398,7 @@ public class OCHTaxiPersonalDialogFragment extends DialogFragment implements Vie @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) private String getOrderType(int type, Button button){ - if (type == OrderTypeEnum.Reserved.getType()){ + if (type == TaxiOrderTypeEnum.Reserved.getType()){ button.setBackground(context.getDrawable(R.drawable.taxi_order_button_type_reserver_bg)); return "预约单"; }else{ diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiRadiuImageView.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiRadiusImageView.java similarity index 92% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiRadiuImageView.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiRadiusImageView.java index 1b562e89f4..9f61645c94 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiRadiuImageView.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiRadiusImageView.java @@ -16,7 +16,7 @@ import com.mogo.och.taxi.R; * @author: wangmingjun * @date: 2021/9/29 */ -public class OCHTaxiRadiuImageView extends AppCompatImageView { +public class TaxiRadiusImageView extends AppCompatImageView { private float width, height; private int defaultRadius = 0; private int radius; @@ -26,17 +26,17 @@ public class OCHTaxiRadiuImageView extends AppCompatImageView { private int leftBottomRadius; - public OCHTaxiRadiuImageView(Context context) { + public TaxiRadiusImageView(Context context) { this(context, null); init(context, null); } - public OCHTaxiRadiuImageView(Context context, AttributeSet attrs) { + public TaxiRadiusImageView(Context context, AttributeSet attrs) { this(context, attrs, 0); init(context, attrs); } - public OCHTaxiRadiuImageView(Context context, AttributeSet attrs, int defStyleAttr) { + public TaxiRadiusImageView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(context, attrs); } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiReserveOrdersFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiReserveOrdersFragment.java similarity index 89% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiReserveOrdersFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiReserveOrdersFragment.java index f42945b3c7..249d6d896d 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiReserveOrdersFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiReserveOrdersFragment.java @@ -17,7 +17,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.mogo.eagle.core.utilcode.mogo.toast.TipToast; import com.mogo.och.taxi.R; import com.mogo.och.taxi.bean.OrderQueryRespBean; -import com.mogo.och.taxi.utils.OchTaxiUtils; +import com.mogo.och.taxi.utils.TaxiDateTimeUtil; import java.util.ArrayList; import java.util.Calendar; @@ -30,7 +30,7 @@ import static androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE; * @date: 2021/9/2 * 待服务订单列表 */ -public class OCHTaxiReserveOrdersFragment extends BaseTaxiUIFragment { +public class TaxiReserveOrdersFragment extends BaseTaxiUIFragment { private RecyclerView mRecyclerView; private TextView mNodataTv; @@ -38,15 +38,15 @@ public class OCHTaxiReserveOrdersFragment extends BaseTaxiUIFragment { private View mBootRefreshNoDataView; private List mDatas = new ArrayList<>(); private ToBeServedOrdersAdapter mAdapter; - private static OCHTaxiFragment mTaxiFragment; + private static TaxiFragment mTaxiFragment; private static Activity mActivity; private boolean isUpwardSliding = false; - public static OCHTaxiReserveOrdersFragment newInstance(Activity activity, OCHTaxiFragment taxiFragment){ + public static TaxiReserveOrdersFragment newInstance(Activity activity, TaxiFragment taxiFragment){ mActivity = activity; mTaxiFragment = taxiFragment; Bundle args = new Bundle(); - OCHTaxiReserveOrdersFragment fragment = new OCHTaxiReserveOrdersFragment(); + TaxiReserveOrdersFragment fragment = new TaxiReserveOrdersFragment(); fragment.setArguments( args ); return fragment; } @@ -129,16 +129,16 @@ public class OCHTaxiReserveOrdersFragment extends BaseTaxiUIFragment { if (datas != null && datas.size() >0 ){ ToBeServedOrdersViewHolder viewHolder = (ToBeServedOrdersViewHolder)holder; OrderQueryRespBean.Result order = datas.get(position); - Calendar calendar = OchTaxiUtils.formatLongToCalendar(order.bookingTime); - if (OchTaxiUtils.compareDateIsCurrentDay(calendar)){ - viewHolder.orderTime.setText("用车时间:今天"+OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_HH_mm)); + Calendar calendar = TaxiDateTimeUtil.formatLongToCalendar(order.bookingTime); + if (TaxiDateTimeUtil.compareDateIsCurrentDay(calendar)){ + viewHolder.orderTime.setText("用车时间:今天"+ TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_HH_mm)); }else { - viewHolder.orderTime.setText("用车时间:"+OchTaxiUtils.formatCalendarToString(calendar,OchTaxiUtils.TAXI_MM_dd_HH_mm)); + viewHolder.orderTime.setText("用车时间:"+ TaxiDateTimeUtil.formatCalendarToString(calendar, TaxiDateTimeUtil.TAXI_MM_dd_HH_mm)); } viewHolder.orderCancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - new OCHTaxiOrderCancelDialog(mTaxiFragment,context,order.orderNo,1).show(); + new TaxiOrderCancelDialog(mTaxiFragment,context,order.orderNo,1).show(); } }); viewHolder.startStation.setText(order.startSiteAddr); diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiServerOrdersFragment.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java similarity index 91% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiServerOrdersFragment.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java index 01e156ac38..f396603a95 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/OCHTaxiServerOrdersFragment.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiServerOrdersFragment.java @@ -33,15 +33,15 @@ import java.util.List; * * 网约车-出租车UI */ -public class OCHTaxiServerOrdersFragment extends BaseTaxiUIFragment { +public class TaxiServerOrdersFragment extends BaseTaxiUIFragment { - public static final String TAG = "OCHTaxiFragment"; + public static final String TAG = "TaxiFragment"; - public static OCHTaxiServerOrdersFragment newInstance() { + public static TaxiServerOrdersFragment newInstance() { Bundle args = new Bundle(); - OCHTaxiServerOrdersFragment fragment = new OCHTaxiServerOrdersFragment(); + TaxiServerOrdersFragment fragment = new TaxiServerOrdersFragment(); fragment.setArguments( args ); return fragment; } @@ -51,8 +51,8 @@ public class OCHTaxiServerOrdersFragment extends BaseTaxiUIFragment { private ViewPager mTaxiOrderPager; private String[] mTabTitles = {"进行中","待服务"}; private List fragments = new ArrayList<>(); - private OCHTaxiBeingServerdOrdersFragment beingServerdOrdersFragment = null; - private OCHTaxiReserveOrdersFragment reserveOrdersFragment = null; + private TaxiBeingServerdOrdersFragment beingServerdOrdersFragment = null; + private TaxiReserveOrdersFragment reserveOrdersFragment = null; @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) @Override @@ -82,12 +82,12 @@ public class OCHTaxiServerOrdersFragment extends BaseTaxiUIFragment { if (0 == i){ mTaxiOrderTab.addTab(tab,true); changeTabLayoutTabUI(tab,true); - beingServerdOrdersFragment = OCHTaxiBeingServerdOrdersFragment.newInstance(getActivity(),(OCHTaxiFragment) getParentFragment()); + beingServerdOrdersFragment = TaxiBeingServerdOrdersFragment.newInstance(getActivity(),(TaxiFragment) getParentFragment()); fragments.add(beingServerdOrdersFragment); }else if (1 == i){ mTaxiOrderTab.addTab(tab); changeTabLayoutTabUI(tab,false); - reserveOrdersFragment = OCHTaxiReserveOrdersFragment.newInstance(getActivity(),(OCHTaxiFragment) getParentFragment()); + reserveOrdersFragment = TaxiReserveOrdersFragment.newInstance(getActivity(),(TaxiFragment) getParentFragment()); fragments.add(reserveOrdersFragment); } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/OchTaxiAnalyticsUtil.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsUtil.java similarity index 63% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/OchTaxiAnalyticsUtil.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsUtil.java index cc07f8f052..346ad51879 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/OchTaxiAnalyticsUtil.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TaxiAnalyticsUtil.java @@ -8,7 +8,7 @@ import com.mogo.eagle.core.data.app.AppConfigInfo; import com.mogo.eagle.core.function.call.analytics.AnalyticsManager; import com.mogo.eagle.core.utilcode.util.DateTimeUtils; import com.mogo.eagle.core.utilcode.util.UiThreadHandler; -import com.mogo.och.taxi.constant.OCHTaxiConst; +import com.mogo.och.taxi.constant.TaxiConst; import java.util.HashMap; import java.util.Map; @@ -18,7 +18,7 @@ import java.util.Map; * * Created on 2022/3/24 */ -public class OchTaxiAnalyticsUtil { +public class TaxiAnalyticsUtil { /** * 触发'开始服务'埋点流程: @@ -34,19 +34,19 @@ public class OchTaxiAnalyticsUtil { System.currentTimeMillis(), DateTimeUtils.yyyy_MM_dd_HH_mm_ss); Map params = new HashMap<>(); - params.put(OCHTaxiConst.EVENT_PARAM_SN, sn); - params.put(OCHTaxiConst.EVENT_PARAM_PLATE_NUM, TextUtils.isEmpty(plateNum) ? "" : plateNum); - params.put(OCHTaxiConst.EVENT_PARAM_ENV_ONLINE, + params.put(TaxiConst.EVENT_PARAM_SN, sn); + params.put(TaxiConst.EVENT_PARAM_PLATE_NUM, TextUtils.isEmpty(plateNum) ? "" : plateNum); + params.put(TaxiConst.EVENT_PARAM_ENV_ONLINE, DebugConfig.getNetMode() == DebugConfig.NET_MODE_RELEASE ? true : false); - params.put(OCHTaxiConst.EVENT_PARAM_TIME, dateTime); - params.put(OCHTaxiConst.EVENT_PARAM_START_NAME, startName); - params.put(OCHTaxiConst.EVENT_PARAM_END_NAME, endName); - params.put(OCHTaxiConst.EVENT_PARAM_ORDER_NUMBER, orderNo); + params.put(TaxiConst.EVENT_PARAM_TIME, dateTime); + params.put(TaxiConst.EVENT_PARAM_START_NAME, startName); + params.put(TaxiConst.EVENT_PARAM_END_NAME, endName); + params.put(TaxiConst.EVENT_PARAM_ORDER_NUMBER, orderNo); Runnable runnable = () -> { // 15s内未开启,上报失败埋点 - params.put(OCHTaxiConst.EVENT_PARAM_START_RESULT, false); - AnalyticsManager.INSTANCE.track(OCHTaxiConst.EVENT_KEY_START_SERVICE, params); + params.put(TaxiConst.EVENT_PARAM_START_RESULT, false); + AnalyticsManager.INSTANCE.track(TaxiConst.EVENT_KEY_START_SERVICE, params); }; if (send) { @@ -54,10 +54,10 @@ public class OchTaxiAnalyticsUtil { if (runnable != null && UiThreadHandler.getsUiHandler().hasCallbacks(runnable)) { UiThreadHandler.removeCallbacks(runnable); } - params.put(OCHTaxiConst.EVENT_PARAM_START_RESULT, true); - AnalyticsManager.INSTANCE.track(OCHTaxiConst.EVENT_KEY_START_SERVICE, params); + params.put(TaxiConst.EVENT_PARAM_START_RESULT, true); + AnalyticsManager.INSTANCE.track(TaxiConst.EVENT_KEY_START_SERVICE, params); } else { - UiThreadHandler.postDelayed(runnable, OCHTaxiConst.LOOP_PERIOD_15S); + UiThreadHandler.postDelayed(runnable, TaxiConst.LOOP_PERIOD_15S); } } } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/OchTaxiUtils.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TaxiDateTimeUtil.java similarity index 94% rename from OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/OchTaxiUtils.java rename to OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TaxiDateTimeUtil.java index fc8747b6cd..da2cc3b86f 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/OchTaxiUtils.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/utils/TaxiDateTimeUtil.java @@ -11,7 +11,7 @@ import java.util.Calendar; * @author: wangmingjun * @date: 2021/8/20 */ -public class OchTaxiUtils { +public class TaxiDateTimeUtil { public static final String TAXI_HH_mm = "HH:mm"; public static final String TAXI_MM_dd = "MM-dd"; @@ -32,8 +32,8 @@ public class OchTaxiUtils { public static boolean compareDateIsCurrentDay(Calendar targetCalendar){ Calendar currentCale = DateTimeUtils.getCurrentDateTime(); - String currentDay = formatCalendarToString(currentCale,OchTaxiUtils.TAXI_yyyy_MM_dd); - if (currentDay.equals(formatCalendarToString(targetCalendar,OchTaxiUtils.TAXI_yyyy_MM_dd))){ + String currentDay = formatCalendarToString(currentCale, TaxiDateTimeUtil.TAXI_yyyy_MM_dd); + if (currentDay.equals(formatCalendarToString(targetCalendar, TaxiDateTimeUtil.TAXI_yyyy_MM_dd))){ return true; }else { return false; diff --git a/OCH/mogo-och-taxi/src/main/res/layout/taxi_order_grab_view.xml b/OCH/mogo-och-taxi/src/main/res/layout/taxi_order_grab_view.xml index f4c6717bbd..3f9ca0f376 100644 --- a/OCH/mogo-och-taxi/src/main/res/layout/taxi_order_grab_view.xml +++ b/OCH/mogo-och-taxi/src/main/res/layout/taxi_order_grab_view.xml @@ -155,7 +155,7 @@ app:layout_constraintRight_toRightOf="parent" app:layout_constraintBottom_toBottomOf="parent"/> - { override fun onMessageResponseServer(msg: MogoProtocolMsg?, channel: Channel?) { - CallerLogger.d("$M_ADAS_IMPL$TAG", "Receive client data is:${msg?.toString()}") + msg?.let { + when (it.protocolType) { + REQ_CAR_NUMBER -> { + if (!AppConfigInfo.plateNumber.isNullOrEmpty()) { + val platNumberArray = AppConfigInfo.plateNumber!!.toByteArray() + NSDNettyManager.getInstance().sendMsgToSpecifiedClient( + MogoProtocolMsg( + REQ_CAR_NUMBER, + platNumberArray.size, platNumberArray + ), channel + ) { + CallerLogger.d("$M_ADAS_IMPL$TAG", "司机端发送车牌号到乘客端是否成功:${it.isSuccess}") + } + } else { + CallerAutoPilotManager.getCarConfig() + } + } + else -> {} + } + } } override fun onStartServer() { @@ -91,8 +114,15 @@ class MoGoAutopilotProvider : override fun onChannelConnect(channel: Channel?) { val socketAddress = channel?.remoteAddress().toString() CallerLogger.d("$M_ADAS_IMPL$TAG", "Client ip is:${socketAddress}") - val byteArray = if(FunctionBuildConfig.isDemoMode) byteArrayOf(1) else byteArrayOf(0) - NSDNettyManager.getInstance().sendMsgToSpecifiedClient(MogoProtocolMsg(SYNC_MODE_STATUS, byteArray.size, byteArray), channel) { + val byteArray = + if (FunctionBuildConfig.isDemoMode) byteArrayOf(1) else byteArrayOf(0) + NSDNettyManager.getInstance().sendMsgToSpecifiedClient( + MogoProtocolMsg( + SYNC_MODE_STATUS, + byteArray.size, + byteArray + ), channel + ) { CallerLogger.d("$M_ADAS_IMPL$TAG", "同步美化模式状态是否成功:${it.isSuccess}") } } @@ -114,41 +144,21 @@ class MoGoAutopilotProvider : NSDNettyManager.getInstance() .searchAndConnectServer(context, MoGoAiCloudClientConfig.getInstance().sn, object : NettyClientListener { - override fun onMessageResponseClient(msg: MogoProtocolMsg?, sign: String?) { + override fun onMessageResponseClient( + msg: MogoProtocolMsg?, + sign: String?, + channel: Channel + ) { // 乘客端收到adas数据直接解析,后续分发解析后的数据流程同司机端 - try { - msg?.let { - when(it.protocolType) { - NORMAL_DATA -> AdasManager.getInstance().parseIPCData(it.body) - 3 -> { - FunctionBuildConfig.isDemoMode = when(it.body[0].toInt()) { - 1 -> true - else -> false - } - setDemoMode(FunctionBuildConfig.isDemoMode) - } - else -> {} - } - } - } catch (e: Exception) { - e.printStackTrace() - CallerLogger.e("$M_ADAS_IMPL$TAG", "乘客屏解析数据流程中出现异常:${e.message}") - } + handleMsgFromServer(msg, channel) } - override fun onClientStatusConnectChanged(statusCode: Int, sign: String?) { - when (statusCode) { - ConnectState.STATUS_CONNECT_SUCCESS -> { - CallerLogger.d("$M_ADAS_IMPL$TAG", "乘客端连接司机端服务成功! sign is:${sign}") - } - else -> { - ToastUtils.showLong("和司机端连接异常!") - CallerLogger.d( - "$M_ADAS_IMPL$TAG", - "client statusCode is:${statusCode}" - ) - } - } + override fun onClientStatusConnectChanged( + statusCode: Int, + sign: String?, + channel: Channel + ) { + handleConnStatusWithServer(statusCode, sign) } }) } @@ -157,7 +167,7 @@ class MoGoAutopilotProvider : // 监听ADAS-SDK获取到的工控机数据(乘客也需注册) AdasManager.getInstance().setOnAdasListener(MoGoAdasListenerImpl()) // 司机端监听 - if (FunctionBuildConfig.appIdentityMode == 0) { + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { AdasManager.getInstance().setOnMultiDeviceListener { bytes -> // 发送数据给乘客端 if (NSDNettyManager.getInstance().isServerStart) { @@ -284,7 +294,7 @@ class MoGoAutopilotProvider : } override fun setAutoPilotSpeed(speed: Int): Boolean { - return AdasManager.getInstance().sendAutopilotSpeedReq(speed/3.6) + return AdasManager.getInstance().sendAutopilotSpeedReq(speed / 3.6) } override fun setIPCShutDown() { @@ -328,11 +338,17 @@ class MoGoAutopilotProvider : AdasManager.getInstance().sendDemoModeReq(0) } // 同步给乘客端 - if (FunctionBuildConfig.appIdentityMode == 0) { + if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) { var byteArray = if (isEnable) byteArrayOf(1) else byteArrayOf(0) if (NSDNettyManager.getInstance().isServerStart) { NSDNettyManager.getInstance() - .sendMsgToAllClients(MogoProtocolMsg(SYNC_MODE_STATUS, byteArray.size, byteArray)) + .sendMsgToAllClients( + MogoProtocolMsg( + SYNC_MODE_STATUS, + byteArray.size, + byteArray + ) + ) } else { CallerLogger.d("$M_ADAS_IMPL$TAG", "同步美化模式状态时司机端Server未启动!") } @@ -380,5 +396,76 @@ class MoGoAutopilotProvider : return AdasManager.getInstance().protocolVersion } + override fun connectSpecifiedServer(ip: String) { + NSDNettyManager.getInstance().connectSpecifiedServer( + ip, + NettyTcpServer.SERVER_PORT, + MoGoAiCloudClientConfig.getInstance().sn, + object : NettyClientListener { + override fun onMessageResponseClient( + msg: MogoProtocolMsg?, + sign: String?, + channel: Channel + ) { + handleMsgFromServer(msg, channel) + } + override fun onClientStatusConnectChanged( + statusCode: Int, + sign: String?, + channel: Channel + ) { + handleConnStatusWithServer(statusCode, sign) + } + }) + } + + private fun handleMsgFromServer(msg: MogoProtocolMsg?, channel: Channel) { + try { + msg?.let { + when (it.protocolType) { + NORMAL_DATA -> AdasManager.getInstance().parseIPCData(it.body) + SYNC_MODE_STATUS -> { + FunctionBuildConfig.isDemoMode = when (it.body[0].toInt()) { + 1 -> true + else -> false + } + setDemoMode(FunctionBuildConfig.isDemoMode) + } + REQ_CAR_NUMBER -> { + AppConfigInfo.plateNumber = String(msg.body) + ToastUtils.showShort(AppConfigInfo.plateNumber) + // TODO:("获取到车牌号") + } + else -> {} + } + } + } catch (e: Exception) { + e.printStackTrace() + CallerLogger.e("$M_ADAS_IMPL$TAG", "乘客屏解析数据流程中出现异常:${e.message}") + } + } + + private fun handleConnStatusWithServer(statusCode: Int, sign: String?) { + when (statusCode) { + ConnectState.STATUS_CONNECT_SUCCESS -> { + CallerLogger.d("$M_ADAS_IMPL$TAG", "乘客端连接司机端服务成功! sign is:${sign}") + if (AppConfigInfo.plateNumber.isNullOrEmpty()) { + var byteArray = byteArrayOf(0) + NSDNettyManager.getInstance().sendMogoProtocolMsgToServer( + MogoProtocolMsg(REQ_CAR_NUMBER, byteArray.size, byteArray) + ) { + CallerLogger.d("$M_ADAS_IMPL$TAG", "请求车牌号数据发送是否成功:${it}") + } + } + } + else -> { + ToastUtils.showLong("和司机端连接异常!") + CallerLogger.d( + "$M_ADAS_IMPL$TAG", + "client statusCode is:${statusCode}" + ) + } + } + } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasListenerImpl.kt b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasListenerImpl.kt index 3e49dc602d..c414762e87 100644 --- a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasListenerImpl.kt +++ b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasListenerImpl.kt @@ -1,7 +1,6 @@ package com.mogo.eagle.core.function.autopilot.adapter import chassis.VehicleStateOuterClass -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.config.HdMapBuildConfig import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE @@ -19,7 +18,6 @@ import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LO import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_TRAJECTORY import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_LINK_LOG_WEB_SOCKET_VEHICLE import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.invokeArriveAtStation import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager.invokeAutoPilotStatus @@ -28,7 +26,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarConfigListenerManager.invokeAutopilotCarConfigData import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarStatusListenerManager.invokeAutopilotCarStateData import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager.invokeAutopilotIdentifyDataUpdate -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager.invokeAutopilotRecordResult +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager.invokeAutopilotRecordResult import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager.invokeAutopilotWarnMessage import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager.invokeAutopilotRotting import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager.invokeAutopilotTrajectory @@ -37,6 +35,7 @@ import com.mogo.eagle.core.function.call.hmi.CallerHmiManager.showAdUpgradeStatu import com.mogo.eagle.core.function.call.hmi.CallerHmiManager.showDockerRebootResult import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL import com.zhidao.support.adas.high.AdasManager import com.zhidao.support.adas.high.OnAdasListener import com.zhidao.support.adas.high.bean.IPCUpgradeStateInfo @@ -49,7 +48,6 @@ import mogo.telematics.pad.MessagePad.TrackedObject import mogo_msg.MogoReportMsg import perception.TrafficLightOuterClass import record_cache.RecordPanelOuterClass -import java.util.* /** * @author emArrow @@ -75,23 +73,9 @@ class MoGoAdasListenerImpl : OnAdasListener { ) override fun onTrajectory(header: MessagePad.Header, trajectory: MessagePad.Trajectory?) { if (HdMapBuildConfig.isMapLoaded) { - val trajectoryInfoArrayList = ArrayList() if (trajectory != null && trajectory.pointsList.size > 0) { - for (trajectory in trajectory.pointsList) { - val adasTrajectoryInfo = ADASTrajectoryInfo() - adasTrajectoryInfo.lat = trajectory.latitude - adasTrajectoryInfo.lon = trajectory.longitude - adasTrajectoryInfo.acceleration = trajectory.acceleration - adasTrajectoryInfo.accumulatedDis = trajectory.accumulatedDis - adasTrajectoryInfo.time = trajectory.time - adasTrajectoryInfo.velocity = trajectory.velocity - adasTrajectoryInfo.alt = trajectory.altitude - adasTrajectoryInfo.kappa = trajectory.kappa - adasTrajectoryInfo.theta = trajectory.theta - trajectoryInfoArrayList.add(adasTrajectoryInfo) - } + invokeAutopilotTrajectory(trajectory.pointsList) } - invokeAutopilotTrajectory(trajectoryInfoArrayList) } } @@ -129,7 +113,11 @@ class MoGoAdasListenerImpl : OnAdasListener { // 同步给MAP地图 CallerMapUIServiceManager.getMapUIController()?.syncLocation2Map(gnssInfo) // 同步更新经纬度和系统时间至 AutoPilotStatusListener - CallerAutoPilotStatusListenerManager.updateAutoPilotLatLon(gnssInfo.satelliteTime.toLong(),gnssInfo.longitude, gnssInfo.latitude) + CallerAutoPilotStatusListenerManager.updateAutoPilotLatLon( + gnssInfo.satelliteTime.toLong(), + gnssInfo.longitude, + gnssInfo.latitude + ) } } } @@ -187,6 +175,9 @@ class MoGoAdasListenerImpl : OnAdasListener { if (autopilotStatusInfo.connectIP == null) { autopilotStatusInfo.connectIP = AdasManager.getInstance().ipcConnectedIp } + if(autopilotStatusInfo.connectPort == null){ + autopilotStatusInfo.connectPort = AdasManager.getInstance().ipcConnectedPort + } if (autopilotStatusInfo.dockVersion == null) { AdasManager.getInstance().carConfig?.let { autopilotStatusInfo.dockVersion = it.dockVersion @@ -214,6 +205,7 @@ class MoGoAdasListenerImpl : OnAdasListener { invokeAutopilotGuardian(mogoReportMessage) } } + //感知红绿灯 override fun onPerceptionTrafficLight( header: MessagePad.Header?, diff --git a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt index 654d4e0aa2..de71747d21 100644 --- a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt +++ b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoAdasMsgConnectStatusListenerImpl.kt @@ -4,11 +4,11 @@ import android.annotation.SuppressLint import com.mogo.cloud.passport.MoGoAiCloudClientConfig import com.mogo.commons.debug.DebugConfig import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo -import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener import com.mogo.eagle.core.function.autopilot.network.AdasServiceModel import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger +import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_ADAS_IMPL import com.mogo.eagle.core.utilcode.mogo.toast.TipToast import com.zhidao.support.adas.high.AdasManager import com.zhidao.support.adas.high.OnAdasConnectStatusListener @@ -32,13 +32,17 @@ class MoGoAdasMsgConnectStatusListenerImpl : OnAdasConnectStatusListener, //自动驾驶车速度 private var mCurrentAutopilotSpeed = 0f + private var connectStatus = false override fun onConnectionIPCStatus(ipcConnectionStatus: Int, reason: String?) { if (ipcConnectionStatus == Constants.IPC_CONNECTION_STATUS.CONNECTED) { CallerLogger.d("$M_ADAS_IMPL$TAG", "webSocket 连接成功") + connectStatus = true // 初始化自动驾驶状态信息 CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectIP = AdasManager.getInstance().ipcConnectedIp + CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectPort = + AdasManager.getInstance().ipcConnectedPort CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectStatus = true CallerAutoPilotStatusListenerManager.invokeAutoPilotStatus() @@ -49,12 +53,16 @@ class MoGoAdasMsgConnectStatusListenerImpl : OnAdasConnectStatusListener, } else if (ipcConnectionStatus == Constants.IPC_CONNECTION_STATUS.DISCONNECTED) { CallerLogger.d("$M_ADAS_IMPL$TAG", "webSocket 连接失败 reason:$reason") -// TODO 需要修改断开提示 -// reason?.let { -// TipToast.shortTip("工控机连接断开,原因:$it , 等待重连") -// } + if (connectStatus) { + reason?.let { + TipToast.shortTip("工控机连接断开,原因:$it , 等待重连") + } + connectStatus = false + } CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectIP = AdasManager.getInstance().ipcConnectedIp + CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectPort = + AdasManager.getInstance().ipcConnectedPort CallerAutoPilotStatusListenerManager.getAutoPilotStatusInfo().connectStatus = false //与工控机断开连接,需要重置自动驾驶状态(包括上传至云平台缓存信息),等待连接成功后同步状态信息 mCurrentAutopilotStatus = 0 diff --git a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoHandAdasMsgManager.java b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoHandAdasMsgManager.java index 80566a0a9c..708e41b46d 100644 --- a/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoHandAdasMsgManager.java +++ b/core/function-impl/mogo-core-function-autopilot/src/main/java/com/mogo/eagle/core/function/autopilot/adapter/MoGoHandAdasMsgManager.java @@ -10,28 +10,21 @@ import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.constants.MoGoConfig; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotCarConfigListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotCarStateListener; -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener; import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotVehicleStateListener; import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarConfigListenerManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarStatusListenerManager; -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager; import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotVehicleStateListenerManager; import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager; import com.mogo.eagle.core.function.call.hmi.CallerHmiManager; +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils; import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr; -import com.mogo.eagle.core.utilcode.util.ThreadUtils; -import com.mogo.module.common.drawer.IdentifyDataDrawer; import org.jetbrains.annotations.NotNull; -import java.util.List; - import chassis.Chassis; import mogo.telematics.pad.MessagePad; -import record_cache.RecordPanelOuterClass; public class MoGoHandAdasMsgManager implements - IMoGoAutopilotIdentifyListener, IMoGoAutopilotVehicleStateListener, IMoGoAutopilotCarConfigListener, IMoGoAutopilotCarStateListener { @@ -42,7 +35,6 @@ public class MoGoHandAdasMsgManager implements private Context mContext; private MoGoHandAdasMsgManager(Context context) { - CallerAutopilotIdentifyListenerManager.INSTANCE.addListener(TAG, this); CallerAutopilotVehicleStateListenerManager.INSTANCE.addListener(TAG, this); CallerAutopilotCarConfigListenerManager.INSTANCE.addListener(TAG, this); CallerAutopilotCarStatusListenerManager.INSTANCE.addListener(TAG, this); @@ -91,15 +83,17 @@ public class MoGoHandAdasMsgManager implements @Override public void onAutopilotLightSwitchData(Chassis.LightSwitch lightSwitch) { //can数据转发 转向灯状态 0是正常 1是左转 2是右转 - if (lightSwitch != null) { - int state = setTurnLightState(lightSwitch.getNumber()); - if (state == 1 || state == 2) { - isShowTurnLight = true; - CallerHmiManager.INSTANCE.showBrakeLight(0); - } else { - isShowTurnLight = false; + if (!AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { //小巴不展示 + if (lightSwitch != null) { + int state = setTurnLightState(lightSwitch.getNumber()); + if (state == 1 || state == 2) { + isShowTurnLight = true; + CallerHmiManager.INSTANCE.showBrakeLight(0); + } else { + isShowTurnLight = false; + } + CallerHmiManager.INSTANCE.showTurnLight(state); } - CallerHmiManager.INSTANCE.showTurnLight(state); } } @@ -107,30 +101,7 @@ public class MoGoHandAdasMsgManager implements public void onAutopilotBrakeLightData(boolean brakeLight) { } - @Override - public void onAutopilotIdentifyDataUpdate(List trafficData) { - try { - if (FunctionBuildConfig.isDrawIdentifyData) { - ThreadUtils.getSinglePool().execute(() -> - IdentifyDataDrawer.getInstance().renderAdasRecognizedResult(trafficData) - ); - } else { - IdentifyDataDrawer.getInstance().clearOldMarker(); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - @Override - public void onAutopilotWarnMessage(MessagePad.Warn warn) { - - } - - @Override - public void onAutopilotRecordResult(RecordPanelOuterClass.RecordPanel recordPanel) { - - } @Override public void onAutopilotCarConfig(@NotNull MessagePad.CarConfigResp carConfigResp) { @@ -143,15 +114,17 @@ public class MoGoHandAdasMsgManager implements @Override public void onAutopilotCarStateData(@Nullable MessagePad.GnssInfo gnssInfo) { //根据加速度判断 是否刹车 - if (gnssInfo != null) { - //设置刹车信息 - if (gnssInfo.getAcceleration() < SharedPrefsMgr.getInstance(mContext).getFloat(MoGoConfig.BRAKE_ACCELERATION_THRESHOLD,-2.5F)) { - brakeLight = 1; - } else { - brakeLight = 0; - } - if (!isShowTurnLight) { - CallerHmiManager.INSTANCE.showBrakeLight(brakeLight); + if (!AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)) { //小巴不展示 + if (gnssInfo != null) { + //设置刹车信息 + if (gnssInfo.getAcceleration() < SharedPrefsMgr.getInstance(mContext).getFloat(MoGoConfig.BRAKE_ACCELERATION_THRESHOLD,-2.5F)) { + brakeLight = 1; + } else { + brakeLight = 0; + } + if (!isShowTurnLight) { + CallerHmiManager.INSTANCE.showBrakeLight(brakeLight); + } } } } diff --git a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/consts/Consts.kt b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/consts/Consts.kt index aa3480e8fa..9bf65b3dcf 100644 --- a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/consts/Consts.kt +++ b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/consts/Consts.kt @@ -52,8 +52,9 @@ class ChatHttp { fun getBaseUrl(): String { return when (DebugConfig.getNetMode()) { - DebugConfig.NET_MODE_DEV, DebugConfig.NET_MODE_QA, DebugConfig.NET_MODE_DEMO -> DEV_BASE_URL_OWNER + DebugConfig.NET_MODE_DEV, DebugConfig.NET_MODE_QA -> DEV_CONFIG_URL DebugConfig.NET_MODE_RELEASE -> RELEASE_BASE_URL_OWNER + DebugConfig.NET_MODE_DEMO -> DEV_BASE_URL_OWNER else -> RELEASE_BASE_URL_OWNER } } diff --git a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt index 9a88fd79e5..34947380c3 100644 --- a/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt +++ b/core/function-impl/mogo-core-function-chat/src/main/java/com/mogo/eagle/core/function/chat/facade/net/ChatServiceModel.kt @@ -8,13 +8,11 @@ import com.mogo.eagle.core.data.BaseResponse import com.mogo.eagle.core.data.chat.UserInfo import com.mogo.eagle.core.function.api.chat.biz.ChatConsts import com.mogo.eagle.core.function.api.chat.biz.IMCallType.CALL_TYPE_VOICE -import com.mogo.eagle.core.function.chat.facade.bridge.BridgeApi import com.mogo.eagle.core.function.chat.facade.consts.ChatHttp import com.mogo.eagle.core.function.chat.facade.consts.ChatHttp.Companion.getConfig import com.mogo.eagle.core.function.chat.facade.net.bean.* import com.mogo.eagle.core.function.chat.facade.utils.log import com.mogo.map.MogoLocationClient -import com.mogo.service.IMogoServiceApis import com.mogo.eagle.core.network.MoGoRetrofitFactory import retrofit2.http.* diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt index a87ce7183e..19bbea383e 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/DevaToolsProvider.kt @@ -44,6 +44,14 @@ class DevaToolsProvider : IDevaToolsProvider { MogoLogCatchManager.stopCatchLog(logPrefixName) } + override fun getTraceLogStatus(): Boolean { + return traceManager.getTraceLogStatus() + } + + override fun setTraceLogEnable(enable: Boolean) { + traceManager.setTraceLogEnable(enable) + } + override fun getTraceInfo(): HashMap { return traceManager.getTraceInfo() } diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/FeedbackManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/FeedbackManager.kt index 2e777068a6..39444462fe 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/FeedbackManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/feedback/FeedbackManager.kt @@ -8,11 +8,14 @@ import android.view.WindowManager import android.widget.TextView import androidx.fragment.app.FragmentActivity import com.mogo.cloud.passport.MoGoAiCloudClientConfig -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotManager -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager -import com.mogo.eagle.core.utilcode.kotlin.* +import com.mogo.eagle.core.utilcode.kotlin.PX +import com.mogo.eagle.core.utilcode.kotlin.onDetach +import com.mogo.eagle.core.utilcode.kotlin.safeCancel +import com.mogo.eagle.core.utilcode.kotlin.scope import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA import com.mogo.eagle.core.utilcode.mogo.toast.TipToast @@ -31,7 +34,6 @@ import com.zhjt.mogo_core_function_devatools.feedback.callback.IFeedbackCallback import kotlinx.coroutines.* import record_cache.RecordPanelOuterClass import java.io.File -import java.lang.IllegalStateException import java.text.SimpleDateFormat import java.util.* import kotlin.Result.Companion @@ -77,7 +79,7 @@ internal object FeedbackManager { record.scope.launch { val taskId = presenter.getBadCaseTaskId() - val listener = object : IMoGoAutopilotIdentifyListener { + val listener = object : IMoGoAutopilotRecordListener { override fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) { super.onAutopilotRecordResult(recordPanel) record.scope.launch { @@ -109,9 +111,9 @@ internal object FeedbackManager { } } } - CallerAutopilotIdentifyListenerManager.addListener("Feedback", listener) + CallerAutopilotRecordListenerManager.addListener("Feedback", listener) record.onDetach { - CallerAutopilotIdentifyListenerManager.removeListener("Feedback") + CallerAutopilotRecordListenerManager.removeListener("Feedback") hideFloat = null } record.text = "结束录制" diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt index 0c612508ff..133555a2d0 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/logcatch/MogoLogCatchManager.kt @@ -156,6 +156,7 @@ object MogoLogCatchManager : IMogoOnMessageListener, Handl MoGoAiCloudClientConfig.getInstance().sn, AppConfigInfo.toString(), logPrefixName?.replace("_", "-"), + mutableListOf(), content, this ) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt index 75c67d6cfa..96f33d80d6 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/trace/TraceManager.kt @@ -58,6 +58,14 @@ class TraceManager { .init(context, MoGoAiCloudClientConfig.getInstance().sn, pkgName, fwBuildMap) } + fun setTraceLogEnable(enable:Boolean){ + FileWriteManager.getInstance().logger = enable + } + + fun getTraceLogStatus():Boolean{ + return FileWriteManager.getInstance().logger + } + fun getTraceInfo(): HashMap { return traceInfoCache } diff --git a/core/function-impl/mogo-core-function-dispatch/src/main/java/com/zhjt/dispatch/DispatchAutoPilotManager.java b/core/function-impl/mogo-core-function-dispatch/src/main/java/com/zhjt/dispatch/DispatchAutoPilotManager.java index b8e8b9cec6..f7d0ffb66d 100644 --- a/core/function-impl/mogo-core-function-dispatch/src/main/java/com/zhjt/dispatch/DispatchAutoPilotManager.java +++ b/core/function-impl/mogo-core-function-dispatch/src/main/java/com/zhjt/dispatch/DispatchAutoPilotManager.java @@ -7,7 +7,6 @@ import android.os.Message; import com.mogo.aicloud.services.socket.MogoAiCloudSocketManager; import com.mogo.cloud.commons.utils.CoordinateUtils; -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters; import com.mogo.eagle.core.data.autopilot.AutopilotRouteInfo; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; @@ -275,7 +274,7 @@ public class DispatchAutoPilotManager implements IMogoOnMessageListener trajectoryInfos) { + public void onAutopilotTrajectory(List trajectoryInfos) { } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml b/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml index 8fb4538c3b..0bea840bea 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/AndroidManifest.xml @@ -7,6 +7,8 @@ + + diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index 6fe5a61626..8fc82cf6dd 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -20,14 +20,14 @@ import com.mogo.eagle.core.data.enums.SidePattern import com.mogo.eagle.core.data.enums.WarningDirectionEnum import com.mogo.eagle.core.data.notice.NoticeNormalData import com.mogo.eagle.core.data.notice.NoticeTrafficStylePushData -import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener import com.mogo.eagle.core.function.api.hmi.IMoGoHmiViewProxy import com.mogo.eagle.core.function.api.hmi.view.IViewLimitingVelocity import com.mogo.eagle.core.function.api.hmi.view.IViewNotification import com.mogo.eagle.core.function.api.hmi.view.IViewTrafficLight import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWaringProvider import com.mogo.eagle.core.function.api.hmi.warning.IMoGoWarningStatusListener -import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager import com.mogo.eagle.core.function.call.check.CallerCheckManager import com.mogo.eagle.core.function.call.devatools.CallerDevaToolsManager import com.mogo.eagle.core.function.call.map.CallerMapDataCollectorManager @@ -64,7 +64,7 @@ class MoGoHmiFragment : MvpFragment IMoGoWaringProvider, IMoGoHmiViewProxy, MoGoWarningContract.View, - IMoGoAutopilotIdentifyListener { + IMoGoAutopilotRecordListener { private val TAG = "MoGoHmiFragment" // DebugSettingView @@ -136,7 +136,7 @@ class MoGoHmiFragment : MvpFragment @OptIn(ExperimentalCoroutinesApi::class) override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - CallerAutopilotIdentifyListenerManager.addListener(TAG, this) + CallerAutopilotRecordListenerManager.addListener(TAG, this) /*// TODO 这里后面需要改成独立进程通讯后台获取YUV view.postDelayed({ @@ -167,7 +167,7 @@ class MoGoHmiFragment : MvpFragment override fun onDestroyView() { super.onDestroyView() - CallerAutopilotIdentifyListenerManager.removeListener(TAG) + CallerAutopilotRecordListenerManager.removeListener(TAG) } @@ -839,7 +839,9 @@ class MoGoHmiFragment : MvpFragment */ override fun showTurnLight(light: Int) { if (HmiBuildConfig.isShowTurnLightView) { - turnLightView.setTurnLight(light) + ThreadUtils.runOnUiThread { + turnLightView.setTurnLight(light) + } } } @@ -848,7 +850,9 @@ class MoGoHmiFragment : MvpFragment */ override fun showBrakeLight(light: Int) { if (HmiBuildConfig.isShowBrakeLightView) { - brakeView.setBrakeLight(light) + ThreadUtils.runOnUiThread { + brakeView.setBrakeLight(light) + } } } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt index 620abff3e3..d582e9ae6e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt @@ -565,8 +565,18 @@ class DebugSettingView @JvmOverloads constructor( tbChangeAutoPilotStatus.setOnCheckedChangeListener { buttonView, isChecked -> CallerAutoPilotManager.setControlAutopilotCarAuto(isChecked) } - - + when { + AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode) -> { + brakeThresholdDivider.visibility = View.GONE + btnConnectServerIp.visibility = View.GONE + etConnectServerIp.visibility = View.GONE + } + else -> { + brakeThresholdDivider.visibility = View.VISIBLE + btnConnectServerIp.visibility = View.VISIBLE + etConnectServerIp.visibility = View.VISIBLE + } + } } /** @@ -600,8 +610,10 @@ class DebugSettingView @JvmOverloads constructor( //设置连接司机屏IP btnConnectServerIp.setOnClickListener { - //TODO 连接设置 输入框:etConnectServerIp - + val ip = etConnectServerIp.text.toString() + if (!ip.isNullOrEmpty()) { + CallerAutoPilotManager.connectSpecifiedServer(ip) + } } } @@ -615,7 +627,7 @@ class DebugSettingView @JvmOverloads constructor( SharedPrefsMgr.getInstance(context) .getString(MoGoConfig.AUTOPILOT_IP, FunctionBuildConfig.adasConnectIP) - etAutopilotIP.setText(autoPilotIpAddress) + etAutopilotIP.setText("192.168.1.103:4110") etAutopilotIP.text?.let { etAutopilotIP.setSelection(it.length) } //设置工控机IP btnSetAutopilotIP.setOnClickListener { @@ -994,7 +1006,11 @@ class DebugSettingView @JvmOverloads constructor( } } - + cbTraceLog.isChecked = CallerDevaToolsManager.getTraceLogStatus() + //链路Log输出日志 + cbTraceLog.setOnCheckedChangeListener { _, isChecked -> + CallerDevaToolsManager.setTraceLogEnable(isChecked) + } //ADAS日志标签 cbAdasLog.setOnCheckedChangeListener { _, isChecked -> val adasModule = SceneModule(isChecked, SceneConstant.M_ADAS_IMPL) @@ -1329,16 +1345,17 @@ class DebugSettingView @JvmOverloads constructor( AppConfigInfo.isConnectNet = NetworkUtils.isConnected(context) AppConfigInfo.isConnectSocket = DebugConfig.isDownloadSnapshot() - when (FunctionBuildConfig.appIdentityMode) { - 0x00 -> {// 司机端 + when { + AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode) -> {// 司机端 AppConfigInfo.isDriver = true AppConfigInfo.isConnectedNetty = CallerTelematicManager.getServerStarted() } - else -> { + AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode) -> { AppConfigInfo.isDriver = false AppConfigInfo.isConnectedNetty = CallerTelematicManager.getClientConnStatus() AppConfigInfo.serverIp = CallerTelematicManager.getServerIp() } + else -> {} } /** @@ -1550,7 +1567,7 @@ class DebugSettingView @JvmOverloads constructor( } } - override fun onAutopilotTrajectory(trajectoryInfos: ArrayList) { + override fun onAutopilotTrajectory(trajectoryInfos: MutableList) { mTrajectoryInfoSize = trajectoryInfos.size } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml index cdbc1ad022..3ce43e5217 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml @@ -613,7 +613,7 @@ android:layout_marginBottom="@dimen/dp_10" android:background="@drawable/debug_setting_edit_bg" android:gravity="center" - android:text="192.168.8.102" + android:text="192.168.8.103:4110" android:textColor="#1A1A1A" android:textSize="14sp" app:layout_constraintBottom_toBottomOf="@id/btnSetAutopilotIP" @@ -1427,6 +1427,14 @@ app:justifyContent="flex_start" tools:visibility="visible"> + + + * 地图控制交互层 */ - -@Route( path = MogoServicePaths.PATH_MAP_FRAME_CONTROLLER ) -class MapFrameController implements IMogoMapFrameController { +@Route(path = MogoServicePaths.PATH_MAP_FRAME_CONTROLLER) +public class MapFrameController implements IMogoMapFrameController { private IMogoMapFrameController mController; @Override - public void initDelegate( IMogoMapFrameController controller ) { + public void initDelegate(IMogoMapFrameController controller) { mController = controller; } @Override public void changeTo2dMode() { - if ( mController != null ) { + if (mController != null) { mController.changeTo2dMode(); } } @Override public void changeToVRMode() { - if ( mController != null ) { + if (mController != null) { mController.changeToVRMode(); } } @Override - public void init( Context context ) { - + public void init(Context context) { + MapIdentifySubscriber.Companion.getInstance(); } @Override diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapIdentifySubscriber.kt b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapIdentifySubscriber.kt new file mode 100644 index 0000000000..5eb0df67c8 --- /dev/null +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/map/MapIdentifySubscriber.kt @@ -0,0 +1,56 @@ +package com.mogo.eagle.core.function.map + +import com.mogo.eagle.core.data.config.FunctionBuildConfig +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener +import com.mogo.eagle.core.function.api.base.IMoGoSubscriber +import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager +import com.mogo.eagle.core.utilcode.util.ThreadUtils +import mogo.telematics.pad.MessagePad +import mogo.telematics.pad.MessagePad.TrackedObject + +/** + * 订阅感知数据的订阅者 + * 数据来源:工控机、OBU、云端下发 + * + * @author donghongyu + */ +class MapIdentifySubscriber private constructor() : IMoGoSubscriber, IMoGoAutopilotIdentifyListener { + + private val TAG = "MapIdentifySubscriber" + + init { + onCrate() + } + + companion object { + val instance: MapIdentifySubscriber by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) { + MapIdentifySubscriber() + } + } + + override fun onCrate() { + CallerAutopilotIdentifyListenerManager.addListener(TAG, this) + + } + + override fun onDestroy() { + CallerAutopilotIdentifyListenerManager.removeListener(TAG) + + } + + override fun onAutopilotIdentifyDataUpdate(trafficData: List?) { + try { + if (FunctionBuildConfig.isDrawIdentifyData) { + ThreadUtils.getSinglePool().execute { IdentifyDataDrawer.getInstance().renderAdasRecognizedResult(trafficData) } + } else { + IdentifyDataDrawer.getInstance().clearOldMarker() + } + } catch (e: Exception) { + e.printStackTrace() + } + } + + override fun onAutopilotWarnMessage(warn: MessagePad.Warn?) { + + } +} \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java index 6de360c5ca..a673435510 100644 --- a/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java +++ b/core/function-impl/mogo-core-function-map/src/main/java/com/mogo/eagle/core/function/smp/SmallMapFragment.java @@ -6,7 +6,6 @@ import android.view.View; import com.alibaba.android.arouter.facade.annotation.Route; import com.mogo.commons.mvp.BaseFragment; -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.constants.MoGoFragmentPaths; import com.mogo.eagle.core.data.map.MogoLatLng; @@ -130,7 +129,7 @@ public class SmallMapFragment extends BaseFragment } @Override - public void onAutopilotTrajectory(ArrayList trajectoryInfos) { + public void onAutopilotTrajectory(List trajectoryInfos) { } diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/ADASTrajectoryInfo.java b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/ADASTrajectoryInfo.java deleted file mode 100644 index 025c0007bf..0000000000 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/ADASTrajectoryInfo.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.mogo.eagle.core.data.autopilot; - - -/** - * @author song kenan - * @des - * @date 2021/10/21 - */ -public class ADASTrajectoryInfo { - //经度 - private Double lon; - //纬度 - private Double lat; - //高度 - private Double alt; - //时间 秒s - private Double time; - //速度 m/s - private Double velocity; - //加速度 - private Double acceleration; - //速度方向 - private Double theta; - //曲率 - private Double kappa; - //从起点到目前的总距离 - private Double accumulatedDis; - - public void setLon(Double lon) { - this.lon = lon; - } - - public void setLat(Double lat) { - this.lat = lat; - } - - public void setAlt(Double alt) { - this.alt = alt; - } - - public void setTime(Double time) { - this.time = time; - } - - public void setVelocity(Double velocity) { - this.velocity = velocity; - } - - public void setAcceleration(Double acceleration) { - this.acceleration = acceleration; - } - - public void setTheta(Double theta) { - this.theta = theta; - } - - public void setKappa(Double kappa) { - this.kappa = kappa; - } - - public void setAccumulatedDis(Double accumulatedDis) { - this.accumulatedDis = accumulatedDis; - } - - public Double getLon() { - return lon; - } - - public Double getLat() { - return lat; - } - - public Double getAlt() { - return alt; - } - - public Double getTime() { - return time; - } - - public Double getVelocity() { - return velocity; - } - - public Double getAcceleration() { - return acceleration; - } - - public Double getTheta() { - return theta; - } - - public Double getKappa() { - return kappa; - } - - public Double getAccumulatedDis() { - return accumulatedDis; - } - - @Override - public String toString() { - return "TrajectoryModels{" + - "lon=" + lon + - ", lat=" + lat + - ", alt=" + alt + - ", time='" + time + '\'' + - ", velocity=" + velocity + - ", acceleration=" + acceleration + - ", theta=" + theta + - ", kappa=" + kappa + - ", accumulatedDis=" + accumulatedDis + - '}'; - } -} diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt index e0a7e2d4a9..4057fa3bd1 100644 --- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt +++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/autopilot/AutopilotStatusInfo.kt @@ -14,6 +14,11 @@ class AutopilotStatusInfo : Serializable { * 当前链接的IP地址, 默认地址 192.168.1.102 */ var connectIP: String? = null + + /** + * 当前连接的IP端口号,默认4110 + */ + var connectPort: Int = 4110 var connectStatus = false var version: String? = null diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotIdentifyListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotIdentifyListener.kt index 3b11267a92..7fc2b7542f 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotIdentifyListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotIdentifyListener.kt @@ -1,7 +1,6 @@ package com.mogo.eagle.core.function.api.autopilot import mogo.telematics.pad.MessagePad -import record_cache.RecordPanelOuterClass /** * @author xiaoyuzhou @@ -24,9 +23,4 @@ interface IMoGoAutopilotIdentifyListener { */ fun onAutopilotWarnMessage(warn: MessagePad.Warn?) {} - /** - * 采集结果回调 - */ - fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) {} - } \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotPlanningListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotPlanningListener.kt index d6a46b1a58..c11a3a2449 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotPlanningListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotPlanningListener.kt @@ -1,8 +1,6 @@ package com.mogo.eagle.core.function.api.autopilot -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo import mogo.telematics.pad.MessagePad -import java.util.ArrayList /** * 自动驾驶规划路线相关的监听 @@ -13,7 +11,7 @@ interface IMoGoAutopilotPlanningListener { * * @param trajectoryInfos 引导线数据经纬度 */ - fun onAutopilotTrajectory(trajectoryInfos: ArrayList) + fun onAutopilotTrajectory(trajectoryInfos: MutableList) /** * 2021/6/23 工控机经纬度 绘制时转成高德经纬度 diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotProvider.kt index 3b1f2c7237..6f419b17b2 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotProvider.kt @@ -152,4 +152,6 @@ interface IMoGoAutopilotProvider : IMoGoFunctionServerProvider { *获取协议版本 */ fun getProtocolVersion(): Int + + fun connectSpecifiedServer(ip: String) } \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotRecordListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotRecordListener.kt new file mode 100644 index 0000000000..b6d2b0a6f0 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotRecordListener.kt @@ -0,0 +1,17 @@ +package com.mogo.eagle.core.function.api.autopilot + +import record_cache.RecordPanelOuterClass + +/** + * @author xiaoyuzhou + * @date 2021/11/1 5:57 下午 + * 采集结果回调 + */ +interface IMoGoAutopilotRecordListener { + + /** + * 采集结果回调 + */ + fun onAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) {} + +} \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/base/IMoGoSubscriber.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/base/IMoGoSubscriber.kt new file mode 100644 index 0000000000..c81fe83315 --- /dev/null +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/base/IMoGoSubscriber.kt @@ -0,0 +1,17 @@ +package com.mogo.eagle.core.function.api.base + +/** + * 公共的订阅接口定义 + */ +interface IMoGoSubscriber { + + /** + * 创建 + */ + fun onCrate() + + /** + * 销毁 + */ + fun onDestroy() +} \ No newline at end of file diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/IDevaToolsProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/IDevaToolsProvider.kt index 4fbd4ab83d..ab690871e0 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/IDevaToolsProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/devatools/IDevaToolsProvider.kt @@ -25,10 +25,20 @@ interface IDevaToolsProvider : IProvider { fun startLogCatch(duration: Int, logPrefixName: String? = null) /** - * 停止i抓取日志 + * 停止抓取日志 */ fun stopLogCatch(logPrefixName: String?) + /** + * 获取TraceLog状态 + */ + fun getTraceLogStatus():Boolean + + /** + * 设置链路日志是否开启 + */ + fun setTraceLogEnable(enable: Boolean) + /** * 获取链路信息 */ @@ -88,5 +98,5 @@ interface IDevaToolsProvider : IProvider { /** * 下载指定包 */ - fun downLoadPackage(downloadKey:String,downloadUrl:String) + fun downLoadPackage(downloadKey: String, downloadUrl: String) } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt index daee04f7ff..e641a2edbd 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotManager.kt @@ -173,4 +173,8 @@ object CallerAutoPilotManager { fun getProtocolVersion(): Int{ return providerApi?.getProtocolVersion() ?:0 } + + fun connectSpecifiedServer(ip: String) { + providerApi?.connectSpecifiedServer(ip) + } } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotIdentifyListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotIdentifyListenerManager.kt index b773018826..41f97b42c9 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotIdentifyListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotIdentifyListenerManager.kt @@ -4,7 +4,6 @@ import androidx.annotation.Nullable import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener import com.mogo.eagle.core.function.call.base.CallerBase import mogo.telematics.pad.MessagePad -import record_cache.RecordPanelOuterClass import java.util.concurrent.ConcurrentHashMap /** @@ -16,7 +15,7 @@ object CallerAutopilotIdentifyListenerManager : CallerBase() { // 存储所有注册了监听的对象,invokeXXXX进行遍历回调,将信息同步 private val M_AUTOPILOT_IDENTIFY_LISTENERS: ConcurrentHashMap = - ConcurrentHashMap() + ConcurrentHashMap() /** * 添加 域控制器感知数据 监听 @@ -24,8 +23,8 @@ object CallerAutopilotIdentifyListenerManager : CallerBase() { * @param listener 监听回调 */ fun addListener( - @Nullable tag: String, - @Nullable listener: IMoGoAutopilotIdentifyListener + @Nullable tag: String, + @Nullable listener: IMoGoAutopilotIdentifyListener ) { if (M_AUTOPILOT_IDENTIFY_LISTENERS.containsKey(tag)) { return @@ -80,16 +79,5 @@ object CallerAutopilotIdentifyListenerManager : CallerBase() { } } - /** - * 采集任务记录回调 - */ - fun invokeAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) { - M_AUTOPILOT_IDENTIFY_LISTENERS.forEach { - val tag = it.key - val listener = it.value - listener.onAutopilotRecordResult(recordPanel) - } - } - } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotPlanningListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotPlanningListenerManager.kt index ed74c7659b..0e998ac52d 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotPlanningListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotPlanningListenerManager.kt @@ -1,7 +1,6 @@ package com.mogo.eagle.core.function.call.autopilot import androidx.annotation.Nullable -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPlanningListener import com.mogo.eagle.core.function.call.base.CallerBase import mogo.telematics.pad.MessagePad @@ -18,7 +17,6 @@ object CallerAutopilotPlanningListenerManager : CallerBase() { private val M_AUTOPILOT_PLANNING_LISTENER: ConcurrentHashMap = ConcurrentHashMap() - /** * 添加监听 * @param tag 标记,用来注销监听使用 @@ -62,7 +60,7 @@ object CallerAutopilotPlanningListenerManager : CallerBase() { * @param trajectoryInfo 自动驾驶状态信息 */ @Synchronized - fun invokeAutopilotTrajectory(trajectoryInfo: ArrayList) { + fun invokeAutopilotTrajectory(trajectoryInfo: MutableList) { M_AUTOPILOT_PLANNING_LISTENER.forEach { val tag = it.key val listener = it.value diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotRecordListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotRecordListenerManager.kt new file mode 100644 index 0000000000..06012928cc --- /dev/null +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutopilotRecordListenerManager.kt @@ -0,0 +1,70 @@ +package com.mogo.eagle.core.function.call.autopilot + +import androidx.annotation.Nullable +import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotRecordListener +import com.mogo.eagle.core.function.call.base.CallerBase +import record_cache.RecordPanelOuterClass +import java.util.concurrent.ConcurrentHashMap + +/** + * @author xiaoyuzhou + * @date 2021/9/30 5:48 下午 + * 采集结果回调管理 + */ +object CallerAutopilotRecordListenerManager : CallerBase() { + + // 存储所有注册了监听的对象,invokeXXXX进行遍历回调,将信息同步 + private val M_AUTOPILOT_RECORD_LISTENERS: ConcurrentHashMap = + ConcurrentHashMap() + + /** + * 添加 域控制器感知数据 监听 + * @param tag 标记,用来注销监听使用 + * @param listener 监听回调 + */ + fun addListener( + @Nullable tag: String, + @Nullable listener: IMoGoAutopilotRecordListener + ) { + if (M_AUTOPILOT_RECORD_LISTENERS.containsKey(tag)) { + return + } + M_AUTOPILOT_RECORD_LISTENERS[tag] = listener + } + + /** + * 删除监听 + * @param tag 标记,用来注销监听使用 + */ + fun removeListener(@Nullable tag: String) { + if (!M_AUTOPILOT_RECORD_LISTENERS.containsKey(tag)) { + return + } + M_AUTOPILOT_RECORD_LISTENERS.remove(tag) + } + + /** + * 删除自动驾驶按钮选中监听 + * @param listener 要删除的监听对象 + */ + fun removeListener(@Nullable listener: IMoGoAutopilotRecordListener) { + M_AUTOPILOT_RECORD_LISTENERS.forEach { + if (it.value == listener) { + M_AUTOPILOT_RECORD_LISTENERS.remove(it.key) + } + } + } + + /** + * 采集任务记录回调 + */ + fun invokeAutopilotRecordResult(recordPanel: RecordPanelOuterClass.RecordPanel) { + M_AUTOPILOT_RECORD_LISTENERS.forEach { + val tag = it.key + val listener = it.value + listener.onAutopilotRecordResult(recordPanel) + } + } + + +} \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerDevaToolsManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerDevaToolsManager.kt index 785fdb9c1a..527c0ec6d2 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerDevaToolsManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/devatools/CallerDevaToolsManager.kt @@ -18,7 +18,7 @@ object CallerDevaToolsManager { MogoServicePaths.PATH_DEVA_TOOLS ) - fun init(context: Context){ + fun init(context: Context) { devaToolsProviderApi?.init(context) } @@ -40,7 +40,7 @@ object CallerDevaToolsManager { /** * 停止抓取全量日志 */ - fun stopCatchLog(logPrefixName:String? = null) { + fun stopCatchLog(logPrefixName: String? = null) { devaToolsProviderApi?.stopLogCatch(logPrefixName) } @@ -51,6 +51,21 @@ object CallerDevaToolsManager { devaToolsProviderApi?.refreshTraceInfo(map) } + fun getTraceLogStatus(): Boolean { + return if (devaToolsProviderApi != null) { + devaToolsProviderApi!!.getTraceLogStatus() + } else { + false + } + } + + /** + * 链路Log输出日志开关 + */ + fun setTraceLogEnable(enable: Boolean) { + devaToolsProviderApi?.setTraceLogEnable(enable) + } + /** * 获取链路节点信息 */ @@ -118,7 +133,7 @@ object CallerDevaToolsManager { /** * 下载指定包 */ - fun downLoadPackage(downloadKey: String,downloadUrl: String) { - devaToolsProviderApi?.downLoadPackage(downloadKey,downloadUrl) + fun downLoadPackage(downloadKey: String, downloadUrl: String) { + devaToolsProviderApi?.downLoadPackage(downloadKey, downloadUrl) } } \ No newline at end of file diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt index 4f77285e52..82107fcf74 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/map/CallerVisualAngleManager.kt @@ -8,6 +8,7 @@ import androidx.lifecycle.Lifecycle.Event import androidx.lifecycle.Lifecycle.Event.ON_DESTROY import androidx.lifecycle.LifecycleEventObserver import androidx.lifecycle.LifecycleOwner +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.data.map.MapRoadInfo.StopLine import com.mogo.eagle.core.data.map.MogoLatLng import com.mogo.eagle.core.function.call.map.CallerMapRoadListenerManager.OnRoadListener @@ -16,6 +17,7 @@ import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager.Scene.Defa import com.mogo.eagle.core.function.call.map.CallerVisualAngleManager.Scene.LowSpeed import com.mogo.eagle.core.utilcode.kotlin.lifeCycleOwner import com.mogo.eagle.core.utilcode.kotlin.safeCancel +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_DEVA import com.mogo.map.uicontroller.VisualAngleMode @@ -199,6 +201,10 @@ object CallerVisualAngleManager { @OptIn(InternalCoroutinesApi::class) fun changeVisualAngle(scene: Scene) { + val appIdentityMode = FunctionBuildConfig.appIdentityMode + if (AppIdentityModeUtils.isBus(appIdentityMode) && AppIdentityModeUtils.isPassenger(appIdentityMode)) { + return + } val triggerTime = SystemClock.elapsedRealtime() scope.launch { CallerLogger.d("${M_DEVA}${TAG}", "触发场景:${scene} --- 1 ---") diff --git a/core/mogo-core-res/src/main/function-hmi-res/drawable/bg_waring_limiting_velocity.xml b/core/mogo-core-res/src/main/function-hmi-res/drawable/bg_waring_limiting_velocity.xml index 482bbc800c..94f286340a 100644 --- a/core/mogo-core-res/src/main/function-hmi-res/drawable/bg_waring_limiting_velocity.xml +++ b/core/mogo-core-res/src/main/function-hmi-res/drawable/bg_waring_limiting_velocity.xml @@ -3,21 +3,20 @@ - + + android:width="120px" + android:height="120px" /> - diff --git a/gradle.properties b/gradle.properties index c8ec06719a..c41a2d2213 100644 --- a/gradle.properties +++ b/gradle.properties @@ -23,7 +23,7 @@ kotlin.parallel.tasks.in.project=true #优化kapt #并行运行kapt1.2.60版本以上支持 kapt.use.worker.api=true -#增量编译 kapt1.3.50版本以上支持 +#增量编译 kapt1.3.52版本以上支持 kapt.incremental.apt=true #kapt avoiding 如果用kapt依赖的内容没有变化,会完全重用编译内容,省掉app:kaptGenerateStubsDebugKotlin的时间 kapt.include.compile.classpath=false @@ -60,26 +60,26 @@ HOOK_LOG_VERSION=1.6.1 SERVICE_CHAIN_VERSION=1.1.0 ################ 外部依赖引用 ################ # loglib -LOGLIB_VERSION=1.2.24 +LOGLIB_VERSION=1.2.30 ######## MogoAiCloudSDK Version ######## # 网络请求LOGLIB_VERSION -MOGO_NETWORK_VERSION=1.3.50 +MOGO_NETWORK_VERSION=1.3.52 # 鉴权 -MOGO_PASSPORT_VERSION=1.3.50 +MOGO_PASSPORT_VERSION=1.3.52 # 常链接 -MOGO_SOCKET_VERSION=1.3.50 +MOGO_SOCKET_VERSION=1.3.52 # 数据采集 -MOGO_REALTIME_VERSION=1.3.50 +MOGO_REALTIME_VERSION=1.3.52 # 探路,道路事件发布,获取 -MOGO_TANLU_VERSION=1.3.50 +MOGO_TANLU_VERSION=1.3.52 # 直播推流 -MOGO_LIVE_VERSION=1.3.50 +MOGO_LIVE_VERSION=1.3.52 # 直播拉流 -MOGO_TRAFFICLIVE_VERSION=1.3.50 +MOGO_TRAFFICLIVE_VERSION=1.3.52 # 定位服务 -MOGO_LOCATION_VERSION=1.3.50 +MOGO_LOCATION_VERSION=1.3.52 # 远程通讯模块 -MOGO_TELEMATIC_VERSION=1.3.50 +MOGO_TELEMATIC_VERSION=1.3.52 ######## MogoAiCloudSDK Version ######## # 自研地图 MAP_SDK_VERSION=2.0.9.11 @@ -155,5 +155,5 @@ MOGO_OCH_TAXI_VERSION=2.0.66 # mogoAiCloud sdk services MOGO_AICLOUD_SERVICES_SDK_VERSION=2.1.16.10 # v2x-sdk -MOGO_V2X_SDK_VERSION=1.3.50 +MOGO_V2X_SDK_VERSION=1.3.52 ################# 旧版本架构模块版本 ################# diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java index 8a13e72cf9..4e857e76e7 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/socket/FpgaSocket.java @@ -5,7 +5,6 @@ import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_ALIAS_CODE_WEB_ import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_ALIAS_CODE_WEB_SOCKET_OPEN; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_LINK_ADAS; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_LINK_LOG_CONNECT_STATUS; -import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_LINK_LOG_WEB_SOCKET_DATA; import static com.zhidao.support.adas.high.common.Constants.RESOURCE_PATH; import static com.zhidao.support.adas.high.common.Constants.WS_IP_HOST_HEAD; @@ -214,7 +213,7 @@ public class FpgaSocket implements IWebSocket { } } - @ChainLog(linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA, + @ChainLog(linkChainLog = -1, linkCode = CHAIN_LINK_ADAS, endpoint = TracingConstants.Endpoint.PAD, nodeAliasCode = CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_JSON, @@ -234,7 +233,7 @@ public class FpgaSocket implements IWebSocket { } } - @ChainLog(linkChainLog = CHAIN_LINK_LOG_WEB_SOCKET_DATA, + @ChainLog(linkChainLog = -1, linkCode = CHAIN_LINK_ADAS, endpoint = TracingConstants.Endpoint.PAD, nodeAliasCode = CHAIN_ALIAS_CODE_WEB_SOCKET_MESSAGE_BYTE, diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/MarkerDrawer.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/MarkerDrawer.java index eb90dc70dc..dd8d8c62d5 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/MarkerDrawer.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/MarkerDrawer.java @@ -25,14 +25,13 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -public /** * @author congtaowang * @since 2020/10/28 *

* 描述 */ -class MarkerDrawer { +public class MarkerDrawer { public static final int MARKER_Z_INDEX_HIGH = 100; public static final int MARKER_Z_INDEX_LOW = 2; diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java deleted file mode 100644 index 2f3e6a9c13..0000000000 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/drawer/SnapshotSetDataDrawer.java +++ /dev/null @@ -1,515 +0,0 @@ -package com.mogo.module.common.drawer; - -import static com.mogo.module.common.constants.DataTypes.TYPE_MARKER_CLOUD_DATA; - -import android.os.Build; -import android.text.TextUtils; -import android.view.LayoutInflater; -import android.view.View; -import android.widget.ImageView; - -import com.mogo.cloud.commons.utils.CoordinateUtils; -import com.mogo.cloud.socket.entity.SocketDownData; -import com.mogo.cloud.socket.entity.SocketDownDataHelper; -import com.mogo.commons.AbsMogoApplication; -import com.mogo.eagle.core.data.map.MogoLatLng; -import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger; -import com.mogo.eagle.core.utilcode.util.ViewUtils; -import com.mogo.map.MogoMarkerManager; -import com.mogo.map.marker.IMogoMarker; -import com.mogo.map.marker.IMogoMarkerClickListener; -import com.mogo.map.marker.MogoMarkerOptions; -import com.mogo.module.common.MogoApisHandler; -import com.mogo.module.common.R; -import com.mogo.module.common.constants.DataTypes; -import com.mogo.module.common.utils.Trigonometric; -import com.mogo.service.statusmanager.IMogoStatusChangedListener; -import com.mogo.service.statusmanager.StatusDescriptor; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; -import java.util.concurrent.TimeUnit; - -/** - * @author congtaowang - * @since 2020/10/28 - *

- * 云端数据绘制 - */ -public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClickListener, IMogoStatusChangedListener { - - private static final String TAG = "SnapshotSetDataDrawer"; - - private static volatile SnapshotSetDataDrawer sInstance; - - private boolean mChangeCarModeStatus; - - private SnapshotSetDataDrawer() { - super(); - MogoApisHandler.getInstance().getApis() - .getStatusManagerApi() - .registerStatusChangedListener(TAG, StatusDescriptor.VR_MODE, this); - } - - public static SnapshotSetDataDrawer getInstance() { - if (sInstance == null) { - synchronized (SnapshotSetDataDrawer.class) { - if (sInstance == null) { - sInstance = new SnapshotSetDataDrawer(); - } - } - } - return sInstance; - } - - public synchronized void release() { - sInstance = null; - } - - /** - * 上一帧数据的缓存 - */ - private static final Map mMarkersCaches = new ConcurrentHashMap<>(); - - private final Map mLastPositions = new ConcurrentHashMap<>(); - - /** - * 注册StatusDescriptor.VR_MODE类型,VR_MODE状态改变回调 - * - * @param descriptor 状态类型 - * @param isTrue true - accOn、adas ui show、voice ui show、push ui show、v2x ui show - */ - @Override - public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) { - mChangeCarModeStatus = true; - sendMessage(MSG_REMOVE_DIRTY_MARKERS, mMarkersCaches); - removeUselessMarker(mMarkersCaches); - mLastPositions.clear(); - } - - public boolean isChangeCarModeStatus() { - return mChangeCarModeStatus; - } - - public void setChangeCarModeStatus(boolean mChangeCarModeStatus) { - this.mChangeCarModeStatus = mChangeCarModeStatus; - } - - /** - * 清除旧数据操作 - * - * @param data 自车周边数据 - * @return 清除结果 - */ - private boolean clear(SocketDownData.LauncherSnapshotProto data) { - if (!MogoApisHandler.getInstance().getApis().getStatusManagerApi().isMainPageLaunched()) { - if (mMarkersCaches == null) { - return false; - } - mMarkersCaches.clear(); - mLastPositions.clear(); - sendMessage(MSG_REMOVE_DIRTY_MARKERS, DataTypes.TYPE_MARKER_CLOUD_DATA); - return true; - } - if (data == null || ( - (data.getAllListList() == null || data.getAllListList().isEmpty()) && - (data.getNearListList() == null || data.getNearListList().isEmpty()))) { - if (mMarkersCaches != null) { - mMarkersCaches.clear(); - } - mLastPositions.clear(); - sendMessage(MSG_REMOVE_DIRTY_MARKERS, DataTypes.TYPE_MARKER_CLOUD_DATA); - return true; - } - return false; - } - - /** - * 绘制来自云端的 mogo 他车、mogo 他车识别的社会车辆、路边单元识别的车辆 - * - * @param data 自车周边数据 - */ -// @ChainLog(linkCode = CHAIN_LINK_CLOUD_SHOW, -// endpoint = TracingConstants.Endpoint.PAD, -// nodeAliasCode = "PAD_YINGYAN_SHOW", -// paramIndexes = {0}, -// clientPkFileName = "sn") - public void renderSnapshotData(SocketDownData.LauncherSnapshotProto data) { - final long start = System.nanoTime(); - if (clear(data)) { - return; - } - if (!MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()) { - return; - } - - List allDatumsList = new ArrayList<>(); - prepareData(data.getAllListList(), allDatumsList); - - Map newMarkersCaches = new ConcurrentHashMap<>(allDatumsList.size()); - List newDiffSet = new ArrayList<>(); - for (SocketDownData.CloudRoadDataProto cloudRoadData : allDatumsList) { - - if (isUselessValue(cloudRoadData)) { - continue; - } - String uniqueKey = cloudRoadData.getUuid(); - IMogoMarker marker = mMarkersCaches.remove(uniqueKey); - if (marker != null && !marker.isDestroyed()) { - updateCacheMarkerRes(marker, cloudRoadData); - renderSnapshotOneFrame(marker, uniqueKey, cloudRoadData, newMarkersCaches); - } else { - newDiffSet.add(cloudRoadData); - } - } - // 需要新增的 marker 数量 - int newDiffSetSize = newDiffSet.size(); - // 复用过期 marker - if (newDiffSetSize > 0) { - // 复用过后还需新增的 marker - for (int i = 0; i < newDiffSetSize; i++) { - SocketDownData.CloudRoadDataProto cloudRoadData = newDiffSet.get(i); - String uniqueKey = cloudRoadData.getUuid(); - IMogoMarker marker = drawSnapshotDataMarker(cloudRoadData); - if (marker == null) { - continue; - } - renderSnapshotOneFrame(marker, uniqueKey, cloudRoadData, newMarkersCaches); - } - } - mMarkersCaches.putAll(newMarkersCaches); - // 移除超时 marker - delayRemoveUselessMarker(); - removeUselessLastRecord(); - CallerLogger.INSTANCE.d("云端数据延时绘制", "render 接收数据 -> 处理结束 " + TimeUnit.NANOSECONDS.toMillis((System.nanoTime() - start)) + "ms"); - } - - /** - * todo 后面涉及到此类变化的数据均改动 - * - * @param marker {@link IMogoMarker} - * @param cloudRoadDataProto {@link SocketDownData.CloudRoadDataProto} - */ - private void updateCacheMarkerRes(IMogoMarker marker, SocketDownData.CloudRoadDataProto cloudRoadDataProto) { - String resIdVal; - int resId = getModelRes(cloudRoadDataProto.getType()); - resIdVal = resId + ""; - String resName = mMarkerCachesResMd5Values.get(resIdVal); - if (!TextUtils.isEmpty(resName)) { - if (!TextUtils.equals(resName, marker.getMarkerResName())) { - marker.use3DResource(resName); - } - } else { - resName = marker.use3DResource(resId); - mMarkerCachesResMd5Values.put(resIdVal, resName); - } - } - - private void delayRemoveUselessMarker() { - if (mMarkersCaches.isEmpty()) { - return; - } - Iterator iterator = mMarkersCaches.values().iterator(); - while (iterator.hasNext()) { - IMogoMarker result = iterator.next(); - SocketDownData.CloudRoadDataProto proto = ((SocketDownData.CloudRoadDataProto) result.getObject()); - if (proto == null) { // 后续有业务数据在操作,更新数据,不做处理 - continue; - } - long internal = getCurSatelliteTime() - proto.getSatelliteTime(); - CallerLogger.INSTANCE.d("MogoArrow", "delayRemoveUselessMarker uuid : " + proto.getUuid() - + " localTime : " + getCurSatelliteTime() - + " originTime : " + proto.getSatelliteTime() - + " internal : " + internal); - if (internal > 5000) { - iterator.remove(); - result.destroy(); - } - } - } - - private void removeUselessLastRecord() { // todo 最好重新设计一个数据结构,用于多线程数据过期失效的场景,参见redis数据过期 - if (mLastPositions.isEmpty()) { - return; - } - Iterator iterator = mLastPositions.values().iterator(); - while (iterator.hasNext()) { - SocketDownData.CloudRoadDataProto result = iterator.next(); - long internal = getCurSatelliteTime() - result.getSatelliteTime(); - if (internal > 3000) { - iterator.remove(); - } - } - } - - /** - * 判断类型、uuid 等 - * - * @param cloudRoadData {@link SocketDownData.CloudRoadDataProto} - * @return isUselessValue - */ - private boolean isUselessValue(SocketDownData.CloudRoadDataProto cloudRoadData) { - if (cloudRoadData == null) { - return true; - } - if (nonRenderType(cloudRoadData.getType())) { - return true; - } - - String uniqueKey = cloudRoadData.getUuid(); - return TextUtils.isEmpty(uniqueKey); - } - - /** - * 绘制某个物体的一个数据 - * - * @param cloudRoadData {@link SocketDownData.CloudRoadDataProto} - * @param newSnapshotCaches 缓存数据 - */ - private void renderSnapshotOneFrame(IMogoMarker marker, String uniqueKey, SocketDownData.CloudRoadDataProto cloudRoadData, Map newSnapshotCaches) { - final long start = System.nanoTime(); - SocketDownData.CloudRoadDataProto lastPosition = mLastPositions.remove(uniqueKey); - // 道路吸附 -// double lastLon = -1; -// double lastLat = -1; -// if (lastPosition != null) { -// lastLon = lastPosition.getWgslon(); -// lastLat = lastPosition.getWgslat(); -// } -// double[] matchLonLat = getMatchLonLat(cloudRoadData.getUuid(), cloudRoadData.getWgslon(), cloudRoadData.getWgslat(), cloudRoadData.getHeading(), lastLon, lastLat); -// SocketDownData.CloudRoadDataProto.Builder builder = cloudRoadData.toBuilder(); -// builder.setWgslon(matchLonLat[0]); -// builder.setWgslat(matchLonLat[1]); -// cloudRoadData = builder.build(); - - mLastPositions.put(uniqueKey, cloudRoadData); - long interval = 45; - if (lastPosition != null) { - interval = computeAnimDuration(lastPosition.getSatelliteTime(), cloudRoadData.getSatelliteTime()); - } - final MogoLatLng point = new MogoLatLng(cloudRoadData.getWgslat(), cloudRoadData.getWgslon()); - long cost = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - start); - final long intervalRef = interval - cost; - marker.addDynamicAnchorPosition(point, (float) cloudRoadData.getHeading(), intervalRef); - marker.setAnchorColor(getModelRenderColor(cloudRoadData.getType(), cloudRoadData.getFromType(), 1)); - newSnapshotCaches.put(uniqueKey, marker); -// if (shouldShowSpeed(cloudRoadData.getType())) { -// Message msg = mRenderThreadHandler.obtainMessage(); -// msg.obj = new SpeedData(marker -// , cloudRoadData.getSpeed() -// , cloudRoadData.getUuid() -// , cloudRoadData.getType() -// , cloudRoadData.getHeading() -// , MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()); -// msg.what = MSG_DISPLAY_SPEED; -// msg.sendToTarget(); -// } - CallerLogger.INSTANCE.d("云端数据延时", "render 刷新一台车 cost : " + TimeUnit.NANOSECONDS.toMillis((System.nanoTime() - start))); - } - - /** - * 过滤数据,对数据补点 - * - * @param in 输入集合 - * @param out 输出集合 - */ - private void prepareData(List in, List out) { -// foreCastPoint(in, out); - out.addAll(in); - } - - private final static String FORECAST = "snapshotForecast"; - - /** - * 基于云平台下发的数据点速度预测当前位置和距离自车距离 - * - * @param in 数据源 - */ - private void foreCastPoint(List in, List out) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - for (SocketDownData.CloudRoadDataProto proto : in) { - SocketDownData.CloudRoadDataProto.Builder builder = proto.toBuilder(); - CallerLogger.INSTANCE.d(FORECAST, "ready to foreCast current uuid : " + proto.getUuid()); - long internal = getCurSatelliteTime() - builder.getSatelliteTime(); - if (internal <= 0) { - CallerLogger.INSTANCE.d(FORECAST, "time internal less than 0 , uuid : " + proto.getUuid()); - out.add(proto); - continue; - } - long startTime = System.currentTimeMillis(); - // 预测点 - CallerLogger.INSTANCE.d(FORECAST, "time internal : " + internal + " speed : " + proto.getSpeed()); - double foreCastDistance = proto.getSpeed() * internal / 1000; - CallerLogger.INSTANCE.d(FORECAST, "foreCastDistance : " + foreCastDistance); - MogoLatLng mogoLatLng = new MogoLatLng(proto.getWgslat(), proto.getWgslon()); - MogoLatLng foreCastMogoLatLon = Trigonometric.getNewLocation(mogoLatLng, foreCastDistance, proto.getHeading()); - - // 计算与自车距离 - float distanceFromSelf = CoordinateUtils.calculateLineDistance(getCurCoordinates()[0], getCurCoordinates()[1] - , foreCastMogoLatLon.getLon(), foreCastMogoLatLon.getLat()); - - long foreCastInternal = System.currentTimeMillis() - startTime; - CallerLogger.INSTANCE.d(FORECAST, "foreCastInternal :" + foreCastInternal); //todo 耗时1~2毫秒 需要测试是否由于补点算法造成 - - builder.setWgslat(foreCastMogoLatLon.getLat()); - builder.setWgslon(foreCastMogoLatLon.getLon()); - builder.setSatelliteTime(getCurSatelliteTime() - foreCastInternal); - builder.setDistance(distanceFromSelf); - proto = builder.build(); - out.add(proto); - } - } - } - - /** - * 绑定点击事件 - */ - public void bindClickListener(IMogoMarker marker) { - if (marker == null || marker.isDestroyed()) { - return; - } - marker.setOnMarkerClickListener(this); - } - - /** - * 绘制 marker - * - * @param data 道路数据 - * @return {@link IMogoMarker} - */ - public IMogoMarker drawSnapshotDataMarker(SocketDownData.CloudRoadDataProto data) { - long start = System.nanoTime(); - if (data == null) { - return null; - } - - MogoMarkerOptions options = new MogoMarkerOptions() - .owner(TYPE_MARKER_CLOUD_DATA) - .anchor(0.5f, 0.5f) - .rotate((float) data.getHeading()) - .data(data) - .gps(true) - .controlAngle(true) - .position(new MogoLatLng(data.getWgslat(), data.getWgslon())); - String resIdVal; - if (MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()) { - options.set3DMode(true); - options.anchorColor(getModelRenderColor(data.getType(), data.getFromType(), 1)); - int resId = getModelRes(data.getType()); - resIdVal = resId + ""; - options.resName(mMarkerCachesResMd5Values.get(resIdVal)); - options.icon3DRes(resId); - } else { - options.set3DMode(false); - View view = inflateView(data); - options.icon(view); - resIdVal = view.getId() + ""; - } - IMogoMarker marker = MogoMarkerManager.getInstance(mContext).addMarker(TYPE_MARKER_CLOUD_DATA, options); - cacheMarkerIconResMd5Val(resIdVal, marker); - - if (!TextUtils.isEmpty(data.getSn())) { - bindClickListener(marker); - } - CallerLogger.INSTANCE.d("云端数据延时", "创建一个新 marker cost : " + TimeUnit.NANOSECONDS.toMillis((System.nanoTime() - start))); - return marker; - } - - public String get3DCacheId(String resIdVal) { - return mMarkerCachesResMd5Values.get(resIdVal); - } - - /** - * 生成 2d marker 资源 - * - * @param data 道路数据 - * @return marker - */ - public View inflateView(SocketDownData.CloudRoadDataProto data) { - View rootView = LayoutInflater.from(AbsMogoApplication.getApp()).inflate(R.layout.module_commons_layout_car, null); - ImageView iv = rootView.findViewById(R.id.module_commons_marker_car_model); - int viewIdLike = get2DModel(data); - iv.setImageResource(viewIdLike); - rootView.setId(viewIdLike); - return rootView; - } - - /** - * 获取车辆2d贴图 - * - * @param data 道路数据 - * @return 2D贴图id - */ - private int get2DModel(SocketDownData.CloudRoadDataProto data) { - switch (data.getFromType()) { - case SocketDownDataHelper.FROM_ADAS: - case SocketDownDataHelper.FROM_ROAD_UNIT: - case SocketDownDataHelper.FROM_MY_LOCATION: - default: - return R.drawable.icon_map_marker_car_gray; - } - } - - @Override - public boolean onMarkerClicked(IMogoMarker marker) { - if (marker != null && !marker.isDestroyed()) { - if (marker.getObject() instanceof SocketDownData.CloudRoadDataProto) { - showCarCallPanel(((SocketDownData.CloudRoadDataProto) marker.getObject())); - } - } - return true; - } - - /** - * 展示用户信息面版 - * - * @param data 道路数据 - */ - private void showCarCallPanel(SocketDownData.CloudRoadDataProto data) { - - /* MogoDriverInfo driverInfo = new MogoDriverInfo(); - driverInfo.setLat(data.getLat()); - driverInfo.setLon(data.getLon()); - driverInfo.setSn(data.getSn()); - ICarsChattingProvider carChatting = CallChatApi.getInstance().getApiProvider(); - - if (carChatting != null) { - try { - carChatting.showUserWindow(TAG, driverInfo, mContext); - } catch (Exception e) { - CallerLogger.INSTANCE.e(TAG, e, "showCarCallPanel"); - } - }*/ - } - - public void changeIconResourceIfNecessary(SocketDownData.CloudRoadDataProto cloudRoadData, IMogoMarker marker) { - if (isChangeCarModeStatus()) { - setChangeCarModeStatus(false); - if (MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode()) { - marker.getMogoMarkerOptions().set3DMode(true); - int resId = getModelRes(cloudRoadData.getType()); - String resName = get3DCacheId(resId + ""); - if (TextUtils.isEmpty(resName)) { - marker.use3DResource(resId); - cacheMarkerIconResMd5Val(resId + "", marker); - } else { - marker.use3DResource(resName); - } - } else { - marker.getMogoMarkerOptions().set3DMode(false); - View view = inflateView(cloudRoadData); - int resId = view.getId(); - String resName = get3DCacheId(resId + ""); - if (TextUtils.isEmpty(resName)) { - marker.setIcon(ViewUtils.fromView(view)); - cacheMarkerIconResMd5Val(resId + "", marker); - } else { - marker.use2DResource(resName); - } - } - } - } -} diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java index 53d0def666..80fcc60ed8 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/intent/MockIntentHandler.java @@ -9,16 +9,12 @@ import android.os.Message; import android.text.TextUtils; import com.mogo.cloud.commons.utils.CoordinateUtils; -import com.mogo.cloud.socket.entity.SocketDownData; -import com.mogo.cloud.socket.entity.SocketDownDataHelper; import com.mogo.commons.AbsMogoApplication; import com.mogo.commons.debug.DebugConfig; import com.mogo.commons.voice.AIAssist; import com.mogo.eagle.core.data.autopilot.AutopilotCarStateInfo; -import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.constants.MogoServicePaths; import com.mogo.eagle.core.data.map.MogoLatLng; -import com.mogo.eagle.core.data.traffic.TrafficData; import com.mogo.eagle.core.function.api.map.IMogoMapFrameController; import com.mogo.eagle.core.function.call.base.CallerBase; import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager; @@ -38,8 +34,6 @@ import com.mogo.map.search.geo.MogoRegeocodeResult; import com.mogo.map.search.geo.query.MogoRegeocodeQuery; import com.mogo.module.common.constants.DataTypes; import com.mogo.module.common.dialog.WMDialog; -import com.mogo.module.common.drawer.IdentifyDataDrawer; -import com.mogo.module.common.drawer.SnapshotSetDataDrawer; import com.mogo.module.service.MarkerServiceHandler; import com.mogo.module.service.R; @@ -483,30 +477,6 @@ public class MockIntentHandler implements IntentHandler { mLocationMockHandler.sendEmptyMessageDelayed(100, 50L); } - /** - * 处理路侧模拟数据意图 - */ - private void handleRoadSideMockDataIntent() throws Exception { - if (roadSizeBr == null) { - roadSizeBr = new BufferedReader(new InputStreamReader(AbsMogoApplication.getApp().getAssets().open("roadSide.txt"))); //todo 需要重新模拟一个test数据 - } - String carsLine = roadSizeBr.readLine(); - SocketDownData.LauncherSnapshotProto.Builder data = SocketDownData.LauncherSnapshotProto.newBuilder(); - List allList = GsonUtil.arrayFromJson(carsLine, SocketDownData.CloudRoadDataProto.class); - if (allList == null || allList.size() == 0) { - return; - } - for (SocketDownData.CloudRoadDataProto cloudRoadData : allList) { - cloudRoadData.toBuilder() - .setWgslat(cloudRoadData.getLon()) - .setWgslon(cloudRoadData.getLon()) - .setFromType(SocketDownDataHelper.FROM_ROAD_UNIT); - } - data.addAllAllList(allList); - SnapshotSetDataDrawer.getInstance().renderSnapshotData(data.build()); - mLocationMockHandler.sendEmptyMessageDelayed(101, 100L); - } - public void onAdasCarDataCallback(AutopilotCarStateInfo stateInfo) { if (stateInfo != null && stateInfo.getValues() != null) { @@ -549,23 +519,6 @@ public class MockIntentHandler implements IntentHandler { br = null; } } - // 模拟ADAS数据 - else if (msg.what == 3) { - try { - handleMockAdasIntent(); - } catch (Exception e) { - try { - if (readers != null) { - for (BufferedReader reader : readers) { - if (reader != null) reader.close(); - } - } - } catch (IOException ex) { - ex.printStackTrace(); - } - readers = null; - } - } // 模拟单个车数据 else if (msg.what == 100) { try { @@ -574,38 +527,6 @@ public class MockIntentHandler implements IntentHandler { e.printStackTrace(); } } - // 处理路侧模拟数据意图 - else if (msg.what == 101) { - try { - handleRoadSideMockDataIntent(); - } catch (Exception e) { - try { - roadSizeBr.close(); - } catch (IOException ex) { - ex.printStackTrace(); - } - roadSizeBr = null; - } - } - // 处理模拟Adas汽车意图 - else if (msg.what == 8) { - try { - handleMockAdasCarIntent(); - } catch (Exception e) { - try { - if (readers2 != null) { - for (BufferedReader reader : readers2) { - if (reader != null) { - reader.close(); - } - } - } - } catch (IOException ex) { - ex.printStackTrace(); - } - readers2 = null; - } - } } }; @@ -685,76 +606,4 @@ public class MockIntentHandler implements IntentHandler { private BufferedReader[] readers = null; private BufferedReader[] readers2 = null; - /** - * 处理模拟ADAS数据意图 - */ - private boolean handleMockAdasIntent() throws Exception { - final long start = System.currentTimeMillis(); - - if (readers == null) { - readers = new BufferedReader[10]; - for (int i = 0; i < 10; i++) { - readers[i] = new BufferedReader(new InputStreamReader(AbsMogoApplication.getApp().getAssets().open("adas" + i + ".txt"))); - } - } - - ArrayList trafficData = new ArrayList<>(); - for (BufferedReader reader : readers) { - String line = reader.readLine(); - TrafficData adasRecognizedResult = GsonUtil.objectFromJson(line, TrafficData.class); - if (adasRecognizedResult != null) { - trafficData.add(adasRecognizedResult); - } - } - - try { - if (FunctionBuildConfig.isDrawIdentifyData) { -// ThreadUtils.getSinglePool().execute(() -> -// IdentifyDataDrawer.getInstance().renderAdasRecognizedResult(trafficData) -// ); - } else { - IdentifyDataDrawer.getInstance().clearOldMarker(); - } - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - /** - * 处理模拟Adas汽车意图 - */ - private boolean handleMockAdasCarIntent() throws Exception { - final long start = System.currentTimeMillis(); - - if (readers2 == null) { - readers2 = new BufferedReader[3]; - for (int i = 0; i < 3; i++) { - readers2[i] = new BufferedReader(new InputStreamReader(AbsMogoApplication.getApp().getAssets().open("adascar" + i + ".txt"))); - } - } - - ArrayList trafficData = new ArrayList<>(); - for (BufferedReader reader : readers2) { - String line = reader.readLine(); - TrafficData adasRecognizedResult = GsonUtil.objectFromJson(line, TrafficData.class); - if (adasRecognizedResult != null) { - trafficData.add(adasRecognizedResult); - } - } - - try { - if (FunctionBuildConfig.isDrawIdentifyData) { -// ThreadUtils.getSinglePool().execute(() -> -// IdentifyDataDrawer.getInstance().renderAdasRecognizedResult(trafficData) -// ); - } else { - IdentifyDataDrawer.getInstance().clearOldMarker(); - } - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java index 485c1d326d..1f0a18821a 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/MogoRouteOverlayManager.java @@ -4,7 +4,8 @@ import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_OLD import android.content.Context; -import com.mogo.eagle.core.data.autopilot.ADASTrajectoryInfo; +import androidx.annotation.NonNull; + import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo; import com.mogo.eagle.core.data.config.FunctionBuildConfig; import com.mogo.eagle.core.data.map.MogoLatLng; @@ -66,12 +67,10 @@ public class MogoRouteOverlayManager implements } @Override - public void onAutopilotTrajectory(ArrayList trajectoryInfos) { + public void onAutopilotTrajectory(List trajectoryInfos) { if (trajectoryInfos == null || trajectoryInfos.size() == 0) { return; } -// double lat = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLat(); -// double lon = MogoApisHandler.getInstance().getApis().getAdasControllerApi().getLastLon(); StringBuilder builder = new StringBuilder(); builder.append("{"); builder.append(System.currentTimeMillis()).append(";"); @@ -80,25 +79,20 @@ public class MogoRouteOverlayManager implements builder.append(mLocation.getAltitude()).append(";"); builder.append(mLocation.getBearing()).append(";"); builder.append(mLocation.getSpeed()).append(";"); -// ADASTrajectoryInfo adasTrajectoryInfo = trajectoryInfos.get(0); -// long temp = SystemClock.currentThreadTimeMillis(); -// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "temp:"+temp+" size:" + trajectoryInfos.size()); -// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "trajectoryInfos:" + adasTrajectoryInfo.getLat()+":"+adasTrajectoryInfo.getLon()); -// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "temp:"+temp+" location:" + lat+":"+lon); List mogoLatLngs = new ArrayList<>(); for (int i = 0; i < trajectoryInfos.size(); i++) { // 临时解决车尾拖线问题,丢弃距离车最近的几个经纬度,原因是惯性导航的中心靠近车尾,会导致经纬度靠近尾部,且两个数据不同频 if (i > 5) { - ADASTrajectoryInfo a = trajectoryInfos.get(i); - builder.append(a.getLon()).append(","); - builder.append(a.getLat()).append(","); - mogoLatLngs.add(new MogoLatLng(a.getLat(), a.getLon())); + + MessagePad.TrajectoryPoint a = trajectoryInfos.get(i); + builder.append(a.getLongitude()).append(","); + builder.append(a.getLatitude()).append(","); + mogoLatLngs.add(new MogoLatLng(a.getLatitude(), a.getLongitude())); } } mTrajectoryList = mogoLatLngs; builder.append("}"); - CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, builder.toString()); } @Override @@ -115,6 +109,7 @@ public class MogoRouteOverlayManager implements // RouteOverlayDrawer.getInstance(mContext).addEndingMarker(latLngList.get(listSize - 1).lat,latLngList.get(listSize - 1).lon); } + @Override public void onAutopilotStatusResponse(@NotNull AutopilotStatusInfo autoPilotStatusInfo) { if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData) { @@ -190,7 +185,7 @@ public class MogoRouteOverlayManager implements list.add(latLng); // } } - CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "---status = " + STATUS_AUTOPILOT + "----size = " + list.size()); +// CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "TrajectoryData = " + FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData + "---status = " + STATUS_AUTOPILOT + "----size = " + list.size()); if (FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData || STATUS_AUTOPILOT == 1) { RouteOverlayDrawer.getInstance(mContext).drawTrajectoryList(list); } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java index 6d1bf7c3f6..a8f04250de 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/routeoverlay/RouteOverlayDrawer.java @@ -117,8 +117,6 @@ public class RouteOverlayDrawer { public void drawTrajectoryList(List routeList) { // clearMogoRouteOverlay(); - long drawstart = System.currentTimeMillis(); - mPolylinePointList.clear(); if (routeList != null && routeList.size() > 0) { for (MogoLatLng latLng : routeList) { @@ -126,15 +124,12 @@ public class RouteOverlayDrawer { } mPolylineColors.clear(); // mPolylineColors.addAll(ColorUtils.gradientAlpha_("#FF2AAFFD", "#7b2965ED", "#002965ED", mPolylinePointList.size())); - long start = System.currentTimeMillis(); List list = new ArrayList<>(); // list = ColorUtils.gradientAlpha("#FF2AAFFD", "#002965ED", mPolylinePointList.size()); int[] startColor = ColorUtils.hexToArgb("#CC64C3EA"); int[] endColor = ColorUtils.hexToArgb("#0064C3EA"); list.add(Color.argb(startColor[0], startColor[1], startColor[2], startColor[3])); list.add(Color.argb(endColor[0], endColor[1], endColor[2], endColor[3])); - long end = System.currentTimeMillis(); - CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "get color cost : " + (end - start)); mPolylineColors.addAll(list); // 线条粗细,渐变,渐变色值 @@ -147,8 +142,6 @@ public class RouteOverlayDrawer { mMoGoPolyline.setOption(mPolylineOptions); } } - long drawend = System.currentTimeMillis(); - CallerLogger.INSTANCE.d(M_OLD_ROUTE + TAG, "drawTrajectoryList cost : " + (drawend - drawstart)); } public void initDraw() {