wzq 5 éve
szülő
commit
924753378b

+ 28 - 0
app/Http/Controllers/Post/PostController.php

@@ -11,6 +11,7 @@ namespace App\Http\Controllers\Post;
 use App\Repositories\Post\PostRepository;
 use App\Repositories\Post\PostRepository;
 use App\Transformers\Post\CommentTransformer;
 use App\Transformers\Post\CommentTransformer;
 use App\Transformers\Post\DetailTransformer;
 use App\Transformers\Post\DetailTransformer;
+use App\Transformers\Post\LogTransformer;
 use App\Transformers\Post\PostTransformer;
 use App\Transformers\Post\PostTransformer;
 use Illuminate\Http\Request;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Validator;
 use Illuminate\Support\Facades\Validator;
@@ -233,4 +234,31 @@ class PostController extends Controller
         return  $this->postRepository->hide($request->all());
         return  $this->postRepository->hide($request->all());
     }
     }
 
 
+    /**
+     * 日志列表
+     */
+    public function log(Request $request)
+    {
+        $commentList = $this->postRepository->log($request->all());
+        $fractal = new Manager();
+        $resource = new Collection($commentList, new LogTransformer());
+        $resource->setPaginator(new IlluminatePaginatorAdapter($commentList));
+        $data = $fractal->createData($resource)->toArray();
+
+        $data['extra'] = [
+            'filters' => [
+                'log_type',
+                'created_at',
+            ],
+            'columns' => [
+                'id',
+                'username',
+                'log_type',
+                'created_at',
+                'content',
+            ]
+        ];
+        return $data;
+    }
+
 }
 }

+ 28 - 4
app/Repositories/Post/PostRepository.php

@@ -165,20 +165,21 @@ class PostRepository
         $content = '';
         $content = '';
         if($request['add_pv']){
         if($request['add_pv']){
             $postData->pv += $request['add_pv'];
             $postData->pv += $request['add_pv'];
-            $content .= '浏览数增加'.$request['add_pv'].'';
+            $content .= '浏览数增加'.$request['add_pv'].'';
         }
         }
         if($request['add_praise_count']){
         if($request['add_praise_count']){
             $postData->praise_count += $request['add_praise_count'];
             $postData->praise_count += $request['add_praise_count'];
-            $content .= '点赞数增加'.$request['add_praise_count'].'';
+            $content .= '点赞数增加'.$request['add_praise_count'].'';
         }
         }
         if($request['add_collect_count']){
         if($request['add_collect_count']){
             $postData->collect_count += $request['add_collect_count'];
             $postData->collect_count += $request['add_collect_count'];
-            $content .= '收藏数增加'.$request['add_collect_count'].'';
+            $content .= '收藏数增加'.$request['add_collect_count'].'';
         }
         }
         if($request['add_share_count']){
         if($request['add_share_count']){
             $postData->share_count += $request['add_share_count'];
             $postData->share_count += $request['add_share_count'];
-            $content .= '分享数增加'.$request['add_share_count'].';';
+            $content .= '分享数增加'.$request['add_share_count'];
         }
         }
+        $content = rtrim($content, '、');
         DB::beginTransaction();
         DB::beginTransaction();
         try{
         try{
             $postData->save();
             $postData->save();
@@ -491,4 +492,27 @@ class PostRepository
         }
         }
     }
     }
 
 
+    /**
+     * 日志列表
+     */
+    public function log($request)
+    {
+        $perPage = isset($request['per_page']) ? $request['per_page'] : 20;
+        $where = [];
+        if(isset($request['log_type'])){
+            $where[] = ['log_type', $request['log_type']];
+        }
+
+        return $this->postLog
+            ->where($where)
+            ->where(function($query) use ($request){
+                if(isset($request['created_at'])){
+                    $time = explode('_', $request['created_at']);
+                    $query->whereBetween('created_at', $time);
+                }
+            })
+            ->orderBy('id','desc')
+            ->paginate($perPage);
+    }
+
 }
 }

+ 26 - 0
app/Transformers/Post/LogTransformer.php

@@ -0,0 +1,26 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: Administrator
+ * Date: 2019/6/10
+ * Time: 17:21
+ */
+
+namespace App\Transformers\Post;
+use App\Models\PostLog;
+use Illuminate\Support\Carbon;
+use League\Fractal\TransformerAbstract;
+
+class LogTransformer extends TransformerAbstract
+{
+    public function transform(PostLog $postLog)
+    {
+        return [
+            'id' => $postLog['id'],
+            'username' => $postLog['username'],
+            'log_type' => $postLog['log_type'],
+            'created_at' => Carbon::parse($postLog['created_at'])->toDateTimeString(),
+            'content' => $postLog['content'],
+        ];
+    }
+}

+ 3 - 0
routes/api.php

@@ -45,6 +45,9 @@ $api->version('v1', [
             //删除评论
             //删除评论
             $api->delete('post/comment/delete', 'PostController@commentDelete');
             $api->delete('post/comment/delete', 'PostController@commentDelete');
 
 
+            //日志列表
+            $api->get('post/log', 'PostController@log');
+
         });
         });
     });
     });
 });
 });