orderModel = $orderModel; $this->memberModel = $this->getMemberModel(); $this->formId = $formId; $this->noticeType = $type; } public function created() { $createNotice = new OrderLevelNotice($this->orderModel,"下单(未付款)"); $createNotice->sendMessage(); return ; $params = [ ['name' => '下级昵称', 'value' => $this->getMemberName()], ['name' => '订单状态', 'value' => '下单(未付款)'], ['name' => '订单号', 'value' => $this->orderModel->order_sn], ['name' => '订单金额', 'value' => $this->orderModel->price], ]; $this->notice($params); } public function paid() { $payNotice = new OrderLevelNotice($this->orderModel,'已支付'); $payNotice->sendMessage(); return ; $params = [ ['name' => '下级昵称', 'value' => $this->getMemberName()], ['name' => '订单状态', 'value' => '已支付'], ['name' => '订单号', 'value' => $this->orderModel->order_sn], ['name' => '订单金额', 'value' => $this->orderModel->price], ]; $this->notice($params); } public function sent() { $sentNotice = new OrderLevelNotice($this->orderModel,'已发货'); $sentNotice->sendMessage(); return ; $params = [ ['name' => '下级昵称', 'value' => $this->getMemberName()], ['name' => '订单状态', 'value' => '已发货'], ['name' => '订单号', 'value' => $this->orderModel->order_sn], ['name' => '订单金额', 'value' => $this->orderModel->price], ]; $this->notice($params); } public function received() { $receivedNotice = new OrderLevelNotice($this->orderModel,'已完成'); $receivedNotice->sendMessage(); return ; $params = [ ['name' => '下级昵称', 'value' => $this->getMemberName()], ['name' => '订单状态', 'value' => '已完成'], ['name' => '订单号', 'value' => $this->orderModel->order_sn], ['name' => '订单金额', 'value' => $this->orderModel->price], ]; $this->notice($params); } private function notice($params) { if (!\Setting::get('shop.notice.other_toggle')) { return; } \Log::info('二级消息通知,设置通过'); $template_id = \Setting::get('shop.notice.other_toggle_temp'); if (!$template_id) { return; } \Log::info('二级消息通知,模版ID通过'); //\Log::info('二级消息通知,模版ID通过'.$this->memberModel->yzMember->parent_id, print_r($this->memberModel->toArray(),true)); if (isset($this->memberModel->yzMember) && $this->memberModel->yzMember->parent_id) { \Log::info('二级消息通知,一级消息通过'); $params_first = $params; $params_first[] = ['name' => '下级层级', 'value' => '一级']; $msg = MessageTemp::getSendMsg($template_id, $params_first); if (!$msg) { return; } $miniApp['type'] = \Setting::get('shop.notice.seller_order_pay.type'); $miniApp['formId'] = \Setting::get('shop.notice.seller_order_pay.formId'); $news_link = MessageTemp::find($template_id)->news_link; $news_link = $news_link ?:''; Notice::notice(MessageTemp::$template_id,$msg,$this->memberModel->yzMember->parent_id,'',$news_link,$miniApp); } $twoSuperior = $this->getMemberModel($this->memberModel->yzMember->parent_id); if (isset($twoSuperior->yzMember) && $twoSuperior->yzMember->parent_id) { \Log::info('二级消息通知,二级消息通过'); $params_second = $params; $params_second[] = ['name' => '下级层级', 'value' => '二级']; $msg = MessageTemp::getSendMsg($template_id, $params_second); if (!$msg) { return; } Notice::notice(MessageTemp::$template_id,$msg,$twoSuperior->yzMember->parent_id); } return; } private function getMemberName() { return $this->memberModel->realname ? $this->memberModel->realname : $this->memberModel->nickname; } private function getMemberModel($memberId = '') { $memberId = $memberId ? $memberId : $this->orderModel->uid; return Member::select('uid','realname','nickname')->with(['yzMember'=>function($query) { return $query->select('member_id','parent_id','relation'); }])->where('uid',$memberId)->first(); } }