Files
flutterApp/lib/features/v2/home/presentation/bloc/home_v2_state.dart
Songzex 335c468aac 修复版本管理整包更新无法弹出的问题
完成集成新的登录接口的更换使用
完成集成用户的场站列表接口
完成开发设计选择场站项为全局属性
完成我的页面的个人信息的集成和详情页面的开发
完成设备页面的中无人机机场的列表接口对接入和个项页面的布局的优化
完成设备页面的中无人机机场的详情接口的对接和使用和页面的更新布局
2026-05-29 14:13:34 +08:00

59 lines
1.3 KiB
Dart

import 'package:equatable/equatable.dart';
import 'package:maibu_satabot_v2/features/v2/home/domain/entities/home_entity.dart';
import 'package:maibu_satabot_v2/features/v2/home/domain/entities/site_entity.dart';
abstract class HomeV2State extends Equatable {
const HomeV2State();
@override
List<Object?> get props => [];
}
class HomeV2Initial extends HomeV2State {
const HomeV2Initial();
}
class HomeV2Loading extends HomeV2State {
const HomeV2Loading();
}
class HomeV2Loaded extends HomeV2State {
final HomeEntity homeData;
final String trendType;
final List<SiteEntity> sites;
final SiteEntity? selectedSite;
const HomeV2Loaded({
required this.homeData,
this.trendType = 'kW',
this.sites = const [],
this.selectedSite,
});
HomeV2Loaded copyWith({
HomeEntity? homeData,
String? trendType,
List<SiteEntity>? sites,
SiteEntity? selectedSite,
}) {
return HomeV2Loaded(
homeData: homeData ?? this.homeData,
trendType: trendType ?? this.trendType,
sites: sites ?? this.sites,
selectedSite: selectedSite ?? this.selectedSite,
);
}
@override
List<Object?> get props => [homeData, trendType, sites, selectedSite];
}
class HomeV2Error extends HomeV2State {
final String message;
const HomeV2Error(this.message);
@override
List<Object?> get props => [message];
}