Merge branch 'dev_special-d_230308_1.1.0' into 'test_special-d_230308_1.1.0.1'

Dev special d 230308 1.1.0

See merge request zhjt/AndroidApp/MoGoEagleEye!734
This commit is contained in:
pangfan
2023-03-23 06:53:45 +00:00
6 changed files with 91 additions and 57 deletions

View File

@@ -380,17 +380,32 @@ public abstract class BaseSweeperTabFragment<V extends IView, P extends Presente
* 展示人工驾驶地图导航
*/
protected void showAmapNaviToStationFragment(boolean isShow) {
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
if (isShow) {
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
mOchAmapNaviFragment = SweeperAmapNaviFragment.newInstance();
if (mOchAmapNaviFragment.isAdded()) {
mGroupNaviPanel.setVisibility(View.VISIBLE);
if (mOchAmapNaviFragment == null) {
mOchAmapNaviFragment=SweeperAmapNaviFragment.newInstance();
}
if (mOchAmapNaviFragment.isHidden()) {
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.show(mOchAmapNaviFragment).commitAllowingStateLoss();
return;
}
transaction.add(R.id.module_mogo_och_navi_panel_container, mOchAmapNaviFragment).show(mOchAmapNaviFragment);
transaction.commitAllowingStateLoss();
mGroupNaviPanel.setVisibility(View.VISIBLE);
if (mOchAmapNaviFragment.isAdded()) {
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.show(mOchAmapNaviFragment).commitAllowingStateLoss();
return;
}
transaction
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN)
.add(R.id.module_mogo_och_navi_panel_container, mOchAmapNaviFragment)
.show(mOchAmapNaviFragment).commitAllowingStateLoss();
} else {
AmapNaviToDestinationModel.getInstance(getContext()).destroyAmaNavi();
if (mOchAmapNaviFragment != null) {
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE)
.hide(mOchAmapNaviFragment).commitAllowingStateLoss();
}
mGroupNaviPanel.setVisibility(View.GONE);
}
}

View File

@@ -60,6 +60,19 @@ public class SweeperAmapNaviFragment extends BaseSweeperUIFragment implements AM
mAMapNaviView.onPause();
}
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
if (hidden) { //不在最前端界面显示
if (mAMapNaviView != null){
mAMapNaviView.onPause();
}
} else { //重新显示到最前端
if (mAMapNaviView != null){
mAMapNaviView.onResume();
}
}
}
@Override
public void onDestroy() {
super.onDestroy();

View File

@@ -421,7 +421,6 @@ class SweeperFragment : BaseSweeperTabFragment<SweeperFragment?, SweeperPresente
endConfirmDialog?.setClickListener(object : SweeperManualDrivingDialog.ClickListener {
override fun confirm() {
presenter?.startTask(isFirstSubTask(), isLastSubTask(), taskId, mSubTaskType, taskStatus)
showAmapNaviToStationFragment(true)
val startPoint =
CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj(AbsMogoApplication.getApp(), startWgs84Lon, startWgs84Lat)
val endPoint = CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj(AbsMogoApplication.getApp(), endWgs84Lon, endWgs84Lat)
@@ -432,7 +431,7 @@ class SweeperFragment : BaseSweeperTabFragment<SweeperFragment?, SweeperPresente
endPoint.latitude,
endPoint.longitude
)
showAmapNaviToStationFragment(true)
}
})
endConfirmDialog?.show()

View File

