34 lines
823 B
PHP
34 lines
823 B
PHP
<?php
|
|
|
|
namespace app\queue\redis;
|
|
|
|
use app\admin\logic\store_product\StoreProductLogic;
|
|
use Webman\RedisQueue\Consumer;
|
|
use support\Log;
|
|
|
|
/**
|
|
* 复制商品
|
|
*/
|
|
class CopyProductSend implements Consumer
|
|
{
|
|
// 要消费的队列名
|
|
public $queue = 'copy-product';
|
|
|
|
// 连接名,对应 plugin/webman/redis-queue/redis.php 里的连接`
|
|
public $connection = 'default';
|
|
|
|
// 消费
|
|
public function consume($data)
|
|
{
|
|
$store_arr=$data['store_arr'];
|
|
foreach ($store_arr as $key => $id) {
|
|
StoreProductLogic::copy($data['product_id'],$id);
|
|
}
|
|
}
|
|
public function onConsumeFailure(\Throwable $e, $package)
|
|
{
|
|
$package['max_attempts']=0;
|
|
Log::error('复制商品失败product_id:'.$package['data']['product_id']);
|
|
return $package;
|
|
}
|
|
} |