HealthyOrder.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. namespace app\admin\model;
  3. use support\Db;
  4. use support\Model;
  5. /**
  6. * 健康订单
  7. * Class Users
  8. * @package app\admin\model
  9. */
  10. class HealthyOrder extends Model
  11. {
  12. /**
  13. *
  14. * The table associated with the model.
  15. *
  16. * @var string
  17. */
  18. protected $table = 'healthy_order';
  19. public $timestamps = false;
  20. /**
  21. * Notes:获取订单列表
  22. * @param string $keywords
  23. * @param int $page
  24. * @param int $limit
  25. * @return array
  26. * User: YCP
  27. * Date: 2022/11/4
  28. */
  29. public static function getOrderList(int $page, int $limit,$keywords)
  30. {
  31. $list = static::select('*')
  32. ->with(['User','Shop','HealthyOrderProduct'])
  33. ->when($keywords != '', function ($query) use ($keywords){
  34. $query->where('order_sn', 'like', '%' . $keywords . '%');
  35. })
  36. ->orderBy('order_create_time','DESC')
  37. ->forPage($page, $limit)
  38. ->get();
  39. $count = static::when($keywords != '', function ($query) use ($keywords){
  40. $query->where('order_sn', 'like', '%' . $keywords . '%');
  41. })
  42. ->count();
  43. return [$list, $count];
  44. }
  45. //关联用户
  46. public function User(){
  47. return $this->belongsTo(User::class,'order_user_id','user_id');
  48. }
  49. //关联店铺
  50. public function Shop(){
  51. return $this->belongsTo(MerchantShop::class,'order_shop_id','shop_id');
  52. }
  53. //关联商品信息
  54. public function HealthyOrderProduct(){
  55. return $this->hasMany(HealthyOrderProduct::class,'order_product_order_id','order_id');
  56. }
  57. //时间格式
  58. public function getOrderCreateTimeAttribute($value)
  59. {
  60. return date('Y-m-d H:i:s', $value);
  61. }
  62. }