feat: 修改了订单收益金额和收款金额的计算方式,并添加了保证金金额的计算。

This commit is contained in:
mkm 2024-06-22 14:16:56 +08:00
parent abf031e75a
commit 1b9f8ca9d3

View File

@ -52,13 +52,17 @@ class WorkbenchLogic extends BaseLogic
$endTime = $params['end_time'];
$endTime = date('Y-m-d', strtotime($endTime) + 86400);
$dateDiff = (new \DateTime($endTime))->diff(new \DateTime($startTime));
$where = ['paid' => 1];
$where = ['paid' => 1,'refund_status'=>0];
$userRechargeWhere = ['paid' => 1];
$cashFinanceWhere = [];
$storeFinanceWhere = ['financial_type'=>11,'financial_pm'=>0];
$storeFinanceWhere = ['financial_type'=>2,'financial_pm'=>1];
$storeFinanceWhereTwo = ['financial_type'=>11,'financial_pm'=>0];
if ($params['store_id'] != 0) {
$where['store_id'] = $params['store_id'];
$userRechargeWhere['store_id'] = $params['store_id'];
$cashFinanceWhere = ['store_id' => $params['store_id']];
$storeFinanceWhere['store_id'] = $params['store_id'];
$storeFinanceWhereTwo['store_id'] = $params['store_id'];
}
$orderLogic = new StoreOrderLogic();
//订单总金额
@ -76,17 +80,16 @@ class WorkbenchLogic extends BaseLogic
//核销订单金额
$data['verify_amount'] = $orderLogic->storeOrderSumByDate($startTime, $endTime, array_merge($where, ['shipping_type' => 2]));
//门店收益金额
$data['income_amount'] = $orderLogic->storeOrderSumByDate($startTime, $endTime, [], 'profit');
$data['income_amount'] = StoreFinanceFlow::where($storeFinanceWhere)->whereBetweenTime('create_time', $startTime, $endTime)->sum('number');
//门店收款金额
$data['receipt_amount'] = UserRecharge::where($where)->whereBetweenTime('create_time', $startTime, $endTime)->sum('price');
$data['deposit_amount'] = StoreFinanceFlow::where($storeFinanceWhere)->whereBetweenTime('create_time', $startTime, $endTime)->sum('number');
$data['receipt_amount'] = UserRecharge::where($userRechargeWhere)->whereBetweenTime('create_time', $startTime, $endTime)->sum('price');
//保证金金额
$data['deposit_amount'] = StoreFinanceFlow::where($storeFinanceWhereTwo)->whereBetweenTime('create_time', $startTime, $endTime)->sum('number');
//门店成交用户数
$data['user_number'] = StoreOrder::where($where)
->whereBetweenTime('pay_time', $startTime, $endTime)
->group('uid')
->count();
if ($dateDiff->days == 1) {
$group = 'HOUR(pay_time)';
$i = 0;