protected function setUp()
 {
     $user = new User();
     $user->setName('Luisa');
     $user->setLastname('Pereira');
     $user->setEmail('*****@*****.**');
     $user->setPassword('123');
     $this->user = $user;
     $user1 = new User();
     $user1->setName('Andres');
     $user1->setLastname('Ramirez');
     $user1->setEmail('*****@*****.**');
     $user1->setPassword('123');
     $this->user1 = $user1;
     $startDate = strtotime("00:00pm February 21 2016");
     $project = new Project();
     $project->setName('p1');
     $project->setStartDate(date("Y-m-d h:i:sa", $startDate));
     $this->project = $project;
     $startSprintDate = strtotime("00:00pm February 25 2016");
     $expectedDate = strtotime("00:00pm March 21 2016");
     $sprint = new Sprint();
     $sprint->setProject($project);
     $sprint->setName('Sprint #1');
     $sprint->setStartDate(date("Y-m-d h:i:sa", $startSprintDate));
     $sprint->setEstimatedDate(date("Y-m-d h:i:sa", $expectedDate));
     $this->sprint = $sprint;
     $item1 = new Item();
     $item1->setSprint($sprint);
     $item1->setTitle('Tarea #1');
     $item1->setType('3');
     $item1->setDesignedUser($user);
     $item1->setEstimatedHours('4');
     $item1->setWorkedHours('6');
     $item1->setStatus('11');
     $item2 = new Item();
     $item2->setSprint($sprint);
     $item2->setTitle('Tarea #2');
     $item2->setType('3');
     $item2->setDesignedUser($user1);
     $item2->setEstimatedHours('4');
     $item2->setWorkedHours('2');
     $item2->setStatus('11');
     $item3 = new Item();
     $item3->setSprint($sprint);
     $item3->setTitle('Solicitud de Cambio #1');
     $item3->setType('6');
     $item3->setDesignedUser($user1);
     $item3->setEstimatedHours('8');
     $item3->setWorkedHours('6');
     $item3->setStatus('5');
     $item4 = new Item();
     $item4->setSprint($sprint);
     $item4->setTitle('Error #1');
     $item4->setType('4');
     $item4->setDesignedUser($user1);
     $item4->setEstimatedHours('10');
     $item4->setWorkedHours('10.5');
     $item4->setStatus('8');
     $item5 = new Item();
     $item5->setSprint($sprint);
     $item5->setTitle('Tarea #3');
     $item5->setType('3');
     $item5->setDesignedUser($user);
     $item5->setEstimatedHours('4');
     $item5->setWorkedHours('3.6');
     $item5->setStatus('5');
     $item6 = new Item();
     $item6->setSprint($sprint);
     $item6->setTitle('Error #2');
     $item6->setType('4');
     $item6->setDesignedUser($user1);
     $item6->setEstimatedHours('5');
     $item6->setWorkedHours('5');
     $item6->setStatus('7');
     $items = array($item1, $item2, $item3, $item4, $item5, $item6);
     $this->items = $items;
 }
Exemplo n.º 2
0
 /**
  * Esta funcion permite cambiarle el proyecto a un elemento
  * y registrar el evento en un historial
  * @author Cesar Giraldo <*****@*****.**> 14/03/2016
  * @param Entity\Item $item
  * @param Entity\Project $previousProject
  * @param Entity\Project $newProject
  * @param Entity\Item|null $parent
  */
 private function changeProjectToItem($item, $previousProject, $newProject, $parent)
 {
     $em = $this->getDoctrine()->getManager();
     //cambiamos el Proyecto del item
     $item->setSprint(null);
     $item->setParent($parent);
     $item->setProject($newProject);
     $item->setFixedOnCycle(null);
     $em->persist($item);
     $em->flush();
     //guardamos el registro en historial
     $changes = array('before' => $previousProject . "", 'after' => $newProject . "");
     $this->container->get('app_history')->saveItemHistory($item, Entity\ItemHistory::ITEM_PROJECT_MOVED, $changes, " : " . $newProject);
 }
Exemplo n.º 3
0
 public function getItemStatusOptions()
 {
     $item = new Entity\Item();
     $statusOptions = array($this->translator->trans($item->getTextStatus(Entity\Item::STATUS_NEW)) => Entity\Item::STATUS_NEW, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_INVESTIGATING)) => Entity\Item::STATUS_INVESTIGATING, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_CONFIRMED)) => Entity\Item::STATUS_CONFIRMED, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_NOT_A_BUG)) => Entity\Item::STATUS_NOT_A_BUG, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_BEING_WORKED_ON)) => Entity\Item::STATUS_BEING_WORKED_ON, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_BUG_DETECTED)) => Entity\Item::STATUS_BUG_DETECTED, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_READY_FOR_TESTING)) => Entity\Item::STATUS_READY_FOR_TESTING, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_TESTING)) => Entity\Item::STATUS_TESTING, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_CANCELED)) => Entity\Item::STATUS_CANCELED, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_POSTPONED)) => Entity\Item::STATUS_POSTPONED, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_FIXED)) => Entity\Item::STATUS_FIXED, $this->translator->trans($item->getTextStatus(Entity\Item::STATUS_DONE)) => Entity\Item::STATUS_DONE);
     return $statusOptions;
 }
