Привет, ребята, мне нужна небольшая помощь. У меня здесь есть массив, и этот массив содержит объекты, теперь каждый из этих объектов содержит отрывок со своим статусом и общим счетом за день. Теперь я также получаю дату, на которую день или месяц, когда они были созданы, я не могу понять, как передать дату в этот массив для этого специфика c data
public function leadsByMonth(ServerRequestInterface $request): HttpResponseInterface
{
$params = $request->getQueryParams() ?? [];
$result = null;
$dates = $this->getDates($params);
$datesFromRange = $this->getDatesFromRange($params['formatType'], $dates);
$queryBuilder = $this->entityManager->getRepository(Lead::class)->createQueryBuilder('lead');
$expr = $queryBuilder->expr();
$selectQuery = '';
$rootAlias = $queryBuilder->getRootAliases()[0];
if (isset($params['filterType'])) {
$selectQuery .= $rootAlias.'.'.$params['filterType'];
$selectQuery .= ',';
}
$groupByQuery = $selectQuery;
$selectQuery .= 'count(lead.id)';
$format = null;
foreach ($datesFromRange as $date) {
$startDate = $date['startDate'];
$endDate = $date['endDate'];
$queryBuilder->select(sprintf('%s', $selectQuery))
->where($expr->andX(
$expr->gte('lead.dateCreated', $expr->literal($startDate->format('c'))),
$expr->lt('lead.dateCreated', $expr->literal($endDate->format('c')))
));
$queryBuilder->groupBy(sprintf('lead.%s', $params['filterType']));
$result[] = $leads = $queryBuilder->getQuery()->getScalarResult();
// dump($result);
// $result[] = ['count' => $leads[0]['1'], $params['formatType'] => 'month' === $params['formatType'] ? $startDate->format('F')
// : $startDate->format('Y-m-d'), ];
// dump($leads);
}
return new JsonResponse($result);
, и в настоящее время в ответ я получаю это
[
[
{
"status": "NEW",
"1": 597
},
{
"status": "CONVERTED",
"1": 37
}
],
[
{
"status": "NEW",
"1": 365
},
{
"status": "CONVERTED",
"1": 255
}
],
[
{
"status": "CONVERTED",
"1": 22
},
{
"status": "NEW",
"1": 54
}
],
[],
[]
]
теперь каждый из этих объектов создается в дату, у меня есть дата в переменной $ startDate, но я не могу понять, как передать их startDate внутри каждого объекта, извините, если я использовал какой-то неправильный термин. И я хотел бы изменить имя ключа с 1 на счет. Я буду очень благодарен, если кто-то может помочь мне здесь.
i am expecting like this
[
[
{
"status": "NEW",
"1": 597,
"format": 2019-12-29
},
{
"status": "CONVERTED",
"1": 37,
"format: 2019-12-30
}
],
[
{
"status": "NEW",
"1": 365,
"format":2019-12-31
},
{
"status": "CONVERTED",
"1": 255,
"format": 2020-01-01
}
],
[
{
"status": "CONVERTED",
"1": 22,
"format": 2020-01-02
},
{
"status": "NEW",
"1": 54,
"format": 2020-01-03
}
],
[],
[]
]