鲜花2.0-接口测试bug修复

This commit is contained in:
杨建炊 2024-08-06 13:53:22 +08:00
parent 45882b4a72
commit 5734c08ba4
10 changed files with 39 additions and 33 deletions

View File

@ -6,6 +6,7 @@ use App\Models\Shop;
use App\Services\Business\BusinessFactory; use App\Services\Business\BusinessFactory;
use App\Utils\DateTimeUtils; use App\Utils\DateTimeUtils;
use Illuminate\Console\Command; use Illuminate\Console\Command;
use Illuminate\Support\Facades\Log;
class KttOrderQuery extends Command class KttOrderQuery extends Command
{ {

View File

@ -47,19 +47,18 @@ class BusinessOrdersUpdate
Log::error("sku 业务更新失败", (array)$this->businessGoodSku); Log::error("sku 业务更新失败", (array)$this->businessGoodSku);
} }
} catch (\Exception $exception) { } catch (\Exception $exception) {
Log::error("库存告警发生异常", ["error" => $exception->getMessage()]); Log::error("sku 业务更新发生异常", ["error" => $exception->getMessage()]);
} }
} }
private private function updateStock()
function updateStock()
{ {
$this->goodsSku = GoodsSku::query() $this->goodsSku = GoodsSku::query()
->where('external_sku_id', $this->businessGoodSku['external_sku_id']) ->where('external_sku_id', $this->businessGoodSku['external_sku_id'])
->first(); ->first();
if (is_null($this->goodsSku)) { if (is_null($this->goodsSku)) {
return false; return true;
} }
$oldStock = $this->goodsSku->stock; $oldStock = $this->goodsSku->stock;
$stock = $this->goodsSku->stock + $this->num; $stock = $this->goodsSku->stock + $this->num;
@ -82,8 +81,7 @@ class BusinessOrdersUpdate
* *
* @return \Illuminate\Broadcasting\Channel|array * @return \Illuminate\Broadcasting\Channel|array
*/ */
public public function broadcastOn()
function broadcastOn()
{ {
return new PrivateChannel('channel-name'); return new PrivateChannel('channel-name');
} }

View File

@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
use App\Models\Log as LogModel; use App\Models\Log as LogModel;
use App\Utils\ArrayUtils; use App\Utils\ArrayUtils;
use App\Utils\FormatUtils; use App\Utils\FormatUtils;
use Illuminate\Support\Facades\Log;
use Spatie\Permission\Models\Permission; use Spatie\Permission\Models\Permission;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Validator;

View File

@ -41,7 +41,7 @@ class DailyStockRecordController extends Controller
$query->where('external_sku_id', '=', $request->external_sku_id); $query->where('external_sku_id', '=', $request->external_sku_id);
}); });
} }
$dailyStockRecord = $build->paginate($request->get('per_page')); $dailyStockRecord = $build->orderByDesc("id")->paginate($request->get('per_page'));
return JsonResource::collection($dailyStockRecord); return JsonResource::collection($dailyStockRecord);
} }

View File

@ -42,7 +42,7 @@ class LossRecordController extends Controller
$query->where('name', 'like', '%' . $request->title . '%'); $query->where('name', 'like', '%' . $request->title . '%');
}); });
} }
$dailyStockRecord = $builder->paginate($request->get('per_page')); $dailyStockRecord = $builder->orderByDesc("id")->paginate($request->get('per_page'));
return JsonResource::collection($dailyStockRecord); return JsonResource::collection($dailyStockRecord);
} }

View File

@ -44,7 +44,7 @@ class PurchaseRecordController extends Controller
$query->where('name', 'like', '%' . $request->title . '%'); $query->where('name', 'like', '%' . $request->title . '%');
}); });
} }
$dailyStockRecord = $builder->paginate($request->get('per_page')); $dailyStockRecord = $builder->orderByDesc("id")->paginate($request->get('per_page'));
return JsonResource::collection($dailyStockRecord); return JsonResource::collection($dailyStockRecord);
} }

View File

