服务号推送模版消息

<?php
namespace app\job\wx;



use app\api\service\Jssdk; 
use think\queue\Job;
use app\http\Events;


class PushWxMsg {

    /**
     * 根据消息中的数据进行实际的业务处理...
     * @param array $data
     * @return bool
     */
    public function doHelloJob(array $data) {
        $send_data = [
            "first" => [
                "value" => "",
                "color" => '#f10909'
            ],
            "keyword1" => [
                "value" => $data['userjs_name'],
                "color" => '#f10909'
            ],
            "keyword2" => [
                "value" => date( "Y-m-d H:i" , $data['time'] ),
                "color" => '#f10909'
            ],
            "keyword3" => [
                "value" => $data['order_name'],
                "color" => '#f10909'
            ],
            "keyword4" => [
                "value" => $data['money'],
                "color" => '#f10909'
            ],
            "remark" => [
                "value" => "订单号:" . $data['orderno'] . "\n" . "预约时间:" . date("Y-m-d H:i" , $data['service_time']),
                "color" => '#f10909'
            ]
        ];
        $this->send_wx_msg( $openid ,$temp_id ,$send_data );
    }

    public function send_wx_msg( $openid='' , $temp_id="k1" , $send_data ) {
        $template_arr = [
            "K1" => "OfQTNKZeJRG2HcPJTTXarzIt514f_gUMjNTwnk1pODc",      //  下单成功提醒
        ];
        
        //  购买成功通知
        $data = [
            "touser" => $openid, //对方的openid
            "template_id" => $template_arr[ $temp_id ], //模板id
//            "url" => "pages/index/index", //跳转小程序页面
            "url" => "", //跳转小程序页面
            "topcolor" => "#FF0000", 
            "data" => $send_data
        ];

        $wx_p_appid = sysconfig('wx_public','wx_p_appid');
        $wx_p_secret_key = sysconfig('wx_public','wx_p_secret_key');
        $loginServices = app()->make(LoginServices::class);
        $access_token = $loginServices->get_access_token( $wx_p_appid , $wx_p_secret_key );
        
        $msgurl = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" . $access_token; // 发送模板消息接口 
        $send_ret = curl_request($msgurl, json_encode($data) , 'POST', $header = array("content-type:application/json"), $https = false, $timeout = 50) ;
        return $send_ret;
    }

    
}

posted @ 2025-08-01 14:07  Bashuslovakia  阅读(11)  评论(0)    收藏  举报