feat(queue): 添加渠道余额监控预警功能
- 新增 ChannelBalanceMonitor 类实现渠道余额监控 - 在 MerchantBalanceMonitor 中增加余额恢复提醒功能 - 添加 WxWorkBot 类用于发送微信工作台消息- 在 Test 控制器中整合渠道余额监控逻辑 - 更新 sys.php 添加新的渠道余额监控命令
This commit is contained in:
parent
b45d188232
commit
21e4c1e37a
@ -38,6 +38,7 @@ use app\order\service\Kami91OrderService;
|
|||||||
use app\order\service\OrderService as OrderBase;
|
use app\order\service\OrderService as OrderBase;
|
||||||
use app\robot\controller\api\Qqbot;
|
use app\robot\controller\api\Qqbot;
|
||||||
use app\robot\controller\WeChatBot as WeChatBotC;
|
use app\robot\controller\WeChatBot as WeChatBotC;
|
||||||
|
use app\robot\controller\WxWorkBot;
|
||||||
use app\setting\service\BlackCardService;
|
use app\setting\service\BlackCardService;
|
||||||
use app\setting\service\StatService;
|
use app\setting\service\StatService;
|
||||||
use dever\Log;
|
use dever\Log;
|
||||||
@ -1056,17 +1057,24 @@ class Test extends Core
|
|||||||
|
|
||||||
public function execute()
|
public function execute()
|
||||||
{
|
{
|
||||||
|
ini_set('memory_limit', '1024M');
|
||||||
$this->redis();
|
$this->redis();
|
||||||
$merchantService = MerchantService::instance();
|
|
||||||
$RobotService = new WeChatBotC($this->app);
|
|
||||||
|
|
||||||
$merchantsList = $merchantService->db()->where(['merchant_type'=>1,'status'=>1])->whereLike('other_param','%Monitor_Balance_status%')->select()->toArray();
|
$channelService = ChannelService::instance();
|
||||||
$merchantsList_num = count($merchantsList);
|
$RobotService = new WxWorkBot($this->app);
|
||||||
|
$channelList = $channelService->db()->where(['status'=>1])->whereLike('other_data','%Monitor_Balance_status%')->select()->toArray();
|
||||||
|
|
||||||
|
$channelList_num = count($channelList);
|
||||||
$count_sum = 0;
|
$count_sum = 0;
|
||||||
|
|
||||||
|
$day = date('Y-m-d', strtotime('-1 day'));
|
||||||
|
|
||||||
foreach($merchantsList as $merchants) {
|
$tip_info=[];
|
||||||
$other_param = json_decode($merchants['other_param'],true);
|
$key = '41b42bd4-c9f9-4617-9531-0a358dd97a82';
|
||||||
|
|
||||||
|
|
||||||
|
foreach($channelList as $channel) {
|
||||||
|
$other_param = json_decode($channel['other_data'],true);
|
||||||
if(!$other_param){
|
if(!$other_param){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -1074,77 +1082,60 @@ class Test extends Core
|
|||||||
if(!$Monitor_Balance){
|
if(!$Monitor_Balance){
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$roomid = $other_param['QYWX_roomid'];
|
|
||||||
$sender = $other_param['QYWX_sender'];
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$count_sum ++;
|
try{
|
||||||
|
$account_data = $channelService->call('account', $channel['id'], $day);
|
||||||
|
|
||||||
|
if (is_array($account_data) && isset($account_data['account'])) {
|
||||||
|
$balance = $account_data['account'];
|
||||||
|
if( $balance <= $Monitor_Balance){
|
||||||
|
|
||||||
|
$count_sum ++;
|
||||||
|
$this->redis->set('Check_channel_account-'.$channel['id'],1);
|
||||||
|
$tip_info[] = $channel['name']."<font color=\"comment\">余额不足,只剩下</font>:<font color=\"info\">".$balance."</font>";
|
||||||
|
|
||||||
|
|
||||||
if($merchants['account_surplus'] <= $Monitor_Balance){
|
$Monitor_Balance_TOP = $other_param['Monitor_Balance_TOP'] ?? null;
|
||||||
|
if($Monitor_Balance_TOP && $balance <= $Monitor_Balance_TOP){
|
||||||
|
if(!$this->redis->get('Check_channel_account_TOP-'.$channel['id'])){
|
||||||
|
$count_sum ++;
|
||||||
|
$this->redis->set('Check_channel_account_TOP-'.$channel['id'],1);
|
||||||
|
$tip_info[] = $channel['name']."<font color=\"comment\">余额不足,只剩下</font>:<font color=\"info\">".$balance."</font>";
|
||||||
|
|
||||||
#进入预警流程
|
|
||||||
#设置redis,根据mid设置redis,
|
|
||||||
if(!$this->redis->get('Check_merchant_account-'.$merchants['id'])){
|
|
||||||
$AllContacts = $RobotService->get_all_contacts();
|
|
||||||
$Contacts_array = json_decode($AllContacts,true);
|
|
||||||
$acc = $Contacts_array['data']['contacts'];
|
|
||||||
$ac = '';
|
|
||||||
foreach ($acc as $k=>$v){
|
|
||||||
if($v['wxid'] == $sender){
|
|
||||||
$ac = $v['name'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$this->redis->set('Check_merchant_account-'.$merchants['id'],1);
|
|
||||||
$RobotService->send_text('余额预警: 您的账户现在只剩下'.$Monitor_Balance.'元,请及时充值, @'.$ac,$roomid,$sender);
|
|
||||||
}
|
|
||||||
if($merchants['account_surplus'] <= 500){
|
|
||||||
if(!$this->redis->get('Check_merchant_account-TOP-'.$merchants['id'])){
|
|
||||||
if(isset($ac)){
|
|
||||||
$AllContacts = $RobotService->get_all_contacts();
|
|
||||||
$Contacts_array = json_decode($AllContacts,true);
|
|
||||||
$acc = $Contacts_array['data']['contacts'];
|
|
||||||
$ac = '';
|
|
||||||
foreach ($acc as $k=>$v){
|
|
||||||
if($v['wxid'] == $sender){
|
|
||||||
$ac = $v['name'];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
if($this->redis->get('Check_channel_account-'.$channel['id'])){
|
||||||
|
$count_sum ++;
|
||||||
|
|
||||||
$this->redis->set('Check_merchant_account-TOP-'.$merchants['id'],1);
|
$this->redis->delete('Check_channel_account-'.$channel['id']);
|
||||||
$RobotService->send_text('余额预警: 您的账户现在只剩下'.$Monitor_Balance.'元,已经严重不足,请关注账户, @'.$ac,$roomid,$sender);
|
$tip_info[] = $channel['name']."<font color=\"comment\">余额已经恢复,现在余额为</font>:<font color=\"info\">".$balance."</font>";
|
||||||
}
|
|
||||||
}
|
|
||||||
}else{
|
|
||||||
if($this->redis->get('Check_merchant_account-'.$merchants['id'])){
|
|
||||||
$AllContacts = $RobotService->get_all_contacts();
|
|
||||||
$Contacts_array = json_decode($AllContacts,true);
|
|
||||||
$acc = $Contacts_array['data']['contacts'];
|
|
||||||
$ac = '';
|
|
||||||
foreach ($acc as $k=>$v){
|
|
||||||
if($v['wxid'] == $sender){
|
|
||||||
$ac = $v['name'];
|
|
||||||
}
|
}
|
||||||
|
if($this->redis->get('Check_channel_account_TOP-'.$channel['id'])){
|
||||||
|
$this->redis->delete('Check_channel_account_TOP-'.$channel['id']);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
$this->redis->del('Check_merchant_account-'.$merchants['id']);
|
|
||||||
$RobotService->send_text('余额预警: 您的账户已经恢复正常,现在余额为'.$merchants['account_surplus'].'元,请关注账户, @'.$ac,$roomid,$sender);
|
|
||||||
}
|
|
||||||
if($this->redis->get('Check_merchant_account-TOP-'.$merchants['id'])){
|
|
||||||
$this->redis->del('Check_merchant_account-TOP-'.$merchants['id']);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}catch (\Exception $e){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(!empty($tip_info)){
|
||||||
|
$errorMsg = "渠道余额监控预警<font color=\"warning\">".$count_sum ."列</font>,请相关同事注意。\n
|
||||||
|
>";
|
||||||
|
$errorMsg .= implode(">", $tip_info);
|
||||||
|
$errorMsgs =$RobotService->send_markdown($errorMsg,$key);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
var_dump($errorMsgs);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
131
app/queue/command/monitor/ChannelBalanceMonitor.php
Normal file
131
app/queue/command/monitor/ChannelBalanceMonitor.php
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace app\queue\command\monitor;
|
||||||
|
|
||||||
|
use app\channel\service\ChannelService;
|
||||||
|
use app\gateway\service\RedisService;
|
||||||
|
use app\robot\controller\WxWorkBot;
|
||||||
|
use think\admin\Command;
|
||||||
|
use think\console\Input;
|
||||||
|
use think\console\Output;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 渠道余额监控预警
|
||||||
|
* Class ChannelBalanceMonitor
|
||||||
|
* @package app\data\command
|
||||||
|
*/
|
||||||
|
class ChannelBalanceMonitor extends Command
|
||||||
|
{
|
||||||
|
protected $redis = false;
|
||||||
|
|
||||||
|
protected function configure()
|
||||||
|
{
|
||||||
|
$this->setName('xQueue:ChannelBalanceMonitor')->setDescription('[ 监控系统 ] 渠道余额监控预警');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param Input $input
|
||||||
|
* @param Output $output
|
||||||
|
* @throws \think\admin\Exception
|
||||||
|
*/
|
||||||
|
protected function execute(Input $input, Output $output)
|
||||||
|
{
|
||||||
|
ini_set('memory_limit', '1024M');
|
||||||
|
$this->redis();
|
||||||
|
|
||||||
|
$channelService = ChannelService::instance();
|
||||||
|
$RobotService = new WxWorkBot($this->app);
|
||||||
|
$channelList = $channelService->db()->where(['status'=>1])->whereLike('other_data','%Monitor_Balance_status%')->select()->toArray();
|
||||||
|
if(!$channelList) $this->setQueueSuccess("未找到支持监控余额的渠道");
|
||||||
|
|
||||||
|
$channelList_num = count($channelList);
|
||||||
|
$count_sum = 0;
|
||||||
|
|
||||||
|
$day = date('Y-m-d', strtotime('-1 day'));
|
||||||
|
|
||||||
|
$tip_info=[];
|
||||||
|
$key = '41b42bd4-c9f9-4617-9531-0a358dd97a82';
|
||||||
|
|
||||||
|
|
||||||
|
foreach($channelList as $channel) {
|
||||||
|
$other_param = json_decode($channel['other_data'],true);
|
||||||
|
if(!$other_param){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
$Monitor_Balance = $other_param['Monitor_Balance'] ?? null;
|
||||||
|
if(!$Monitor_Balance){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
try{
|
||||||
|
$account_data = $channelService->call('account', $channel['id'], $day);
|
||||||
|
|
||||||
|
if (is_array($account_data) && isset($account_data['account'])) {
|
||||||
|
$balance = $account_data['account'];
|
||||||
|
if( $balance <= $Monitor_Balance){
|
||||||
|
|
||||||
|
if(!$this->redis->get('Check_channel_account-'.$channel['id'])){
|
||||||
|
$count_sum ++;
|
||||||
|
$this->redis->set('Check_channel_account-'.$channel['id'],1);
|
||||||
|
$tip_info[] = $channel['name']."<font color=\"comment\">余额不足,只剩下</font>:<font color=\"info\">".$balance."</font>";
|
||||||
|
|
||||||
|
}
|
||||||
|
$Monitor_Balance_TOP = $other_param['Monitor_Balance_TOP'] ?? null;
|
||||||
|
if($Monitor_Balance_TOP && $balance <= $Monitor_Balance_TOP){
|
||||||
|
if(!$this->redis->get('Check_channel_account_TOP-'.$channel['id'])){
|
||||||
|
$count_sum ++;
|
||||||
|
$this->redis->set('Check_channel_account_TOP-'.$channel['id'],1);
|
||||||
|
$tip_info[] = $channel['name']."<font color=\"comment\">余额不足,只剩下</font>:<font color=\"info\">".$balance."</font>";
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
if($this->redis->get('Check_channel_account-'.$channel['id'])){
|
||||||
|
$count_sum ++;
|
||||||
|
|
||||||
|
$this->redis->delete('Check_channel_account-'.$channel['id']);
|
||||||
|
$tip_info[] = $channel['name']."<font color=\"comment\">余额已经恢复,现在余额为</font>:<font color=\"info\">".$balance."</font>";
|
||||||
|
}
|
||||||
|
if($this->redis->get('Check_channel_account_TOP-'.$channel['id'])){
|
||||||
|
$this->redis->delete('Check_channel_account_TOP-'.$channel['id']);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}catch (\Exception $e){
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!empty($tip_info)){
|
||||||
|
$errorMsg = "渠道余额监控预警<font color=\"warning\">".$count_sum ."列</font>,请相关同事注意。\n
|
||||||
|
>";
|
||||||
|
$errorMsg .= implode(">", $tip_info);
|
||||||
|
$RobotService->send_markdown($errorMsg,$key);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$this->setQueueSuccess("共处理 {$channelList_num} 个渠道, 完成{$count_sum} 个查询处理!");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function redis()
|
||||||
|
{
|
||||||
|
if (!$this->redis) {
|
||||||
|
$this->redis = RedisService::getInstance();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -58,7 +58,7 @@ class MerchantBalanceMonitor extends Command
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
$count_sum ++;
|
|
||||||
|
|
||||||
|
|
||||||
if($merchants['account_surplus'] <= $Monitor_Balance){
|
if($merchants['account_surplus'] <= $Monitor_Balance){
|
||||||
@ -66,6 +66,7 @@ class MerchantBalanceMonitor extends Command
|
|||||||
#进入预警流程
|
#进入预警流程
|
||||||
#设置redis,根据mid设置redis,
|
#设置redis,根据mid设置redis,
|
||||||
if(!$this->redis->get('Check_merchant_account-'.$merchants['id'])){
|
if(!$this->redis->get('Check_merchant_account-'.$merchants['id'])){
|
||||||
|
$count_sum ++;
|
||||||
$AllContacts = $RobotService->get_all_contacts();
|
$AllContacts = $RobotService->get_all_contacts();
|
||||||
$Contacts_array = json_decode($AllContacts,true);
|
$Contacts_array = json_decode($AllContacts,true);
|
||||||
$acc = $Contacts_array['data']['contacts'];
|
$acc = $Contacts_array['data']['contacts'];
|
||||||
@ -81,6 +82,7 @@ class MerchantBalanceMonitor extends Command
|
|||||||
}
|
}
|
||||||
if($merchants['account_surplus'] <= 500){
|
if($merchants['account_surplus'] <= 500){
|
||||||
if(!$this->redis->get('Check_merchant_account-TOP-'.$merchants['id'])){
|
if(!$this->redis->get('Check_merchant_account-TOP-'.$merchants['id'])){
|
||||||
|
$count_sum ++;
|
||||||
if(!isset($ac)){
|
if(!isset($ac)){
|
||||||
$AllContacts = $RobotService->get_all_contacts();
|
$AllContacts = $RobotService->get_all_contacts();
|
||||||
$Contacts_array = json_decode($AllContacts,true);
|
$Contacts_array = json_decode($AllContacts,true);
|
||||||
@ -100,6 +102,7 @@ class MerchantBalanceMonitor extends Command
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
if($this->redis->get('Check_merchant_account-'.$merchants['id'])){
|
if($this->redis->get('Check_merchant_account-'.$merchants['id'])){
|
||||||
|
$count_sum ++;
|
||||||
$AllContacts = $RobotService->get_all_contacts();
|
$AllContacts = $RobotService->get_all_contacts();
|
||||||
$Contacts_array = json_decode($AllContacts,true);
|
$Contacts_array = json_decode($AllContacts,true);
|
||||||
$acc = $Contacts_array['data']['contacts'];
|
$acc = $Contacts_array['data']['contacts'];
|
||||||
@ -109,18 +112,19 @@ class MerchantBalanceMonitor extends Command
|
|||||||
$ac = $v['name'];
|
$ac = $v['name'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$this->redis->del('Check_merchant_account-'.$merchants['id']);
|
$this->redis->delete('Check_merchant_account-'.$merchants['id']);
|
||||||
$RobotService->send_text('余额预警: 您的账户已经恢复正常,现在余额为'.$merchants['account_surplus'].'元,请关注账户, @'.$ac,$roomid,$sender);
|
$RobotService->send_text('余额预警: 您的账户已经恢复正常,现在余额为'.$merchants['account_surplus'].'元,请关注账户, @'.$ac,$roomid,$sender);
|
||||||
}
|
}
|
||||||
if($this->redis->get('Check_merchant_account-TOP-'.$merchants['id'])){
|
if($this->redis->get('Check_merchant_account-TOP-'.$merchants['id'])){
|
||||||
$this->redis->del('Check_merchant_account-TOP-'.$merchants['id']);
|
$count_sum ++;
|
||||||
|
$this->redis->delete('Check_merchant_account-TOP-'.$merchants['id']);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
$this->setQueueSuccess("共处理 {$merchantsList_num} 个商家, 完成{$count_sum} 个订单查询新状态更新!");
|
$this->setQueueSuccess("共处理 {$merchantsList_num} 个商家, 完成{$count_sum} 个查询处理!");
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -34,6 +34,7 @@ if ($app->request->isCli()) {
|
|||||||
$console->addCommand(\app\queue\command\taobao\TaobaoFailOrderSecondNotify::class);
|
$console->addCommand(\app\queue\command\taobao\TaobaoFailOrderSecondNotify::class);
|
||||||
#监控
|
#监控
|
||||||
$console->addCommand(\app\queue\command\monitor\MerchantBalanceMonitor::class);
|
$console->addCommand(\app\queue\command\monitor\MerchantBalanceMonitor::class);
|
||||||
|
$console->addCommand(\app\queue\command\monitor\ChannelBalanceMonitor::class);
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
128
app/robot/controller/WxWorkBot.php
Normal file
128
app/robot/controller/WxWorkBot.php
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace app\robot\controller;
|
||||||
|
|
||||||
|
|
||||||
|
use app\gateway\service\CurlService;
|
||||||
|
use think\admin\Controller;
|
||||||
|
|
||||||
|
|
||||||
|
#微信机器人 #
|
||||||
|
class WxWorkBot extends Controller
|
||||||
|
{
|
||||||
|
protected array $status_map=array(
|
||||||
|
-1=>'暂无订单',
|
||||||
|
-2=>'暂无卡密',
|
||||||
|
1=>'成功'
|
||||||
|
);
|
||||||
|
|
||||||
|
protected string $host = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send';
|
||||||
|
|
||||||
|
|
||||||
|
public function initialize(): void
|
||||||
|
{
|
||||||
|
#47609e509f946ecbfdba27f16db341c4
|
||||||
|
|
||||||
|
parent::initialize();
|
||||||
|
|
||||||
|
#获取wechat信息
|
||||||
|
$this->key='47609e509f946ecbfdba27f16db341c4';
|
||||||
|
}
|
||||||
|
|
||||||
|
#发送文本
|
||||||
|
public function send_text($content,$key = false,$receiver = false)
|
||||||
|
{
|
||||||
|
$text = [
|
||||||
|
'content' =>$content,
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
if($receiver){
|
||||||
|
$text['mentioned_mobile_list'] = $receiver;
|
||||||
|
}
|
||||||
|
$request = [
|
||||||
|
'msgtype'=>'text',
|
||||||
|
'text'=>$text
|
||||||
|
];
|
||||||
|
|
||||||
|
$url = $this->host.'?key='.$this->key;
|
||||||
|
if($key){
|
||||||
|
$url = $this->host.'?key='.$key;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->curl('post', $url,$request,true);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#发送markdown
|
||||||
|
|
||||||
|
public function send_markdown($content,$key = false)
|
||||||
|
{
|
||||||
|
$markdown = [
|
||||||
|
'content' =>$content,
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
$request = [
|
||||||
|
'msgtype'=>'markdown',
|
||||||
|
'markdown'=>$markdown
|
||||||
|
];
|
||||||
|
$url = $this->host.'?key='.$this->key;
|
||||||
|
if($key){
|
||||||
|
$url = $this->host.'?key='.$key;
|
||||||
|
}
|
||||||
|
// var_dump($request);die;
|
||||||
|
|
||||||
|
return $this->send_post($url,$request,'POST');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
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('WxWork', $type, $data);
|
||||||
|
// \dever\Log::write('jingdong', $type, $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user