fixed latest month
This commit is contained in:
parent
e66d5f115b
commit
ff10ec9370
|
|
@ -3,7 +3,8 @@
|
|||
namespace Beike\Admin\Http\Controllers;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Beike\Repositories\DashboardRepo;
|
||||
use Beike\Admin\Repositories\DashboardRepo;
|
||||
use Beike\Admin\Repositories\Report\OrderReportRepo;
|
||||
|
||||
class HomeController extends Controller
|
||||
{
|
||||
|
|
@ -14,6 +15,11 @@ class HomeController extends Controller
|
|||
'orders' => DashboardRepo::getOrderData(),
|
||||
'customers' => DashboardRepo::getCustomerData(),
|
||||
'order_totals' => DashboardRepo::getTotalData(),
|
||||
'order_trends' => [
|
||||
'latest_month' => OrderReportRepo::getLatestMonth(),
|
||||
'latest_week' => '',
|
||||
'latest_year' => '',
|
||||
]
|
||||
];
|
||||
|
||||
return view('admin::pages.home', $data);
|
||||
|
|
|
|||
|
|
@ -9,10 +9,11 @@
|
|||
* @modified 2022-08-03 18:16:53
|
||||
*/
|
||||
|
||||
namespace Beike\Repositories;
|
||||
namespace Beike\Admin\Repositories;
|
||||
|
||||
use Beike\Models\Product;
|
||||
use Beike\Models\Customer;
|
||||
use Beike\Repositories\OrderRepo;
|
||||
use Beike\Repositories\CustomerRepo;
|
||||
|
||||
class DashboardRepo
|
||||
{
|
||||
|
|
@ -73,11 +74,6 @@ class DashboardRepo
|
|||
return [
|
||||
'total' => $today,
|
||||
'percentage' => $percentage,
|
||||
'reports' => [
|
||||
'latest_month' => '',
|
||||
'latest_week' => '',
|
||||
'latest_year' => '',
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
/**
|
||||
* OrderRepo.php
|
||||
*
|
||||
* @copyright 2022 opencart.cn - All Rights Reserved
|
||||
* @link http://www.guangdawangluo.com
|
||||
* @author Edward Yang <yangjin@opencart.cn>
|
||||
* @created 2022-08-05 14:33:49
|
||||
* @modified 2022-08-05 14:33:49
|
||||
*/
|
||||
|
||||
namespace Beike\Admin\Repositories\Report;
|
||||
|
||||
|
||||
use Beike\Models\Order;
|
||||
use Beike\Repositories\OrderRepo;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
class OrderReportRepo
|
||||
{
|
||||
public static function getLatestMonth()
|
||||
{
|
||||
$orders = OrderRepo::getListBuilder(['start' => today()->subDays(30), 'end' => today()->subDay()])
|
||||
->select(DB::raw('DATE(created_at) as date'), DB::raw('count(*) as total'))
|
||||
->groupBy('date')
|
||||
->get()
|
||||
->keyBy('date');
|
||||
return $orders;
|
||||
}
|
||||
}
|
||||
|
|
@ -26,7 +26,7 @@ class OrderRepo
|
|||
*/
|
||||
public static function getListAll(): LengthAwarePaginator
|
||||
{
|
||||
$builder = self::getListBuilder();
|
||||
$builder = self::getListBuilder()->orderByDesc('created_at');
|
||||
return $builder->paginate();
|
||||
}
|
||||
|
||||
|
|
@ -39,7 +39,7 @@ class OrderRepo
|
|||
*/
|
||||
public static function getListByCustomer($customer): LengthAwarePaginator
|
||||
{
|
||||
$builder = self::getListBuilder(['customer' => $customer]);
|
||||
$builder = self::getListBuilder(['customer' => $customer])->orderByDesc('created_at');
|
||||
return $builder->paginate();
|
||||
}
|
||||
|
||||
|
|
@ -50,7 +50,7 @@ class OrderRepo
|
|||
*/
|
||||
public static function filterOrders(array $filters = []): LengthAwarePaginator
|
||||
{
|
||||
$builder = self::getListBuilder($filters);
|
||||
$builder = self::getListBuilder($filters)->orderByDesc('created_at');
|
||||
return $builder->paginate();
|
||||
}
|
||||
|
||||
|
|
@ -61,7 +61,7 @@ class OrderRepo
|
|||
*/
|
||||
public static function getListBuilder(array $filters = []): Builder
|
||||
{
|
||||
$builder = Order::query()->orderByDesc('created_at');
|
||||
$builder = Order::query();
|
||||
|
||||
$customer = $filters['customer'] ?? null;
|
||||
if ($customer) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue