// +---------------------------------------------------------------------- declare (strict_types = 1); namespace app\console\task; use app\console\service\Commissions as CommissionsService; /** * 商城定时任务 * Class UserCommissions * @package app\console\task */ class Commissions extends Task { // 当前任务唯一标识 private $taskKey = 'UserCommissions'; // 任务执行间隔时长 (单位:秒) protected $taskExpire = 30; // 当前商城ID private $storeId; /** * 任务处理 * @param array $param */ public function handle(array $param) { ['storeId' => $this->storeId] = $param; $this->setInterval($this->storeId, $this->taskKey, $this->taskExpire, function () { echo $this->taskKey . PHP_EOL; // 设置优惠券过期状态 $this->endClearing(); }); } /** * 设置优惠券过期状态 */ private function endClearing() { $service = new CommissionsService(); $service->finishClearing($this->storeId); } }