@@ -28,7 +28,6 @@ import com.mogo.eagle.core.function.call.autopilot.CallerPlanningRottingListener
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
import com.mogo.eagle.core.utilcode.util.CoordinateUtils;
import com.mogo.eagle.core.utilcode.util.NetworkUtils;
import com.mogo.eagle.core.utilcode.util.ThreadUtils;
import com.mogo.eagle.core.utilcode.util.ToastUtils;
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager;
import com.mogo.och.common.module.biz.common.socketmessage.data.OCHOperationalMessage;
@@ -192,7 +191,7 @@ public class SweeperTaskModel {
@Override
public void onAutopilotRotting(MessagePad.GlobalPathResp routeList) {
if (null != routeList && routeList.getWayPointsList().size() > 0) {
if (null != routeList && routeList.getWayPointsList()!=null&&routeList.getWayPointsList().size() > 0) {
if (mCurrentSubTaskDetail.getLineId() != mLineId) {//判断是否同一条路线
mLineId = mCurrentSubTaskDetail.getLineId();
points.addAll(coordinateConverterWgsToGcjList(mContext, routeList.getWayPointsList()));
@@ -311,8 +310,6 @@ public class SweeperTaskModel {
+ ", mLatitude=" + gnssInfo.getLatitude() + ", mSubTaskType=" + mSubTaskType +", mIsSubTaskWorking=" + mIsSubTaskWorking
+ ", isAutopilotSubTaskArriveEndSite=" + isAutopilotSubTaskArriveEndSite
);
mLongitude = gnssInfo.getLongitude();
mLatitude = gnssInfo.getLatitude();
if (mControllerStatusCallback != null) {
mControllerStatusCallback.onCarLocationChanged(gnssInfo);
}
@@ -335,12 +332,10 @@ public class SweeperTaskModel {
private void addCoordinates(MogoLocation mogoLatLng) {
String tempLongitude = NumberFormatUtil.cutOutNumber(mogoLatLng.getLongitude(), 5);
String tempLatitude = NumberFormatUtil.cutOutNumber(mogoLatLng.getLatitude(), 5);
String latitude = NumberFormatUtil.cutOutNumber(points.get(points.size()-1).latitude, 5);
String longitude = NumberFormatUtil.cutOutNumber(points.get(points.size()-1).longitude, 5);
//用于过滤车是否停在原地,经纬度相同的情况
if (!tempLongitude.equals(longitude) && !tempLatitude.equals(latitude)) {
if (!tempLongitude.equals(mLongitude) && !tempLatitude.equals(mLatitude)) {
mLongitude = mogoLatLng.getLongitude();
mLatitude = mogoLatLng.getLatitude();
SweeperRoutePlanningUpdateReqBean.Result result = new SweeperRoutePlanningUpdateReqBean.Result();
result.latitude = mogoLatLng.getLatitude();
result.longitude = mogoLatLng.getLongitude();

View File

@@ -12,7 +12,6 @@ import java.util.Map;
import io.reactivex.Observable;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.HTTP;
import retrofit2.http.Header;
import retrofit2.http.Headers;
import retrofit2.http.POST;

View File

@@ -24,15 +24,15 @@ object SweeperServiceManager {
*/
@JvmStatic
fun getCurrentTask(context: Context, callback: OchCommonServiceCallback<BaseResponse<SweeperSubTaskBean>>?) {
val map= hashMapOf<String,String>()
map["serviceAppId"] = MoGoAiCloudClientConfig.getInstance().serviceAppId
map["token"] = MoGoAiCloudClientConfig.getInstance().token
map["sn"] = MoGoAiCloudClientConfig.getInstance().sn
val map = hashMapOf<String, String>()
map["serviceAppId"] = getServiceAppId()
map["token"] = getToken()
map["sn"] = getCarSN()
d(SceneConstant.M_SWEEPER + TAG, "getCurrentTask" + GsonUtil.jsonFromObject(map))
mService.getCurrentTask(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
MoGoAiCloudClientConfig.getInstance().sn
getServiceAppId(),
getToken(),
getCarSN()
)
.transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "getCurrentTask"))
@@ -43,31 +43,32 @@ object SweeperServiceManager {
*/
@JvmStatic
fun getMainTaskList(context: Context, callback: OchCommonServiceCallback<BaseResponse<MutableList<SweeperMainTaskBean>>>?) {
val map= hashMapOf<String,String>()
map["serviceAppId"] = MoGoAiCloudClientConfig.getInstance().serviceAppId
map["token"] = MoGoAiCloudClientConfig.getInstance().token
map["sn"] = MoGoAiCloudClientConfig.getInstance().sn
val map = hashMapOf<String, String>()
map["serviceAppId"] = getServiceAppId()
map["token"] = getToken()
map["sn"] = getCarSN()
d(SceneConstant.M_SWEEPER + TAG, "getMainTaskList" + GsonUtil.jsonFromObject(map))
mService.getMainTaskList(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
MoGoAiCloudClientConfig.getInstance().sn
getServiceAppId(),
getToken(),
getCarSN()
)
.transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "getMainTaskList"))
}
/**
* 获取子任务列表
*/
@JvmStatic
fun getSubTaskList(taskId: Int, context: Context, callback: OchCommonServiceCallback<BaseResponse<MutableList<SubInfo>>>?) {
val map= hashMapOf<String,String>()
map["carSn"] = MoGoAiCloudClientConfig.getInstance().sn
val map = hashMapOf<String, String>()
map["carSn"] = getCarSN()
map["taskId"] = taskId.toString()
d(SceneConstant.M_SWEEPER + TAG, "getSubTaskList" + GsonUtil.jsonFromObject(map))
mService.getSubTaskList(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
getServiceAppId(),
getToken(),
map
)
.transformTry()
@@ -79,13 +80,13 @@ object SweeperServiceManager {
*/
@JvmStatic
fun getSubTaskDetail(subTaskId: Int, context: Context, callback: OchCommonServiceCallback<BaseResponse<SweeperSubTaskDetailBean>>?) {
val map= hashMapOf<String,String>()
map["carSn"] = MoGoAiCloudClientConfig.getInstance().sn
val map = hashMapOf<String, String>()
map["carSn"] = getCarSN()
map["taskId"] = subTaskId.toString()
d(SceneConstant.M_SWEEPER + TAG, "getSubTaskDetail" + GsonUtil.jsonFromObject(map))
mService.getSubTaskDetail(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
getServiceAppId(),
getToken(),
map
)
.transformTry()
@@ -96,12 +97,12 @@ object SweeperServiceManager {
* 子任务开始上报
*/
@JvmStatic
fun subTaskStart(isFirst:Boolean,isEnd:Boolean,subTaskId: Int,context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val subStartRequest = SubStartRequest(MoGoAiCloudClientConfig.getInstance().sn, subTaskId, System.currentTimeMillis(),isFirst,isEnd)
fun subTaskStart(isFirst: Boolean, isEnd: Boolean, subTaskId: Int, context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val subStartRequest = SubStartRequest(getCarSN(), subTaskId, System.currentTimeMillis(), isFirst, isEnd)
d(SceneConstant.M_SWEEPER + TAG, "subTaskStart" + GsonUtil.jsonFromObject(subStartRequest))
mService.subTaskStart(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
getServiceAppId(),
getToken(),
subStartRequest
)
.transformTry()
@@ -112,12 +113,12 @@ object SweeperServiceManager {
* 子任务结束上报
*/
@JvmStatic
fun subTaskEnd(isFirst:Boolean,isEnd:Boolean,subTaskId: Int,context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val subStartRequest = SubStartRequest(MoGoAiCloudClientConfig.getInstance().sn, subTaskId, System.currentTimeMillis(),isFirst,isEnd)
fun subTaskEnd(isFirst: Boolean, isEnd: Boolean, subTaskId: Int, context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val subStartRequest = SubStartRequest(getCarSN(), subTaskId, System.currentTimeMillis(), isFirst, isEnd)
d(SceneConstant.M_SWEEPER + TAG, "subTaskEnd" + GsonUtil.jsonFromObject(subStartRequest))
mService.subTaskEnd(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
getServiceAppId(),
getToken(),
subStartRequest
)
.transformTry()
@@ -128,12 +129,12 @@ object SweeperServiceManager {
* 子任务跳过上报
*/
@JvmStatic
fun subTaskSkip(isFirst:Boolean,isEnd:Boolean,subTaskId: Int,context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val subStartRequest = SubStartRequest(MoGoAiCloudClientConfig.getInstance().sn, subTaskId, System.currentTimeMillis(),isFirst,isEnd)
fun subTaskSkip(isFirst: Boolean, isEnd: Boolean, subTaskId: Int, context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val subStartRequest = SubStartRequest(getCarSN(), subTaskId, System.currentTimeMillis(), isFirst, isEnd)
d(SceneConstant.M_SWEEPER + TAG, "subTaskSkip" + GsonUtil.jsonFromObject(subStartRequest))
mService.subTaskSkip(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
getServiceAppId(),
getToken(),
subStartRequest
)
.transformTry()
@@ -144,17 +145,29 @@ object SweeperServiceManager {
* 主任务重置
*/
@JvmStatic
fun mainTaskReset(taskId: Int,context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val map= hashMapOf<String,String>()
map["carSn"] = MoGoAiCloudClientConfig.getInstance().sn
fun mainTaskReset(taskId: Int, context: Context, callback: OchCommonServiceCallback<BaseResponse<Boolean>>?) {
val map = hashMapOf<String, String>()
map["carSn"] = getCarSN()
map["taskId"] = taskId.toString()
d(SceneConstant.M_SWEEPER + TAG, "mainTaskReset" + GsonUtil.jsonFromObject(map))
mService.mainTaskReset(
MoGoAiCloudClientConfig.getInstance().serviceAppId,
MoGoAiCloudClientConfig.getInstance().token,
getServiceAppId(),
getToken(),
map
)
.transformTry()
.subscribe(OchCommonSubscribeImpl(context, callback, "mainTaskReset"))
}
private fun getCarSN(): String {
return MoGoAiCloudClientConfig.getInstance().sn
}
private fun getServiceAppId(): String {
return MoGoAiCloudClientConfig.getInstance().serviceAppId
}
private fun getToken(): String {
return MoGoAiCloudClientConfig.getInstance().token
}
}