Update
parent
057b4883a5
commit
5e4f0b38c3
|
|
@ -7,6 +7,8 @@ use App\Models\Materiel;
|
|||
use App\Models\RiceShrimpFlow;
|
||||
use App\Models\RiceShrimpIndustry;
|
||||
use App\Models\RiceShrimpPrice;
|
||||
use App\Models\RiceShrimpWeeklyPrice;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ChartController extends Controller
|
||||
|
|
@ -59,6 +61,48 @@ class ChartController extends Controller
|
|||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* 稻虾每周价格趋势
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array
|
||||
*/
|
||||
public function riceShrimpWeeklyPrice(Request $request)
|
||||
{
|
||||
$weeks = Keywords::where('type_key', 'weeks-per-year')->pluck('name', 'key');
|
||||
|
||||
$years = RiceShrimpWeeklyPrice::select('year')
|
||||
->groupBy('year')
|
||||
->orderBy('year', 'desc')
|
||||
->limit(3)
|
||||
->get()
|
||||
->pluck('year');
|
||||
|
||||
$riceShrimpWeeklyPrices = RiceShrimpWeeklyPrice::query()
|
||||
->whereIn('year', $years)
|
||||
->get();
|
||||
|
||||
$series = $riceShrimpWeeklyPrices->groupBy('year')->map(function ($riceShrimpWeeklyPrices, $year) use ($weeks) {
|
||||
$riceShrimpWeeklyPriceMap = $riceShrimpWeeklyPrices->mapWithKeys(fn ($item) => [$item->week => $item->price]);
|
||||
|
||||
$data = [];
|
||||
|
||||
foreach ($weeks as $key => $value) {
|
||||
$data[] = $riceShrimpWeeklyPriceMap[$key] ?? null;
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => $year,
|
||||
'data' => $data,
|
||||
];
|
||||
});
|
||||
|
||||
return [
|
||||
'x_axis' => array_values($weeks),
|
||||
'series' => $series->sortKeys()->values()->all(),
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* 稻虾产业
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use Peidikeji\Keywords\Models\Keywords;
|
||||
|
||||
|
|
@ -9,6 +10,6 @@ class WeeksPerYearController extends Controller
|
|||
{
|
||||
public function __invoke(Request $request)
|
||||
{
|
||||
return Keywords::where('type_key', 'weeks-per-year')->pluck('name', 'key');
|
||||
return Keywords::select('name', 'key')->where('type_key', 'weeks-per-year')->get();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\RiceShrimpWeeklyPriceController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in New Issue