Exemplo n.º 4
0
 public function findItemChanges(Entity\Item $previousItem, Entity\Item $newItem)
 {
     if ($previousItem->getType() != $newItem->getType()) {
         $changes = array('before' => $this->translator->trans($previousItem->getTextType()), 'after' => $this->translator->trans($newItem->getTextType()));
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_TYPE_MODIFIED, $changes);
     }
     if ($previousItem->getTitle() != $newItem->getTitle()) {
         $changes = array('before' => $previousItem->getTitle(), 'after' => $newItem->getTitle());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_TITLE_MODIFIED, $changes);
     }
     if ($previousItem->getDescription() != $newItem->getDescription()) {
         $changes = array('before' => $previousItem->getDescription(), 'after' => $newItem->getDescription());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_DESCRIPTION_MODIFIED, $changes);
     }
     if ($previousItem->getPriority() != $newItem->getPriority()) {
         $changes = array('before' => $previousItem->getPriority(), 'after' => $newItem->getPriority());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_PRIORITY_MODIFIED, $changes);
     }
     if ($previousItem->getDesignedUser() != $newItem->getDesignedUser()) {
         if (!$previousItem->getDesignedUser() && $newItem->getDesignedUser()) {
             $changes = array('before' => $this->translator->trans('backend.item.no_user'), 'after' => $newItem->getDesignedUser() . "");
             $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_USER_ASSIGNED, $changes, " : " . $newItem->getDesignedUser());
         } elseif ($previousItem->getDesignedUser() && $newItem->getDesignedUser()) {
             $changes = array('before' => $previousItem->getDesignedUser() . "", 'after' => $newItem->getDesignedUser() . "");
             $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_USER_REASSIGNED, $changes, " : " . $newItem->getDesignedUser());
         } elseif ($previousItem->getDesignedUser() && !$newItem->getDesignedUser()) {
             $changes = array('before' => $previousItem->getDesignedUser() . "", 'after' => $this->translator->trans('backend.item.no_user'));
             $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_USER_ASSIGN_CLEARED, $changes);
         }
     }
     if ($previousItem->getEstimatedHours() != $newItem->getEstimatedHours()) {
         $changes = array('before' => $previousItem->getEstimatedHours(), 'after' => $newItem->getEstimatedHours());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_ESTIMATED_HOURS_MODIFIED, $changes);
     }
     if ($previousItem->getEffortFibonacci() != $newItem->getEffortFibonacci()) {
         $changes = array('before' => $previousItem->getEffortFibonacci(), 'after' => $newItem->getEffortFibonacci());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_ESTIMATED_EFFORT_MODIFIED, $changes);
     }
     if ($previousItem->getEffortTShirt() != $newItem->getEffortTShirt()) {
         $changes = array('before' => $previousItem->getEffortTShirt(), 'after' => $newItem->getEffortTShirt());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_ESTIMATED_EFFORT_MODIFIED, $changes);
     }
     if ($previousItem->getWorkedHours() != $newItem->getWorkedHours()) {
         $changes = array('before' => $previousItem->getWorkedHours(), 'after' => $newItem->getWorkedHours());
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_WORKED_HOURS_MODIFIED, $changes);
     }
     if ($previousItem->getSprint() != $newItem->getSprint()) {
         if (!$previousItem->getSprint() && $newItem->getSprint()) {
             $changes = array('before' => $this->translator->trans('backend.item.no_sprint'), 'after' => $newItem->getSprint() . "");
             $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_SPRINT_ASSIGNED, $changes, " : " . $newItem->getSprint());
         } elseif ($previousItem->getSprint() && $newItem->getSprint()) {
             $changes = array('before' => $previousItem->getSprint() . "", 'after' => $newItem->getSprint() . "");
             $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_SPRINT_MOVED, $changes, " : " . $newItem->getSprint());
         } elseif ($previousItem->getSprint() && !$newItem->getSprint()) {
             $changes = array('before' => $previousItem->getSprint() . "", 'after' => $this->translator->trans('backend.item.no_sprint'));
             $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_MOVED_PRODUCT_BACKLOG, $changes);
         }
     }
     if ($previousItem->getStatus() != $newItem->getStatus()) {
         $changes = array('before' => $this->translator->trans($previousItem->getTextStatus()), 'after' => $this->translator->trans($newItem->getTextStatus()));
         $this->saveItemHistory($newItem, Entity\ItemHistory::ITEM_STATUS_MODIFIED, $changes);
     }
 }