%PDF- %GIF98; %PNG;
Server : ApacheSystem : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64 User : addictionfreeind ( 1003) PHP Version : 7.2.34 Disable Function : exec,passthru,shell_exec,system Directory : /home/addictionfreeind/public_html/admin1/app/Traits/ |
Upload File : |
<?php
/**
* Created by PhpStorm.
* User: DEXTER
* Date: 13/07/17
* Time: 4:53 PM
*/
namespace App\Traits;
use App\Models\Project;
use App\Models\Task;
use App\Models\TaskboardColumn;
trait ProjectProgress
{
public function calculateProjectProgress($projectId, $projectProgress = 'false')
{
$project = Project::findOrFail($projectId);
if (!is_null($project) && ($project->calculate_task_progress == 'true' || $projectProgress == 'true')) {
$taskBoardColumn = TaskboardColumn::completeColumn();
if (is_null($projectId)) {
return false;
}
$totalTasks = Task::where('project_id', $projectId)->count();
if ($totalTasks == 0) {
return '0';
}
$completedTasks = Task::where('project_id', $projectId)
->where('tasks.board_column_id', $taskBoardColumn->id)
->count();
$percentComplete = ($completedTasks / $totalTasks) * 100;
$project->completion_percent = $percentComplete;
$project->save();
return $percentComplete;
}
}
}