feat(agrarmonitor): Cookies in den Einstellungen zurücksetzen
Build and Push Multi-Platform Images / build-and-push (push) Successful in 42s
Build and Push Multi-Platform Images / build-and-push (push) Successful in 42s
Neuer Button „Cookies zurücksetzen“ neben „Status abrufen“. Er löscht die gespeicherte Agrarmonitor-Session samt Cookie-Datei; beim nächsten Zugriff meldet sich der Manager neu an. Eine laufende Connector-Instanz wird über clearSession() zurückgesetzt und verworfen, damit sie ihren alten Cookie-Jar nicht wieder in die Datei schreibt. Während einer Lieferantennummern-Vergabe ist das Zurücksetzen gesperrt. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
549948913a
commit
0ff78707d1
5 files changed
+133
-18
No files matched your search
@@ -317,6 +317,8 @@ export const agrarmonitorApi = {
|
||||
api.post<SyncCorrespondentsResult>('/api/agrarmonitor/sync-correspondents').then((r) => r.data),
|
||||
mergeCorrespondents: (keepId: number, deleteId: number) =>
|
||||
api.post<{ mergedDocuments: number }>('/api/agrarmonitor/merge-correspondents', { keepId, deleteId }).then((r) => r.data),
|
||||
resetCookies: () =>
|
||||
api.post<{ success: boolean; message: string }>('/api/agrarmonitor/reset-cookies').then((r) => r.data),
|
||||
getLieferantennummernStatus: () =>
|
||||
api.get<LieferantennummerStatus>('/api/agrarmonitor/lieferantennummern/status').then((r) => r.data),
|
||||
lieferantennummernVorschau: () =>
|
||||
|
||||
@@ -2529,6 +2529,7 @@ function AgrarmonitorTab() {
|
||||
const [pollingForm] = Form.useForm();
|
||||
const [loading, setLoading] = useState(false);
|
||||
const [registering, setRegistering] = useState(false);
|
||||
const [cookiesResetting, setCookiesResetting] = useState(false);
|
||||
const [pollingConfigLoading, setPollingConfigLoading] = useState(false);
|
||||
const [pollingSaving, setPollingSaving] = useState(false);
|
||||
const [pollingRunning, setPollingRunning] = useState(false);
|
||||
@@ -2555,6 +2556,20 @@ function AgrarmonitorTab() {
|
||||
}
|
||||
};
|
||||
|
||||
const handleResetCookies = async () => {
|
||||
setCookiesResetting(true);
|
||||
try {
|
||||
const result = await agrarmonitorApi.resetCookies();
|
||||
setStatus(null);
|
||||
setRegisterResult(null);
|
||||
message.success(result.message);
|
||||
} catch (err) {
|
||||
message.error(fehlermeldung(err, 'Cookies konnten nicht gelöscht werden'));
|
||||
} finally {
|
||||
setCookiesResetting(false);
|
||||
}
|
||||
};
|
||||
|
||||
const handleRegister = async () => {
|
||||
const values = await form.validateFields();
|
||||
setRegistering(true);
|
||||
@@ -2646,9 +2661,29 @@ function AgrarmonitorTab() {
|
||||
|
||||
<Space direction="vertical" style={{ width: '100%' }}>
|
||||
<div>
|
||||
<Button loading={loading} onClick={handleLoadStatus}>
|
||||
Status abrufen
|
||||
</Button>
|
||||
<Space>
|
||||
<Button loading={loading} onClick={handleLoadStatus}>
|
||||
Status abrufen
|
||||
</Button>
|
||||
<Popconfirm
|
||||
title="Agrarmonitor-Cookies löschen?"
|
||||
description={
|
||||
<div style={{ maxWidth: 320 }}>
|
||||
Die gespeicherte Agrarmonitor-Session wird verworfen. Beim nächsten Zugriff meldet sich
|
||||
der Manager neu an. Möglicherweise muss das Gerät danach neu registriert bzw.
|
||||
freigeschaltet werden.
|
||||
</div>
|
||||
}
|
||||
okText="Löschen"
|
||||
okButtonProps={{ danger: true }}
|
||||
cancelText="Abbrechen"
|
||||
onConfirm={handleResetCookies}
|
||||
>
|
||||
<Button danger loading={cookiesResetting}>
|
||||
Cookies zurücksetzen
|
||||
</Button>
|
||||
</Popconfirm>
|
||||
</Space>
|
||||
</div>
|
||||
|
||||
{status && (
|
||||
|
||||
Reference in new issue
Block a user