Как суммировать строки в таблице данных Flutter после каждой недели данных?
Я пишу простой таймер для своих сотрудников во Flutter.
Я отображаю их временную карту в таблице данных Flutter, например:
DataTable(
columns: const [
DataColumn(label: Text('Employee')),
DataColumn(label: Text('Clock-In')),
DataColumn(label: Text('Clock-Out')),
DataColumn(label: Text('Hours')),
DataColumn(label: Text('Tips')),
],
rows: [
for (var item in _listTimesheet.reversed) DataRow(cells:
[
// TODO: If Sunday Then Display Sunday AND Sum of Hours
if (DateFormat('EEEE').format(DateTime.parse(item["CLOCKED_IN_TIME"].toString())) == "Sunday")...[
DataCell(Text(item["EMPLOYEE_NAME"].toString())),
DataCell(Text("${DateFormat('yMEd').format(DateTime.parse(item["CLOCKED_IN_TIME"].toString()))}\n${DateFormat('jm').format(DateTime.parse(item["CLOCKED_IN_TIME"].toString()))}" )),
DataCell(Text("${DateFormat('yMEd').format(DateTime.parse(item["CLOCKED_OUT_TIME"].toString()))}\n${DateFormat('jm').format(DateTime.parse(item["CLOCKED_OUT_TIME"].toString()))}" )),
DataCell(Text(item["HOURS"].toString())),
DataCell(Text(item["TIPS"].toString())),
// TODO: Add Extra Row with Sum of Hours
// TODO: Then Reset Sum
] else...[
// TODO: Not Sunday, so Display Info and Add to Sum
DataCell(Text(item["EMPLOYEE_NAME"].toString())),
DataCell(Text("${DateFormat('yMEd').format(DateTime.parse(item["CLOCKED_IN_TIME"].toString()))}\n${DateFormat('jm').format(DateTime.parse(item["CLOCKED_IN_TIME"].toString()))}" )),
DataCell(Text("${DateFormat('yMEd').format(DateTime.parse(item["CLOCKED_OUT_TIME"].toString()))}\n${DateFormat('jm').format(DateTime.parse(item["CLOCKED_OUT_TIME"].toString()))}" )),
DataCell(Text(item["HOURS"].toString())),
DataCell(Text(item["TIPS"].toString())),
// TODO: Add to Sum
]
]
)
],
)
Как видите, я хочу отображать сумму часов за неделю каждое воскресенье. Однако оператор ELSE дает эту ошибку: The element type 'List<DataCell>' can't be assigned to the list type 'DataCell'.
.
Как я могу суммировать свои часы еженедельно и отображать их в этой таблице данных?
Спасибо!