Files
2026-09-01 22:15:50 +08:00

69 lines
2.1 KiB
PHP

<?php
declare (strict_types=1);
namespace app\store\controller;
use app\store\controller\Controller;
use app\store\model\store\User as StoreUserModel;
use app\store\model\Deduct as DeductModel;
use app\store\model\Order as OrderModel;
use app\store\model\Merchant as MerchantModel;
/**
* 订单数据统计类
* Class StoreUser
* @package app\store\controller
*/
class Census extends Controller
{
/**
* 用户列表
* @return mixed
* @throws \think\exception\DbException
*/
public function index()
{
$get = $this->request->get();
$model = new MerchantModel;
$list = $model->getMerchantStatistics($this->store['user'],$get);
return $this->renderSuccess(['list'=>$list,'user'=>$this->store['user']]);
}
/**
* 统计数据
* @return mixed
* @throws \think\exception\DbException
*/
public function stat()
{
$get = $this->request->get();
//订单总金额
$orderModel = new OrderModel;
$filter = [];
if(isset($get['name']) && !empty($get['name'])){
$new = [];
$new[] = ['name', 'like', "%{$get['name']}%"];
$merchants = MerchantModel::getQuery($new);
$filter[] = ['merchant_id', 'in', array_column($merchants,'merchant_id')];
}
$user = $this->store['user'];
if($user['is_super'] == 0){
$merchant_idArr = $user['merchant_id']?json_decode($user['merchant_id'],true):[];
$filter[] = ['merchant_id', 'in', $merchant_idArr];
}
if(isset($get['betweenTime'])) {
$times = between_time($get['betweenTime']);
if (!empty($times['start_time'])) {
$filter[] = ['create_time', '>=', $times['start_time']];
}
if (!empty($times['end_time'])) {
$filter[] = ['create_time','<', $times['end_time'] + 86400];
}
}
$filter[] = ['order_status', '=', 20];
$totalMoney = $orderModel->getOrderTotalPriceCustom($filter);
return $this->renderSuccess(['totalMoney'=>$totalMoney]);
}
}