From 797090de46c551fe366cd9a1c5ccbe1523030927 Mon Sep 17 00:00:00 2001 From: mkm <727897186@qq.com> Date: Thu, 23 Nov 2023 10:48:04 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E6=88=90=E5=8F=96=E8=B4=A7=E7=A0=81?= =?UTF-8?q?=E5=92=8C=E4=BF=AE=E6=94=B9=E6=A0=B8=E9=94=80=E7=A0=81=E5=88=A4?= =?UTF-8?q?=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../store/order/StoreOrderRepository.php | 5 +++- app/controller/merchant/store/order/Order.php | 30 ++++++++++++------- route/merchant/order.php | 3 ++ 3 files changed, 27 insertions(+), 11 deletions(-) diff --git a/app/common/repositories/store/order/StoreOrderRepository.php b/app/common/repositories/store/order/StoreOrderRepository.php index 418669bd..9beed35c 100644 --- a/app/common/repositories/store/order/StoreOrderRepository.php +++ b/app/common/repositories/store/order/StoreOrderRepository.php @@ -1998,8 +1998,11 @@ class StoreOrderRepository extends BaseRepository public function verifyOrder(int $id, int $merId, array $data, $serviceId = 0) { - $order = $this->dao->getWhere(['order_id' => $id, 'mer_id' => $merId, 'verify_code' => $data['verify_code'], 'order_type' => 1], '*', ['orderProduct']); + $order = $this->dao->getWhere(['order_id' => $id, 'mer_id' => $merId, 'order_type' => 1], '*', ['orderProduct']); if (!$order) throw new ValidateException('订单不存在'); + if($order['verify_code']!=$data['verify_code']){ + throw new ValidateException('核销码不正确'); + } if (!$order->paid) throw new ValidateException('订单未支付'); if ($order['status']) throw new ValidateException('订单已全部核销,请勿重复操作'); foreach ($data['data'] as $v) { diff --git a/app/controller/merchant/store/order/Order.php b/app/controller/merchant/store/order/Order.php index a31d4421..98ea1511 100644 --- a/app/controller/merchant/store/order/Order.php +++ b/app/controller/merchant/store/order/Order.php @@ -144,11 +144,10 @@ class Order extends BaseController public function delivery($id) { $type = $this->request->param('delivery_type'); - $split = $this->request->params(['is_split',['split',[]]]); + $split = $this->request->params(['is_split', ['split', []]]); if (!$this->repository->merDeliveryExists($id, $this->request->merId())) return app('json')->fail('订单信息或状态错误'); - switch ($type) - { + switch ($type) { case 3: //虚拟发货 $data = $this->request->params([ 'delivery_type', @@ -170,7 +169,8 @@ class Order extends BaseController 'temp_id', 'remark', ]); - if (!$data['from_name'] || + if ( + !$data['from_name'] || !$data['delivery_name'] || !$data['from_tel'] || !$data['from_addr'] || @@ -186,7 +186,7 @@ class Order extends BaseController 'delivery_type', 'station_id', 'mark', - ['cargo_weight',0], + ['cargo_weight', 0], 'remark', ]); if ($data['cargo_weight'] < 0) return app('json')->fail('包裹重量能为负数'); @@ -206,7 +206,7 @@ class Order extends BaseController $method = 'delivery'; break; } - $this->repository->runDelivery($id,$this->request->merId(), $data, $split, $method); + $this->repository->runDelivery($id, $this->request->merId(), $data, $split, $method); return app('json')->success('发货成功'); } @@ -295,7 +295,7 @@ class Order extends BaseController public function status($id) { [$page, $limit] = $this->getPage(); - $where = $this->request->params(['date','user_type']); + $where = $this->request->params(['date', 'user_type']); $where['id'] = $id; if (!$this->repository->getOne($id, $this->request->merId())) return app('json')->fail('数据不存在'); @@ -337,7 +337,7 @@ class Order extends BaseController */ public function verify($id) { - $data = $this->request->params(['data','verify_code']); + $data = $this->request->params(['data', 'verify_code']); $this->repository->verifyOrder($id, $this->request->merId(), $data); return app('json')->success('订单核销成功'); } @@ -349,6 +349,16 @@ class Order extends BaseController return app('json')->success($order); } + /** + * 生成取货码 + */ + public function logisticsCode($id) + { + $order = $this->repository->getWhere(['order_id' => $id, 'mer_id' => $this->request->merId(), 'is_del' => 0]); + if (!$order) + return app('json')->fail('订单状态有误'); + return app('json')->success(['qrcode' => $this->repository->logisticsQrcode($id, $order->order_sn)]); + } /** * @param $id * @return mixed @@ -424,7 +434,7 @@ class Order extends BaseController unset($where['order_type']); } $where['mer_id'] = $this->request->merId(); - $data = app()->make(ExcelService::class)->order($where,$page,$limit); + $data = app()->make(ExcelService::class)->order($where, $page, $limit); return app('json')->success($data); } @@ -462,7 +472,7 @@ class Order extends BaseController if (!$count) return app('json')->fail('没有可导出数据'); [$page, $limit] = $this->getPage(); - $data = app()->make(ExcelService::class)->delivery($where,$page,$limit); + $data = app()->make(ExcelService::class)->delivery($where, $page, $limit); return app('json')->success($data); } diff --git a/route/merchant/order.php b/route/merchant/order.php index 75480e02..6f96dcf9 100644 --- a/route/merchant/order.php +++ b/route/merchant/order.php @@ -109,6 +109,9 @@ Route::group(function () { Route::get('children/:id', 'Order/childrenList')->name('merchantStoreOrderChildrenList')->option([ '_alias' => '关联订单', ]); + Route::get('logistics_code/:id', 'Order/logisticsCode')->name('merchantStoreOrderLogisticsCode')->option([ + '_alias' => '生成取货码', + ]); })->prefix('merchant.store.order.')->option([ '_path' => '/order/list', '_auth' => true,