Seperation issue at editing fixed + gaps

This commit is contained in:
Sewmina
2022-03-11 08:14:15 +05:30
parent 959cada3a7
commit 707640c78d
3 changed files with 68 additions and 6 deletions

View File

@@ -195,7 +195,9 @@ class _ActivitiesState extends State<Activities> {
}
}
print(productivtyActs);
for (var element in User.activities) {
//for (var element in User.activities) {
for(int i =0; i < User.activities.length; i++){
Activity element =User.activities[i];
if(searching){
bool matchMetadata = element.metadata!.toLowerCase().contains(searchController.text.toLowerCase());
bool matchTaskType=element.taskType.name.toLowerCase().contains(searchController.text.toLowerCase());
@@ -208,6 +210,8 @@ class _ActivitiesState extends State<Activities> {
}
String thisDate = dFormat.format(element.startTime);
if (thisDate != lastDate) {
int prodActs = productivtyActs[thisDate] ?? 0;
int unProdActs = unproductivtyActs[thisDate] ?? 0;
@@ -224,11 +228,64 @@ class _ActivitiesState extends State<Activities> {
// print('Activity : ${name} ,sTime: ${element.startTime}, eTime: ${element.endTime}');
_tasks.add(task);
}
//Check for gaps
if(i < User.activities.length-1){
int gap = User.activities[i].trueStartTime.difference(User.activities[i+1].trueEndTime).inMinutes;
if(gap > 20) {
Widget addGap = timeGap(User.activities[i].trueStartTime, User.activities[i+1].trueEndTime);
_tasks.add(addGap);
}
}
}
return _tasks;
}
Widget timeGap(DateTime sTime, DateTime eTime){
DateFormat dateFormat = DateFormat("HH:mm");
String gap = Main.MinutesToTimeString(sTime.difference(eTime).inMinutes);
return Row(
mainAxisSize: MainAxisSize.max,
children: [
Container(padding: EdgeInsets.fromLTRB(10, 0, 5, 0), child: Column(
mainAxisSize: MainAxisSize.max,mainAxisAlignment: MainAxisAlignment.center,
children: [
// Text(dateFormat.format(activity.endTime)),
SizedBox(width: 1, height: 30, child: Container(color: Colors.white)),
Text(dateFormat.format(eTime))])),
Expanded(
child: InkWell(
onTap: (){
Navigator.of(context).push(MaterialPageRoute(builder: (context) => NewActivity(sTime: eTime,eTime: sTime))).then((value) => UpdateList());
},
child: Card(
child: Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
Container(
alignment: Alignment.bottomLeft,
padding: const EdgeInsets.all(8),
child: Text('Gap of : $gap'),
),
Row(
children: [
Icon(Icons.add,size:30),
Text("Add Activity")
],
),
],
)
),
),
),
],
);
}
Widget DateSeperator(date, prodActs, unprodActs) {
// double prodPercentage = (prodActs / (prodActs + unprodActs)) * 100;
double prodPercentage = (prodActs / 1440) * 100;
@@ -413,7 +470,7 @@ class _ActivitiesState extends State<Activities> {
setState(() {
});
Navigator.of(context).push(MaterialPageRoute(builder: (context) => NewActivity(sTime: activity.startTime,eTime: activity.endTime,metadata: activity.metadata,selectedTask: activity.taskType.name,))).then((value) => UpdateList());
Navigator.of(context).push(MaterialPageRoute(builder: (context) => NewActivity(sTime: activity.trueStartTime,eTime: activity.trueEndTime,metadata: activity.metadata,selectedTask: activity.taskType.name,))).then((value) => UpdateList());
},)
]);
}