Example #1
0
 /**
  * This function takes all the cost versions grouped by a project version. By toggling the toArray
  * a special array is produced for displaying purposes.
  *
  * @param Project $project
  * @param Version $version
  *
  * @return Effort\Version[]|array
  */
 public function findEffortVersionByProjectPerWorkpackageByVersion(Project $project, Version $version)
 {
     $effortByWorkpackage = [];
     $versionService = new VersionService();
     foreach ($project->getWorkpackage() as $workpackage) {
         if (!is_null($workpackage->getDateEnd())) {
             continue;
         }
         $effortVersion = $this->getEntityManager()->getRepository($this->getFullEntityName('Effort\\Version'))->findEffortVersionByWorkpackageAndVersion($workpackage, $version);
         $effortByWorkpackage[$workpackage->getId()] = ['workpackage' => $workpackage, 'effort' => $versionService->parseCostOrEffortVersionAsArray($effortVersion)];
     }
     return $effortByWorkpackage;
 }