mirror of
https://github.com/SyncrowIOT/web.git
synced 2025-07-10 15:17:31 +00:00
dateTime issue
This commit is contained in:
@ -33,56 +33,190 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
int currentPage = 0;
|
||||
|
||||
List<EventDevice> record = [
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:43'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:35'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:29'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:25'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:21'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:17'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:15:07'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:14:47'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:14:40'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:14:23'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2024-10-23 11:14:13'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:43'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:35'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:29'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:25'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:21'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:17'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:15:07'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:14:47'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:14:40'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:14:23'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-10-23 11:14:13'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:43'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:35'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:29'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:25'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:21'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:17'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:15:07'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:14:47'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:14:40'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:14:23'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-23 11:14:13'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-11 11:15:43'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-11 11:15:35'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-12 11:15:29'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-13 11:15:25'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-14 11:15:21'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-15 11:15:17'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-16 11:15:07'), value: '2286'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-17 11:14:47'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-18 11:14:40'), value: '2284'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-19 11:14:23'), value: '2285'),
|
||||
EventDevice(code: 'VoltageA', eventTime: DateTime.parse('2023-02-20 11:14:13'), value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:43'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:35'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:29'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:25'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:21'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:17'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:15:07'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:14:47'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:14:40'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:14:23'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2024-10-23 11:14:13'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:43'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:35'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:29'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:25'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:21'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:17'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:15:07'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:14:47'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:14:40'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:14:23'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-10-23 11:14:13'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:43'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:35'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:29'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:25'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:21'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:17'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:15:07'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:14:47'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:14:40'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:14:23'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-23 11:14:13'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-11 11:15:43'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-11 11:15:35'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-12 11:15:29'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-13 11:15:25'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-14 11:15:21'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-15 11:15:17'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-16 11:15:07'),
|
||||
value: '2286'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-17 11:14:47'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-18 11:14:40'),
|
||||
value: '2284'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-19 11:14:23'),
|
||||
value: '2285'),
|
||||
EventDevice(
|
||||
code: 'VoltageA',
|
||||
eventTime: DateTime.parse('2023-02-20 11:14:13'),
|
||||
value: '2284'),
|
||||
];
|
||||
|
||||
FutureOr<void> _onFetchDeviceStatus(SmartPowerFetchDeviceEvent event, Emitter<SmartPowerState> emit) async {
|
||||
FutureOr<void> _onFetchDeviceStatus(
|
||||
SmartPowerFetchDeviceEvent event, Emitter<SmartPowerState> emit) async {
|
||||
emit(SmartPowerLoading());
|
||||
try {
|
||||
var status = await DevicesManagementApi().getPowerClampInfo(event.deviceId);
|
||||
var status =
|
||||
await DevicesManagementApi().getPowerClampInfo(event.deviceId);
|
||||
deviceStatus = PowerClampModel.fromJson(status);
|
||||
|
||||
phaseData = [
|
||||
@ -114,19 +248,22 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
}
|
||||
}
|
||||
|
||||
FutureOr<void> _onArrowPressed(SmartPowerArrowPressedEvent event, Emitter<SmartPowerState> emit) {
|
||||
FutureOr<void> _onArrowPressed(
|
||||
SmartPowerArrowPressedEvent event, Emitter<SmartPowerState> emit) {
|
||||
currentPage = (currentPage + event.direction + 4) % 4;
|
||||
emit(SmartPowerStatusLoaded(deviceStatus, currentPage));
|
||||
emit(GetDeviceStatus());
|
||||
}
|
||||
|
||||
FutureOr<void> _onPageChanged(SmartPowerPageChangedEvent event, Emitter<SmartPowerState> emit) {
|
||||
FutureOr<void> _onPageChanged(
|
||||
SmartPowerPageChangedEvent event, Emitter<SmartPowerState> emit) {
|
||||
currentPage = event.page;
|
||||
emit(SmartPowerStatusLoaded(deviceStatus, currentPage));
|
||||
emit(GetDeviceStatus());
|
||||
}
|
||||
|
||||
Future<void> _onFactoryReset(SmartPowerFactoryReset event, Emitter<SmartPowerState> emit) async {
|
||||
Future<void> _onFactoryReset(
|
||||
SmartPowerFactoryReset event, Emitter<SmartPowerState> emit) async {
|
||||
emit(SmartPowerLoading());
|
||||
try {
|
||||
final response = await DevicesManagementApi().factoryReset(
|
||||
@ -143,7 +280,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> _onBatchControl(PowerBatchControlEvent event, Emitter<SmartPowerState> emit) async {
|
||||
Future<void> _onBatchControl(
|
||||
PowerBatchControlEvent event, Emitter<SmartPowerState> emit) async {
|
||||
final oldValue = deviceStatus.status;
|
||||
|
||||
_updateLocalValue(event.code, event.value);
|
||||
@ -159,11 +297,14 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> _onFetchBatchStatus(SmartPowerFetchBatchEvent event, Emitter<SmartPowerState> emit) async {
|
||||
Future<void> _onFetchBatchStatus(
|
||||
SmartPowerFetchBatchEvent event, Emitter<SmartPowerState> emit) async {
|
||||
emit(SmartPowerLoading());
|
||||
try {
|
||||
final response = await DevicesManagementApi().getPowerStatus(event.devicesIds);
|
||||
PowerClampBatchModel deviceStatus = PowerClampBatchModel.fromJson(response);
|
||||
final response =
|
||||
await DevicesManagementApi().getPowerStatus(event.devicesIds);
|
||||
PowerClampBatchModel deviceStatus =
|
||||
PowerClampBatchModel.fromJson(response);
|
||||
|
||||
emit(SmartPowerLoadBatchControll(deviceStatus));
|
||||
} catch (e) {
|
||||
@ -195,9 +336,11 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
try {
|
||||
late bool response;
|
||||
if (isBatch) {
|
||||
response = await DevicesManagementApi().deviceBatchControl(deviceId, code, value);
|
||||
response = await DevicesManagementApi()
|
||||
.deviceBatchControl(deviceId, code, value);
|
||||
} else {
|
||||
response = await DevicesManagementApi().deviceControl(deviceId, Status(code: code, value: value));
|
||||
response = await DevicesManagementApi()
|
||||
.deviceControl(deviceId, Status(code: code, value: value));
|
||||
}
|
||||
|
||||
if (!response) {
|
||||
@ -217,7 +360,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
}
|
||||
}
|
||||
|
||||
void _revertValueAndEmit(String deviceId, String code, dynamic oldValue, Emitter<SmartPowerState> emit) {
|
||||
void _revertValueAndEmit(String deviceId, String code, dynamic oldValue,
|
||||
Emitter<SmartPowerState> emit) {
|
||||
_updateLocalValue(code, oldValue);
|
||||
emit(SmartPowerLoadBatchControll(deviceBatchStatus));
|
||||
}
|
||||
@ -274,8 +418,10 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
int selectedYear = DateTime.now().year;
|
||||
int selectedMonth = DateTime.now().month;
|
||||
|
||||
FixedExtentScrollController yearController = FixedExtentScrollController(initialItem: selectedYear - 1905);
|
||||
FixedExtentScrollController monthController = FixedExtentScrollController(initialItem: selectedMonth - 1);
|
||||
FixedExtentScrollController yearController =
|
||||
FixedExtentScrollController(initialItem: selectedYear - 1905);
|
||||
FixedExtentScrollController monthController =
|
||||
FixedExtentScrollController(initialItem: selectedMonth - 1);
|
||||
|
||||
return await showDialog<DateTime>(
|
||||
context: context,
|
||||
@ -285,7 +431,10 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.white,
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
),
|
||||
height: 350,
|
||||
width: 350,
|
||||
child: Column(
|
||||
@ -294,7 +443,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
padding: EdgeInsets.all(16.0),
|
||||
child: Text(
|
||||
'Select Month and Year',
|
||||
style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
|
||||
style:
|
||||
TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
|
||||
),
|
||||
),
|
||||
const Divider(),
|
||||
@ -337,7 +487,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
builder: (context, index) {
|
||||
return Center(
|
||||
child: Text(
|
||||
DateFormat.MMMM().format(DateTime(0, index + 1)),
|
||||
DateFormat.MMMM()
|
||||
.format(DateTime(0, index + 1)),
|
||||
style: const TextStyle(fontSize: 18),
|
||||
),
|
||||
);
|
||||
@ -352,7 +503,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
),
|
||||
const Divider(),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16.0, vertical: 8.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
@ -365,7 +517,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
TextButton(
|
||||
child: const Text('OK'),
|
||||
onPressed: () {
|
||||
final selectedDateTime = DateTime(selectedYear, selectedMonth);
|
||||
final selectedDateTime =
|
||||
DateTime(selectedYear, selectedMonth);
|
||||
Navigator.of(context).pop(selectedDateTime);
|
||||
},
|
||||
),
|
||||
@ -383,7 +536,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
|
||||
Future<DateTime?> selectYear(BuildContext context) async {
|
||||
int selectedYear = DateTime.now().year;
|
||||
FixedExtentScrollController yearController = FixedExtentScrollController(initialItem: selectedYear - 1905);
|
||||
FixedExtentScrollController yearController =
|
||||
FixedExtentScrollController(initialItem: selectedYear - 1905);
|
||||
|
||||
return await showDialog<DateTime>(
|
||||
context: context,
|
||||
@ -393,7 +547,10 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Container(
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.white,
|
||||
borderRadius: BorderRadius.circular(10),
|
||||
),
|
||||
height: 350,
|
||||
width: 350,
|
||||
child: Column(
|
||||
@ -402,7 +559,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
padding: EdgeInsets.all(16.0),
|
||||
child: Text(
|
||||
'Select Year',
|
||||
style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
|
||||
style:
|
||||
TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
|
||||
),
|
||||
),
|
||||
const Divider(),
|
||||
@ -429,7 +587,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
),
|
||||
const Divider(),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16.0, vertical: 8.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
@ -492,7 +651,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
),
|
||||
const Divider(),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 8.0),
|
||||
padding: const EdgeInsets.symmetric(
|
||||
horizontal: 16.0, vertical: 8.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
@ -524,7 +684,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
|
||||
String formattedDate = DateFormat('yyyy/MM/dd').format(DateTime.now());
|
||||
|
||||
void checkDayMonthYearSelected(SelectDateEvent event, Emitter<SmartPowerState> emit) async {
|
||||
void checkDayMonthYearSelected(
|
||||
SelectDateEvent event, Emitter<SmartPowerState> emit) async {
|
||||
Future<DateTime?> Function(BuildContext context)? dateSelector;
|
||||
String dateFormat;
|
||||
switch (currentIndex) {
|
||||
@ -569,18 +730,23 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
}
|
||||
|
||||
List<EnergyData> energyDataList = [];
|
||||
void _filterRecordsByDate(FilterRecordsByDateEvent event, Emitter<SmartPowerState> emit) {
|
||||
void _filterRecordsByDate(
|
||||
FilterRecordsByDateEvent event, Emitter<SmartPowerState> emit) {
|
||||
// emit(SmartPowerLoading());
|
||||
|
||||
if (event.viewType == 'Year') {
|
||||
formattedDate = event.selectedDate.year.toString();
|
||||
filteredRecords = record.where((record) => record.eventTime!.year == event.selectedDate.year).toList();
|
||||
filteredRecords = record
|
||||
.where((record) => record.eventTime!.year == event.selectedDate.year)
|
||||
.toList();
|
||||
} else if (event.viewType == 'Month') {
|
||||
formattedDate = "${event.selectedDate.year.toString()}-${getMonthShortName(event.selectedDate.month)}";
|
||||
formattedDate =
|
||||
"${event.selectedDate.year.toString()}-${getMonthShortName(event.selectedDate.month)}";
|
||||
|
||||
filteredRecords = record
|
||||
.where((record) =>
|
||||
record.eventTime!.year == event.selectedDate.year && record.eventTime!.month == event.selectedDate.month)
|
||||
record.eventTime!.year == event.selectedDate.year &&
|
||||
record.eventTime!.month == event.selectedDate.month)
|
||||
.toList();
|
||||
} else if (event.viewType == 'Day') {
|
||||
formattedDate =
|
||||
@ -598,7 +764,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
energyDataList = filteredRecords.map((eventDevice) {
|
||||
return EnergyData(
|
||||
event.viewType == 'Year'
|
||||
? getMonthShortName(int.tryParse(DateFormat('MM').format(eventDevice.eventTime!))!)
|
||||
? getMonthShortName(
|
||||
int.tryParse(DateFormat('MM').format(eventDevice.eventTime!))!)
|
||||
: event.viewType == 'Month'
|
||||
? DateFormat('yyyy/MM/dd').format(eventDevice.eventTime!)
|
||||
: DateFormat('HH:mm:ss').format(eventDevice.eventTime!),
|
||||
@ -617,7 +784,8 @@ class SmartPowerBloc extends Bloc<SmartPowerEvent, SmartPowerState> {
|
||||
|
||||
void selectDateRange() async {
|
||||
DateTime startDate = dateTime!;
|
||||
DateTime endDate = DateTime(startDate.year, startDate.month + 1, 1).subtract(Duration(days: 1));
|
||||
DateTime endDate = DateTime(startDate.year, startDate.month + 1, 1)
|
||||
.subtract(Duration(days: 1));
|
||||
String formattedEndDate = DateFormat('dd/MM/yyyy').format(endDate);
|
||||
endChartDate = ' - $formattedEndDate';
|
||||
}
|
||||
|
@ -93,9 +93,9 @@ class _EnergyConsumptionPageState extends State<EnergyConsumptionPage> {
|
||||
Column(
|
||||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.only(top: 15),
|
||||
padding: const EdgeInsets.only(top: 10),
|
||||
child: SizedBox(
|
||||
height: MediaQuery.of(context).size.height * 0.12,
|
||||
height: MediaQuery.of(context).size.height * 0.11,
|
||||
child: LineChart(
|
||||
LineChartData(
|
||||
lineTouchData: LineTouchData(
|
||||
@ -227,7 +227,7 @@ class _EnergyConsumptionPageState extends State<EnergyConsumptionPage> {
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
padding: const EdgeInsets.all(5.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
@ -240,7 +240,7 @@ class _EnergyConsumptionPageState extends State<EnergyConsumptionPage> {
|
||||
child: Container(child: widget.widget),
|
||||
),
|
||||
),
|
||||
SizedBox(
|
||||
const SizedBox(
|
||||
width: 20,
|
||||
),
|
||||
Expanded(
|
||||
|
@ -172,9 +172,10 @@ class SmartPowerDeviceControl extends StatelessWidget
|
||||
),
|
||||
),
|
||||
const SizedBox(
|
||||
height: 10,
|
||||
height: 5,
|
||||
),
|
||||
Expanded(
|
||||
flex: 2,
|
||||
child: PageView(
|
||||
controller: _pageController,
|
||||
onPageChanged: (int page) {
|
||||
@ -184,7 +185,7 @@ class SmartPowerDeviceControl extends StatelessWidget
|
||||
children: [
|
||||
EnergyConsumptionPage(
|
||||
formattedDate:
|
||||
'${blocProvider.formattedDate}${blocProvider.endChartDate}',
|
||||
'${blocProvider.dateTime!.day}/${blocProvider.dateTime!.month}/${blocProvider.dateTime!.year} ${blocProvider.endChartDate}',
|
||||
onTap: () {
|
||||
blocProvider.add(SelectDateEvent(context: context));
|
||||
blocProvider.add(FilterRecordsByDateEvent(
|
||||
@ -213,7 +214,8 @@ class SmartPowerDeviceControl extends StatelessWidget
|
||||
date: blocProvider.formattedDate,
|
||||
),
|
||||
EnergyConsumptionPage(
|
||||
formattedDate: blocProvider.formattedDate,
|
||||
formattedDate:
|
||||
'${blocProvider.dateTime!.day}/${blocProvider.dateTime!.month}/${blocProvider.dateTime!.year} ${blocProvider.endChartDate}',
|
||||
onTap: () {
|
||||
blocProvider.add(SelectDateEvent(context: context));
|
||||
},
|
||||
@ -238,7 +240,8 @@ class SmartPowerDeviceControl extends StatelessWidget
|
||||
date: blocProvider.formattedDate,
|
||||
),
|
||||
EnergyConsumptionPage(
|
||||
formattedDate: blocProvider.formattedDate,
|
||||
formattedDate:
|
||||
'${blocProvider.dateTime!.day}/${blocProvider.dateTime!.month}/${blocProvider.dateTime!.year} ${blocProvider.endChartDate}',
|
||||
onTap: () {
|
||||
blocProvider.add(SelectDateEvent(context: context));
|
||||
},
|
||||
|
Reference in New Issue
Block a user