132 lines
3.1 KiB
PHP
132 lines
3.1 KiB
PHP
<?php
|
||
|
||
namespace app\robot\controller;
|
||
|
||
|
||
use app\channel\service\ChannelService;
|
||
use app\channel\service\ProductService;
|
||
use app\gateway\service\CurlService;
|
||
use app\kami\service\LockCardService;
|
||
use app\merchant\service\MerchantService;
|
||
use app\merchant\service\OrderHistoryService;
|
||
use app\merchant\service\OrderLastHistoryService;
|
||
use app\merchant\service\OrderService;
|
||
use app\merchant\service\OrderTwoHistoryService;
|
||
use app\openapi\controller\Coretb;
|
||
use app\order\service\AfterSalesOrderService;
|
||
use app\robot\controller\api\Qqbot;
|
||
use think\admin\Controller;
|
||
use think\exception\HttpResponseException;
|
||
use think\facade\Db;
|
||
use think\facade\Log;
|
||
|
||
//use app\merchant\service\OrderLastweekHistoryService;
|
||
|
||
#微信机器人 #
|
||
class WeChatBot extends Controller
|
||
{
|
||
protected array $status_map=array(
|
||
-1=>'暂无订单',
|
||
-2=>'暂无卡密',
|
||
1=>'成功'
|
||
);
|
||
|
||
protected string $host = 'http://111.229.68.136:9999/';
|
||
|
||
|
||
public function initialize(): void
|
||
{
|
||
#47609e509f946ecbfdba27f16db341c4
|
||
|
||
parent::initialize();
|
||
|
||
#获取wechat信息
|
||
}
|
||
|
||
#发送文本
|
||
public function send_text($content,$receiver,$aters =false)
|
||
{
|
||
$url = $this->host.'text';
|
||
$request = [
|
||
'aters' =>'',
|
||
'msg'=>$content,
|
||
'receiver'=>$receiver
|
||
];
|
||
|
||
if($aters){
|
||
$request['aters'] = $aters;
|
||
}
|
||
|
||
return $this->curl('post', $url,$request,true);
|
||
|
||
}
|
||
|
||
public function get_all_contacts()
|
||
{
|
||
$url = $this->host.'contacts';
|
||
|
||
return $this->curl('get', $url);
|
||
|
||
}
|
||
|
||
|
||
|
||
|
||
# 是否检测数据
|
||
// protected bool $check = false;
|
||
|
||
# 查询接口 一般用于查询数据,同步执行
|
||
|
||
|
||
# 提交接口 一般用于提交数据,异步执行
|
||
|
||
public function send($url, $param)
|
||
{
|
||
$geturl = 'http://127.0.0.1:7374/' . $url;
|
||
|
||
return http_post($geturl, $param);
|
||
|
||
}
|
||
|
||
public function send_post($notify_url, $post_data, $type): mixed
|
||
{
|
||
$postdate = json_encode($post_data);
|
||
|
||
// $postdate = http_build_query($post_data);
|
||
|
||
$options = array(
|
||
'http' => array(
|
||
'method' => $type,
|
||
'header' => 'Content-type:application/json',
|
||
'content' => $postdate,
|
||
'timeout' => 15 * 60 // 超时时间(单位:s)
|
||
)
|
||
);
|
||
$context = stream_context_create($options);
|
||
return file_get_contents($notify_url, false, $context);
|
||
}
|
||
|
||
protected function curl($method, $url, $param = array(), $json = false, $header = false):mixed
|
||
{
|
||
if ($param) {
|
||
$log['type'] = 'request';
|
||
$log['url'] = $url;
|
||
$log['param'] = $param;
|
||
$this->log($log);
|
||
}
|
||
|
||
$curl = CurlService::getInstance($url, $param, $method, $json, $header);
|
||
$curl->setTimeOut(3600);
|
||
return $curl->result();
|
||
}
|
||
|
||
protected static function log($data, $type = 'request'):void
|
||
{
|
||
\dever\Log::write('kami91', $type, $data);
|
||
// \dever\Log::write('jingdong', $type, $data);
|
||
}
|
||
|
||
|
||
|
||
|
||
} |