Просмотр исходного кода

wesmiler 报恩寺项目提交

wesmiler 4 лет назад
Родитель
Сommit
5bee4dd327

+ 8 - 0
app/Http/Controllers/Api/v1/EnshrineController.php

@@ -111,6 +111,14 @@ class EnshrineController extends BaseController
     }
 
     /**
+     * 贡品购买记录
+     * @return array
+     */
+    public function orderList(){
+        return $this->service->orderList($this->userId);
+    }
+
+    /**
      * 发布忏悔/回向记录
      * @return mixed
      */

+ 44 - 0
app/Services/EnshrineService.php

@@ -675,6 +675,50 @@ class EnshrineService extends BaseService
             'count' => isset($dataList['total']) ? $dataList['total'] : 0,
             'data' => isset($dataList['data']) ? $dataList['data'] : 0,
         ];
+    }
+
+    /**
+     * 购买记录
+     * @param $userId
+     * @return array
+     */
+    public function orderList($userId)
+    {
+        $params = request()->all();
+        $page = isset($params['pageSize']) ? intval($params['pageSize']) : PAGE;
+        $pageSize = isset($params['pageSize']) ? intval($params['pageSize']) : PERPAGE;
+        $type = isset($params['type']) ? intval($params['type']) : 0;
+        $where = ['a.type' => 3, 'a.mark' => 1,'a.status'=> 2, 'a.user_id' => $userId];
+        if($type){
+            $where['type'] = $type;
+        }
+        $dataList = $this->model::from('enshrine_orders as a')
+            ->leftJoin('member as m', 'm.id', '=', 'a.user_id')
+            ->leftJoin('offerings as g', 'g.id', '=', 'a.goods_id')
+            ->where($where)
+            ->select(['a.*','m.avatar','m.nickname','g.name as goods_name','g.icon'])
+            ->orderBy('a.create_time', 'desc')
+            ->paginate($pageSize);
+
+        $dataList = $dataList ? $dataList->toArray() : [];
+        if ($dataList) {
+            foreach ($dataList['data'] as &$item) {
+                $item['avatar'] = $item['avatar']? get_image_url($item['avatar']) : '';
+                $item['icon'] = $item['icon']? get_image_url($item['icon']) : '';
+                $item['create_time'] = $item['create_time'] ? datetime($item['create_time'], 'Y-m-d H:i:s') : '';
+                $item['time'] = $item['create_time'] ? format_time(strtotime($item['create_time'])) : '';
+                $item['description'] = $item['description'] ? str_replace("\n", '<br>', $item['description']) : '';
+            }
+            unset($item);
+        }
+
+        return [
+            'code' => 0,
+            'success' => true,
+            'msg' => '操作成功',
+            'count' => isset($dataList['total']) ? $dataList['total'] : 0,
+            'data' => isset($dataList['data']) ? $dataList['data'] : 0,
+        ];
 
     }
 

+ 1 - 0
routes/api.php

@@ -166,4 +166,5 @@ Route::post('/enshrine/noticePublish', [\App\Http\Controllers\Api\v1\EnshrineCon
 Route::post('/enshrine/notice', [\App\Http\Controllers\Api\v1\EnshrineController::class, 'notice']);
 Route::post('/enshrine/noticeDel', [\App\Http\Controllers\Api\v1\EnshrineController::class, 'noticeDel']);
 Route::post('/enshrine/chaodu', [\App\Http\Controllers\Api\v1\EnshrineController::class, 'chaodu']);
+Route::post('/enshrine/order', [\App\Http\Controllers\Api\v1\EnshrineController::class, 'orderList']);