broadcastToAll($senderEmail, $subject, $body);
} else {
// 群发给指定用户
$recipientList = array_filter(array_map('trim', explode(',', $recipients)));
if (empty($recipientList)) {
$error = "请指定收件人";
} else {
$result = $broadcastService->broadcastToUsers($senderEmail, $recipientList, $subject, $body);
}
}
if (isset($result)) {
if ($result['success'] > 0) {
$message = "群发成功!成功发送 {$result['success']} 封邮件";
if ($result['failed'] > 0) {
$message .= ",失败 {$result['failed']} 封";
}
if (!empty($result['errors'])) {
$error = "部分失败:" . implode('
', array_slice($result['errors'], 0, 5));
if (count($result['errors']) > 5) {
$error .= "
... 还有 " . (count($result['errors']) - 5) . " 个错误";
}
}
} else {
$error = "群发失败:" . implode('
', $result['errors']);
}
}
} catch (Exception $e) {
$error = "群发失败: " . $e->getMessage();
}
}
}
// 获取所有用户列表(用于选择收件人)
$allUsers = $userRepo->getAll();
?>