Пример #1
0
 public function testGetSetProgress()
 {
     $object = new Task();
     $this->assertEquals(0, $object->getProgress());
     $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->setProgress('AAA'));
     $this->assertEquals(0, $object->getProgress());
     $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->setProgress(-1));
     $this->assertEquals(0, $object->getProgress());
     $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->setProgress(2));
     $this->assertEquals(1, $object->getProgress());
     $this->assertInstanceOf('PhpOffice\\PhpProject\\Task', $object->setProgress(0.5));
     $this->assertEquals(0.5, $object->getProgress());
 }
Пример #2
0
 private function writeTask(XMLWriter $oXML, Task $oTask, $iNbTasks)
 {
     ++$iNbTasks;
     $oXML->startElement('task');
     $oXML->writeAttribute('id', $iNbTasks);
     $oXML->writeAttribute('name', $oTask->getName());
     $oXML->writeAttribute('start', date('Y-m-d', $oTask->getStartDate()));
     $oXML->writeAttribute('duration', $oTask->getDuration());
     $oXML->writeAttribute('complete', $oTask->getProgress() * 100);
     $oXML->writeAttribute('meeting', 'false');
     $oXML->writeAttribute('expand', 'true');
     // Resources Allocations
     if ($oTask->getResourceCount() > 0) {
         foreach ($oTask->getResources() as $oResource) {
             $itmAllocation = array();
             $itmAllocation['id_res'] = $oResource->getIndex();
             $itmAllocation['id_task'] = $iNbTasks;
             $this->arrAllocations[] = $itmAllocation;
         }
     }
     // Children
     if ($oTask->getTaskCount() > 0) {
         $arrTasksChilds = $oTask->getTasks();
         foreach ($arrTasksChilds as $oTaskChild) {
             $iNbTasks = $this->writeTask($oXML, $oTaskChild, $iNbTasks);
         }
     } else {
         // Nothing
     }
     $oXML->endElement();
     return $iNbTasks;
 }
Пример #3
0
 /**
  * Record "Task"
  * @param Task $oTask
  */
 private function writeRecord70(Task $oTask)
 {
     $this->fileContent[] = '70;' . $oTask->getIndex() . ';' . $oTask->getName() . ';' . $oTask->getDuration() . 'd;' . number_format($oTask->getProgress(), 1) . ';' . date('d/m/Y', $oTask->getStartDate());
     foreach ($oTask->getResources() as $oResource) {
         $this->writeRecord75($oResource);
     }
     foreach ($oTask->getTasks() as $oSubTask) {
         $this->writeRecord70($oSubTask);
     }
 }