BookOrderStatistical.php 798 B

123456789101112131415161718192021222324
  1. <?php
  2. namespace App\Modules\Book\Models;
  3. use Illuminate\Database\Eloquent\Model;
  4. use DB;
  5. class BookOrderStatistical extends Model
  6. {
  7. protected $table = 'book_order_statistical';
  8. public static function getTopSaleBooks($start_time,$end_time,array $on_shelf,$limit=10){
  9. return self::join('book_configs','book_order_statistical.bid','=','book_configs.bid')
  10. ->select('book_order_statistical.bid')
  11. ->whereIn('book_configs.is_on_shelf',$on_shelf)
  12. ->where('book_order_statistical.day','>=',$start_time)
  13. ->where('book_order_statistical.day','<=',$end_time)
  14. ->groupBy('book_order_statistical.bid')
  15. ->orderBy(DB::raw('sum(book_order_statistical.fee)'),'desc')
  16. ->limit($limit)
  17. ->get();
  18. }
  19. }