|
@@ -266,7 +266,7 @@ class UserService
|
|
|
// 扔用户一些动作到队列,异步处理一些额外逻辑
|
|
|
static function PushUserActionToQueue($action_type,$distribution_channel_id,$param){
|
|
|
try{
|
|
|
-// \Log::info('PushUserActionToQueue_param_start:'.$distribution_channel_id.' action_type:'.$action_type. ' param:'.json_encode($param));
|
|
|
+// \Log::info('PushUserActionToQueue_param_start:'.$distribution_channel_id.' action_type:'.$action_type. ' param:'.json_encode($param));
|
|
|
|
|
|
// 判断站点是否需要额外逻辑
|
|
|
$distribution_self_define_config = DistributionSelfDefineConfig::getDistributionSelfDefineConfig($distribution_channel_id,'action_call_ycsd');
|
|
@@ -288,49 +288,66 @@ class UserService
|
|
|
if($action_type == 'CallBackOrder'){
|
|
|
$order = Order::getByTradeNo($distribution_channel_id, $param['order_sn']);
|
|
|
if(isset($order->pay_merchant_id) && $order->pay_merchant_id == $pay_merchant_id){
|
|
|
- \Log::info('action_call_ycsd_old_order_continue:'.$param['order_sn']);
|
|
|
+ \Log::info('action_call_ycsd_old_order_continue:'.$param['order_sn']);
|
|
|
}else{
|
|
|
- \Log::info('action_call_ycsd_has_change_pay_return:'.$distribution_channel_id);
|
|
|
+ \Log::info('action_call_ycsd_has_change_pay_return:'.$distribution_channel_id);
|
|
|
return '';
|
|
|
- }
|
|
|
+ }
|
|
|
}else{
|
|
|
- \Log::info('action_call_ycsd_has_change_pay_return:'.$distribution_channel_id);
|
|
|
+ \Log::info('action_call_ycsd_has_change_pay_return:'.$distribution_channel_id);
|
|
|
return '';
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
\Log::info('action_call_ycsd:'.$distribution_channel_id);
|
|
|
}
|
|
|
-
|
|
|
- $data = [];
|
|
|
- $data['send_time'] = date("Y-m-d H:i:s");
|
|
|
- $data['action_type'] = $action_type;
|
|
|
- if($action_type == 'Register'){
|
|
|
- $data['openid'] = $param['openid'];
|
|
|
- $data['uid'] = $param['uid'];
|
|
|
- }elseif($action_type == 'CreateOrder'){
|
|
|
- $data['orderSn'] = $param['order_sn'];
|
|
|
- $data['amount'] = $param['amount'];
|
|
|
- $data['openid'] = $param['openid'];
|
|
|
- $data['uid'] = $param['uid'];
|
|
|
- }elseif($action_type == 'CallBackOrder'){
|
|
|
+
|
|
|
+ $data = [];
|
|
|
+ $data['send_time'] = date("Y-m-d H:i:s");
|
|
|
+ $data['action_type'] = $action_type;
|
|
|
+ if($action_type == 'Register'){
|
|
|
+ $data['openid'] = $param['openid'];
|
|
|
+ $data['uid'] = $param['uid'];
|
|
|
+ }elseif($action_type == 'CreateOrder'){
|
|
|
+ $data['orderSn'] = $param['order_sn'];
|
|
|
+ $data['amount'] = $param['amount'];
|
|
|
+ $data['openid'] = $param['openid'];
|
|
|
+ $data['uid'] = $param['uid'];
|
|
|
+ }elseif($action_type == 'CallBackOrder'){
|
|
|
$data['orderSn'] = $param['order_sn'];
|
|
|
- $data['openid'] = $param['openid'];
|
|
|
- }
|
|
|
-
|
|
|
- $send_data=array(
|
|
|
- 'send_time'=>date("Y-m-d H:i:s"),
|
|
|
- 'data' => $data
|
|
|
- );
|
|
|
+ $data['openid'] = $param['openid'];
|
|
|
+ }
|
|
|
+
|
|
|
+ $send_data=array(
|
|
|
+ 'send_time'=>date("Y-m-d H:i:s"),
|
|
|
+ 'data' => $data
|
|
|
+ );
|
|
|
\Log::info('PushUserActionToQueue_openid:'.$data['openid'].' action_type:'.$action_type);
|
|
|
- \Log::info('$send_data');\Log::info($send_data);
|
|
|
-
|
|
|
- $delay = 0;
|
|
|
-
|
|
|
- $job = (new ActionTrigger($send_data))->onConnection('rabbitmq')->delay($delay)->onQueue('action_trigger_list');
|
|
|
+ \Log::info('$send_data');\Log::info($send_data);
|
|
|
+
|
|
|
+ $delay = 0;
|
|
|
+
|
|
|
+ $job = (new ActionTrigger($send_data))->onConnection('rabbitmq')->delay($delay)->onQueue('action_trigger_list');
|
|
|
dispatch($job);
|
|
|
}catch(\Exception $e){
|
|
|
\Log::info('ept:'.$e->getMessage());
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ public static function isCpcUser($uid){
|
|
|
+ //openid下所有强关超过三天的uid都无充值,对强关后的uid进行曝光
|
|
|
+ $sql_format = "SELECT u.id,f.subscribe_time,(SELECT id from orders where uid = u.id and `status` = 'PAID' LIMIT 1)as oid FROM users u
|
|
|
+JOIN force_subscribe_users f on u.id = f.uid and f.is_subscribed= 1
|
|
|
+WHERE u.openid in (SELECT openid from users WHERE id = %s)";
|
|
|
+ $result = DB::select(sprintf($sql_format,$uid));
|
|
|
+ if(!$result) return false;
|
|
|
+
|
|
|
+ foreach ($result as $item){
|
|
|
+ //有充值
|
|
|
+ if($item->oid) return false;
|
|
|
+ //强关没超过超过三天
|
|
|
+ if(time()-strtotime($item->subscribe_time) < 86400*3) return false;
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ }
|
|
|
}
|