一次大的提交

This commit is contained in:
2026-08-07 08:49:29 +08:00
parent bf2fc49c19
commit db70665ced
181 changed files with 23060 additions and 2804 deletions

View File

@@ -52,15 +52,12 @@ import '../../features/devices/domain/usecases/get_device_location_usecase.dart'
import '../../features/devices/domain/usecases/get_work_record_usecase.dart';
import '../../features/devices/domain/usecases/get_work_records_by_site_id_usecase.dart';
import '../../features/devices/domain/usecases/create_device_task_usecase.dart';
import '../../features/devices/domain/usecases/get_work_records_by_site_id_usecase.dart';
import '../../features/devices/domain/usecases/route_planning_usecase.dart';
import '../../features/devices/domain/usecases/save_work_record_usecase.dart';
import '../../features/devices/domain/usecases/select_work_record_usecase.dart';
import '../../features/devices/domain/usecases/switch_device_usecase.dart';
import '../../features/devices/presentation/bloc/device_status_bloc.dart';
import '../../features/remote_control/data/datasources/remote_http_datasource.dart';
import '../../features/remote_control/data/datasources/remote_tcp_datasource.dart';
import '../../features/remote_control/domain/usecase/remote_control_usecase.dart';
import '../../features/remote_control/presentation/bloc/remote_control_cubit.dart';
import '../../features/v2/home/data/datasources/home_remote_datasource.dart';
import '../../features/v2/home/data/datasources/site_datasource.dart';
@@ -96,6 +93,12 @@ import '../../features/v2/device_list/domain/usecases/return_home_usecase.dart';
import '../../features/v2/device_list/presentation/bloc/drone_station_bloc.dart';
import '../../features/v2/device_list/presentation/bloc/robot_list_bloc.dart';
import '../../features/v2/device_list/presentation/bloc/device_realtime_bloc.dart';
import '../../features/v2/device_list/data/datasources/bind_device_datasource.dart';
import '../../features/v2/device_list/data/datasources/impl/bind_device_datasource_impl.dart';
import '../../features/v2/device_list/data/repositories/bind_device_repository_impl.dart';
import '../../features/v2/device_list/domain/repositories/bind_device_repository.dart';
import '../../features/v2/device_list/domain/usecases/bind_device_usecases.dart';
import '../../features/v2/device_list/presentation/cubit/bind_device_cubit.dart';
import '../../features/v2/waring_center/data/datasources/alarm_remote_datasource.dart';
import '../../features/v2/waring_center/data/datasources/impl/alarm_remote_datasource_impl.dart';
import '../../features/v2/waring_center/data/repositories/alarm_repository_impl.dart';
@@ -116,6 +119,18 @@ import '../../features/v2/message_center/data/repositories/message_center_reposi
import '../../features/v2/message_center/domain/repositories/message_center_repository.dart';
import '../../features/v2/message_center/domain/usecases/message_center_usecase.dart';
import '../../features/v2/message_center/presentation/bloc/message_center_cubit.dart';
import '../../features/v2/work_order/data/datasources/work_order_remote_datasource.dart';
import '../../features/v2/work_order/data/datasources/work_order_remote_datasource_impl.dart';
import '../../features/v2/work_order/data/repositories/work_order_repository_impl.dart';
import '../../features/v2/work_order/domain/repositories/work_order_repository.dart';
import '../../features/v2/work_order/domain/usecases/work_order_usecases.dart';
import '../../features/v2/work_order/presentation/cubit/work_order_cubit.dart';
import '../../features/v2/device_run_param/data/datasources/device_run_param_remote_datasource.dart';
import '../../features/v2/device_run_param/data/datasources/device_run_param_remote_datasource_impl.dart';
import '../../features/v2/device_run_param/data/repositories/device_run_param_repository_impl.dart';
import '../../features/v2/device_run_param/domain/repositories/device_run_param_repository.dart';
import '../../features/v2/device_run_param/domain/usecases/device_run_param_usecases.dart';
import '../services/device_permission_service.dart';
import '../../features/devices/data/datasources/device_task_datasource.dart';
import '../../features/devices/data/repositories/device_task_repository_impl.dart';
import '../../features/devices/domain/repositories/device_task_repository.dart';
@@ -196,7 +211,9 @@ Future<void> init() async {
sl.registerLazySingleton<ILoggerService>(() => SentryLoggerImpl());
/// 1.4 --- Route Observer (路由监听器) ---
sl.registerLazySingleton<RouteObserver>(() => RouteObserver<ModalRoute<void>>());
sl.registerLazySingleton<RouteObserver>(
() => RouteObserver<ModalRoute<void>>(),
);
/// 1.5 --- MQTT Data Sources ---
sl.registerFactory<DroneOsdDataSource>(
@@ -367,9 +384,7 @@ Future<void> init() async {
sl.registerLazySingleton<PauseFlightTaskUseCase>(
() => PauseFlightTaskUseCase(sl()),
);
sl.registerLazySingleton<ReturnHomeUseCase>(
() => ReturnHomeUseCase(sl()),
);
sl.registerLazySingleton<ReturnHomeUseCase>(() => ReturnHomeUseCase(sl()));
sl.registerFactory<DroneStationBloc>(
() => DroneStationBloc(sl(), sl(), sl(), sl()),
);
@@ -384,7 +399,7 @@ Future<void> init() async {
/// Alarm Center V2
sl.registerLazySingleton<AlarmRemoteDataSource>(
() => AlarmRemoteDataSourceImpl(),
() => AlarmRemoteDataSourceImpl(sl<Dio>()),
);
sl.registerLazySingleton<AlarmRepository>(() => AlarmRepositoryImpl(sl()));
sl.registerLazySingleton<GetAlarmListUseCase>(
@@ -393,13 +408,11 @@ Future<void> init() async {
sl.registerLazySingleton<GetAlarmCountUseCase>(
() => GetAlarmCountUseCase(sl()),
);
sl.registerFactory<AlarmCubit>(
() => AlarmCubit(getAlarmListUseCase: sl(), getAlarmCountUseCase: sl()),
);
sl.registerFactory<AlarmCubit>(() => AlarmCubit(getAlarmListUseCase: sl()));
/// Alarm Detail V2
sl.registerLazySingleton<AlarmDetailRemoteDataSource>(
() => AlarmDetailRemoteDataSourceImpl(),
() => AlarmDetailRemoteDataSourceImpl(sl()),
);
sl.registerLazySingleton<AlarmDetailRepository>(
() => AlarmDetailRepositoryImpl(sl()),
@@ -410,11 +423,13 @@ Future<void> init() async {
sl.registerLazySingleton<ConfirmAlarmUseCase>(
() => ConfirmAlarmUseCase(sl()),
);
sl.registerLazySingleton<HandleAlarmUseCase>(() => HandleAlarmUseCase(sl()));
sl.registerLazySingleton<AIDiagnosisUseCase>(() => AIDiagnosisUseCase(sl()));
sl.registerFactory<AlarmDetailCubit>(
() => AlarmDetailCubit(
getAlarmDetailUseCase: sl(),
confirmAlarmUseCase: sl(),
handleAlarmUseCase: sl(),
aiDiagnosisUseCase: sl(),
),
);
@@ -565,5 +580,84 @@ Future<void> init() async {
sl.registerLazySingleton(() => CancelTaskUseCase(sl()));
sl.registerLazySingleton(() => PauseTaskUseCase(sl()));
sl.registerLazySingleton(() => RecoveryTaskUseCase(sl()));
sl.registerFactory(() => DeviceTaskCubit(sl(), sl(), sl(), sl()));
sl.registerLazySingleton(() => DeviceTaskCubit(sl(), sl(), sl(), sl()));
/// 11. 工单管理 (Work Order)
sl.registerLazySingleton<WorkOrderRemoteDataSource>(
() => WorkOrderRemoteDataSourceImpl(sl<Dio>()),
);
sl.registerLazySingleton<WorkOrderRepository>(
() => WorkOrderRepositoryImpl(remoteDataSource: sl()),
);
sl.registerLazySingleton<GetWorkOrderListUseCase>(
() => GetWorkOrderListUseCase(sl()),
);
sl.registerLazySingleton<GetWorkOrderDetailUseCase>(
() => GetWorkOrderDetailUseCase(sl()),
);
sl.registerLazySingleton<DispatchWorkOrderUseCase>(
() => DispatchWorkOrderUseCase(sl()),
);
sl.registerLazySingleton<SuspendWorkOrderUseCase>(
() => SuspendWorkOrderUseCase(sl()),
);
sl.registerLazySingleton<CompleteWorkOrderUseCase>(
() => CompleteWorkOrderUseCase(sl()),
);
sl.registerLazySingleton<StartWorkOrderUseCase>(
() => StartWorkOrderUseCase(sl()),
);
sl.registerFactory<WorkOrderCubit>(
() => WorkOrderCubit(
getWorkOrderListUseCase: sl(),
getWorkOrderDetailUseCase: sl(),
dispatchWorkOrderUseCase: sl(),
suspendWorkOrderUseCase: sl(),
completeWorkOrderUseCase: sl(),
startWorkOrderUseCase: sl(),
),
);
/// 12. 设备运行参数管理 (Device Run Param)
sl.registerLazySingleton<DeviceRunParamRemoteDataSource>(
() => DeviceRunParamRemoteDataSourceImpl(sl<Dio>()),
);
sl.registerLazySingleton<DeviceRunParamRepository>(
() => DeviceRunParamRepositoryImpl(remoteDataSource: sl()),
);
sl.registerLazySingleton<GetDeviceRunParamUseCase>(
() => GetDeviceRunParamUseCase(sl()),
);
sl.registerLazySingleton<SaveDeviceRunParamUseCase>(
() => SaveDeviceRunParamUseCase(sl()),
);
/// 13. 设备操作权限校验服务 (Device Permission Service)
sl.registerLazySingleton<DevicePermissionService>(
() => DevicePermissionService(sl<Dio>()),
);
/// 14. 绑定智能装备 (Bind Device)
sl.registerLazySingleton<BindDeviceDatasource>(
() => BindDeviceDatasourceImpl(sl<Dio>()),
);
sl.registerLazySingleton<BindDeviceRepository>(
() => BindDeviceRepositoryImpl(sl<BindDeviceDatasource>()),
);
sl.registerLazySingleton<GetOrgListUseCase>(() => GetOrgListUseCase(sl()));
sl.registerLazySingleton<GetSitesByOrgUseCase>(
() => GetSitesByOrgUseCase(sl()),
);
sl.registerLazySingleton<GetUsersBySiteUseCase>(
() => GetUsersBySiteUseCase(sl()),
);
sl.registerLazySingleton<BindDeviceV2UseCase>(
() => BindDeviceV2UseCase(sl()),
);
sl.registerLazySingleton<IsDeviceAtSiteUseCase>(
() => IsDeviceAtSiteUseCase(sl()),
);
sl.registerFactory<BindDeviceCubit>(
() => BindDeviceCubit(sl(), sl(), sl(), sl(), sl(), sl<AppUserCubit>()),
);
}