鲜花2.0-接口测试bug修复
This commit is contained in:
parent
45882b4a72
commit
5734c08ba4
@ -6,6 +6,7 @@ use App\Models\Shop;
|
||||
use App\Services\Business\BusinessFactory;
|
||||
use App\Utils\DateTimeUtils;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
|
||||
class KttOrderQuery extends Command
|
||||
{
|
||||
|
||||
@ -47,19 +47,18 @@ class BusinessOrdersUpdate
|
||||
Log::error("sku 业务更新失败", (array)$this->businessGoodSku);
|
||||
}
|
||||
} catch (\Exception $exception) {
|
||||
Log::error("库存告警发生异常", ["error" => $exception->getMessage()]);
|
||||
Log::error("sku 业务更新发生异常", ["error" => $exception->getMessage()]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private
|
||||
function updateStock()
|
||||
private function updateStock()
|
||||
{
|
||||
$this->goodsSku = GoodsSku::query()
|
||||
->where('external_sku_id', $this->businessGoodSku['external_sku_id'])
|
||||
->first();
|
||||
if (is_null($this->goodsSku)) {
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
$oldStock = $this->goodsSku->stock;
|
||||
$stock = $this->goodsSku->stock + $this->num;
|
||||
@ -82,8 +81,7 @@ class BusinessOrdersUpdate
|
||||
*
|
||||
* @return \Illuminate\Broadcasting\Channel|array
|
||||
*/
|
||||
public
|
||||
function broadcastOn()
|
||||
public function broadcastOn()
|
||||
{
|
||||
return new PrivateChannel('channel-name');
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
|
||||
use App\Models\Log as LogModel;
|
||||
use App\Utils\ArrayUtils;
|
||||
use App\Utils\FormatUtils;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Spatie\Permission\Models\Permission;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
|
||||
@ -41,7 +41,7 @@ class DailyStockRecordController extends Controller
|
||||
$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);
|
||||
}
|
||||
|
||||
|
||||
@ -42,7 +42,7 @@ class LossRecordController extends Controller
|
||||
$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);
|
||||
}
|
||||
|
||||
|
||||
@ -44,7 +44,7 @@ class PurchaseRecordController extends Controller
|
||||
$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);
|
||||
}
|
||||
|
||||
|
||||
@ -42,22 +42,26 @@ class BusinessOrderUpdateListener implements ShouldQueue
|
||||
public function handle(BusinessOrdersUpdate $event)
|
||||
{
|
||||
try {
|
||||
//查询库存是否满足告警规则
|
||||
$skuId = $event->goodsSku->id;
|
||||
$nowTime = Carbon::now()->toDateTimeString();
|
||||
//查找最后一次盘点数据
|
||||
$dailyStockRecord = DailyStockRecord::query()->where("sku_id", '=', $skuId)->
|
||||
where("inventory_time", '<', $nowTime)->orderByDesc('id')->first();
|
||||
$inventory = $dailyStockRecord['inventory'] ?? 0;
|
||||
$expireTime = Carbon::now()->addMinutes(30)->toDateTimeString();
|
||||
$proportion = Cache::remember(CacheKeyEnum::STOCK_RULE_PROPORTION, $expireTime, function () {
|
||||
$developerConfig = DeveloperConfig::query()->where("key", "=", DevConfigKeyEnum::STOCK_RULE_PROPORTION)->first();
|
||||
return $developerConfig['value'] ?? DevConfigKeyEnum::DEFAULT_STOCK_RULE_PROPORTION;
|
||||
});
|
||||
//库存比例小于最近盘点多少告警 一天也只是告警一次
|
||||
if ($inventory > 10 && $inventory * $proportion > $event->goodsSku->stock) {
|
||||
$messageService = new MessageService();
|
||||
$messageService->createLowerStockNoticeMessage($inventory, $event->goodsSku->toArray());
|
||||
|
||||
if(!empty($event->goodsSku)){
|
||||
//查询库存是否满足告警规则
|
||||
$skuId = $event->goodsSku->id;
|
||||
$nowTime = Carbon::now()->toDateTimeString();
|
||||
//查找最后一次盘点数据
|
||||
$dailyStockRecord = DailyStockRecord::query()->where("sku_id", '=', $skuId)->
|
||||
where("inventory_time", '<', $nowTime)->orderByDesc('id')->first();
|
||||
|
||||
$inventory = $dailyStockRecord['inventory'] ?? 0;
|
||||
$expireTime = Carbon::now()->addMinutes(30)->toDateTimeString();
|
||||
$proportion = Cache::remember(CacheKeyEnum::STOCK_RULE_PROPORTION, $expireTime, function () {
|
||||
$developerConfig = DeveloperConfig::query()->where("key", "=", DevConfigKeyEnum::STOCK_RULE_PROPORTION)->first();
|
||||
return $developerConfig['value'] ?? DevConfigKeyEnum::DEFAULT_STOCK_RULE_PROPORTION;
|
||||
});
|
||||
//库存比例小于最近盘点多少告警 一天也只是告警一次
|
||||
if ($inventory > 10 && $inventory * $proportion > $event->goodsSku->stock) {
|
||||
$messageService = new MessageService();
|
||||
$messageService->createLowerStockNoticeMessage($inventory, $event->goodsSku->toArray());
|
||||
}
|
||||
}
|
||||
}catch(\Exception $exception) {
|
||||
Log::error("库存告警发生异常",["error"=>$exception->getMessage()]);
|
||||
|
||||
@ -77,6 +77,7 @@ class CombinationGoodsStockUpdateListener implements ShouldQueue
|
||||
$updateIds[] = $goodsSku->id;
|
||||
}
|
||||
}
|
||||
Log::info("updateIds:", $updateIds);
|
||||
// 计算主商品库存
|
||||
if ($combinationGoodsItemIds) {
|
||||
$goodsSkuIds = CombinationGood::query()
|
||||
|
||||
@ -94,6 +94,7 @@ abstract class BusinessClient
|
||||
}
|
||||
$orderItem->update($item);
|
||||
}
|
||||
|
||||
// 增量更新库存
|
||||
if ($num && $item['external_sku_id']) {
|
||||
event(new BusinessOrdersUpdate($orderItem, $num));
|
||||
|
||||
@ -20,14 +20,14 @@ class BusinessOrderUpdateTest extends TestCase
|
||||
*/
|
||||
public function testBasicTest()
|
||||
{
|
||||
/* $shop = new \App\Models\Shop();
|
||||
$shop->id = 19;
|
||||
$shop->plat_id = 1;
|
||||
$shop->name = "test";
|
||||
$shop->access_token = "7e00e77428cf45348cb1ca190dc769670377bd0c";
|
||||
$endTime = DateTimeUtils::getMicroTime();
|
||||
$beginTime = $endTime - 2*60*60*1000;
|
||||
BusinessFactory::init()->make("快团团")->setShop($shop)->downloadAfterSaleOrdersAndSave($beginTime, $endTime, 1);*/
|
||||
// $shop = new \App\Models\Shop();
|
||||
// $shop->id = 19;
|
||||
// $shop->plat_id = 1;
|
||||
// $shop->name = "test";
|
||||
// $shop->access_token = "7e00e77428cf45348cb1ca190dc769670377bd0c";
|
||||
// $endTime = DateTimeUtils::getMicroTime();
|
||||
// $beginTime = $endTime - 2*60*60*1000;
|
||||
// BusinessFactory::init()->make("快团团")->setShop($shop)->downloadOrdersAndSave($beginTime, $endTime);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user