From 92eba2d4616d37f5d15f8d1a4016434083de9fb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=BB=BA=E7=82=8A?= <924182103@qq.com> Date: Mon, 25 Nov 2024 13:51:50 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=8F=91=E8=B4=A7?= =?UTF-8?q?=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Console/Commands/KttOrderSyncStatus.php | 62 +++++++++++++++++++ app/Console/Kernel.php | 4 ++ app/Http/Enum/BusinessOrderShippingStatus.php | 17 +++++ app/Services/Business/BusinessClient.php | 2 + .../Business/KuaiTuanTuan/KuaiTuanTuan.php | 17 +++++ app/Services/Business/MiaoXuan/MiaoXuan.php | 4 ++ 6 files changed, 106 insertions(+) create mode 100644 app/Console/Commands/KttOrderSyncStatus.php create mode 100644 app/Http/Enum/BusinessOrderShippingStatus.php diff --git a/app/Console/Commands/KttOrderSyncStatus.php b/app/Console/Commands/KttOrderSyncStatus.php new file mode 100644 index 0000000..e3f326b --- /dev/null +++ b/app/Console/Commands/KttOrderSyncStatus.php @@ -0,0 +1,62 @@ +subDays(15)->getPreciseTimestamp(3); + $shops = Shop::query()->where('plat_id', Shop::$PLAT_KTT)->where('status', Shop::$STATUS_AUTHORIZED)->get(); + BusinessOrder::query()->where('confirm_at', '>=', $startTime) + ->where('shipping_status',BusinessOrderShippingStatus::UNSHIP) + ->where('cancel_status',0) + ->chunk(200, function ($orders) use ($shops) { + foreach ($orders as $order) { + $shop = $shops->where('id',$order['shop_id'])->first(); + if(!empty($shop)){ + BusinessFactory::init()->make($shop->plat_id)->setShop($shop)->queryStatusAndSync($order); + usleep(10); + } + } + }); + + } +} diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index 9ce6b35..201d12c 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -8,6 +8,7 @@ use App\Console\Commands\DailySalesReport; use App\Console\Commands\GoodsSkuDailyReport; use App\Console\Commands\Inventory; use App\Console\Commands\KttOrderAfterSaleQuery; +use App\Console\Commands\KttOrderSyncStatus; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; use App\Console\Commands\KttOrderQuery; @@ -57,6 +58,9 @@ class Kernel extends ConsoleKernel //同步售卖信息和报损相关数据 $schedule->command(GoodsSkuDailyReport::class)->dailyAt('03:30'); + //新增价格校验 + $schedule->command(KttOrderSyncStatus::class)->everyTenMinutes(); + } /** diff --git a/app/Http/Enum/BusinessOrderShippingStatus.php b/app/Http/Enum/BusinessOrderShippingStatus.php new file mode 100644 index 0000000..9f0f913 --- /dev/null +++ b/app/Http/Enum/BusinessOrderShippingStatus.php @@ -0,0 +1,17 @@ +getShop()->id; diff --git a/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php b/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php index 1df6e7d..7b08551 100644 --- a/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php +++ b/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php @@ -175,6 +175,23 @@ class KuaiTuanTuan extends BusinessClient } } + public function queryStatusAndSync($order) + { + [$type, $appendParams] = Order::getOrderInfo($order->order_sn); + $responseName = 'ktt_order_get_response'; + $res = $this->doRequest($type, $appendParams); + if (!isset($res[$responseName]['order_info'])) { + return; + } + + $queryOrder = $res[$responseName]['order_info']; + if ($order->shipping_status != $queryOrder['shipping_status']) { + $order->shipping_status = $queryOrder['shipping_status']; + $order->save(); + } + + } + public function getOrderInfo($orderSn) { [$type, $appendParams] = Order::getOrderInfo($orderSn); diff --git a/app/Services/Business/MiaoXuan/MiaoXuan.php b/app/Services/Business/MiaoXuan/MiaoXuan.php index 6831623..a900d0f 100644 --- a/app/Services/Business/MiaoXuan/MiaoXuan.php +++ b/app/Services/Business/MiaoXuan/MiaoXuan.php @@ -37,6 +37,10 @@ class MiaoXuan extends BusinessClient } + public function queryStatusAndSync($order){ + + } + public function batchIncrQuantity($businessGoodsSkus, $num, $incremental) { $batchAppendParams = []; From 43b9c9516b10a6eaadcf287786980951c48d5607 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=BB=BA=E7=82=8A?= <924182103@qq.com> Date: Mon, 25 Nov 2024 16:47:22 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=8F=91=E8=B4=A7?= =?UTF-8?q?=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Console/Kernel.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index 201d12c..afe932a 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -58,7 +58,7 @@ class Kernel extends ConsoleKernel //同步售卖信息和报损相关数据 $schedule->command(GoodsSkuDailyReport::class)->dailyAt('03:30'); - //新增价格校验 + //新增快团团订单状态同步 $schedule->command(KttOrderSyncStatus::class)->everyTenMinutes(); }