From a234de8da69b277c02069f68f94386b114d7f394 Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 12 Mar 2024 17:10:22 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=A4=84=E7=90=86=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=94=AF=E4=BB=98=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/common/model/system/GeoStreet.php | 20 +++++++++++++++++++ app/common/model/system/merchant/Merchant.php | 17 ++++++++++++++++ .../store/order/StoreOrderRepository.php | 14 +++++++------ .../system/merchant/MerchantRepository.php | 2 +- 4 files changed, 46 insertions(+), 7 deletions(-) create mode 100644 app/common/model/system/GeoStreet.php diff --git a/app/common/model/system/GeoStreet.php b/app/common/model/system/GeoStreet.php new file mode 100644 index 00000000..ef38a756 --- /dev/null +++ b/app/common/model/system/GeoStreet.php @@ -0,0 +1,20 @@ +whereIn('mer_id',$value); } + + public function street() + { + return $this->hasOne(GeoStreet::class, 'street_code', 'street_id'); + } + + public function promoter() + { + $spreadId = User::where('uid', $this->uid)->value('spread_uid'); + if ($spreadId > 0) { + return User::where('uid', $spreadId)->field('uid,nickname')->find(); + } + return null; + } + } diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index a56bfcad..a8960366 100644 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -75,9 +75,9 @@ use think\model\Relation; class StoreOrderRepository extends BaseRepository { /** - * 支付类型 0余额 1 微信 2 小程序 3 微信 4 支付宝 5 支付宝 6 微信 + * 支付类型 0余额 1 微信 2 小程序 3 微信 4 支付宝 5 支付宝 6 微信 7 四川农信 8 信用购 9 商户余额 */ - const PAY_TYPE = ['balance', 'weixin', 'routine', 'h5', 'alipay', 'alipayQr', 'weixinQr']; + const PAY_TYPE = ['balance', 'weixin', 'routine', 'h5', 'alipay', 'alipayQr', 'weixinQr', 'scrcu', 'creditBuy', 'merBalance']; const PAY_TYPE_FILTEER = [ 0 => 0, 1 => '1,2,3,6', @@ -204,8 +204,6 @@ class StoreOrderRepository extends BaseRepository $flag = true; $finance = []; $profitsharing = []; - $financialRecordRepository = app()->make(FinancialRecordRepository::class); - $financeSn = $financialRecordRepository->getSn(); $userMerchantRepository = app()->make(UserMerchantRepository::class); //商户用户表 $storeOrderProfitsharingRepository = app()->make(StoreOrderProfitsharingRepository::class); $storeGroupOrderRepository = app()->make(StoreGroupOrderRepository::class); @@ -253,8 +251,10 @@ class StoreOrderRepository extends BaseRepository //更新助力状态 app()->make(ProductAssistSetRepository::class)->changStatus($order->orderProduct[0]['activity_id']); } - if ($order->order_type == 1 && $order->status != 10) + if ($order->order_type == 1 && $order->status != 10) { $order->verify_code = $this->verifyCode(); + $order->logistics_code = random_int(1000, 9999); + } if ($order->orderProduct[0]->product->type == 2) { $order->status = 2; $order->delivery_type = 6; @@ -308,10 +308,12 @@ class StoreOrderRepository extends BaseRepository $promoter = $order->merchant->promoter(); $promoterCommission = bcmul($orderValidAmount, 0.003, 2); if (!empty($promoter) && $promoterCommission > 0) { + $financeDao->user = $promoter; $financeDao->platformOut($promoterCommission, 'commission_to_promoter'); } // 平台收入手续费 + $financeDao->user = $groupOrder->user; $commission_rate = bcdiv((string)$order['commission_rate'],'100',6); $platformCommission = bcmul($orderValidAmount, (string)$commission_rate, 2); if ($commission_rate > 0 && $platformCommission > 0) { @@ -388,11 +390,11 @@ class StoreOrderRepository extends BaseRepository 'pay_price' => Db::raw('pay_price+' . $groupOrder->pay_price), 'svip_save_money' => Db::raw('svip_save_money+' . $svipDiscount), ]); + $financeDao->save(); $this->giveIntegral($groupOrder); if (count($profitsharing)) { $storeOrderProfitsharingRepository->insertAll($profitsharing); } - $financialRecordRepository->insertAll($finance); $storeOrderStatusRepository->batchCreateLog($orderStatus); if (count($groupOrder['give_coupon_ids']) > 0) $groupOrder['give_coupon_ids'] = app()->make(StoreCouponRepository::class)->getGiveCoupon($groupOrder['give_coupon_ids'])->column('coupon_id'); diff --git a/app/common/repositories/system/merchant/MerchantRepository.php b/app/common/repositories/system/merchant/MerchantRepository.php index 21806b33..c997d5e1 100644 --- a/app/common/repositories/system/merchant/MerchantRepository.php +++ b/app/common/repositories/system/merchant/MerchantRepository.php @@ -904,7 +904,7 @@ class MerchantRepository extends BaseRepository * @throws DbException * @throws ModelNotFoundException */ - public function deductDeposit($income, $order, FinancialDao $financeDao) + public function deductDeposit($income, $order, FinancialRecordDao $financeDao) { $merchant = Merchant::find($this->merId); //商户押金大于支付押金 或者forceMargin==false 直接返回 不计算押金 From 2f93d4bb4715c67c81b66e5f31579d540e3a5260 Mon Sep 17 00:00:00 2001 From: luofei <604446095@qq.com> Date: Tue, 12 Mar 2024 17:35:06 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/dao/store/order/StoreOrderDao.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/common/dao/store/order/StoreOrderDao.php b/app/common/dao/store/order/StoreOrderDao.php index 5c6480bc..d235ade8 100644 --- a/app/common/dao/store/order/StoreOrderDao.php +++ b/app/common/dao/store/order/StoreOrderDao.php @@ -106,7 +106,7 @@ class StoreOrderDao extends BaseDao } }) ->when(isset($where['uid']) && $where['uid'] !== '', function ($query) use ($where) { - $query->where('uid', $where['uid']); + $query->where('StoreOrder.uid', $where['uid']); }) ->when(isset($where['is_spread']) && $where['is_spread'] !== '', function ($query) use ($where) { if ($where['is_spread']) { @@ -300,7 +300,7 @@ class StoreOrderDao extends BaseDao }) ->when(isset($where['uid']) && $where['uid'] !== '', function ($query) use ($where) { - $query->where('uid', $where['uid']); + $query->where('StoreOrder.uid', $where['uid']); }) ->when(isset($where['is_user']) && $where['is_user'] !== '', function ($query) use ($where) { $query->where(function ($query) {