|
@@ -3,6 +3,8 @@
|
|
namespace App\Modules\Trade\Pay;
|
|
namespace App\Modules\Trade\Pay;
|
|
|
|
|
|
use App\Jobs\QappTikTok\NewQappTikTokUserCharge;
|
|
use App\Jobs\QappTikTok\NewQappTikTokUserCharge;
|
|
|
|
+use App\Jobs\QappTikTok\QappTikTokUserChargeAccount;
|
|
|
|
+use App\Jobs\QappTikTok\QappTikTokUserChargeAccountRequest;
|
|
use App\Jobs\QappTikTok\QappTikTokUserChargeRequest;
|
|
use App\Jobs\QappTikTok\QappTikTokUserChargeRequest;
|
|
use App\Jobs\QappTikTok\QappTikTokUserCharge;
|
|
use App\Jobs\QappTikTok\QappTikTokUserCharge;
|
|
use App\Modules\Book\Models\BookConfig;
|
|
use App\Modules\Book\Models\BookConfig;
|
|
@@ -86,39 +88,12 @@ abstract class PaySuccessAbstract
|
|
protected function addQueue()
|
|
protected function addQueue()
|
|
{
|
|
{
|
|
UserTaskService::addUserTaskQueue($this->order->uid, BaseTask::charge, UserTaskService::judge_trigger);
|
|
UserTaskService::addUserTaskQueue($this->order->uid, BaseTask::charge, UserTaskService::judge_trigger);
|
|
- $bid = ReadRecordService::getSimpleFirstReadRecord($this->order->uid);
|
|
|
|
- $book_id = book_hash_encode($bid);
|
|
|
|
- $book = BookConfig::where('bid', $bid)->select('book_name')->first();
|
|
|
|
- $book_name = $book ? $book->book_name : '';
|
|
|
|
-
|
|
|
|
// 取用户注册的派单id,派单信息
|
|
// 取用户注册的派单id,派单信息
|
|
$user = User::getUser($this->order->uid);
|
|
$user = User::getUser($this->order->uid);
|
|
$sendOrderId = getProp($user, 'send_order_id');
|
|
$sendOrderId = getProp($user, 'send_order_id');
|
|
$quickSendOrder = QappSendOrder::getSendOrderById($sendOrderId);
|
|
$quickSendOrder = QappSendOrder::getSendOrderById($sendOrderId);
|
|
- $reportType = getProp($quickSendOrder, 'report_type');
|
|
|
|
- $reportRate = (int)getProp($quickSendOrder, 'report_rate', 100);
|
|
|
|
-
|
|
|
|
- // 队列处理回传业务
|
|
|
|
- $tikTokChargeRequest = new QappTikTokUserChargeRequest();
|
|
|
|
- $tikTokChargeRequest->uid = $this->order->uid;
|
|
|
|
- $tikTokChargeRequest->amount = $this->order->price;
|
|
|
|
- $tikTokChargeRequest->order_no = $this->order->trade_no;
|
|
|
|
- $tikTokChargeRequest->pay_time = $this->order->created_at;
|
|
|
|
- $tikTokChargeRequest->book_id = $book_id;
|
|
|
|
- $tikTokChargeRequest->book_name = $book_name;
|
|
|
|
- $tikTokChargeRequest->send_order_id = $sendOrderId;
|
|
|
|
-
|
|
|
|
- // 需要跟派单设置的回传类型一致才上报
|
|
|
|
- myLog('qapp_user_charge')->info('addQueue', compact('tikTokChargeRequest'));
|
|
|
|
- $job = new NewQappTikTokUserCharge($tikTokChargeRequest);
|
|
|
|
- $callback_type = getProp($quickSendOrder, 'callback_type');
|
|
|
|
- if ($callback_type == 'cycle_report') {
|
|
|
|
- $cycjob = new CycleCallBack($this->order->trade_no);
|
|
|
|
- dispatch($cycjob->onConnection('redis_queue')->onQueue('{qapp_tiktok_cycle_user_charge_queue}'));
|
|
|
|
- }else{
|
|
|
|
- dispatch($job->onConnection('redis_queue')->onQueue('{qapp_tiktok_user_charge_queue}'));
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
+ $this->handleOrderQueue($quickSendOrder,$sendOrderId);
|
|
|
|
+
|
|
// 同步数据
|
|
// 同步数据
|
|
$this->order->distribution_channel_id = getProp($quickSendOrder, 'distribution_channel_id');
|
|
$this->order->distribution_channel_id = getProp($quickSendOrder, 'distribution_channel_id');
|
|
try {
|
|
try {
|
|
@@ -128,4 +103,63 @@ abstract class PaySuccessAbstract
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ private function handleOrderQueue($quickSendOrder, $sendOrderId)
|
|
|
|
+ {
|
|
|
|
+ $bid = ReadRecordService::getSimpleFirstReadRecord($this->order->uid);
|
|
|
|
+ $book_id = book_hash_encode($bid);
|
|
|
|
+ $book = BookConfig::where('bid', $bid)->select('book_name')->first();
|
|
|
|
+ $book_name = $book ? $book->book_name : '';
|
|
|
|
+
|
|
|
|
+ $return_type = getProp($quickSendOrder, 'return_type'); // tiktok_account 巨量平台账户级; self:派单自身配置的回传配置成
|
|
|
|
+ $reportType = getProp($quickSendOrder, 'report_type');
|
|
|
|
+ $reportRate = (int)getProp($quickSendOrder, 'report_rate', 100);
|
|
|
|
+ // 默认走派单回传配置
|
|
|
|
+ switch ($return_type){
|
|
|
|
+ // 头条账户级回传
|
|
|
|
+ case "tiktok_account":
|
|
|
|
+ $tikTokChargeRequest = new QappTikTokUserChargeAccountRequest();
|
|
|
|
+ $tikTokChargeRequest->uid = $this->order->uid;
|
|
|
|
+ $tikTokChargeRequest->amount = $this->order->price;
|
|
|
|
+ $tikTokChargeRequest->order_no = $this->order->trade_no;
|
|
|
|
+ $tikTokChargeRequest->pay_time = $this->order->created_at;
|
|
|
|
+ $tikTokChargeRequest->book_id = $book_id;
|
|
|
|
+ $tikTokChargeRequest->book_name = $book_name;
|
|
|
|
+ $tikTokChargeRequest->send_order_id = $sendOrderId;
|
|
|
|
+ $tikTokChargeRequest->account = $quickSendOrder->account;
|
|
|
|
+ $tikTokChargeRequest->account_id = DB::table('qapp_channel_accounts')->where('account',$tikTokChargeRequest->account)->value('id');
|
|
|
|
+ myLog('qapp_user_charge')->info('addQueue', compact('tikTokChargeRequest'));
|
|
|
|
+ // 需要跟派单设置的回传类型一致才上报
|
|
|
|
+ $obj = new QappTikTokUserChargeAccount($tikTokChargeRequest);
|
|
|
|
+ dispatch($obj->onConnection('redis_queue')->onQueue('{qapp_tiktok_account_user_charge_queue}'));
|
|
|
|
+
|
|
|
|
+ break;
|
|
|
|
+
|
|
|
|
+ default:
|
|
|
|
+ // 队列处理回传业务
|
|
|
|
+ $tikTokChargeRequest = new QappTikTokUserChargeRequest();
|
|
|
|
+ $tikTokChargeRequest->uid = $this->order->uid;
|
|
|
|
+ $tikTokChargeRequest->amount = $this->order->price;
|
|
|
|
+ $tikTokChargeRequest->order_no = $this->order->trade_no;
|
|
|
|
+ $tikTokChargeRequest->pay_time = $this->order->created_at;
|
|
|
|
+ $tikTokChargeRequest->book_id = $book_id;
|
|
|
|
+ $tikTokChargeRequest->book_name = $book_name;
|
|
|
|
+ $tikTokChargeRequest->send_order_id = $sendOrderId;
|
|
|
|
+
|
|
|
|
+ // 需要跟派单设置的回传类型一致才上报
|
|
|
|
+ myLog('qapp_user_charge')->info('addQueue', compact('tikTokChargeRequest'));
|
|
|
|
+ $job = new NewQappTikTokUserCharge($tikTokChargeRequest);
|
|
|
|
+ $callback_type = getProp($quickSendOrder, 'callback_type');
|
|
|
|
+ if ($callback_type == 'cycle_report') {
|
|
|
|
+ $cycjob = new CycleCallBack($this->order->trade_no);
|
|
|
|
+ dispatch($cycjob->onConnection('redis_queue')->onQueue('{qapp_tiktok_cycle_user_charge_queue}'));
|
|
|
|
+ }else{
|
|
|
|
+ dispatch($job->onConnection('redis_queue')->onQueue('{qapp_tiktok_user_charge_queue}'));
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|