Explorar o código

工程师每日开启接单的通知【给工程师的通知】 定时任务

liugc hai 1 ano
pai
achega
21a7168f56

+ 4 - 2
app/api/controller/ServiceOrderController.php

@@ -82,12 +82,14 @@ class ServiceOrderController extends BaseApiController
             return $this->fail(ServiceOrderLogic::getError());
         }
         // 用户下单后,给订单运营专员(配置固定ID)发送公众号提醒(订单信息)
+        $workDetail = ServiceWorkLogic::detail(['id'=>$result['work_id']]);
         $res = event('Notice',  [
             'scene_id' => 100,
             'params' => [
                 'user_id' => 0,
-                /*'thing4' => xxxx,
-                'phone_number8' => xxxx,*/
+                'thing3' => $workDetail['title'],
+                'time6' => $workDetail['appointment_time'],
+                'phone_number8' => $workDetail['mobile'],
             ]
         ]);
         return $this->data($result);

+ 47 - 0
app/common/command/OpenObtainOrder.php

@@ -0,0 +1,47 @@
+<?php
+namespace app\common\command;
+
+use app\common\model\bank_account\BankAccount;
+use app\common\model\master_worker\MasterWorker;
+use app\common\model\master_worker\MasterWorkerInfo;
+use think\console\Command;
+use think\console\Input;
+use think\console\Output;
+use think\facade\Log;
+
+/**
+ *  工程师每日开启接单的通知【给工程师的通知】
+ * Class OpenObtainOrder
+ * @package app\command
+ */
+class OpenObtainOrder extends Command
+{
+    protected function configure()
+    {
+        $this->setName('open_obtain_order')->setDescription('每天定时发送工程师开启接单提醒');
+    }
+
+    protected function execute(Input $input, Output $output)
+    {
+        try {
+            $infoWorkerIds = MasterWorkerInfo::where(['audit_state'=>1])->column('worker_id');
+            $bankWorkerIds = BankAccount::where(['audit_state'=>1])->column('worker_id');
+            $ids = array_intersect($infoWorkerIds,$bankWorkerIds);
+            $workerIds = MasterWorker::where([['audit_state',"IN",($ids?:[0])],['accept_order_status','=',0]])->column('id')?:[9];
+            Log::write('OpenObtainOrder:workerIds:'.json_encode($workerIds));
+            foreach ($workerIds as $workerId) {
+                event('Notice',  [
+                    'scene_id' => 112,
+                    'params' => [
+                        'user_id' => $workerId,
+                    ]
+                ]);
+            }
+            return true;
+        } catch (\Exception $e) {
+            Log::write('OpenObtainOrder:'.$e->getMessage());
+            return false;
+        }
+
+    }
+}

+ 2 - 0
config/console.php

@@ -11,5 +11,7 @@ return [
         'query_refund' => 'app\common\command\QueryRefund',
         // mq队列任务
         'query_add_agreement' => 'app\common\command\AddAgreementPdf',
+        //工程师每日开启接单的通知
+        'open_obtain_order' => 'app\common\command\OpenObtainOrder',
     ],
 ];