diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index fad9f4e3..4db2258b 100644 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -2471,6 +2471,7 @@ class StoreOrderRepository extends BaseRepository } } if ($result === true) { + app()->make(MerchantRepository::class)->computedLockMoney($groupOrder->order); $groupOrder->interest->status = StoreOrderInterest::STATUS_SETTLED; $groupOrder->interest->settle_time = date('Y-m-d H:i:s'); $groupOrder->interest->interest = $interest; @@ -2505,10 +2506,11 @@ class StoreOrderRepository extends BaseRepository * 确认接单 * @param $user * @param $id + * @param $type * @return void * @throws Exception */ - public function confirm($user, $id) + public function confirm($user, $id, $type) { /** @var StoreGroupOrderRepository $groupOrderRepository */ $groupOrderRepository = app()->make(StoreGroupOrderRepository::class); @@ -2523,7 +2525,11 @@ class StoreOrderRepository extends BaseRepository if ($order->status != StoreOrder::STATUS_WAIT_CONFIRM) { throw new Exception('订单状态错误'); } - $order->status = StoreOrder::STATUS_WAIT_PAY; + if ($type == 2) { + $order->is_del = 1; + } else { + $order->status = StoreOrder::STATUS_WAIT_PAY; + } $order->save(); Db::commit(); } catch (\Exception $e) { diff --git a/app/common/service/JgPush.php b/app/common/service/JgPush.php index cbec4ce5..7e2828f5 100644 --- a/app/common/service/JgPush.php +++ b/app/common/service/JgPush.php @@ -55,6 +55,18 @@ class JgPush } } break; + case 'MERCHANT_CREDIT_BUY_NOTICE': + $route = "/pages/admin/orderDetail/index?id={$data['orderId']}&mer_id={$data['id']}"; + $merUserId = Merchant::where('mer_id', $data['id'])->value('uid'); + $jgRegisterId = User::where('uid', $merUserId)->value('jg_register_id'); + if (empty($jgRegisterId)) { + break; + } + $this->addRegistrationId($jgRegisterId); + $this->androidNotification('您的先货后款订单即将逾期,请尽快处理!', ['extras' => ['route' => $route]]); + $this->iosNotification('您的先货后款订单即将逾期,请尽快处理!', ['extras' => ['route' => $route]]); + $this->push->send(); + break; default: break; } diff --git a/app/controller/api/store/order/StoreOrder.php b/app/controller/api/store/order/StoreOrder.php index 09047bf5..039218a0 100644 --- a/app/controller/api/store/order/StoreOrder.php +++ b/app/controller/api/store/order/StoreOrder.php @@ -326,8 +326,9 @@ class StoreOrder extends BaseController public function confirm() { $id = $this->request->param('id/d'); + $type = $this->request->param('type/d'); try { - $this->repository->confirm($this->request->userInfo(), $id); + $this->repository->confirm($this->request->userInfo(), $id, $type); return app('json')->success('success'); } catch (\Exception $e) { return app('json')->fail($e->getMessage()); diff --git a/crmeb/listens/AutoCheckCreditBuyListen.php b/crmeb/listens/AutoCheckCreditBuyListen.php new file mode 100644 index 00000000..d55ace66 --- /dev/null +++ b/crmeb/listens/AutoCheckCreditBuyListen.php @@ -0,0 +1,26 @@ +tick($time, function () { + request()->clearCache(); + $time = strtotime('+3 days'); + $unSettle = StoreOrderInterest::whereBetweenTime('start_time', time(), $time)->where('status', 0)->group('mer_id')->column('order_id,mer_id'); + foreach ($unSettle as $item) { + Queue::push(SendSmsJob::class, ['tempId' => 'MERCHANT_CREDIT_BUY_NOTICE', 'id' => $item['mer_id'], 'orderId' => $item['order_id']]); + } + }); + } +} diff --git a/crmeb/services/SmsService.php b/crmeb/services/SmsService.php index ef0a14cf..b40079b2 100644 --- a/crmeb/services/SmsService.php +++ b/crmeb/services/SmsService.php @@ -282,6 +282,9 @@ class SmsService case 'SVIP_PAY_SUCCESS': self::create()->send($id['phone'], $tempId, ['store_name' => systemConfig('site_name'),'date' => $id['date']]); break; + case 'MERCHANT_CREDIT_BUY_NOTICE': + self::sendMerMessage($id, $tempId, ['order_id' => $data['orderId']]); + break; } }