Kundenansicht neu E-Fix F4: Team-Wiedereinschalten ohne gesendete Abrechnung nimmt die gespeicherte (Aufbauphase)

WOMS fragt nach einer Team-Sperre die Abrechnung nicht mehr ab und sendet keine; der Server setzte dann pauschal 'abo', pruefeAboDeckung warf
409 abo_fehlt, und eine in der Aufbauphase ('projekt', noch kein Abo) eingebaute Funktion liess sich nicht wieder einschalten.
Jetzt gilt bei disabled/team die am Dokument gespeicherte einrichtungAbrechnung, sonst wie bisher 'abo'; eine ausdrücklich gesendete
Abrechnung geht vor. Test in funktionenAdminAbo.test.js (Aufbauphase: ein, aus, ohne Angabe wieder ein = 200 mit warnung; mit abo hart).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Sonnet 5.5 committed 2026-10-16 21:32:28 +00:00
1 parent 3962074af6
commit 9c04f806eb
2 files changed
+29 -1

No files matched your search

+11 -1
View File
@@ -340,6 +340,16 @@ async function zeitenAbschalten({ customerId, projectId, by, note }) {
const ACTIONS = ['activate', 'disable', 'abnahme', 'ticket']
const TICKET_ACTIONS = ['abnahme', 'ticket']
/**
* Abrechnung, wenn das Team keine sendet: 'abo'. Ausnahme (E-Fix F4): ein vom Team abgeschaltetes Dokument (disabled, disabledReason team) mit gespeicherter
* einrichtungAbrechnung behält sie. WOMS fragt nach einer Team-Sperre nicht mehr nach der Abrechnung (sie steht schon) und sendet keine; ein pauschales 'abo'
* ließe das Wiedereinschalten einer in der Aufbauphase ('projekt', noch kein Abo) eingebauten Funktion an abo_fehlt scheitern.
*/
async function vorgabeAbrechnung(customerId, projectId, key) {
const vorab = await getFeatureDoc(customerId, projectId, key)
return vorab?.state === 'disabled' && vorab.disabledReason === 'team' && ABRECHNUNGEN.includes(vorab.einrichtungAbrechnung) ? vorab.einrichtungAbrechnung : 'abo'
}
funktionenAdminRouter.post('/:customerId/:key', async (req, res) => {
try {
const { customerId, key } = req.params
@@ -362,7 +372,7 @@ funktionenAdminRouter.post('/:customerId/:key', async (req, res) => {
const modell = action === 'activate' && (await aboModellFuerKunde(customerId))
let abrechnung = null
if (modell) {
abrechnung = req.body?.abrechnung === undefined ? 'abo' : req.body.abrechnung
abrechnung = req.body?.abrechnung === undefined ? await vorgabeAbrechnung(customerId, projectId, key) : req.body.abrechnung
if (!ABRECHNUNGEN.includes(abrechnung)) return res.status(400).json({ error: 'Unbekannte Abrechnung' })
}
const rueckmeldung = {} // adminActivate meldet hier die Warnung der Aufbauphase (abo_fehlt)