MpMessageService.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. namespace app\common\service\message;
  3. use app\common\library\easywechat\AppMp;
  4. /**
  5. * 公众号消息通知服务
  6. */
  7. class MpMessageService
  8. {
  9. /**
  10. * 订单支付成功后通知
  11. */
  12. public static function send($data, $mp_template, $touser, $app_id)
  13. {
  14. try{
  15. $mp_template = json_decode($mp_template, true);
  16. $var_data = $mp_template['var_data'];
  17. $send_data = [];
  18. foreach ($var_data as $key => $value){
  19. if(isset($data[$key])){
  20. $send_data[$value['field_name']]['value'] = $data[$key];
  21. }else{
  22. $send_data[$key]['value'] = $value['filed_value'];
  23. }
  24. }
  25. $app = AppMp::getApp($app_id);
  26. $app->template_message->send([
  27. 'touser' => $touser,
  28. 'template_id' => $mp_template['template_id'],
  29. 'url' => '',
  30. 'data' => $send_data,
  31. ]);
  32. }catch (\Exception $e){
  33. log_write('公众号消息发送失败');
  34. log_write($e->getMessage());
  35. }
  36. }
  37. }