OriginalOrderCriteria.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. namespace App\Repositories\Criterias;
  3. use KZ2\Repositories\Contracts\RepositoryInterface;
  4. use KZ2\Repositories\Criteria\Criteria;
  5. class OriginalOrderCriteria extends Criteria
  6. {
  7. private $params = [];
  8. public function __construct($params = [])
  9. {
  10. $this->params = $params;
  11. }
  12. public function apply($model, RepositoryInterface $repository)
  13. {
  14. if (!empty($this->params['order_status'])) {
  15. $model = $model->where('order_status', $this->params['order_status']);
  16. }
  17. if (!empty($this->params['buy_uid'])) {
  18. $model = $model->where('buy_uid', $this->params['buy_uid']);
  19. }
  20. if (!empty($this->params['redund_status'])) {
  21. $model = $model->where('redund_status', $this->params['redund_status']);
  22. }
  23. if (!empty($this->params['pay_status'])) {
  24. $model = $model->where('pay_status', $this->params['pay_status']);
  25. }
  26. if (!empty($this->params['order_sn'])) {
  27. $model = $model->where('order_sn', $this->params['order_sn']);
  28. }
  29. return $model;
  30. }
  31. }