Browse Source

Merge pull request 'staging upload 23-04-11' (#25) from staging into master

Reviewed-on: ordo/adw-backend#25
pull/3/head
ibnu 2 years ago
parent
commit
84fe3c77d7
  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); $objRow->key = rand(1, 1000);
if (VersionGantt::where('hierarchy_ftth_id', $objRow->id)->exists()) { if (VersionGantt::where('hierarchy_ftth_id', $objRow->id)->exists()) {
$dataGantt = VersionGantt::where('hierarchy_ftth_id', $objRow->id)->get(); $dataGantt = VersionGantt::where('hierarchy_ftth_id', $objRow->id)->get();
$progress = $this->ganttProgress('hierarchy_ftth_id', $objRow->id);
foreach ($dataGantt as $gantt) { foreach ($dataGantt as $gantt) {
$gantt->key = $objRow->key; $gantt->key = $objRow->key;
foreach ($progress as $p) {
if ($p->id == $gantt->id) {
$gantt->progress = $p->persentase_progress;
}
}
} }
$objRow->dataGantt = $dataGantt; $objRow->dataGantt = $dataGantt;
} }
@ -132,5 +138,16 @@ class HierarchyFtthController extends Controller
$finalData[] = $objRow; $finalData[] = $objRow;
} }
return $finalData; 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(); $payload = $request->all();
$dataBuilder = $this->setUpPayload($payload, 'm_version_gantt'); $dataBuilder = $this->setUpPayload($payload, 'm_version_gantt');
$builder = $dataBuilder['builder']; $builder = $dataBuilder['builder'];
$countBuilder = $dataBuilder['count']; // $countBuilder = $dataBuilder['count'];
$progress = $this->ganttProgress($request->columns[0]["name"], $request->columns[0]["value"]);
$dataGet = $builder->get(); $dataGet = $builder->get();
$totalRecord = $countBuilder->count(); // Loop through $dataGet collection
return response()->json(['status'=>'success','code'=>200,'data'=>$dataGet, 'totalRecord'=>$totalRecord], 200); 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() public function list()

Loading…
Cancel
Save