Ниже представлен образец коллекции mongodb
{ "_id" : ObjectId("57ed32f4070577ec56a56b9f"), "log_id" : "180308", "issue_id" : "108850", "author_key" : "priyadarshinim_contus", "timespent" : NumberLong(18000), "comment" : "Added charts in the dashboard page of the application.", "created_on" : "2017-08-16T18:22:04.816+0530", "updated_on" : "2017-08-16T18:22:04.816+0530", "started_on" : "2017-08-16T18:21:39.000+0530", "started_date" : "2017-08-02", "updated_date" : "2017-08-02", "role" : "PHP", "updated_at" : ISODate("2017-09-29T15:27:48.069Z"), "created_at" : ISODate("2017-09-29T15:27:48.069Z"), "status" : 1.0 }
Мне нужно получить записи с помощью start_date , по умолчанию я дам две даты, в которых я буду проверять $gt
и $lt
начатой даты.
$current_date = '2017-08-31'; $sixmonthfromcurrent ='2017-08-01'; $worklogs = Worklog::raw ( function ($collection) use ($issue_jira_id, $current_date, $sixmonthfromcurrent) { return $collection->aggregate ( [ ['$match' => ['issue_id' => ['$in' => $issue_jira_id], 'started_date' => ['$lte' => $current_date,'$gte' => $sixmonthfromcurrent] ] ], ['$group' => ['issue_id' => ['$push' => '$issue_id'], '_id' => ['year' => ['$year' => '$started_date'], 'week' => ['$week' => '$started_date'],'resource_key' => '$author_key'], 'sum' => array ('$sum' => '$timespent')] ], [ '$sort' => ['_id' => 1] ] ] ); } );
Если я запустил этот запрос, я получаю такой тип ошибки:
Can't convert from BSON type string to Date
Как исправить эту ошибку?