@ -42,12 +42,15 @@ class BusinessOrderUpdateListener implements ShouldQueue
public function handle(BusinessOrdersUpdate $event) public function handle(BusinessOrdersUpdate $event)
{ {
try { try {
if(!empty($event->goodsSku)){
//查询库存是否满足告警规则 //查询库存是否满足告警规则
$skuId = $event->goodsSku->id; $skuId = $event->goodsSku->id;
$nowTime = Carbon::now()->toDateTimeString(); $nowTime = Carbon::now()->toDateTimeString();
//查找最后一次盘点数据 //查找最后一次盘点数据
$dailyStockRecord = DailyStockRecord::query()->where("sku_id", '=', $skuId)-> $dailyStockRecord = DailyStockRecord::query()->where("sku_id", '=', $skuId)->
where("inventory_time", '<', $nowTime)->orderByDesc('id')->first(); where("inventory_time", '<', $nowTime)->orderByDesc('id')->first();
$inventory = $dailyStockRecord['inventory'] ?? 0; $inventory = $dailyStockRecord['inventory'] ?? 0;
$expireTime = Carbon::now()->addMinutes(30)->toDateTimeString(); $expireTime = Carbon::now()->addMinutes(30)->toDateTimeString();
$proportion = Cache::remember(CacheKeyEnum::STOCK_RULE_PROPORTION, $expireTime, function () { $proportion = Cache::remember(CacheKeyEnum::STOCK_RULE_PROPORTION, $expireTime, function () {
@ -59,6 +62,7 @@ class BusinessOrderUpdateListener implements ShouldQueue
$messageService = new MessageService(); $messageService = new MessageService();
$messageService->createLowerStockNoticeMessage($inventory, $event->goodsSku->toArray()); $messageService->createLowerStockNoticeMessage($inventory, $event->goodsSku->toArray());
} }
}
}catch(\Exception $exception) { }catch(\Exception $exception) {
Log::error("库存告警发生异常",["error"=>$exception->getMessage()]); Log::error("库存告警发生异常",["error"=>$exception->getMessage()]);
} }

View File

@ -77,6 +77,7 @@ class CombinationGoodsStockUpdateListener implements ShouldQueue
$updateIds[] = $goodsSku->id; $updateIds[] = $goodsSku->id;
} }
} }
Log::info("updateIds:", $updateIds);
// 计算主商品库存 // 计算主商品库存
if ($combinationGoodsItemIds) { if ($combinationGoodsItemIds) {
$goodsSkuIds = CombinationGood::query() $goodsSkuIds = CombinationGood::query()

View File

@ -94,6 +94,7 @@ abstract class BusinessClient
} }
$orderItem->update($item); $orderItem->update($item);
} }
// 增量更新库存 // 增量更新库存
if ($num && $item['external_sku_id']) { if ($num && $item['external_sku_id']) {
event(new BusinessOrdersUpdate($orderItem, $num)); event(new BusinessOrdersUpdate($orderItem, $num));

View File

@ -20,14 +20,14 @@ class BusinessOrderUpdateTest extends TestCase
*/ */
public function testBasicTest() public function testBasicTest()
{ {
/* $shop = new \App\Models\Shop(); // $shop = new \App\Models\Shop();
$shop->id = 19; // $shop->id = 19;
$shop->plat_id = 1; // $shop->plat_id = 1;
$shop->name = "test"; // $shop->name = "test";
$shop->access_token = "7e00e77428cf45348cb1ca190dc769670377bd0c"; // $shop->access_token = "7e00e77428cf45348cb1ca190dc769670377bd0c";
$endTime = DateTimeUtils::getMicroTime(); // $endTime = DateTimeUtils::getMicroTime();
$beginTime = $endTime - 2*60*60*1000; // $beginTime = $endTime - 2*60*60*1000;
BusinessFactory::init()->make("快团团")->setShop($shop)->downloadAfterSaleOrdersAndSave($beginTime, $endTime, 1);*/ // BusinessFactory::init()->make("快团团")->setShop($shop)->downloadOrdersAndSave($beginTime, $endTime);
} }
} }