StoreCouponSendDao.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. namespace app\common\dao\store\coupon;
  3. use app\common\dao\BaseDao;
  4. use app\common\model\BaseModel;
  5. use app\common\model\store\coupon\StoreCouponSend;
  6. class StoreCouponSendDao extends BaseDao
  7. {
  8. protected function getModel(): string
  9. {
  10. return StoreCouponSend::class;
  11. }
  12. public function search(array $where)
  13. {
  14. return StoreCouponSend::getDB()->alias('A')->leftJoin('StoreCoupon B', 'B.coupon_id = A.coupon_id')
  15. ->when(isset($where['coupon_name']) && $where['coupon_name'] !== '', function ($query) use ($where) {
  16. $query->whereLike('B.title', "%{$where['coupon_name']}%");
  17. })->when(isset($where['date']) && $where['date'] !== '', function ($query) use ($where) {
  18. getModelTime($query, $where['date'], 'A.create_time');
  19. })->when(isset($where['coupon_type']) && $where['coupon_type'] !== '', function ($query) use ($where) {
  20. $query->where('B.type', $where['coupon_type']);
  21. })->when(isset($where['status']) && $where['status'] !== '', function ($query) use ($where) {
  22. $query->where('A.status', $where['status']);
  23. })->when(isset($where['mer_id']) && $where['mer_id'] !== '', function ($query) use ($where) {
  24. $query->where('A.mer_id', $where['mer_id']);
  25. });
  26. }
  27. }