gpt4 book ai didi

javascript - 如何使用 Laravel 在图表中显示当月的所有天数

转载 作者:行者123 更新时间:2023-11-29 09:24:20 35 4
gpt4 key购买 nike

早些时候,我正在研究如何将图表中的数据从 Controller 显示到前端本身。现在我明白了,我需要在图表中显示当月的所有天,因为我可以在图表中显示数据,因为当前的解决方案尚未完成。

我使用表中的 created_at 列作为日期基础并对其进行了格式化。您可以在查询中显示..

我的查询是这样的

public function getGraph(){
$ext = \DB::table('checkers')
->where('remarks_id',2)
->join('schedules','schedules.id','=','checkers.schedule_id')
->join('teachers','schedules.teacher_id','=','teachers.id')
->where('schedules.teacher_id',1)
->count();

$date = \DB::table('checkers')
->where('remarks_id',2)
->select(\DB::raw("COUNT(checkers.id) `value` "), \DB::raw("DATE_FORMAT(checkers.created_at, '%M %d, %Y') label "))
->join('schedules','schedules.id','=','checkers.schedule_id')
->join('teachers','schedules.teacher_id','=','teachers.id')
->where('schedules.teacher_id',1)
->groupBy('label')
->get();

return response()->json([
'count' => $ext,
'date' => $date
]);
}

我的json是

{
"count": 4,
"date": [
{
"value": 1,
"label": "January 21, 2020"
},
{
"value": 3,
"label": "January 23, 2020"
}
]
}

我的图表是这样的 enter image description here

图中有空格。我想要做的是根据我的查询用当前月份的日期填充图表。这可能吗?我顺便使用了 fusioncharts 和 vue。

最佳答案

日期添加到您的查询选择中:

$date = \DB::table('checkers')
->select(
\DB::raw("COUNT(checkers.id) `value`"),
\DB::raw("DATE_FORMAT(checkers.created_at, '%M %d, %Y') label")
\DB::raw("DATE_FORMAT(checkers.created_at, '%d') day")
)
//...
->get();

我们需要才能合并。

然后使用 CarbonPeriod 以您所需的格式获取当月的所有日期,并与查询结果合并:

$daysOfMonth = collect(
\Carbon\CarbonPeriod::create(
now()->startOfMonth(),
now()->endOfMonth()
))
->map(function ($date) {
return [
'value' => 0,
'label' => $date->format('F d, Y'),
'day' => $date->format('d')
];
})
->keyBy('day')
->merge(
$date->keyBy('day')
)
->sortKeys()
->values();

关于javascript - 如何使用 Laravel 在图表中显示当月的所有天数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59864586/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com