From a4a27a07050bd0f5171cc5e0e79ed935b02b45c5 Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Sat, 8 Jul 2023 17:52:48 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E8=AF=95=E4=BF=A1=E7=94=A8=E8=B4=AD?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=BB=93=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/model/store/order/StoreOrderInterest.php | 2 +- .../repositories/store/order/StoreGroupOrderRepository.php | 7 +++++-- .../repositories/store/order/StoreOrderRepository.php | 5 ++++- crmeb/listens/pay/OrderSettlePaySuccessListen.php | 3 +++ 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/app/common/model/store/order/StoreOrderInterest.php b/app/common/model/store/order/StoreOrderInterest.php index 4793a7ed..231e8d3e 100644 --- a/app/common/model/store/order/StoreOrderInterest.php +++ b/app/common/model/store/order/StoreOrderInterest.php @@ -28,7 +28,7 @@ class StoreOrderInterest extends BaseModel { $days = ceil((time() - strtotime($this->start_time)) / 86400); $days = max($days ,0); - $money = bcmul($this->total_price, $this->rate, 2); + $money = bcmul($this->total_price, ($this->rate / 100), 2); return bcmul($days, $money, 2); } diff --git a/app/common/repositories/store/order/StoreGroupOrderRepository.php b/app/common/repositories/store/order/StoreGroupOrderRepository.php index c6916531..33ce0de3 100644 --- a/app/common/repositories/store/order/StoreGroupOrderRepository.php +++ b/app/common/repositories/store/order/StoreGroupOrderRepository.php @@ -84,7 +84,7 @@ class StoreGroupOrderRepository extends BaseRepository public function detail($uid, $id, $flag = true) { $where = $this->getAll ? ['uid' => $uid] : ['paid' => 0, 'uid' => $uid]; - return StoreGroupOrder::where($where) + $order = StoreGroupOrder::where($where) ->where('group_order_id', $id) ->where('is_del', 0) ->with(['orderList' => function (Relation $query) use ($flag) { @@ -93,8 +93,11 @@ class StoreGroupOrderRepository extends BaseRepository })->with(['merchant' => function ($query) use ($flag) { $flag && $query->field('mer_id,mer_name,settle_cycle,interest_rate'); }, 'orderProduct', 'presellOrder']); - }]) + }, 'interest']) ->order('create_time DESC')->find(); + $interest = $order->interest->calculateInterest(); + $order['interest']['total_amount'] = bcadd($order->interest->total_price, $interest, 2); + return $order; } public function status($uid, $id) diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index 3e28b874..c31b020b 100644 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -1674,7 +1674,7 @@ class StoreOrderRepository extends BaseRepository 'orderProduct', 'presellOrder', 'merchant' => function ($query) { - return $query->field('mer_id,mer_name'); + return $query->field('mer_id,mer_name,settle_cycle,interest_rate'); }, 'community', 'receipt' => function ($query) { @@ -2497,6 +2497,9 @@ class StoreOrderRepository extends BaseRepository $merchantRepo = app()->make(MerchantRepository::class); $merchantRepo->unfreeze($groupOrder->interest->mer_id); } + //订单结算之后,修改订单支付方式为真实的支付方式 + $groupOrder->pay_type = $type; + $groupOrder->save(); } $groupOrder->interest->save(); Db::commit(); diff --git a/crmeb/listens/pay/OrderSettlePaySuccessListen.php b/crmeb/listens/pay/OrderSettlePaySuccessListen.php index d0027232..efa77c95 100644 --- a/crmeb/listens/pay/OrderSettlePaySuccessListen.php +++ b/crmeb/listens/pay/OrderSettlePaySuccessListen.php @@ -46,6 +46,9 @@ class OrderSettlePaySuccessListen implements ListenerInterface $merchantRepo = app()->make(MerchantRepository::class); $merchantRepo->unfreeze($groupOrder->interest->mer_id); } + //订单结算之后,修改订单支付方式为真实的支付方式 + $groupOrder->pay_type = 1; + $groupOrder->save(); Db::commit(); } catch (\Exception $e) { Db::rollback();