From bdf7890cdc20bbe53d873819e7ec7eee9d69b7a1 Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 5 Mar 2024 16:36:02 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A2=9E=E6=94=B6?= =?UTF-8?q?=E8=A1=A5=E8=B4=B4=E9=87=91=E9=A2=9D=E7=9A=84=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/server/Store.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controller/api/server/Store.php b/app/controller/api/server/Store.php index f64a2ba5..0f8c6d82 100644 --- a/app/controller/api/server/Store.php +++ b/app/controller/api/server/Store.php @@ -111,14 +111,14 @@ class Store extends BaseController foreach ($consumption['config'] as $k => $item) { if (empty($userConsumption) && in_array($merchant['type_id'], $item['type_id'])) { $saleTarget = $item['amount']; - $subsidyAmount = $saleTarget; + $subsidyAmount = $item['subsidy']; $purchaseTarget = bcmul($saleTarget, 0.5, 2); break; } if (!empty($userConsumption) && in_array($merchant['type_id'], $item['type_id'])) { $nextItem = $consumption['config'][$k + 1] ?? $item; $saleTarget = $nextItem['amount']; - $subsidyAmount = $saleTarget; + $subsidyAmount = $item['subsidy']; $purchaseTarget = bcmul($saleTarget, 0.5, 2); break; } From ef4f3cedc61aa86a8cac54401f714f596435d98e Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 5 Mar 2024 16:49:10 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A2=9E=E6=94=B6?= =?UTF-8?q?=E8=A1=A5=E8=B4=B4=E9=87=91=E9=A2=9D=E7=9A=84=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/server/Store.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controller/api/server/Store.php b/app/controller/api/server/Store.php index 0f8c6d82..019fb13f 100644 --- a/app/controller/api/server/Store.php +++ b/app/controller/api/server/Store.php @@ -118,7 +118,7 @@ class Store extends BaseController if (!empty($userConsumption) && in_array($merchant['type_id'], $item['type_id'])) { $nextItem = $consumption['config'][$k + 1] ?? $item; $saleTarget = $nextItem['amount']; - $subsidyAmount = $item['subsidy']; + $subsidyAmount = $nextItem['subsidy']; $purchaseTarget = bcmul($saleTarget, 0.5, 2); break; } From 0d2b770566ed4ad4d5d7b95fdc581fffb5c00c2c Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 5 Mar 2024 16:58:05 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=95=86=E6=88=B7?= =?UTF-8?q?=E9=82=80=E8=AF=B7=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/user/User.php | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/app/controller/api/user/User.php b/app/controller/api/user/User.php index 946d49db..71ad6d01 100755 --- a/app/controller/api/user/User.php +++ b/app/controller/api/user/User.php @@ -565,25 +565,31 @@ class User extends BaseController { [$page, $limit] = $this->getPage(); $userIds = UserModel::where('spread_uid', $this->user->uid)->column('uid'); - $query = Merchant::whereIn('uid', $userIds) - ->where('status', 1) - ->where('is_del', 0) - ->where('mer_state', 1); + $query = Merchant::whereIn('uid', $userIds)->where('is_del', 0); $count = $query->count(); - $result = $query->page($page, $limit) + $merchants = $query->page($page, $limit) ->field('mer_id,mer_name,uid,real_name') ->select()->toArray(); $dao = new StoreOrderDao(); /** @var PresellOrderRepository $preSellDao */ $preSellRepo = app()->make(PresellOrderRepository::class); - foreach ($result as &$item) { - $saleOrderQuery = $dao->search(['mer_id' => $item['mer_id']])->whereIn('StoreOrder.status', [0, 1, 2, 3, 9, 10])->where('paid', 1); - $saleOrderIds = $saleOrderQuery->column('order_id'); - $saleAmount1 = $saleOrderQuery->sum('StoreOrder.pay_price'); - $saleAmount2 = $preSellRepo->search(['paid' => 1, 'order_ids' => $saleOrderIds])->sum('pay_price'); - $item['sale_amount'] = bcadd($saleAmount1, $saleAmount2, 2); - $item['buy_amount'] = StoreOrderOther::where('uid', $item['uid'])->whereIn('status', [0, 1, 2, 3, 9, 10])->where('paid', 1)->sum('pay_price'); - $item['buy_amount'] = bcadd($item['buy_amount'], 0, 2); + $merchants = reset_index($merchants, 'uid'); + $result = []; + foreach ($userIds as $userId) { + if (isset($merchants[$userId])) { + $merchant = $merchants[$userId]; + $saleOrderQuery = $dao->search(['mer_id' => $merchant['mer_id']])->whereIn('StoreOrder.status', [0, 1, 2, 3, 9, 10])->where('paid', 1); + $saleOrderIds = $saleOrderQuery->column('order_id'); + $saleAmount1 = $saleOrderQuery->sum('StoreOrder.pay_price'); + $saleAmount2 = $preSellRepo->search(['paid' => 1, 'order_ids' => $saleOrderIds])->sum('pay_price'); + $merchant['sale_amount'] = bcadd($saleAmount1, $saleAmount2, 2); + $merchant['buy_amount'] = StoreOrderOther::where('uid', $merchant['uid'])->whereIn('status', [0, 1, 2, 3, 9, 10])->where('paid', 1)->sum('pay_price'); + $merchant['buy_amount'] = bcadd($merchant['buy_amount'], 0, 2); + $merchant['status'] = 1; + $result[] = $merchant; + } else { + $result[] = ['mer_id' => '', 'mer_name' => '', 'uid' => $userId, 'real_name' => $userId, 'sale_amount' => '0.00', 'buy_amount' => '0.00', 'status' => 0]; + } } return app('json')->success(['count' => $count, 'list' => $result]); } From 814bf3921e9de8cccfc270e865d7389526b9c16f Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 5 Mar 2024 16:58:52 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=95=86=E6=88=B7?= =?UTF-8?q?=E9=82=80=E8=AF=B7=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/user/User.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controller/api/user/User.php b/app/controller/api/user/User.php index 71ad6d01..2becc0ca 100755 --- a/app/controller/api/user/User.php +++ b/app/controller/api/user/User.php @@ -588,7 +588,7 @@ class User extends BaseController $merchant['status'] = 1; $result[] = $merchant; } else { - $result[] = ['mer_id' => '', 'mer_name' => '', 'uid' => $userId, 'real_name' => $userId, 'sale_amount' => '0.00', 'buy_amount' => '0.00', 'status' => 0]; + $result[] = ['mer_id' => '', 'mer_name' => '', 'uid' => $userId, 'real_name' => '', 'sale_amount' => '0.00', 'buy_amount' => '0.00', 'status' => 0]; } } return app('json')->success(['count' => $count, 'list' => $result]); From 273815b728bc8b5822b58fc4a8408f7b05e6ec3b Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 5 Mar 2024 17:37:23 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E8=B4=AD=E7=89=A9=E5=8D=A1=E4=B8=8D?= =?UTF-8?q?=E8=AE=A1=E5=85=A5=E9=87=87=E8=B4=AD=E9=87=91=E9=A2=9D=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A2=9E=E6=94=B6=E8=A1=A5=E8=B4=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/repositories/store/order/StoreOrderRepository.php | 2 +- app/controller/api/server/Store.php | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index e7242390..a656815d 100755 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -792,7 +792,7 @@ class StoreOrderRepository extends BaseRepository } $order->save(); - if ($order->uid != $order->merchant->uid) { + if ($order->uid != $order->merchant->uid && !$order->orderProduct[0]->product->isPlatformCard()) { $refundPrice = StoreRefundOrder::where('order_id', $order['order_id'])->where('status', '<>', -1)->sum('refund_price'); $money = bcsub($order->total_price, bcadd($order['extension_one'], $order['extension_two'], 3), 2); $money = bcsub($money, $refundPrice, 2); diff --git a/app/controller/api/server/Store.php b/app/controller/api/server/Store.php index 019fb13f..aae4ea4e 100644 --- a/app/controller/api/server/Store.php +++ b/app/controller/api/server/Store.php @@ -97,6 +97,7 @@ class Store extends BaseController $saleTarget = $userConsumption['coupon_price']; $purchaseTarget = $userConsumption['coupon_price']; $merchant['purchase_amount'] = bcsub($userConsumption['coupon_price'], $userConsumption['balance'], 2); + $merchant['balance'] = $userConsumption['balance']; } } else { //增收销售补贴 @@ -108,6 +109,7 @@ class Store extends BaseController ->field('coupon_price,balance,status') ->find(); $subsidyAmount = $userConsumption['coupon_price'] ?? '0.00'; + $merchant['balance'] = $userConsumption['balance'] ?? '0.00'; foreach ($consumption['config'] as $k => $item) { if (empty($userConsumption) && in_array($merchant['type_id'], $item['type_id'])) { $saleTarget = $item['amount']; @@ -143,6 +145,7 @@ class Store extends BaseController 'spring_subsidy' => $saleTarget, 'spring_subsidy_amount' => $merchant['purchase_amount'], 'spring_subsidy_rate' => $springSubsidyRate, + 'balance' => $merchant['balance'], ]); } From e7d04893a72b95378887bfe4409344f7036bfa10 Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 5 Mar 2024 17:40:10 +0800 Subject: [PATCH 6/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A2=9E=E6=94=B6?= =?UTF-8?q?=E8=A1=A5=E8=B4=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/server/Store.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controller/api/server/Store.php b/app/controller/api/server/Store.php index aae4ea4e..c5e81eac 100644 --- a/app/controller/api/server/Store.php +++ b/app/controller/api/server/Store.php @@ -145,7 +145,7 @@ class Store extends BaseController 'spring_subsidy' => $saleTarget, 'spring_subsidy_amount' => $merchant['purchase_amount'], 'spring_subsidy_rate' => $springSubsidyRate, - 'balance' => $merchant['balance'], + 'balance' => $merchant['balance'] ?? '0.00', ]); } From 535177563a44d5a533d2e1bf9ae75e0faa72df7d Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Wed, 6 Mar 2024 10:52:19 +0800 Subject: [PATCH 7/7] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=95=B0=E9=87=8F=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/repositories/store/order/StoreOrderRepository.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index a656815d..731b016b 100755 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -597,7 +597,7 @@ class StoreOrderRepository extends BaseRepository $where['activity_type'] = $product_type; if ($source == 103) { $where['activity_type'] = [0, 2, 98]; - $where['source'] = [0, 2, 103,105]; + $where['source'] = [0, 2, 103,105, 999]; } $noComment = $this->dao->search(['uid' => $uid, 'is_user' => $isUser])->where($this->getOrderType(4))->where($where)->where('StoreOrder.is_del', 0)->count(); $noPay = $this->dao->search(['uid' => $uid, 'is_user' => $isUser])->where($this->getOrderType(1))->whereRaw("(StoreOrder.paid=0 and StoreOrder.pay_type!=8) or (StoreOrder.paid=1 and StoreOrder.pay_type=8 and StoreOrder.status=2)")->where($where)->where('StoreOrder.is_del', 0)->count();