Jelajahi Sumber

'订单接口新增公众号强关open_id'

lh 3 tahun lalu
induk
melakukan
0fdc4366de

+ 4 - 0
src/Controllers/CompanyAuth/AppController.php

@@ -244,6 +244,10 @@ class AppController extends Controller
         } else {
             $service = new OrderService;
             $result = $service->companyAuthOrders(compact('channel_id', 'status', 'begin_date', 'end_date'));
+            $app_id = $request->get('app_id', '');
+            foreach ($result->items() as $k => $v) {
+                $result->items()[$k]->app_id = $app_id;
+            }
             return response()->pagination(new OrderTransformer, $result);
         }
     }

+ 3 - 0
src/Controllers/CompanyAuth/Transformers/OrderTransformer.php

@@ -11,11 +11,13 @@ namespace General\Controllers\CompanyAuth\Transformers;
 use General\Helpers\CommonHelper;
 use General\Models\OfficialAccount\WechatKeywordMsgs;
 use General\Models\Order\Order;
+use Illuminate\Support\Facades\DB;
 
 class OrderTransformer
 {
     public function transform($item)
     {
+        $subscribe_open_id = DB::connection('mysql')->table('user_openids')->where('uid', '=', $item->uid)->where('appid', '=', $item->app_id)->value('openid');
         return [
             'uid' => $item->uid,
             'price' => (float) $item->price,
@@ -39,6 +41,7 @@ class OrderTransformer
             'app_id' => $item->user && $item->user->force_subscribe_user ? $item->user->force_subscribe_user->appid : '',
             'opend_id' => $item->user && $item->user->force_subscribe_user ? $item->user->force_subscribe_user->openid : '',
             'register_open_id' => $item->user ? $item->user->openid : '',
+            'subscribe_open_id' => !empty($subscribe_open_id) ? $subscribe_open_id : '',
             'subscribe_time' => $item->user && $item->user->force_subscribe_user ? $item->user->force_subscribe_user->subscribe_time : '',
             'wechat_name' => $item->user && $item->user->force_subscribe_user && $item->user->force_subscribe_user->official_account ? $item->user->force_subscribe_user->official_account->nickname : '',
         ];