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
|
// Zuweisung: Ticket-Regel hat Vorrang, danach Auto-Zuweisung an letzten Bearbeiter
|
||||||
$assignTo = $ruleResult['assign_staff'];
|
$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);
|
$assignTo = find_previous_assignee($pdo, $fromEmail);
|
||||||
if ($assignTo !== null) {
|
if ($assignTo !== null) {
|
||||||
log_activity($pdo, $ticketId, null, "Automatisch zugewiesen (letzter Bearbeiter: Staff-ID {$assignTo})");
|
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;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user