From 4d95c182a6016ee586ca07889db4c8519fc7277e Mon Sep 17 00:00:00 2001 From: monanxiao Date: Fri, 10 Mar 2023 14:41:26 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=BE=85=E4=BB=98?= =?UTF-8?q?=E6=AC=BE=E8=AE=A2=E5=8D=95=E5=A2=9E=E5=8A=A0=E6=9D=A5=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../store/order/StoreGroupOrderRepository.php | 6 +++++- .../store/order/StoreOrderCreateRepository.php | 8 +++++--- app/controller/api/store/order/StoreOrder.php | 3 ++- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/common/repositories/store/order/StoreGroupOrderRepository.php b/app/common/repositories/store/order/StoreGroupOrderRepository.php index dfa9b1ed..f659ccb6 100644 --- a/app/common/repositories/store/order/StoreGroupOrderRepository.php +++ b/app/common/repositories/store/order/StoreGroupOrderRepository.php @@ -55,10 +55,14 @@ class StoreGroupOrderRepository extends BaseRepository * @author xaboy * @day 2020/6/10 */ - public function getList(array $where, $page, $limit) + public function getList(array $where, $page, $limit, $source = 2) { $query = $this->search($where); $count = $query->count(); + + // 增加订单类型筛选 1 小组采购 2 普通商品 + $query->where('source', $source); + $list = $query->with(['orderList' => function (Relation $query) { $query->field('order_id,group_order_id,activity_type,pay_price')->with(['orderProduct','presellOrder']); }])->page($page, $limit)->order('create_time DESC')->select(); diff --git a/app/common/repositories/store/order/StoreOrderCreateRepository.php b/app/common/repositories/store/order/StoreOrderCreateRepository.php index 9b59018f..8aa844fc 100644 --- a/app/common/repositories/store/order/StoreOrderCreateRepository.php +++ b/app/common/repositories/store/order/StoreOrderCreateRepository.php @@ -895,9 +895,8 @@ class StoreOrderCreateRepository extends StoreOrderRepository ) + ['allow_address' => !$allow_no_address, 'order_delivery_status' => $orderDeliveryStatus]; } - public function v2CreateOrder(int $pay_type, $user, array $cartId, array $extend, array $mark, array $receipt_data, array $takes = null, array $useCoupon = null, bool $useIntegral = false, int $addressId = null, array $post, int $source) + public function v2CreateOrder(int $pay_type, $user, array $cartId, array $extend, array $mark, array $receipt_data, array $takes = null, array $useCoupon = null, bool $useIntegral = false, int $addressId = null, array $post, $source) { - $uid = $user->uid; $orderInfo = $this->v2CartIdByOrderInfo($user, $cartId, $takes, $useCoupon, $useIntegral, $addressId, true); $order_model = $orderInfo['order_model']; @@ -1089,7 +1088,7 @@ class StoreOrderCreateRepository extends StoreOrderRepository 'mark' => $mark[$merchantCart['mer_id']] ?? '', 'coupon_price' => bcadd($merchantCart['order']['coupon_price'], $merchantCart['order']['platform_coupon_price'], 2), 'platform_coupon_price' => $merchantCart['order']['platform_coupon_price'], - 'pay_type' => $pay_type + 'pay_type' => $pay_type, ]; $allUseCoupon = array_merge($allUseCoupon, $merchantCart['order']['useCouponIds']); $orderList[] = $_order; @@ -1116,6 +1115,7 @@ class StoreOrderCreateRepository extends StoreOrderRepository 'integral' => $orderInfo['order_total_integral'], 'integral_price' => $orderInfo['order_total_integral_price'], 'give_integral' => $orderInfo['order_total_give_integral'], + 'source' => $source, // 增加订单来源 1 小组采购 2 普同商品 ]; event('order.create.before', compact('groupOrder', 'orderList')); $group = Db::transaction(function () use ($ex, $user, $topUid, $spreadUid, $uid, $receipt_data, $cartIds, $allUseCoupon, $groupOrder, $orderList, $orderInfo) { @@ -1183,6 +1183,8 @@ class StoreOrderCreateRepository extends StoreOrderRepository ]); } + \think\facade\Log::record($groupOrder); + //创建订单 $groupOrder = $storeGroupOrderRepository->create($groupOrder); $bills = []; diff --git a/app/controller/api/store/order/StoreOrder.php b/app/controller/api/store/order/StoreOrder.php index 57a687aa..7f8e6693 100644 --- a/app/controller/api/store/order/StoreOrder.php +++ b/app/controller/api/store/order/StoreOrder.php @@ -188,7 +188,8 @@ class StoreOrder extends BaseController public function groupOrderList(StoreGroupOrderRepository $groupOrderRepository) { [$page, $limit] = $this->getPage(); - $list = $groupOrderRepository->getList(['uid' => $this->request->uid(), 'paid' => 0], $page, $limit); + $source = $this->request->param('source'); + $list = $groupOrderRepository->getList(['uid' => $this->request->uid(), 'paid' => 0], $page, $limit,$source); return app('json')->success($list); } From ba0d6a527e846e45cfde28617cb63e88b68a40c1 Mon Sep 17 00:00:00 2001 From: monanxiao Date: Fri, 10 Mar 2023 14:43:57 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E8=AE=A2=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/store/order/StoreOrder.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/controller/api/store/order/StoreOrder.php b/app/controller/api/store/order/StoreOrder.php index 7f8e6693..e56fca54 100644 --- a/app/controller/api/store/order/StoreOrder.php +++ b/app/controller/api/store/order/StoreOrder.php @@ -189,6 +189,8 @@ class StoreOrder extends BaseController { [$page, $limit] = $this->getPage(); $source = $this->request->param('source'); + $source = !isset($source)?2:$source; // 默认来源为2 普通商品订单 + $list = $groupOrderRepository->getList(['uid' => $this->request->uid(), 'paid' => 0], $page, $limit,$source); return app('json')->success($list); } From d4d07fa9ba8389a25cce8d87bc064a9f995e4012 Mon Sep 17 00:00:00 2001 From: monanxiao Date: Fri, 10 Mar 2023 15:16:00 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=EF=BC=8C=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=9D=A5=E6=BA=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/common/dao/store/order/StoreOrderDao.php | 9 +++++---- .../repositories/store/order/StoreOrderRepository.php | 9 ++++++++- app/controller/api/store/order/StoreOrder.php | 6 +++++- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/app/common/dao/store/order/StoreOrderDao.php b/app/common/dao/store/order/StoreOrderDao.php index 468c17e4..3e939a47 100644 --- a/app/common/dao/store/order/StoreOrderDao.php +++ b/app/common/dao/store/order/StoreOrderDao.php @@ -97,10 +97,10 @@ class StoreOrderDao extends BaseDao $query->whereIn('StoreOrder.status', [0, 9]); break; case -2 : - $query->where('paid', 1)->whereNotIn('StoreOrder.status', [10, 11]); + $query->where('StoreOrder.paid', 1)->whereNotIn('StoreOrder.status', [10, 11]); break; case 10 : - $query->where('paid', 1)->whereIn('StoreOrder.status', [10, 11]); + $query->where('StoreOrder.paid', 1)->whereIn('StoreOrder.status', [10, 11]); break; default: $query->where('StoreOrder.status', $where['status']); @@ -108,7 +108,7 @@ class StoreOrderDao extends BaseDao } }) ->when(isset($where['uid']) && $where['uid'] !== '', function ($query) use ($where) { - $query->where('uid', $where['uid']); + $query->where('StoreOrder.uid', $where['uid']); }) //待核销订单 ->when(isset($where['is_verify']) && $where['is_verify'], function ($query) use ($where) { @@ -178,7 +178,8 @@ class StoreOrderDao extends BaseDao }); }) ->when(isset($where['group_order_sn']) && $where['group_order_sn'] !== '', function ($query) use ($where) { - $query->join('StoreGroupOrder GO','StoreOrder.group_order_id = GO.group_order_id')->where('group_order_sn',$where['group_order_sn']); + $query->join('StoreGroupOrder GO','StoreOrder.group_order_id = GO.group_order_id') + ->where('group_order_sn',$where['group_order_sn']); }) ->when(isset($where['keywords']) && $where['keywords'] !== '', function ($query) use ($where) { $query->where(function ($query) use ($where) { diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index 171c84c5..6a1fa038 100644 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -1575,10 +1575,17 @@ class StoreOrderRepository extends BaseRepository * @author xaboy * @day 2020/6/10 */ - public function getList(array $where, $page, $limit) + public function getList(array $where, $page, $limit, $source = 2) { + + // $query->where('source', $source); + $query = $this->dao->search($where)->where('StoreOrder.is_del', 0); $count = $query->count(); + + // 增加订单类型筛选 1 小组采购 2 普通商品 + $query->hasWhere('groupOrder', ['source' => $source]); + $list = $query->with([ 'orderProduct', 'presellOrder', diff --git a/app/controller/api/store/order/StoreOrder.php b/app/controller/api/store/order/StoreOrder.php index e56fca54..cac9456e 100644 --- a/app/controller/api/store/order/StoreOrder.php +++ b/app/controller/api/store/order/StoreOrder.php @@ -147,9 +147,13 @@ class StoreOrder extends BaseController [$page, $limit] = $this->getPage(); $where['status'] = $this->request->param('status'); $where['search'] = $this->request->param('store_name'); + $source = $this->request->param('source'); + $source = !isset($source)?2:$source; // 默认来源为2 普通商品订单 $where['uid'] = $this->request->uid(); $where['paid'] = 1; - return app('json')->success($this->repository->getList($where, $page, $limit)); + $where['source'] = $source; + + return app('json')->success($this->repository->getList($where, $page, $limit, $source)); } /** From b8a3516a202ffb36fa2b31f9eaa002d6ae6d6290 Mon Sep 17 00:00:00 2001 From: monanxiao Date: Fri, 10 Mar 2023 15:49:57 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E5=AE=8C=E6=88=90=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../repositories/store/order/StoreOrderCreateRepository.php | 2 ++ app/controller/api/enter/EnterCompany.php | 4 ++++ app/controller/api/store/order/StoreOrder.php | 3 ++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/common/repositories/store/order/StoreOrderCreateRepository.php b/app/common/repositories/store/order/StoreOrderCreateRepository.php index 8aa844fc..af64c548 100644 --- a/app/common/repositories/store/order/StoreOrderCreateRepository.php +++ b/app/common/repositories/store/order/StoreOrderCreateRepository.php @@ -977,6 +977,7 @@ class StoreOrderCreateRepository extends StoreOrderRepository $total_extension_two = 0; //计算佣金和赠送的优惠券 foreach ($merchantCart['list'] as &$cart) { + $cartIds[] = $cart['cart_id']; $giveCouponIds = array_merge($giveCouponIds, $cart['product']['give_coupon_ids'] ?: []); $cart['cost'] = $cart['productAttr']['cost']; @@ -1044,6 +1045,7 @@ class StoreOrderCreateRepository extends StoreOrderRepository $cart['extension_two'] = $extension_two; $total_extension_one = bcadd($total_extension_one, bcmul($extension_one, $cart['cart_num'], 2), 2); $total_extension_two = bcadd($total_extension_two, bcmul($extension_two, $cart['cart_num'], 2), 2); + } unset($cart); diff --git a/app/controller/api/enter/EnterCompany.php b/app/controller/api/enter/EnterCompany.php index 560b85aa..dd3ad9d2 100644 --- a/app/controller/api/enter/EnterCompany.php +++ b/app/controller/api/enter/EnterCompany.php @@ -86,9 +86,13 @@ class EnterCompany extends BaseController ->where('is_fail', '=', 0) ->where('is_del', '=', 0) ->column('cart_id'); + $cart_id_str = implode('|',$cart_id); + $list = app()->make(StoreOrderRepository::class)->getList2($where,$page,$limit,$cart_id_str); + $data = app()->make(StoreOrderRepository::class)->userOrderNumber2($uid,$cart_id_str); + $list['all'] = $data['all']; $list['orderPrice'] = $data['orderPrice']; return app('json')->success($list); diff --git a/app/controller/api/store/order/StoreOrder.php b/app/controller/api/store/order/StoreOrder.php index cac9456e..da80a8d3 100644 --- a/app/controller/api/store/order/StoreOrder.php +++ b/app/controller/api/store/order/StoreOrder.php @@ -88,7 +88,8 @@ class StoreOrder extends BaseController $payType = $this->request->param('pay_type'); $post = (array)$this->request->param('post'); $is_dg = $this->request->param('is_dg',0); - $source = (int)$this->request->param('source'); // 1 小组服务 2 普通来源 + $source = $this->request->param('source'); // 1 小组服务 2 普通来源 + $source = !isset($source)?2:$source; // 默认来源为2 普通商品订单 $isPc = $payType === 'pc'; if ($isPc) { $payType = 'balance';