Upload via GUI (275 Dateien)
This commit is contained in:
@@ -300,7 +300,12 @@ function fetch_emails_for_account(PDO $pdo, array $account, bool $verbose): arra
|
||||
|
||||
// Zuweisung: Ticket-Regel hat Vorrang, danach Auto-Zuweisung an letzten Bearbeiter
|
||||
$assignTo = $ruleResult['assign_staff'];
|
||||
if ($assignTo === null) {
|
||||
// Einstellung der Abteilung ("Neue Tickets automatisch zuweisen") vor dem letzten Bearbeiter
|
||||
$deptAssignee = $assignTo === null ? department_auto_assignee($pdo, (int) $defaultDeptId) : null;
|
||||
if ($deptAssignee !== null) {
|
||||
$assignTo = $deptAssignee;
|
||||
log_activity($pdo, $ticketId, null, 'Automatisch zugewiesen (Einstellung der Abteilung)');
|
||||
} elseif ($assignTo === null) {
|
||||
$assignTo = find_previous_assignee($pdo, $fromEmail);
|
||||
if ($assignTo !== null) {
|
||||
log_activity($pdo, $ticketId, null, "Automatisch zugewiesen (letzter Bearbeiter: Staff-ID {$assignTo})");
|
||||
|
||||
@@ -1209,6 +1209,24 @@ function run_migrations(PDO $pdo, bool $verbose = false): array
|
||||
}
|
||||
}
|
||||
|
||||
// Migration 0043: Abteilungen können neue Tickets automatisch zuweisen (an einen Mitarbeiter oder reihum).
|
||||
if (!isset($done['php_0043_department_auto_assign'])) {
|
||||
try {
|
||||
$has = function (string $col) use ($pdo): bool {
|
||||
try { $pdo->query("SELECT $col FROM departments LIMIT 1"); return true; } catch (Throwable $e) { return false; }
|
||||
};
|
||||
if (!$has('auto_assign_mode')) $pdo->exec("ALTER TABLE departments ADD COLUMN auto_assign_mode VARCHAR(20) NOT NULL DEFAULT 'none'");
|
||||
if (!$has('auto_assign_staff_id')) $pdo->exec('ALTER TABLE departments ADD COLUMN auto_assign_staff_id INT NULL');
|
||||
if (!$has('auto_assign_last_id')) $pdo->exec('ALTER TABLE departments ADD COLUMN auto_assign_last_id INT NULL');
|
||||
$pdo->prepare('INSERT INTO schema_migrations (migration) VALUES (?)')->execute(['php_0043_department_auto_assign']);
|
||||
$result['applied']++;
|
||||
if ($verbose) $result['log'][] = ' [OK] php_0043_department_auto_assign';
|
||||
} catch (Throwable $e) {
|
||||
$result['errors'][] = 'php_0043_department_auto_assign: ' . $e->getMessage();
|
||||
if ($verbose) $result['log'][] = ' [FAIL] php_0043_department_auto_assign - ' . $e->getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user