| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- <?php
- namespace app\frontend\modules\order\services\message;
- use app\common\models\Member;
- use app\common\models\MemberShopInfo;
- use app\common\models\notice\MessageTemp;
- use app\common\models\notice\MinAppTemplateMessage;
- /**
- * Created by PhpStorm.
- * User: shenyang
- * Date: 2017/6/7
- * Time: 上午10:15
- */
- class BuyerMessage extends Message
- {
- protected $goods_title;
- public function __construct($order,$formId = '',$type = 1,$title)
- {
- parent::__construct($order,$formId,$type,$title);
- $this->goods_title = $this->order->hasManyOrderGoods()->first()->title;
- $this->goods_title .= $this->order->hasManyOrderGoods()->first()->goods_option_title ?: '';
- }
- protected function sendToBuyer()
- {
- try {
- return $this->sendToMember($this->order->uid);
- } catch (\Exception $exception) {
- }
- }
- protected function sendToMember($uid)
- {
- if (empty($this->templateId)) {
- return;
- }
- $this->notice($this->templateId, $this->msg, $uid,'',$this->news_link);
- }
- protected function miniSendToShops($templateId,$msg)
- {
- if (empty($templateId)) {
- return;
- }
- \Log::debug('===============',[$templateId]);
- $this->MiniNotice($templateId, $msg, $this->order->uid);
- }
- private function transfer($temp_id, $params)
- {
- $this->msg = MessageTemp::getSendMsg($temp_id, $params);
- if (!$this->msg) {
- return;
- }
- $this->templateId = MessageTemp::$template_id;
- $news_link = MessageTemp::find($temp_id)->news_link;
- $this->news_link = $news_link ?:'';
- $this->sendToBuyer();
- }
- public function created()
- {
- $temp_id = \Setting::get('shop.notice')['order_submit_success'];
- if ($temp_id) {
- $params = [
- ['name' => '商城名称', 'value' => \Setting::get('shop.shop')['name']],
- ['name' => '粉丝昵称', 'value' => $this->order->belongsToMember->nickname],
- ['name' => '订单号', 'value' => $this->order->order_sn],
- ['name' => '下单时间', 'value' => $this->order['create_time']->toDateTimeString()],
- ['name' => '订单金额', 'value' => $this->order['price']],
- ['name' => '运费', 'value' => $this->order['dispatch_price']],
- ['name' => '商品详情(含规格)', 'value' => $this->goods_title],
- ];
- $this->transfer($temp_id, $params);
- }
- //小程序消息
- $is_open = MinAppTemplateMessage::getTitle('订单提交成功通知');
- if (!$is_open->is_open){
- return;
- }
- $msg = [
- 'keyword1'=>['value'=> $this->order->belongsToMember->nickname],// 客户姓名
- 'keyword2'=>['value'=> $this->order->order_sn],//订单号
- 'keyword3'=>['value'=> $this->order['create_time']->toDateTimeString()],// 下单时间
- 'keyword4'=>['value'=> $this->order['price']],// 订单金额
- 'keyword5'=>['value'=> $this->goods_title],// 商品信息
- ];
- $this->miniSendToShops($is_open->template_id,$msg);
- }
- public function paid()
- {
- $temp_id = \Setting::get('shop.notice')['order_pay_success'];
- if (!$temp_id) {
- return;
- }
- $params = [
- ['name' => '商城名称', 'value' => \Setting::get('shop.shop')['name']],
- ['name' => '粉丝昵称', 'value' => $this->order->belongsToMember->nickname],
- ['name' => '订单号', 'value' => $this->order->order_sn],
- ['name' => '下单时间', 'value' => $this->order['create_time']->toDateTimeString()],
- ['name' => '订单金额', 'value' => $this->order['price']],
- ['name' => '运费', 'value' => $this->order['dispatch_price']],
- ['name' => '商品详情(含规格)', 'value' => $this->goods_title],
- ['name' => '支付方式', 'value' => $this->order->pay_type_name],
- ['name' => '支付时间', 'value' => $this->order['pay_time']->toDateTimeString()],
- ];
- $this->transfer($temp_id, $params);
- }
- // public function canceled()
- // {
- // $temp_id = \Setting::get('shop.notice')['order_cancel'];
- // if (!$temp_id) {
- // return;
- // }
- // $params = [
- // ['name' => '商城名称', 'value' => \Setting::get('shop.shop')['name']],
- // ['name' => '粉丝昵称', 'value' => $this->order->belongsToMember->nickname],
- // ['name' => '订单号', 'value' => $this->order->order_sn],
- // ['name' => '下单时间', 'value' => $this->order['create_time']->toDateTimeString()],
- // ['name' => '订单金额', 'value' => $this->order['price']],
- // ['name' => '运费', 'value' => $this->order['dispatch_price']],
- // ['name' => '商品详情(含规格)', 'value' => $this->goods_title],
- // ['name' => '支付方式', 'value' => $this->order->pay_type_name],
- // ['name' => '订单取消时间', 'value' => $this->order['cancel_time']->toDateTimeString()],
- // ];
- // $this->transfer($temp_id, $params);
- // }
- public function canceled()
- {
- $temp_id = \Setting::get('shop.notice')['order_cancel'];
- if ($temp_id) {
- $params = [
- ['name' => '商城名称', 'value' => \Setting::get('shop.shop')['name']],
- ['name' => '粉丝昵称', 'value' => $this->order->belongsToMember->nickname],
- ['name' => '订单号', 'value' => $this->order->order_sn],
- ['name' => '下单时间', 'value' => $this->order['create_time']->toDateTimeString()],
- ['name' => '订单金额', 'value' => $this->order['price']],
- ['name' => '运费', 'value' => $this->order['dispatch_price']],
- ['name' => '商品详情(含规格)', 'value' => $this->goods_title],
- ['name' => '支付方式', 'value' => $this->order->pay_type_name],
- ['name' => '订单取消时间', 'value' => $this->order['cancel_time']->toDateTimeString()],
- ];
- $this->transfer($temp_id, $params);
- }
- //小程序消息
- $is_open = MinAppTemplateMessage::getTitle('订单取消通知');
- if (!$is_open->is_open){
- return;
- }
- $msg = [
- 'keyword1'=>['value'=> $this->order->belongsToMember->nickname],// 用户名
- 'keyword2'=>['value'=> $this->order->order_sn],//订单号
- 'keyword3'=>['value'=> $this->order['create_time']->toDateTimeString()],// 下单时间
- 'keyword4'=>['value'=> $this->order['price']],// 订单金额
- 'keyword5'=>['value'=> $this->order['price']],// 订单运费
- 'keyword6'=>['value'=> $this->goods_title],// 商品详情
- 'keyword7'=>['value'=> $this->order['cancel_time']->toDateTimeString()],// 取消时间
- ];
- $this->miniSendToShops($is_open->template_id,$msg);
- }
- public function sent()
- {
- $temp_id = \Setting::get('shop.notice')['order_send'];
- if ($temp_id) {
- $params = [
- ['name' => '商城名称', 'value' => \Setting::get('shop.shop')['name']],
- ['name' => '粉丝昵称', 'value' => $this->order->belongsToMember->nickname],
- ['name' => '订单号', 'value' => $this->order->order_sn],
- ['name' => '下单时间', 'value' => $this->order['create_time']->toDateTimeString()],
- ['name' => '订单金额', 'value' => $this->order['price']],
- ['name' => '运费', 'value' => $this->order['dispatch_price']],
- ['name' => '商品详情(含规格)', 'value' => $this->goods_title],
- ['name' => '发货时间', 'value' => $this->order['send_time']->toDateTimeString()],
- ['name' => '快递公司', 'value' => $this->order['express']['express_company_name'] ?: "暂无信息"],
- ['name' => '快递单号', 'value' => $this->order['express']['express_sn'] ?: "暂无信息"],
- ];
- $this->transfer($temp_id, $params);
- }
- //小程序消息模板
- $is_open = MinAppTemplateMessage::getTitle('订单发货提醒');
- if (!$is_open->is_open){
- return;
- }
- $msg = [
- 'keyword1'=>['value'=> $this->order->belongsToMember->nickname],// 用户名
- 'keyword2'=>['value'=> $this->order->order_sn],//订单号
- 'keyword3'=>['value'=> $this->order['create_time']->toDateTimeString()],// 下单时间
- 'keyword4'=>['value'=> $this->order['price']],// 订单金额
- 'keyword5'=>['value'=> $this->goods_title],// 商品信息
- 'keyword6'=>['value'=> $this->order['send_time']->toDateTimeString()],// 发货时间
- 'keyword7'=>['value'=> $this->order['express']['express_company_name'] ?: "暂无信息"],// 快递公司
- 'keyword8'=>['value'=> $this->order['express']['express_sn'] ?: "暂无信息"],// 快递单号
- ];
- $this->miniSendToShops($is_open->template_id,$msg);
- }
- public function received()
- {
- $temp_id = \Setting::get('shop.notice')['order_finish'];
- if ($temp_id) {
- $params = [
- ['name' => '商城名称', 'value' => \Setting::get('shop.shop')['name']],
- ['name' => '粉丝昵称', 'value' => $this->order->belongsToMember->nickname],
- ['name' => '订单号', 'value' => $this->order->order_sn],
- ['name' => '下单时间', 'value' => $this->order['create_time']->toDateTimeString()],
- ['name' => '订单金额', 'value' => $this->order['price']],
- ['name' => '运费', 'value' => $this->order['dispatch_price']],
- ['name' => '商品详情(含规格)', 'value' => $this->goods_title],
- ['name' => '确认收货时间', 'value' => $this->order['finish_time']->toDateTimeString()],
- ];
- $this->transfer($temp_id, $params);
- }
- //小程序消息模板
- $is_open = MinAppTemplateMessage::getTitle('确认收货通知');
- if (!$is_open->is_open){
- return;
- }
- $msg = [
- 'keyword1'=>['value'=> $this->goods_title],// 商品名称
- 'keyword2'=>['value'=> $this->order->belongsToMember->nickname],//买家昵称
- 'keyword3'=>['value'=> $this->order->order_sn],// 订单编号
- 'keyword4'=>['value'=> $this->order['create_time']->toDateTimeString()],// 订订单时间
- 'keyword5'=>['value'=> $this->order['price']],// 订单金额
- 'keyword6'=>['value'=> $this->order['finish_time']->toDateTimeString()],// 确认收货时间
- ];
- $this->miniSendToShops($is_open->template_id,$msg);
- }
- }
|