Przeglądaj źródła

wesmiler 报恩寺项目提交

wesmiler 4 lat temu
rodzic
commit
6e1d14c9f4

+ 12 - 0
app/Http/Controllers/Api/v1/ActivityController.php

@@ -4,6 +4,7 @@ namespace App\Http\Controllers\Api\v1;
 
 use App\Http\Controllers\Api\BaseController;
 use App\Http\Validator\ActivityValidator;
+use App\Services\ActivityBooksService;
 use App\Services\ActivityService;
 use Illuminate\Http\Request;
 
@@ -27,6 +28,7 @@ class ActivityController extends BaseController
         parent::__construct();
 
         $this->service = new ActivityService();
+        $this->bookService = new ActivityBooksService();
     }
 
     /**
@@ -51,4 +53,14 @@ class ActivityController extends BaseController
 
         return $this->service->books($this->userId);
     }
+
+    /**
+     * 我的活动
+     * @return array
+     */
+    public function bookList(){
+        $params = request()->all();
+        $params['user_id'] = $this->userId;
+        return $this->bookService->getDataList();
+    }
 }

+ 45 - 0
app/Services/ActivityBooksService.php

@@ -90,6 +90,51 @@ class ActivityBooksService extends BaseService
     }
 
     /**
+     * 获取报名列表
+     * @return array
+     * @since 2020/11/11
+     * @author wesmiler
+     */
+    public function getDataList($params)
+    {
+        $page = isset($params['pageSize']) ? intval($params['pageSize']) : PAGE;
+        $pageSize = isset($params['pageSize']) ? intval($params['pageSize']) : PERPAGE;
+        $userId = isset($params['user_id']) ? intval($params['user_id']) : 0;
+
+        $dataList = $this->model::from('activity_books as b')
+            ->leftJoin('activity as a', 'a.id', '=', 'b.aid')
+            ->leftJoin('member as m', 'm.id', '=', 'b.user_id')
+            ->where(['b.mark'=>1,'a.status'=> 1,'a.user_id'=> $userId])
+            ->select(['b.id', 'b.aid', 'a.title','a.thumb','b.coupon','a.publish_start','a.publish_end','a.price','b.gd_name','a.description', 'b.status', 'b.create_time', 'b.update_time'])
+            ->orderBy('b.update_time', 'desc')
+            ->paginate($pageSize);
+
+        $dataList = $dataList ? $dataList->toArray() : [];
+        if ($dataList) {
+            foreach ($dataList['data'] as &$item) {
+                $item['thumb'] = $item['thumb'] ? get_image_url($item['thumb']) : '';
+                $item['create_time'] = $item['create_time'] ? datetime($item['create_time'],'Y-m-d H:i:s') : '';
+
+                $publishStart = isset($item['publish_start']) && $item['publish_start']? date('m月d日', strtotime($item['publish_start'])) : '';
+                $publishEnd = isset($item['publish_end']) && $item['publish_end']? date('m月d日', strtotime($item['publish_end'])) : '';
+                $item['publish_at'] = $publishStart==$publishEnd? $publishStart : ($publishStart && $publishEnd>$publishStart? $publishStart.'-'.$publishEnd : '');
+                $item['publish_at_text'] = $item['publish_start'] && $item['publish_end']? $item['publish_start'].'至'.$item['publish_end'] : '';
+
+            }
+            unset($item);
+        }
+
+        return [
+            'code' => 0,
+            'success'=> true,
+            'msg' => '操作成功',
+            'count' => isset($dataList['total']) ? $dataList['total'] : 0,
+            'data' => isset($dataList['data']) ? $dataList['data'] : 0,
+        ];
+    }
+
+
+    /**
      * 添加或编辑
      * @return array
      * @since 2020/11/11

+ 1 - 0
app/Services/ActivityService.php

@@ -222,4 +222,5 @@ class ActivityService extends BaseService
         DB::commit();
         return message('活动报名成功', true, ['id'=> $bid]);
     }
+
 }

+ 1 - 0
routes/api.php

@@ -52,6 +52,7 @@ Route::post('/member/sign', [\App\Http\Controllers\Api\v1\MemberController::clas
 Route::post('/member/follow', [\App\Http\Controllers\Api\v1\MemberController::class, 'follow']);
 Route::post('/member/followList', [\App\Http\Controllers\Api\v1\MemberController::class, 'followList']);
 Route::post('/member/gdList', [\App\Http\Controllers\Api\v1\MemberController::class, 'gdList']);
+Route::post('/member/activity', [\App\Http\Controllers\Api\v1\ActivityController::class, 'bookList']);
 Route::post('/member/logout', [\App\Http\Controllers\Api\v1\MemberController::class, 'logout']);
 
 // 资讯收藏