public function findUserRequests() { $stmt = $this->conn->prepare('SELECT r.`id`, p.`name` AS `projectName`, r.`name`, r.`createdAt`, r.`lastUpdatedAt`, r.`status`, r.`commentNum` ' . 'FROM `' . CoreTables::AREA_REQUEST_TBL . '` r ' . 'INNER JOIN `' . CoreTables::PROJECT_TBL . '` p ON p.`id` = r.`projectId` ' . 'WHERE r.`requestorId` = :id AND p.`archived` = 0 ORDER BY p.`id` DESC, r.`status`'); $stmt->bindValue(':id', $this->tokenStorage->getToken()->getUser()->getId()); $stmt->execute(); $results = array(); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $row['statusLabel'] = AreaRequest::statusLabel($row['status']); $row['statusText'] = AreaRequest::statusText($row['status']); $results[] = $row; } $stmt->closeCursor(); return $results; }
public function getRecentRequests($count) { $this->transaction->requestTransaction(); try { $items = $this->conn->fetchAll('SELECT r.`id`, r.`name`, u.`name` AS `username`, u.`avatar`, r.`status`, r.`createdAt` ' . 'FROM `' . CoreTables::AREA_REQUEST_TBL . '` r ' . 'INNER JOIN `' . CoreTables::USER_TBL . '` u ON u.`id` = r.`requestorId` ' . 'WHERE r.`projectId` = :projectId ' . 'ORDER BY r.`createdAt` DESC LIMIT ' . $count, [':projectId' => $this->project->getId()]); foreach ($items as &$item) { $item['statusText'] = AreaRequest::statusText($item['status']); $item['statusLabel'] = AreaRequest::statusLabel($item['status']); } return $items; } catch (Exception $ex) { $this->transaction->requestRollback(); throw $ex; } }