主界面 作业里成接入

This commit is contained in:
mmc
2026-04-16 10:33:52 +08:00
parent 4c11f06513
commit aec24027db
4 changed files with 143 additions and 199 deletions

View File

@@ -937,10 +937,7 @@ class _MapPageEnterpriseState extends State<MapPageEnterprise> {
if (_workStatus != WorkStatus.idle) {
_stopWork();
}
//if (_workStatus != WorkStatus.idle) {
// _showPageToast(message: "请先停止作业再刷新页面哦!", type: ToastType.warn);
// return;
//}
_cancelAllToast();
if (_isRefreshing) return;
@@ -952,8 +949,9 @@ class _MapPageEnterpriseState extends State<MapPageEnterprise> {
if (_currentLatLng != null && _isValidLatLng(_currentLatLng!.latitude, _currentLatLng!.longitude)) {
_mapController.move(_currentLatLng!, 18);
}
// ==========================================
// 🔥 1. 清空 所有本地缓存(你要的核心功能)
// 🔥 1. 清空 所有本地缓存
// ==========================================
await _clearLocalData();
@@ -961,7 +959,7 @@ class _MapPageEnterpriseState extends State<MapPageEnterprise> {
// 🔥 2. 清空 所有内存状态(彻底重置)
// ==========================================
setState(() {
// 轨迹彻底清空
// 轨迹彻底清空(关键!)
tracePoint?.clear();
gctracePoint?.clear();
tracePoint = [];
@@ -1001,15 +999,15 @@ class _MapPageEnterpriseState extends State<MapPageEnterprise> {
isStartWork = false;
isStopWork = false;
isreceiveFirstCompletePoint = false;
_showHeadingWarn = false; // 关闭航向警告
_isPanelOpen = false; // 关闭底部操作面板
_showHeadingWarn = false;
_isPanelOpen = false;
_directionBoxOpen = false; // 关闭航线方向面板
_isListBoxOpen = false; // 关闭地块列表面板
_isWorkPanelOpen = false; // 关闭作业面板
_isVideoDialogOpen = false; // 关闭视频弹窗
_isObstacleEditing = false; // 退出障碍物编辑
_selectedPlot = null; // 清空选中地块
_directionBoxOpen = false;
_isListBoxOpen = false;
_isWorkPanelOpen = false;
_isVideoDialogOpen = false;
_isObstacleEditing = false;
_selectedPlot = null;
// 重置模式
_currentRobotMode = RobotMode.robot;
@@ -1020,35 +1018,28 @@ class _MapPageEnterpriseState extends State<MapPageEnterprise> {
_workDistance = 0.0;
_angle = 0.0;
// 选中地块清空
_selectedPlot = null;
// 定位重置
_currentLatLng = null;
_currentWgsLatLng = null;
_currentLatLng = null;
_currentWgsLatLng = null;
_mapCenter = _getDefaultValidCenter();
// 重置作业状态
isDjMapShow = false;
_workStatus = WorkStatus.idle;
isStartWork = false;
isStopWork = false;
// 轨迹管理器重置
// ==========================================
// 🔥 🔥 🔥 核心修复:强制重置轨迹管理器 + 强制改为 LOCATION 模式
// ==========================================
_traceManager.reset();
_traceManager.setMode(TPMode.LOCATION);
});
// ==========================================
// 🔥 3. 保存空状态(确保下次打开也是干净的)
// 🔥 3. 保存空状态
// ==========================================
await _saveDataToLocal();
// 移动地图到默认中心点
//_mapController.move(_getDefaultValidCenter(), 18);
if (mounted) {
_showPageToast(message: "已清除所有缓存,恢复初始状态", type: ToastType.success);
}