Browse Source

Merge pull request 'Task #860qeym7p' (#24) from dev-wahyu into staging

Reviewed-on: ordo/adw-backend#24
Reviewed-by: ibnu <ibnu@mail.com>
pull/3/head
ibnu 1 year ago
parent
commit
9fab041e49
  1. 17
      app/Http/Controllers/HierarchyFtthController.php
  2. 30
      app/Http/Controllers/VersionGanttController.php

17
app/Http/Controllers/HierarchyFtthController.php

@ -123,8 +123,14 @@ class HierarchyFtthController extends Controller
$objRow->key = rand(1, 1000);
if (VersionGantt::where('hierarchy_ftth_id', $objRow->id)->exists()) {
$dataGantt = VersionGantt::where('hierarchy_ftth_id', $objRow->id)->get();
$progress = $this->ganttProgress('hierarchy_ftth_id', $objRow->id);
foreach ($dataGantt as $gantt) {
$gantt->key = $objRow->key;
foreach ($progress as $p) {
if ($p->id == $gantt->id) {
$gantt->progress = $p->persentase_progress;
}
}
}
$objRow->dataGantt = $dataGantt;
}
@ -132,5 +138,16 @@ class HierarchyFtthController extends Controller
$finalData[] = $objRow;
}
return $finalData;
}
public function ganttProgress($column, $value){
$progress = VersionGantt::select('m_version_gantt.id','m_activity.persentase_progress')
->join('m_activity', 'm_version_gantt.id', '=', 'm_activity.version_gantt_id')
->where("m_version_gantt.".$column, $value)
->where('m_activity.type_activity', "project")
->where('m_activity.parent_id', null)
->get();
return $progress;
}
}

30
app/Http/Controllers/VersionGanttController.php

@ -82,10 +82,34 @@ class VersionGanttController extends Controller
$payload = $request->all();
$dataBuilder = $this->setUpPayload($payload, 'm_version_gantt');
$builder = $dataBuilder['builder'];
$countBuilder = $dataBuilder['count'];
// $countBuilder = $dataBuilder['count'];
$progress = $this->ganttProgress($request->columns[0]["name"], $request->columns[0]["value"]);
$dataGet = $builder->get();
$totalRecord = $countBuilder->count();
return response()->json(['status'=>'success','code'=>200,'data'=>$dataGet, 'totalRecord'=>$totalRecord], 200);
// Loop through $dataGet collection
foreach ($dataGet as $item) {
// Loop through $progress collection
foreach ($progress as $progressItem) {
// Check if both have the same id
if ($item->id == $progressItem->id) {
// Set the progress of $item to the corresponding progress of $progressItem
$item->progress = $progressItem->persentase_progress;
break;
}
}
}
// $totalRecord = $countBuilder->count();
return response()->json(['status'=>'success','code'=>200,'data'=>$dataGet], 200);
}
public function ganttProgress($column, $value){
$progress = VersionGantt::select('m_version_gantt.id','m_activity.persentase_progress')
->join('m_activity', 'm_version_gantt.id', '=', 'm_activity.version_gantt_id')
->where("m_version_gantt.".$column, $value)
->where('m_activity.type_activity', "project")
->where('m_activity.parent_id', null)
->get();
return $progress;
}
public function list()

Loading…
Cancel
Save