1, 'title' => '全员立减活动', 'type' => 'full_reduce', 'rules' => json_encode(['user_type' => 'all']) ]; $resAll = \addons\shopro\model\Activity::isUserEligible($activityAll, 10001); echo "[TEST 1] 全员活动校验结果: " . ($resAll ? "通过(true)" : "未通过(false)") . "\n"; // 2. 新人专享活动测试 $activityNew = [ 'id' => 2, 'title' => '新人专享首单立减活动', 'type' => 'full_reduce', 'rules' => json_encode([ 'user_type' => 'new_user', 'new_user_order_count' => 0, 'new_user_register_days' => 0 ]) ]; $resNewUserNull = \addons\shopro\model\Activity::isUserEligible($activityNew, null); echo "[TEST 2] 新人专享活动(未关联用户)校验结果: " . ($resNewUserNull ? "通过(true)" : "未通过(false)") . "\n"; // 3. 标签生成测试 $tagsAll = \addons\shopro\model\Activity::formatRuleTags('full_reduce', ['user_type' => 'all', 'type' => 'money', 'discounts' => [['full' => 100, 'discount' => 10]]]); $tagsNew = \addons\shopro\model\Activity::formatRuleTags('full_reduce', ['user_type' => 'new_user', 'type' => 'money', 'discounts' => [['full' => 100, 'discount' => 20]]]); echo "[TEST 3] 全员活动标签: " . implode(', ', $tagsAll) . "\n"; echo "[TEST 4] 新人活动标签: " . implode(', ', $tagsNew) . "\n";