|
|
|
@ -71,12 +71,14 @@ class MasterFunctionsHelper {
|
|
|
|
|
// foreach ($gantt as $key => $value) { |
|
|
|
|
// Log::info('gantt '.$value.' index '.$key); |
|
|
|
|
// } |
|
|
|
|
if($gantt['calculation_type'] == 'simple') { |
|
|
|
|
// to do |
|
|
|
|
return MasterFunctionsHelper::calculateProgressBasedOnSimple($gantt); |
|
|
|
|
} else { |
|
|
|
|
return MasterFunctionsHelper::calculateProgressBasedOnReportMaterial($gantt); |
|
|
|
|
} |
|
|
|
|
if (isset($gantt['calculation_type'])) { |
|
|
|
|
if($gantt['calculation_type'] == 'simple') { |
|
|
|
|
// to do |
|
|
|
|
return MasterFunctionsHelper::calculateProgressBasedOnSimple($gantt); |
|
|
|
|
} else { |
|
|
|
|
return MasterFunctionsHelper::calculateProgressBasedOnReportMaterial($gantt); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -213,8 +215,26 @@ class MasterFunctionsHelper {
|
|
|
|
|
$dataTempReport [$w]['duration'] = $keyActualM->duration; |
|
|
|
|
$dataTempReport [$w]['persentase_progress'] = $keyActualM->persentase_progress; |
|
|
|
|
try { |
|
|
|
|
// assign_material_to_activity |
|
|
|
|
$checkStatusActivity = DB::table('assign_material_to_activity') |
|
|
|
|
->select('activity_id', 'status_activity') |
|
|
|
|
->where('activity_id', '=', $keyActualM->activity_id) |
|
|
|
|
->orderBy('status_activity', 'ASC') |
|
|
|
|
->first(); |
|
|
|
|
$dataTempReport [$w]['percentage'] = ($keyActualM->qty/$sumVolActual->ttl_qty_plan)*$keyActualM->bobot_planning; |
|
|
|
|
$sumPercentageActual+=($keyActualM->qty/$sumVolActual->ttl_qty_plan)*$keyActualM->bobot_planning; |
|
|
|
|
// $sumPercentageActual+=($keyActualM->qty/$sumVolActual->ttl_qty_plan)*$keyActualM->bobot_planning; |
|
|
|
|
if($keyActualM->qty/$sumVolActual->ttl_qty_plan >= 1){ |
|
|
|
|
if($checkStatusActivity->status_activity == 'done'){ |
|
|
|
|
$sumPercentageActual+=($keyActualM->qty/$sumVolActual->ttl_qty_plan)*$keyActualM->bobot_planning; |
|
|
|
|
}else{ |
|
|
|
|
$sumPercentageActual+=(($keyActualM->qty/$sumVolActual->ttl_qty_plan)*$keyActualM->bobot_planning)*(95/100); |
|
|
|
|
} |
|
|
|
|
// }else if($checkStatusActivity->status_activity == 'done'){ |
|
|
|
|
// $sumPercentageActual+=0; |
|
|
|
|
}else{ |
|
|
|
|
$sumPercentageActual+=($keyActualM->qty/$sumVolActual->ttl_qty_plan)*$keyActualM->bobot_planning; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$totalACWP += $keyActualM->biaya_actual/$keyActualM->duration; |
|
|
|
|
} catch (\DivisionByZeroError $e) { |
|
|
|
|
return response()->json(['message' => $e->getMessage()]); |
|
|
|
|