- Add HJF jobs, services, DAOs, models, admin/API controllers, release command - Respect brokerage_timing (on_pay vs confirm); dispatch HjfOrderPayJob for queue goods - Queue-only cycle commission and position index fix in StoreOrderCreateServices - UserBill income types: frozen_points_brokerage, frozen_points_release - Timer: fsgx_release_frozen_points -> PointsReleaseServices - Agent tasks: no_assess filtering for direct/umbrella counts - Migrations: queue_pool, points_release_log, fsgx_v1 checklist updates - Admin/uniapp: crontab preset, membership level, user list, finance routes, docs Made-with: Cursor
40 lines
1011 B
PHP
40 lines
1011 B
PHP
<?php
|
||
declare(strict_types=1);
|
||
|
||
namespace app\jobs\hjf;
|
||
|
||
use app\services\agent\AgentLevelServices;
|
||
use crmeb\basic\BaseJobs;
|
||
use crmeb\traits\QueueTrait;
|
||
|
||
/**
|
||
* 会员等级异步检查 Job(改造复用版)
|
||
*
|
||
* 委托给 AgentLevelServices::checkUserLevelFinish() 复用 CRMEB 分销等级升级流程。
|
||
*
|
||
* Class MemberLevelCheckJob
|
||
* @package app\jobs\hjf
|
||
*/
|
||
class MemberLevelCheckJob extends BaseJobs
|
||
{
|
||
use QueueTrait;
|
||
|
||
public function doJob(int $uid): bool
|
||
{
|
||
try {
|
||
/** @var AgentLevelServices $levelServices */
|
||
$levelServices = app()->make(AgentLevelServices::class);
|
||
$levelServices->checkUserLevelFinish($uid);
|
||
} catch (\Throwable $e) {
|
||
response_log_write([
|
||
'message' => "会员等级检查失败 uid={$uid}: " . $e->getMessage(),
|
||
'file' => $e->getFile(),
|
||
'line' => $e->getLine(),
|
||
]);
|
||
return false;
|
||
}
|
||
|
||
return true;
|
||
}
|
||
}
|