diff --git a/app/common/dao/store/order/StoreOrderDao.php b/app/common/dao/store/order/StoreOrderDao.php index 5c3259ba..6dda4b4b 100644 --- a/app/common/dao/store/order/StoreOrderDao.php +++ b/app/common/dao/store/order/StoreOrderDao.php @@ -98,7 +98,7 @@ class StoreOrderDao extends BaseDao ->when(isset($where['status']) && $where['status'] !== '', function ($query) use ($where) { switch ($where['status']) { case 0 : - $query->where('paid', 1)->whereIn('StoreOrder.status', [0, 9]); + $query->where('paid', 0)->whereIn('StoreOrder.status', [0, 9, 12]); break; case -2 : $query->whereNotIn('StoreOrder.status', [10, 11]); @@ -120,7 +120,7 @@ class StoreOrderDao extends BaseDao ->when(isset($where['uid']) && $where['uid'] !== '', function ($query) use ($where) { $query->where('StoreOrder.uid', $where['uid']); }) - ->when(isset($where['is_user']) && $where['is_user'] !== '', function ($query) use ($where) { + ->when(isset($where['is_user']) && $where['is_user'] !== 0, function ($query) use ($where) { $query->where(function($query) { $query->where('order_type',0)->whereOr(function($query){ $query->where('order_type',1)->where('main_id',0); diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index c8c574b7..e9146513 100644 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -565,15 +565,19 @@ class StoreOrderRepository extends BaseRepository { //activity_type:0 采购订单 98 普通订单 //$noPay = app()->make(StoreGroupOrderRepository::class)->orderNumber($uid, $product_type); - $noPay = $this->dao->search(['uid' => $uid, 'status' => 0, 'paid' => 0, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); - $noPostage = $this->dao->search(['uid' => $uid, 'status' => 0, 'paid' => 1, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); - $noDeliver = $this->dao->search(['uid' => $uid, 'status' => 1, 'paid' => 1, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); - $noComment = $this->dao->search(['uid' => $uid, 'status' => 2, 'paid' => 1, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); - $done = $this->dao->search(['uid' => $uid, 'status' => 3, 'paid' => 1, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); + $isUser = 1; + if ($product_type == 98) { + $isUser = 0; + } + $noPay = $this->dao->search(['uid' => $uid, 'status' => 0, 'paid' => 0, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->fetchSql(false)->count(); + $noPostage = $this->dao->search(['uid' => $uid, 'status' => 0, 'paid' => 1, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); + $noDeliver = $this->dao->search(['uid' => $uid, 'status' => 1, 'paid' => 1, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); + $noComment = $this->dao->search(['uid' => $uid, 'status' => 2, 'paid' => 1, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); + $done = $this->dao->search(['uid' => $uid, 'status' => 3, 'paid' => 1, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); $refund = StoreRefundOrder::alias('t1')->join('store_order t2', 't1.order_id=t2.order_id')->where('t1.uid', $uid)->where('t1.status', 3)->where('t2.activity_type', $product_type)->count(); //$all = $this->dao->search(['uid' => $uid, 'status' => -2,'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); - $orderPrice = $this->dao->search(['uid' => $uid, 'paid' => 1, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->sum('pay_price'); - $orderCount = $this->dao->search(['uid' => $uid, 'is_user' => 1])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->count(); + $orderPrice = $this->dao->search(['uid' => $uid, 'paid' => 1, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->sum('pay_price'); + $orderCount = $this->dao->search(['uid' => $uid, 'is_user' => $isUser])->where('activity_type', $product_type)->where('StoreOrder.is_del', 0)->fetchSql(false)->count(); return compact('noComment', 'done', 'refund', 'noDeliver', 'noPay', 'noPostage', 'orderPrice', 'orderCount'); }