OrderPayedNotice.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: Administrator
  5. * Date: 2020/6/7
  6. * Time: 20:33
  7. */
  8. namespace app\common\services\notice\official;
  9. use app\common\models\Order;
  10. use app\common\services\notice\BaseMessageBody;
  11. use app\common\services\notice\share\BackstageNoticeMember;
  12. use app\common\services\notice\share\OfficialNoticeTemplate;
  13. use app\common\services\notice\share\OrderNoticeData;
  14. class OrderPayedNotice extends BaseMessageBody
  15. {
  16. use OrderNoticeData,OfficialNoticeTemplate,BackstageNoticeMember;
  17. public $orderModel;
  18. protected $orderStatus;//订单状态
  19. public function __construct($order, $status)
  20. {
  21. $this->orderModel = $order;
  22. $this->orderStatus = $status;
  23. }
  24. public function organizeData()
  25. {
  26. // TODO: Implement organizeData() method.
  27. $this->data = [
  28. ['name' => '粉丝昵称', 'value' => $this->member->nickname],
  29. ['name' => '订单号', 'value' => $this->order->order_sn],
  30. ['name' => '下单时间', 'value' => $this->timeData['create_time']],
  31. ['name' => '支付时间', 'value' => $this->timeData['pay_time'] ?: date('Y-m-d H:i:s')],
  32. ['name' => '支付方式', 'value' => $this->order->pay_type_name],
  33. ['name' => '订单金额', 'value' => $this->order['price']],
  34. ['name' => '运费', 'value' => $this->order['dispatch_price']],
  35. ['name' => '商品详情(含规格)', 'value' => $this->goodsTitle],
  36. ['name' => '收件人姓名', 'value' => $this->address['realname']],
  37. ['name' => '收件人电话', 'value' => $this->address['mobile']],
  38. ['name' => '收件人地址', 'value' => $this->address['province'] . ' ' . $this->address['city'] . ' ' . $this->address['area'] . ' ' . $this->address['address']]
  39. ];
  40. }
  41. public function sendMessage()
  42. {
  43. // TODO: Implement sendMessage() method.
  44. $this->processData($this->orderModel);
  45. $this->getTemplate('seller_order_pay');
  46. $this->getBackMember();
  47. $this->organizeData();
  48. // 卖家支付消息验证
  49. if(
  50. (empty(\Setting::get('shop.notice')['notice_enable']['created']) && $this->orderStatus == 1) ||
  51. (empty(\Setting::get('shop.notice')['notice_enable']['paid']) && $this->orderStatus == 2) ||
  52. (empty(\Setting::get('shop.notice')['notice_enable']['received']) && $this->orderStatus == 3)
  53. ){
  54. return;
  55. }
  56. \Log::debug("新版公众号消息-卖家支付1",$this->template_id);
  57. \Log::debug("新版公众号消息-卖家支付2",$this->openids);
  58. \Log::debug("新版公众号消息-卖家支付3",$this->data);
  59. $result = (new OfficialMessageNotice($this->temp_id,0,$this->data,$this->openids,1,$this->url))->sendMessage();
  60. if ($result['status'] == 0) {
  61. \Log::debug($result['message']);
  62. }
  63. }
  64. }