瀏覽代碼

read record

zz 3 年之前
父節點
當前提交
6582c51664

+ 9 - 2
app/Http/Controllers/QuickApp/User/UserShelfBooksController.php

@@ -63,9 +63,12 @@ class UserShelfBooksController extends BaseController
         foreach ($record as $item){
             $bids[] = $item['bid'];
         }
-        $book_infos = BookConfigService::getBookByField($bids,['bid','cover']);
+        $book_infos = BookConfigService::getBookByField($bids,
+            ['bid','book_configs.cover','books.author','books.status','books.size','books.intro']);
         $cover = [];
+        $book_base_info = [];
         foreach ($book_infos as $book){
+            $book_base_info[$book->bid] = ['cover'=>$book->cover,'author'=>$book->author,'status'=>$book->status,'intro'=>$book->intro];
             $cover[$book->bid] = $book->cover;
         }
 
@@ -75,7 +78,11 @@ class UserShelfBooksController extends BaseController
                 'id'=>0,'uid'=>$this->uid,'bid'=>Hashids::encode($item['bid']),
                 'book_name'=>$item['book_name'],'cover'=>isset($cover[$item['bid']])?$cover[$item['bid']]:'',
                 'first_cid'=>$item['cid'],'last_cid'=>$item['cid'],'last_chapter'=>$item['chapter_name'],
-                'recent_reading_chapter'=>$item['chapter_name'],'recent_cid'=>$item['cid']
+                'recent_reading_chapter'=>$item['chapter_name'],'recent_cid'=>$item['cid'],
+                'intro' => isset($book_base_info[$item['bid']]) ? $book_base_info[$item['bid']]['intro']:'',
+                'author' => isset($book_base_info[$item['bid']]) ? $book_base_info[$item['bid']]['author']:'',
+                'size' => isset($book_base_info[$item['bid']]) ? $book_base_info[$item['bid']]['size']:0,
+                'status' =>isset($book_base_info[$item['bid']]) ? $book_base_info[$item['bid']]['status']:0
             ];
         }
         return response()->success($result);

+ 2 - 1
app/Modules/Book/Services/BookConfigService.php

@@ -219,6 +219,7 @@ class BookConfigService
 
     public static function getBookByField($bids,$field){
         if(!$bids || !$field) return null;
-        return BookConfig::whereIn('bid',$bids)->select($field)->get();
+        return BookConfig::join('books','books.id','=','book_configs.bid')->
+        whereIn('bid',$bids)->select($field)->get();
     }
 }