[清扫车]sweeper 3.0.0合并到master

This commit is contained in:
bxb
2023-04-03 20:14:59 +08:00
7 changed files with 27 additions and 33 deletions

View File

@@ -1,6 +1,7 @@
package com.mogo.och.sweeper.bean;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
@@ -13,15 +14,15 @@ public class SweeperRoutePlanningUpdateReqBean implements Serializable {
public int lineId;
public int startSiteId;
public int endSiteId;
public List<Result> points;
public ArrayList<Result> points;
public static class Result {
public static class Result implements Serializable{
public Double latitude;
public Double longitude;
}
public SweeperRoutePlanningUpdateReqBean(String sn, int lineId, int startSiteId
, int endSiteId, List<Result> points) {
, int endSiteId, ArrayList<Result> points) {
this.sn = sn;
this.lineId = lineId;
this.startSiteId = startSiteId;

View File

@@ -515,8 +515,8 @@ class SweeperFragment : BaseSweeperTabFragment<SweeperFragment?, SweeperPresente
//模拟结束子任务
override fun debugEndSubTask() {
//mPresenter?.onArriveTaskEnd(null)
super.debugEndSubTask()
mPresenter?.onArriveTaskEnd(null)
//super.debugEndSubTask()
}
/**

View File

@@ -34,7 +34,7 @@ class WeltMapOverViewFragment() : BaseFragment(), ISweeperTaskDataToFragmentCall
}
override fun initViews(savedInstanceState: Bundle?) {
super.initViews(savedInstanceState)
weltMapOverView.onCreateView(savedInstanceState)
weltMapOverView?.onCreateView(savedInstanceState)
sweeperSwitchToSmall.setOnClickListener {
mIWeltMapSwitchToSmallCallBack?.onWeltMapSwitchToSmall()
}
@@ -46,7 +46,7 @@ class WeltMapOverViewFragment() : BaseFragment(), ISweeperTaskDataToFragmentCall
val routeList = bundle.getSerializable("routeList") as? ArrayList<SweeperRoutePlanningUpdateReqBean.Result>
val progress = bundle.getString("progress")
routeList?.let {
weltMapOverView.setRouteList(it)
weltMapOverView?.setRouteList(it)
}
latLng?.let {
setCurrentTaskCoordinatesLatLng(it)
@@ -55,10 +55,10 @@ class WeltMapOverViewFragment() : BaseFragment(), ISweeperTaskDataToFragmentCall
setTaskListCoordinatesLatLng(it)
}
weltDataList?.let {
setWeltData(it,"0.0")
setWeltData(it,"0.0cm")
}
progress?.let {
weltMapOverView.setProgress(progress)
weltMapOverView?.setProgress(progress)
}
}
@@ -91,39 +91,39 @@ class WeltMapOverViewFragment() : BaseFragment(), ISweeperTaskDataToFragmentCall
override fun onPause() {
super.onPause()
weltMapOverView.onPause()
weltMapOverView?.onPause()
}
override fun onResume() {
super.onResume()
weltMapOverView.onResume()
weltMapOverView?.onResume()
}
override fun onDestroy() {
super.onDestroy()
weltMapOverView.onDestroy()
weltMapOverView?.onDestroy()
}
override fun setTaskListCoordinatesLatLng(coordinatesLatLng: java.util.ArrayList<LatLng>) {
weltMapOverView.setTaskListCoordinatesLatLng(coordinatesLatLng)
weltMapOverView?.setTaskListCoordinatesLatLng(coordinatesLatLng)
}
override fun setCurrentTaskCoordinatesLatLng(coordinatesLatLng: LatLng) {
weltMapOverView.setCurrentTaskCoordinatesLatLng(coordinatesLatLng)
weltMapOverView?.setCurrentTaskCoordinatesLatLng(coordinatesLatLng)
}
override fun clearAllMarkerAndPolyline() {
weltMapOverView.clearAllMarkerAndPolyline()
weltMapOverView?.clearAllMarkerAndPolyline()
}
override fun setProgress(progress: String) {
weltMapOverView.setProgress(progress)
weltMapOverView?.setProgress(progress)
}
override fun setRouteList(routeList: java.util.ArrayList<SweeperRoutePlanningUpdateReqBean.Result>) {
weltMapOverView.setRouteList(routeList)
weltMapOverView?.setRouteList(routeList)
}
override fun setWeltData(weltDatas: java.util.ArrayList<WeltDataBean>?, distance: String) {
weltMapOverView.setWeltData(weltDatas,true,distance)
weltMapOverView?.setWeltData(weltDatas,true,distance)
}
}

View File

@@ -302,10 +302,6 @@ public class SweeperTaskModel {
@Override
public void onChassisLocationGCJ02(@Nullable MogoLocation gnssInfo) {
if (null == gnssInfo) return;
Log.d(M_SWEEPER + TAG, "高德定位到站mLongitude = " + gnssInfo.getLongitude()
+ ", mLatitude=" + gnssInfo.getLatitude() + ", mSubTaskType=" + mSubTaskType + ", mIsSubTaskWorking=" + mIsSubTaskWorking
+ ", isAutopilotSubTaskArriveEndSite=" + isAutopilotSubTaskArriveEndSite
);
CallerLogger.INSTANCE.e(M_SWEEPER + TAG, "高德定位到站mLongitude = " + gnssInfo.getLongitude()
+ ", mLatitude=" + gnssInfo.getLatitude() + ", mSubTaskType=" + mSubTaskType +", mIsSubTaskWorking=" + mIsSubTaskWorking
+ ", isAutopilotSubTaskArriveEndSite=" + isAutopilotSubTaskArriveEndSite
@@ -349,7 +345,6 @@ public class SweeperTaskModel {
//根据围栏判断,是否到达子任务终点
private void judgeArrivedStation(MogoLocation location) {
if (mCurrentSubTaskDetail == null) {
Log.d(TAG, "行程日志-judgeArrivedStation() mCurrentSubTaskDetail is null");
CallerLogger.INSTANCE.d(TAG, "行程日志-judgeArrivedStation() mCurrentSubTaskDetail is null");
return;
}
@@ -361,8 +356,6 @@ public class SweeperTaskModel {
if (distance <= SweeperConst.ARRIVE_AT_END_STATION_DISTANCE) {
CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "行程日志-judgeArrivedStation() distance = " + distance
+ " to " + mCurrentSubTaskDetail.getEndSiteName());
Log.d(TAG, "行程日志-judgeArrivedStation() distance = " + distance
+ " to " + mCurrentSubTaskDetail.getEndSiteName());
isAutopilotSubTaskArriveEndSite = true;
//到达子任务终点 结束子任务
subTaskEnd(mIsFirstSubtask, mIsLastSubtask, mSubTaskId); //无自动驾驶到终点信息传null
@@ -446,8 +439,6 @@ public class SweeperTaskModel {
//MAP 280 每隔100ms左右返回一次到站 导致在到达中间站后再次滑动出发后会有时间差,收到一次到站,出现问题
//此处比对 自驾告诉的子任务终点坐标和本地应到子任务终点坐标, 一致时才表示子任务完成
if (data != null && data.getEndLocation() != null && mCurrentSubTaskDetail != null) {
Log.d(M_SWEEPER + TAG, "MAP到站通知" + mCurrentSubTaskDetail.getEndSiteName() + " 经度:"
+ data.getEndLocation().getLongitude() + " 纬度:" + data.getEndLocation().getLatitude());
CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "MAP到站通知" + mCurrentSubTaskDetail.getEndSiteName() + " 经度:"
+ data.getEndLocation().getLongitude() + " 纬度:" + data.getEndLocation().getLatitude());
String latitude = NumberFormatUtil.cutOutNumber(data.getEndLocation().getLatitude(), 5); //wgs
@@ -459,8 +450,6 @@ public class SweeperTaskModel {
return;
}
}
Log.d(M_SWEEPER + TAG, "MAP到站通知mSubTaskType=" + mSubTaskType + " isAutopilotSubTaskArriveEndSite="
+ isAutopilotSubTaskArriveEndSite + " mSubTaskId=" + mSubTaskId);
CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "MAP到站通知mSubTaskType=" + mSubTaskType + " isAutopilotSubTaskArriveEndSite="
+ isAutopilotSubTaskArriveEndSite + " mSubTaskId=" + mSubTaskId);
if (SubTaskTypeEnum.MANUAL_DRIVING_SUBTYPE.getCode() == mSubTaskType) {//人工驾驶子任务需要手动跳过,不能自动结束
@@ -664,7 +653,6 @@ public class SweeperTaskModel {
@Override
public void onSuccess(BaseResponse<SweeperSubTaskDetailBean> data) {
CallerLogger.INSTANCE.d(M_SWEEPER + TAG, "getSubTaskDetail" + GsonUtil.jsonFromObject(data));
Log.d(M_SWEEPER + TAG, "getSubTaskDetail" + GsonUtil.jsonFromObject(data));
if (data != null) {
mCurrentSubTaskDetail = data.getData();
if (mCurrentSubTaskDetail != null) {

View File

@@ -356,7 +356,12 @@ public class SweeperPresenter extends Presenter<SweeperFragment>
weltDataBean.setCleanIntensity(roboSweeperTaskIndex.getCleanIntensity());
weltDataBean.setSubTaskId(mSubTaskId);
MyDataBase.getInstance().getWeltDataDao().insert(weltDataBean);
String distance = String.valueOf((Math.round(roboSweeperTaskIndex.getDistToRefEdgePoint() * 100)));//m->cm 四舍五入到整数
String distance;
if (roboSweeperTaskIndex.getDistToRefEdgePoint() >= 1.0) {//大于等于1m
distance = format(roboSweeperTaskIndex.getDistToRefEdgePoint()) + "m";
} else {//小于1m
distance = Math.round(roboSweeperTaskIndex.getDistToRefEdgePoint() * 100) + "cm";//m->cm 四舍五入到整数
}
mView.setWeltDataToMap((ArrayList<WeltDataBean>) MyDataBase.getInstance().getWeltDataDao().loadAllWeltDataInfo(), true, distance);
}
}

View File

@@ -302,7 +302,7 @@ class WeltMapOverView : ConstraintLayout, IMoGoChassisLocationGCJ02Listener {
}
private fun setDistance(distance: String) {
taskWeltDistanceTv.text = "贴边:${distance}cm"
taskWeltDistanceTv.text = "贴边:${distance}"
}
fun setProgress(progress: String?) {

View File

@@ -283,7 +283,7 @@ class WeltSmallMapView : ConstraintLayout, IMoGoChassisLocationGCJ02Listener {
* 设置贴边距离
*/
private fun setWeltDistance(distance: String) {
taskWeltDistanceTv.text = "贴边:${distance}cm"
taskWeltDistanceTv.text = "贴边:${distance}"
}
/**