/** * @param Ticket $ticket * @param AbstractTicketEvent $event * @return array */ private function getMemberList(Ticket $ticket, AbstractTicketEvent $event) { $members = []; if ($ticket->getAssignee()) { $members[] = new User($ticket->getAssignee()->getId(), User::TYPE_ORO); } if ($event->getEventName() == 'ticketAssigneeWasChanged') { return $members; } $members[] = $ticket->getReporter(); return $members; }
/** * @param Ticket $ticket * * @return AssigneeTicketCommand */ public function createAssigneeTicketCommand(Ticket $ticket) { $command = new AssigneeTicketCommand(); $command->id = $ticket->getId(); $command->assignee = $ticket->getAssignee(); return $command; }
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()); }
/** * Verify that current user assignee is current user * * @param Ticket $entity * @throws ForbiddenException */ private function isAssigneeGranted(Ticket $entity) { $user = $this->authorizationService->getLoggedUser(); if (is_null($entity->getAssignee()) || $entity->getAssignee()->getId() != $user->getId()) { $this->isGranted('EDIT', $entity); } }
/** * @param Ticket $ticket * @return array */ private function resolveRecipientsEmails(Ticket $ticket) { $emails = array(); $reporter = $ticket->getReporter(); $reporter = $this->userService->getByUser($reporter); $assignee = $ticket->getAssignee(); if ($reporter instanceof DiamanteUser) { $emails[$reporter->getEmail()] = $reporter->getFullName(); } else { $emails[$reporter->getEmail()] = $reporter->getFirstName() . ' ' . $reporter->getLastName(); } if ($assignee) { $emails[$assignee->getEmail()] = $assignee->getFirstName() . ' ' . $assignee->getLastName(); } return $emails; }