RaiseGoodsOrder.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. namespace app\admin\model;
  3. use support\Db;
  4. use support\Model;
  5. /**
  6. * 养老产品订单
  7. * Class Order
  8. * @package app\admin\model
  9. */
  10. class RaiseGoodsOrder extends Model
  11. {
  12. /**
  13. *
  14. * The table associated with the model.
  15. *
  16. * @var string
  17. */
  18. protected $table = 'raise_old_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: ZQ
  27. * Date: 2022/11/1
  28. */
  29. public static function getOrderList(int $page, int $limit,$keywords)
  30. {
  31. $list = static::select(['raise_old_order.*','raise_old_goods.goods_name'])
  32. ->leftJoin('raise_old_goods','goods_id','=','raise_old_order.order_goods_id')
  33. ->when($keywords != '', function ($query) use ($keywords){
  34. $query->where('order_dno', 'like', '%' . $keywords . '%');
  35. })
  36. ->with(['user'])
  37. ->orderBy('order_create_time','DESC')
  38. ->forPage($page, $limit)
  39. ->get()->toArray();
  40. $count = static::when($keywords != '', function ($query) use ($keywords){
  41. $query->where('order_sn', 'like', '%' . $keywords . '%');
  42. })->count();
  43. return [$list, $count];
  44. }
  45. //关联店铺
  46. public function Shop(){
  47. return $this->belongsTo(MerchantShop::class,'order_shop_id','shop_id');
  48. }
  49. //获取用户信息
  50. public function User(){
  51. return $this->belongsTo(User::class,'order_user_id','user_id');
  52. }
  53. //获取订单详情
  54. public function Detail(){
  55. return $this->hasMany(GoodsOrderDetail::class,'detail_order_id','order_id')
  56. ->leftJoin('life_market_goods','goods_id','=','life_market_order_detail.detail_goods_id')
  57. ->select(['life_market_order_detail.*','life_market_goods.goods_name']);
  58. }
  59. }