Parcourir la source

wesmiler 报恩寺项目提交

wesmiler il y a 4 ans
Parent
commit
cca8122d16

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

@@ -107,4 +107,12 @@ class DynamicController extends BaseController
 
         return $this->service->publish($this->userId);
     }
+
+    /**
+     * 动态通知
+     * @return mixed
+     */
+    public function notice(){
+        return $this->service->notice($this->userId);
+    }
 }

+ 39 - 0
app/Models/DynamicNoticeModel.php

@@ -0,0 +1,39 @@
+<?php
+// +----------------------------------------------------------------------
+// | Laravel框架 [ Laravel ]
+// +----------------------------------------------------------------------
+// | 版权所有 2017~2021 Laravel研发中心
+// +----------------------------------------------------------------------
+// | 官方网站: http://www.laravel.cn
+// +----------------------------------------------------------------------
+// | Author: wesmiler <12345678@qq.com>
+// +----------------------------------------------------------------------
+
+namespace App\Models;
+
+/**
+ * 动态通知管理-模型
+ * @author wesmiler
+ * @since 2020/11/11
+ * Class DynamicNoticeModel
+ * @package App\Models
+ */
+class DynamicNoticeModel extends BaseModel
+{
+    // 设置数据表
+    protected $table = 'dynamic_notice';
+
+    /**
+     * 获取记录信息
+     * @param int $id 记录ID
+     * @return array|string
+     * @author wesmiler
+     * @since 2020/11/11
+     */
+    public function getInfo($id)
+    {
+        $info = parent::getInfo($id); // TODO: Change the autogenerated stub
+        return $info;
+    }
+
+}

+ 29 - 1
app/Services/DynamicService.php

@@ -15,6 +15,7 @@ use App\Models\ArticleModel;
 use App\Models\CollectModel;
 use App\Models\DynamicCommentModel;
 use App\Models\DynamicModel;
+use App\Models\DynamicNoticeModel;
 use App\Models\FollowModel;
 use App\Models\MemberModel;
 
@@ -25,7 +26,7 @@ use App\Models\MemberModel;
  * Class DynamicService
  * @package App\Services
  */
-class DynamicService extends BaseService
+class DynamicService extends BaseServiceti
 {
     protected static $instance = null;
     /**
@@ -365,4 +366,31 @@ class DynamicService extends BaseService
 
         return message('发布失败', false);
     }
+
+    /**
+     * 动态通知
+     * @return array
+     */
+    public function notice(){
+        $page = isset($params['pageSize']) ? intval($params['pageSize']) : PAGE;
+        $pageSize = isset($params['pageSize']) ? intval($params['pageSize']) : PERPAGE;
+        $dataList = DynamicNoticeModel::from('dynamic_notice as dn')
+            ->leftJoin('member as m','m.id','=','dn.user_id')
+            ->where(['dn.mark'=> 1,'dn.status'=> 1,'m.mark'=> 1,'m.status'=> 1])
+            ->where('m.id','>', 0)
+            ->select('dn.id','dn.user_id','dn.remark','dn.create_time','m.avatar','m.nickname')
+            ->orderBy('dn.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['create_time'] = $item['create_time']? datetime($item['create_time'],'Y-m-d H:i:s') : '';
+                $item['time_text'] = $item['create_time']? format_time(strtotime($item['create_time'])) : '';
+            }
+        }
+
+        return message(1005, true, $dataList);
+    }
 }

+ 1 - 0
routes/api.php

@@ -124,6 +124,7 @@ Route::post('/trades/info', [\App\Http\Controllers\Api\v1\TradeController::class
 // 动态
 Route::post('/dynamic/list', [\App\Http\Controllers\Api\v1\DynamicController::class, 'index']);
 Route::post('/dynamic/myList', [\App\Http\Controllers\Api\v1\DynamicController::class, 'myList']);
+Route::post('/dynamic/notice', [\App\Http\Controllers\Api\v1\DynamicController::class, 'notice']);
 Route::post('/dynamic/comment', [\App\Http\Controllers\Api\v1\DynamicController::class, 'comment']);
 Route::post('/dynamic/commentList', [\App\Http\Controllers\Api\v1\DynamicController::class, 'commentList']);
 Route::post('/dynamic/info', [\App\Http\Controllers\Api\v1\DynamicController::class, 'info']);