From a45406aec2a39a80405be48067e27590c079fd6a Mon Sep 17 00:00:00 2001 From: Edward Yang Date: Mon, 15 Aug 2022 16:08:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=20currency=20=E8=AF=BB?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- beike/Helpers.php | 2 +- beike/Repositories/CurrencyRepo.php | 18 +++++++++++------- beike/Services/CurrencyService.php | 13 +------------ 3 files changed, 13 insertions(+), 20 deletions(-) diff --git a/beike/Helpers.php b/beike/Helpers.php index 5b1e383d..525b9ff4 100644 --- a/beike/Helpers.php +++ b/beike/Helpers.php @@ -401,7 +401,7 @@ function language_packages(): array */ function currencies() { - return CurrencyRepo::all()->where('status', true); + return CurrencyRepo::listEnabled(); } /** diff --git a/beike/Repositories/CurrencyRepo.php b/beike/Repositories/CurrencyRepo.php index 63af0455..1b9f4051 100644 --- a/beike/Repositories/CurrencyRepo.php +++ b/beike/Repositories/CurrencyRepo.php @@ -11,15 +11,16 @@ namespace Beike\Repositories; -use Beike\Models\Country; use Beike\Models\Currency; class CurrencyRepo { + private static $enabledCurrencies; + /** * 创建一个currency记录 * @param $data - * @return int + * @return mixed */ public static function create($data) { @@ -29,7 +30,8 @@ class CurrencyRepo /** * @param $id * @param $data - * @return bool|int + * @return mixed + * @throws \Exception */ public static function update($id, $data) { @@ -43,7 +45,7 @@ class CurrencyRepo /** * @param $id - * @return \Illuminate\Database\Eloquent\Builder|\Illuminate\Database\Eloquent\Builder[]|\Illuminate\Database\Eloquent\Collection|\Illuminate\Database\Eloquent\Model|null + * @return mixed */ public static function find($id) { @@ -67,9 +69,11 @@ class CurrencyRepo return Currency::query()->get(); } - public static function enabled() + public static function listEnabled() { - return Currency::query()->where('status', true)->get(); + if (self::$enabledCurrencies !== null) { + return self::$enabledCurrencies; + } + return self::$enabledCurrencies = Currency::query()->where('status', true)->get(); } - } diff --git a/beike/Services/CurrencyService.php b/beike/Services/CurrencyService.php index f5c9e315..3512b863 100644 --- a/beike/Services/CurrencyService.php +++ b/beike/Services/CurrencyService.php @@ -1,12 +1,4 @@ - * @Date 2022-08-02 19:19:52 - * @LastEditTime 2022-08-06 12:52:21 - */ - /** * CurrencyService.php * @@ -19,9 +11,6 @@ namespace Beike\Services; -use Beike\Models\Address; -use Beike\Models\TaxRate; -use Beike\Models\TaxRule; use Beike\Repositories\CurrencyRepo; class CurrencyService @@ -30,7 +19,7 @@ class CurrencyService private $currencies = array(); public function __construct() { - foreach (CurrencyRepo::enabled() as $result) { + foreach (CurrencyRepo::listEnabled() as $result) { $this->currencies[$result->code] = $result; } }