diff --git a/app/Http/Controllers/ChartController.php b/app/Http/Controllers/ChartController.php index 6a039d2..a401196 100644 --- a/app/Http/Controllers/ChartController.php +++ b/app/Http/Controllers/ChartController.php @@ -10,6 +10,7 @@ use App\Models\RiceShrimpPrice; use App\Models\RiceShrimpWeeklyPrice; use Peidikeji\Keywords\Models\Keywords; use Illuminate\Http\Request; +use Illuminate\Support\Facades\DB; class ChartController extends Controller { @@ -99,7 +100,19 @@ class ChartController extends Controller ]; }); + $keywordsTable = (new Keywords())->getTable(); + + $riceShrimpWeeklyPricesTable = (new RiceShrimpWeeklyPrice)->getTable(); + + $latestPrice = RiceShrimpWeeklyPrice::query() + ->join($keywordsTable, fn ($join) => $join->on("$riceShrimpWeeklyPricesTable.week", '=', "$keywordsTable.id")) + ->where("$keywordsTable.type_key", 'weeks-per-year') + ->latest("$riceShrimpWeeklyPricesTable.year") + ->latest(DB::raw("$keywordsTable.key::INTEGER")) + ->value("$riceShrimpWeeklyPricesTable.price"); + return [ + 'c_price' => $latestPrice, 'c_week' => ($now->month - 1) * 4 + ($now->weekOfMonth > 4 ? 4 : $now->weekOfMonth), 'x_axis' => $weeks->values(), 'series' => $series->sortKeys()->values()->all(),