diff --git a/app/Events/BusinessOrdersUpdate.php b/app/Events/BusinessOrdersUpdate.php index 480653b..abf9823 100644 --- a/app/Events/BusinessOrdersUpdate.php +++ b/app/Events/BusinessOrdersUpdate.php @@ -27,14 +27,14 @@ class BusinessOrdersUpdate */ public function __construct(BusinessOrderItem $item, $num) { - $this->businessOrderItem = $item; + $this->businessOrderItem = $item->toArray(); $this->num = $num; $this->updateStock(); } private function updateStock() { - [$goodsCode, $skuCode] = explode('_', $this->businessOrderItem->external_sku_id); + [$goodsCode, $skuCode] = explode('_', $this->businessOrderItem['external_sku_id']); $this->goodsSku = GoodsSku::query()->where('sku_code', $skuCode) ->with(['goods' => function ($query) use ($goodsCode) { $query->where('goods_code', $goodsCode); diff --git a/app/Listeners/StockUpdateListener.php b/app/Listeners/StockUpdateListener.php index 0df8f13..bfea2d5 100644 --- a/app/Listeners/StockUpdateListener.php +++ b/app/Listeners/StockUpdateListener.php @@ -36,13 +36,13 @@ class StockUpdateListener foreach ($shops as $shop) { if (isset($event->goodsSku)) { $num = $event->goodsSku->stock; - $businessGoodsSku = BusinessGoodsSku::query()->where('shop_id', $shop->id)->where('external_sku_id', $event->goodsSku->goods['goods_code'] . '_' . $event->goodsSku->sku_code)->first(); + $businessGoodsSku = BusinessGoodsSku::query()->where('shop_id', $shop->id)->where('external_sku_id', $event->goodsSku->goods['goods_code'] . '_' . $event->goodsSku->sku_code)->first()->toArray(); BusinessGoodsSkuIncrQuantity::dispatch($shop, $businessGoodsSku, $num, false); } if (isset($event->goodsSkus)) { foreach ($event->goodsSkus as $goodsSku) { $num = $goodsSku->stock; - $businessGoodsSku = BusinessGoodsSku::query()->where('shop_id', $shop->id)->where('external_sku_id', $goodsSku->goods['goods_code'] . '_' . $goodsSku->sku_code)->first(); + $businessGoodsSku = BusinessGoodsSku::query()->where('shop_id', $shop->id)->where('external_sku_id', $goodsSku->goods['goods_code'] . '_' . $goodsSku->sku_code)->first()->toArray(); BusinessGoodsSkuIncrQuantity::dispatch($shop, $businessGoodsSku, $num, false); } } diff --git a/app/Listeners/UpdateBusinessGoodsStock.php b/app/Listeners/UpdateBusinessGoodsStock.php index e45f917..e29d2ac 100644 --- a/app/Listeners/UpdateBusinessGoodsStock.php +++ b/app/Listeners/UpdateBusinessGoodsStock.php @@ -37,15 +37,15 @@ class UpdateBusinessGoodsStock implements ShouldQueue $log->module = 'goods'; $log->action = 'PATCH'; $log->target_type = 'goods_sku'; - $log->target_id = $event->goodsSku->id; + $log->target_id = $event->goodsSku->id ?? 0; $log->target_field = 'stock'; - $log->user_id = $event->businessOrderItem->shop_id; - $log->message = ($event->businessOrderItem->external_sku_id ?: '商品') . '未找到'; + $log->user_id = $event->businessOrderItem['shop_id']; + $log->message = ($event->businessOrderItem['external_sku_id'] ?: '商品') . '未找到'; $log->save(); return; } - $shops = Shop::query()->where('id', '<>', $event->businessOrderItem->shop_id)->where('status', 1)->get(['id', 'plat_id']); + $shops = Shop::query()->where('id', '<>', $event->businessOrderItem['shop_id'])->where('status', 1)->get(['id', 'plat_id']); if (empty($shops)) { return; } diff --git a/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php b/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php index 66aa777..788898f 100644 --- a/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php +++ b/app/Services/Business/KuaiTuanTuan/KuaiTuanTuan.php @@ -56,7 +56,7 @@ class KuaiTuanTuan extends BusinessClient public function incrQuantity($businessGoodsSku, $num, $incremental) { - [$type, $appendParams] = Goods::incrQuantity($businessGoodsSku->goods_id, $businessGoodsSku->sku_id, $num, $incremental ? 1 : 2); + [$type, $appendParams] = Goods::incrQuantity($businessGoodsSku['goods_id'], $businessGoodsSku['sku_id'], $num, $incremental ? 1 : 2); $this->doRequest($type, $appendParams); } diff --git a/app/Services/Business/MiaoXuan/Goods.php b/app/Services/Business/MiaoXuan/Goods.php index 8bff633..8276fa6 100644 --- a/app/Services/Business/MiaoXuan/Goods.php +++ b/app/Services/Business/MiaoXuan/Goods.php @@ -16,15 +16,15 @@ class Goods } } - public static function incrQuantity($shopId, $quantity, BusinessGoodsSku $businessGoods) + public static function incrQuantity($shopId, $quantity, $businessGoods) { return [ 'data' => [ 'stock' => $quantity, - 'business_sku_id' => $businessGoods->sku_id, - 'business_goods_id' => $businessGoods->goods_id, + 'business_sku_id' => $businessGoods['sku_id'], + 'business_goods_id' => $businessGoods['goods_id'], 'erp_shop_id' => $shopId, - 'erp_sku_id' => $businessGoods->external_sku_id, + 'erp_sku_id' => $businessGoods['external_sku_id'], ], 'type' => '更新库存', ];