OrderMerchantDao.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <?php
  2. /**
  3. * @package merchant
  4. *
  5. * @author xaboy
  6. * @day 2020/5/30
  7. *
  8. *
  9. */
  10. namespace app\common\dao\merchant\order;
  11. use app\common\dao\BaseDao;
  12. use app\common\model\merchant\order\OrderMerchant;
  13. use app\common\repositories\user\UserRepository;
  14. class OrderMerchantDao extends BaseDao
  15. {
  16. protected function getModel(): string
  17. {
  18. return OrderMerchant::class;
  19. }
  20. public function dayOrderNum($day, $merId = null)
  21. {
  22. return OrderMerchant::getDB()->where('paid', 1)->when($merId, function ($query, $merId) {
  23. $query->where('mer_id', $merId);
  24. })->when($day, function ($query, $day) {
  25. getModelTime($query, $day, 'pay_time');
  26. })->count();
  27. }
  28. public function dayOrderPrice($day, $merId = null)
  29. {
  30. return getModelTime(OrderMerchant::getDB()->where('paid', 1)->when($merId, function ($query, $merId) {
  31. $query->where('mer_id', $merId);
  32. }), $day, 'pay_time')->sum('money');
  33. }
  34. public function dayOrderAvailable($day, $merId = null)
  35. {
  36. return getModelTime(OrderMerchant::getDB()->where('paid', 1)->when($merId, function ($query, $merId) {
  37. $query->where('mer_id', $merId);
  38. }), $day, 'pay_time')->sum('available');
  39. }
  40. public function dayOrderUserNum($day, $merId = null)
  41. {
  42. return OrderMerchant::getDB()->where('paid', 1)->when($merId, function ($query, $merId) {
  43. $query->where('mer_id', $merId);
  44. })->when($day, function ($query, $day) {
  45. getModelTime($query, $day, 'pay_time');
  46. })->group('uid')->count();
  47. }
  48. public function test()
  49. {
  50. return OrderMerchant::getDB()->select();
  51. }
  52. public function merchantSearch($merId, array $where, $sysDel = 0)
  53. {
  54. return OrderMerchant::getDB()
  55. ->where('mer_id', $merId)
  56. ->when(isset($where['date']) && $where['date'] !== '', function ($query) use ($where) {
  57. getModelTime($query, $where['date']);
  58. })
  59. ->when(isset($where['keyword']) && $where['keyword'] !== '', function ($query) use ($where) {
  60. $query->where('merch_no|out_trade_no|refund_no', 'like', "%" . $where['keyword'] . "%");
  61. })
  62. ->when(isset($where['status']) && $where['status'] !== '', function ($query) use ($where) {
  63. $query->where('status', 1);
  64. })
  65. ->order('create_time DESC');
  66. }
  67. public function search(array $where, $sysDel = 0)
  68. {
  69. return OrderMerchant::getDB()
  70. ->when(isset($where['date']) && $where['date'] !== '', function ($query) use ($where) {
  71. getModelTime($query, $where['date']);
  72. })
  73. ->when(isset($where['keyword']) && $where['keyword'] !== '', function ($query) use ($where) {
  74. $query->where('merch_no|out_trade_no|refund_no', 'like', "%" . $where['keyword'] . "%");
  75. })
  76. ->when(isset($where['status']) && $where['status'] !== '', function ($query) use ($where) {
  77. $query->where('status', 1);
  78. })
  79. ->order('create_time DESC');
  80. }
  81. public function updateBindstatus($uinionid, $uid)
  82. {
  83. return OrderMerchant::getDB()->where('pay_user_id', $uinionid)->update(['uid' => $uid, 'binds' => 1]);
  84. }
  85. }