Ejemplo n.º 1
0
 public function testCreateWhenAssigneeIsNull()
 {
     $branch = $this->createBranch();
     $reporter = $this->createReporter();
     $ticket = new Ticket(new UniqueId('unique_id'), new TicketSequenceNumber(null), self::TICKET_SUBJECT, self::TICKET_DESCRIPTION, $branch, $reporter, null, new Source(Source::PHONE), new Priority(Priority::PRIORITY_LOW), new Status(Status::NEW_ONE));
     $this->assertEquals('Subject', $ticket->getSubject());
     $this->assertEquals('Description', $ticket->getDescription());
     $this->assertEquals($branch, $ticket->getBranch());
     $this->assertEquals('new', $ticket->getStatus()->getValue());
     $this->assertEquals($reporter, $ticket->getReporter());
     $this->assertNull($ticket->getAssignee());
     $this->assertEquals(Source::PHONE, $ticket->getSource()->getValue());
 }
 /**
  * @ORM\PrePersist
  * @ORM\PreUpdate
  * @param Ticket $ticket
  * @param LifecycleEventArgs $event
  */
 public function prePersistHandler(Ticket $ticket, LifecycleEventArgs $event)
 {
     if ($ticket->getSequenceNumber()->getValue()) {
         return;
     }
     $em = $event->getEntityManager();
     $query = $em->createQuery("SELECT MAX(t.sequenceNumber) FROM DiamanteDeskBundle:Ticket t WHERE t.branch = :branchId")->setParameter('branchId', $ticket->getBranch()->getId());
     $ticketSequenceNumberValue = $query->getSingleScalarResult();
     $ticketSequenceNumberValue++;
     $ticketSequenceNumber = $ticket->getSequenceNumber();
     $ref = new \ReflectionClass($ticketSequenceNumber);
     $property = $ref->getProperty(self::TICKET_SEQUENCE_NUMBER_FIELD_TO_UPDATE);
     $property->setAccessible(true);
     $property->setValue($ticketSequenceNumber, $ticketSequenceNumberValue);
     $property->setAccessible(false);
 }
 /**
  * @param Ticket $ticket
  *
  * @return MoveTicketCommand
  */
 public function createMoveTicketCommand(Ticket $ticket)
 {
     $command = new MoveTicketCommand();
     $command->id = $ticket->getId();
     $command->branch = $ticket->getBranch();
     return $command;
 }