public function generateApplicationBarChartData()
{
$connectionParams = $this->manager->getConnection()->getParams();
if ($connectionParams['driver'] == 'pdo_sqlite') {
$sql = 'SELECT count(id) as result_count , strftime("%m-%Y", created) as month FROM journal GROUP BY month';
} else {
$sql = 'SELECT count(id) as result_count , date_trunc(\'month\', created) as month FROM journal WHERE created > (CURRENT_DATE - INTERVAL \'3\' month) GROUP BY month ORDER BY month DESC';
}
$rsm = new ResultSetMapping();
$rsm->addScalarResult('result_count', 'result_count');
$rsm->addScalarResult('month', 'month');
$query = $this->manager->createNativeQuery($sql, $rsm);
$results = $query->getResult();
$applicationDataX = ['x'];
$applicationDataCount = ['Application'];
foreach ($results as $result) {
$applicationDataX[] = substr($result['month'], 0, 10);
$applicationDataCount[] = $result['result_count'];
}
return [$applicationDataX, $applicationDataCount];
}