123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- /**
- * Created by PhpStorm.
- * User: z-yang
- * Date: 2019/1/29
- * Time: 17:26
- */
- namespace App\Modules\Book\Services;
- use App\Modules\Book\Models\BookUrgeUpdate;
- use DB;
- class BookUrgeUpdateService
- {
- public static function UrgeRecord($uid,$bid){
- return BookUrgeUpdate::rightJoin('books',function ($join)use($uid){
- $join->on('books.id','=','book_urge_update.bid')
- ->where('book_urge_update.uid','=',$uid)
- ->whereColumn('book_urge_update.last_update_time','=','books.updated_at');
- })
- ->select('books.updated_at','book_urge_update.id')
- ->where('books.id',$bid)
- ->first();
- }
- public static function isHadUrged($uid,$bid){
- $result = self::UrgeRecord($uid,$bid);
- if($result && $result->id){
- return true;
- }
- return false;
- }
- public static function UrgeUpdate($uid,$bid,$time){
- $data = [
- 'uid'=>$uid,
- 'bid'=>$bid,
- 'last_update_time'=>$time
- ];
- return BookUrgeUpdate::create($data);
- }
- public static function getUrgeUpdateRecord(){
- return BookUrgeUpdate::join('book_configs','book_urge_update.bid','=','book_configs.bid')
- ->select(DB::raw('count(*) as uv,book_urge_update.bid,book_urge_update.last_update_time'),'book_configs.book_name')
- ->orderBy('book_urge_update.last_update_time','desc')
- ->groupBy('book_urge_update.last_update_time')
- ->groupBy('book_urge_update.bid')
- ->paginate(30);
- }
- }
|