From 80b186e2243555ecfe5a812ca3af7db97ce79d6d Mon Sep 17 00:00:00 2001 From: ibnu Date: Tue, 22 Aug 2023 20:45:08 +0700 Subject: [PATCH 1/2] update early and actual --- app/Http/Controllers/ActivityController.php | 32 +++++++++++++++++++++ app/Http/Controllers/ProjectController.php | 7 +++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/ActivityController.php b/app/Http/Controllers/ActivityController.php index 5158b05..12293ed 100644 --- a/app/Http/Controllers/ActivityController.php +++ b/app/Http/Controllers/ActivityController.php @@ -47,6 +47,10 @@ class ActivityController extends Controller $dataHeader->progress = $dataHeader->persentase_progress / 100; $dataHeader->planned_start = isset($dataHeader->planned_start) ? date_format(date_create($dataHeader->planned_start), "Y-m-d H:i:s") : NULL; $dataHeader->planned_end = isset($dataHeader->planned_end) ? date_format(date_create($dataHeader->planned_end), "Y-m-d H:i:s") : NULL; + + $dataHeader->actual_start = isset($dataHeader->actual_start) ? date_format(date_create($dataHeader->actual_start), "Y-m-d") : NULL; + $dataHeader->actual_end = isset($dataHeader->actual_end) ? date_format(date_create($dataHeader->actual_end), "Y-m-d") : NULL; + $dataHeader->type = "header"; $dataHeader->text = $dataHeader->name; $finalData[] = $dataHeader; @@ -72,6 +76,10 @@ class ActivityController extends Controller $objRow->end_date = date_format($endDate, "Y-m-d H:i:s"); $objRow->planned_start = isset($objRow->planned_start) ? date_format(date_create($objRow->planned_start), "Y-m-d H:i:s") : NULL; $objRow->planned_end = isset($objRow->planned_end) ? date_format(date_create($objRow->planned_end), "Y-m-d H:i:s") : NULL; + + $objRow->actual_start = isset($objRow->actual_start) ? date_format(date_create($objRow->actual_start), "Y-m-d") : NULL; + $objRow->actual_end = isset($objRow->actual_end) ? date_format(date_create($objRow->actual_end), "Y-m-d") : NULL; + $objRow->progress = $objRow->persentase_progress / 100; $objRow->type = $type; $finalData[] = $objRow; @@ -115,6 +123,30 @@ class ActivityController extends Controller $objRow->end_date = date_format($endDate, "Y-m-d H:i:s"); $objRow->planned_start = isset($objRow->planned_start) ? date_format(date_create($objRow->planned_start), "Y-m-d H:i:s") : NULL; $objRow->planned_end = isset($objRow->planned_end) ? date_format(date_create($objRow->planned_end), "Y-m-d H:i:s") : NULL; + + // $linking = Link::where('t_activity_id', $objRow->id)->first(); + // if(isset($linking->s_activity_id)){ + // $activityLink = Activity::where('id', $linking->s_activity_id)->first(); + // $earlyStart=date_create($activityLink->end_date); + // date_add($earlyStart,date_interval_create_from_date_string("1 days")); + // $objRow->early_start = date_format($earlyStart, "Y-m-d"); + // }else{ + // $objRow->early_start = isset($objRow->planned_start) ? date_format(date_create($objRow->planned_start), "Y-m-d") : NULL; + // } + + // if(isset($objRow->planned_end)){ + // $baseStart = strtotime($objRow->planned_start); + // $baseFinish = strtotime($objRow->planned_end); + // $durationStrtotime = $baseFinish - $baseStart; + + // $durasiBaseline = round($durationStrtotime / (60 * 60 * 24)); + // $earlyEnd = date_create($objRow->start_date); + // date_add($earlyEnd,date_interval_create_from_date_string("".$durasiBaseline." days")); + // $objRow->early_end = date_format($earlyEnd, "Y-m-d"); + // } + $objRow->actual_start = isset($objRow->actual_start) ? date_format(date_create($objRow->actual_start), "Y-m-d") : NULL; + $objRow->actual_end = isset($objRow->actual_end) ? date_format(date_create($objRow->actual_end), "Y-m-d") : NULL; + $dataChildren = $this->getChildren($gantt_id, $objRow->id); if ($objRow->type_activity == "milestone") { $objRow->type = $objRow->type_activity; diff --git a/app/Http/Controllers/ProjectController.php b/app/Http/Controllers/ProjectController.php index 25ca5a6..b8fc761 100644 --- a/app/Http/Controllers/ProjectController.php +++ b/app/Http/Controllers/ProjectController.php @@ -390,9 +390,12 @@ class ProjectController extends Controller } if($reports[$i]['status'] != 'done'){ $reports[$i]['max_date']->modify('-1 day'); + }else if($reports[$i]['status'] == 'done'){ + $activity->actual_end = $reports[$i]['max_date']->setTime(23,59,59); } - $activity->start_date = $reports[$i]['min_date']; - $activity->end_date = $reports[$i]['max_date']->setTime(23,59,59); + $activity->start_date = $reports[$i]['min_date']; //same early + $activity->end_date = $reports[$i]['max_date']->setTime(23,59,59); // same early + $activity->actual_start = $reports[$i]['min_date']; $activity->save(); } From e0785ced109cf49afd1ae23b97f61a6782ebf793 Mon Sep 17 00:00:00 2001 From: ibnu Date: Tue, 22 Aug 2023 20:47:59 +0700 Subject: [PATCH 2/2] update early and actual update logic 22 Aug --- app/Http/Controllers/ActivityController.php | 20 -------------------- app/Models/Activity.php | 2 +- 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/app/Http/Controllers/ActivityController.php b/app/Http/Controllers/ActivityController.php index ad931e9..c95c3f2 100644 --- a/app/Http/Controllers/ActivityController.php +++ b/app/Http/Controllers/ActivityController.php @@ -124,26 +124,6 @@ class ActivityController extends Controller $objRow->planned_start = isset($objRow->planned_start) ? date_format(date_create($objRow->planned_start), "Y-m-d H:i:s") : NULL; $objRow->planned_end = isset($objRow->planned_end) ? date_format(date_create($objRow->planned_end), "Y-m-d H:i:s") : NULL; - // $linking = Link::where('t_activity_id', $objRow->id)->first(); - // if(isset($linking->s_activity_id)){ - // $activityLink = Activity::where('id', $linking->s_activity_id)->first(); - // $earlyStart=date_create($activityLink->end_date); - // date_add($earlyStart,date_interval_create_from_date_string("1 days")); - // $objRow->early_start = date_format($earlyStart, "Y-m-d"); - // }else{ - // $objRow->early_start = isset($objRow->planned_start) ? date_format(date_create($objRow->planned_start), "Y-m-d") : NULL; - // } - - // if(isset($objRow->planned_end)){ - // $baseStart = strtotime($objRow->planned_start); - // $baseFinish = strtotime($objRow->planned_end); - // $durationStrtotime = $baseFinish - $baseStart; - - // $durasiBaseline = round($durationStrtotime / (60 * 60 * 24)); - // $earlyEnd = date_create($objRow->start_date); - // date_add($earlyEnd,date_interval_create_from_date_string("".$durasiBaseline." days")); - // $objRow->early_end = date_format($earlyEnd, "Y-m-d"); - // } $objRow->actual_start = isset($objRow->actual_start) ? date_format(date_create($objRow->actual_start), "Y-m-d") : NULL; $objRow->actual_end = isset($objRow->actual_end) ? date_format(date_create($objRow->actual_end), "Y-m-d") : NULL; diff --git a/app/Models/Activity.php b/app/Models/Activity.php index eefcea4..3d09785 100644 --- a/app/Models/Activity.php +++ b/app/Models/Activity.php @@ -25,7 +25,7 @@ class Activity extends Model 'buffer_radius', 'duration', 'color_progress', 'jumlah_pekerjaan', 'satuan', 'description', 'priority', 'bobot_planning', 'type_activity', 'open', 'geom', 'version_gantt_id', 'budget_plan', 'biaya_material_plan', 'biaya_human_plan', 'biaya_tools_plan', - 'planned_start', 'planned_end', 'satuan_id', + 'planned_start', 'planned_end', 'satuan_id', 'actual_start', 'actual_end', 'created_at', 'created_by', 'updated_at', 'updated_by', 'sortorder' ];