Untracked

This commit is contained in:
2022-03-08 23:06:40 +05:30
parent 42c29cdab2
commit 3cd1ffdc1c

View File

@@ -57,7 +57,7 @@ extension HexColor on Color {
return Color(int.parse(buffer.toString(), radix: 16));
}
/// Prefixes a hash sign if [leadingHashSign] is set to `true` (default is `true`).
/// Prefixes a hash sign if [leadingHashSign] is set to `true` (default is `true`)./home/warlock/Desktop/Task Tracker/tasktracker
String toHex({bool leadingHashSign = true}) => '${leadingHashSign ? '#' : ''}'
'${alpha.toRadixString(16).padLeft(2, '0')}'
'${red.toRadixString(16).padLeft(2, '0')}'
@@ -206,9 +206,18 @@ class _MyHomePageState extends State<MyHomePage> {
}
firstDay = element.startTime;
String thisDate = dFormat.format(element.startTime);
String endDate = dFormat.format(element.endTime);
int thisMinutes = element.endTime.difference(element.startTime).inMinutes;
int nextMinutes = 0;
if(element.startTime.day != element.endTime.day){
print("welp, ${element.startTime} - ${element.endTime}");
DateTime nextDayBaseline = DateTime(element.endTime.year, element.endTime.month,
element.endTime.day,0,0,0);
nextMinutes = element.endTime.difference(nextDayBaseline).inMinutes;
thisMinutes -= nextMinutes;
print("Today : $thisMinutes, Next day : $nextMinutes");
}
if (!days.contains(thisDate)) {
days.add(dFormat.format(element.startTime));
@@ -250,6 +259,16 @@ class _MyHomePageState extends State<MyHomePage> {
} else {
catTimeMap.putIfAbsent(element.taskType.cat!, () => thisMinutes);
}
}else if(thisDate==endDate){
if (element.taskType.cat == null) {
continue;
}
print("Null : ${nextMinutes}");
if (catTimeMap.containsKey(element.taskType.cat)) {
catTimeMap[element.taskType.cat!] = (catTimeMap[element.taskType.cat]! + nextMinutes);
} else {
catTimeMap.putIfAbsent(element.taskType.cat!, () => nextMinutes);
}
}
if ((element.startTime.isAfter(catsRange!.start) && element.startTime.isBefore(catsRange!.end)) ||
@@ -273,15 +292,19 @@ class _MyHomePageState extends State<MyHomePage> {
productivityData = <ProductivityMapData>[];
taskTypesData = <TaskTypeMapData>[];
catsData = <CatMapData>[];
int trackedTime = 0;
catTimeMap.forEach((key, value) {
print(key.name + " : $value");
//print(key.name + " : $value");
Color barCol = HexColor.fromHex(key.color);
dailyData.add(CatMapData(key.name, value, barCol));
trackedTime += value;
});
print("Tracked time : $trackedTime");
dailyData.sort((a, b) {
return a.name.toLowerCase().compareTo(b.name.toLowerCase());
});
dailyData.add(CatMapData("Untracked",1440-trackedTime, Colors.black));
for (var element in days) {
// if(productivtyActs.containsKey(element) && unproductivtyActs.containsKey(element)){
int prodActs = (productivtyActs[element] ?? 0);