Publikt kundgodkännande i delningslänken
Kunden kan nu godkänna eller avböja åtgärdsförslaget direkt i sin Live Share-länk — API:ts enda skrivande publika väg, med sex spärrar som var och en verifieras i integrationstestet: 1. endast delningar på kundnivå (partner-/internlänkar får aldrig svara åt kunden) och aldrig återkallade 2. ärendets ursprungliga delningskod saknar registrerad nivå och kan inte heller svara 3. det måste finnas ett åtgärdsförslag att svara på 4. ett besked per ärende — svaret kan inte ändras i efterhand 5. endast godkant/avbojt/delvis plus kommentar på högst 500 tecken; inget annat kan skrivas till loggen den vägen 6. takt-begränsning per delningskod (429) Beskedet loggas som kundbeslut med kanal "Delningslänk" och avsändaren "Kund via delningslänk"; verkstadens egna registreringar (telefon, på plats …) fungerar precis som förut, och kvalitetsgrindens krav gäller oförändrat. Beslutspanelen visas bara på den publika kundlänken — interna och partnervyer förblir helt skrivskyddade. 73 vitest-tester, integrationstest (åtta nya kontroller för spärrarna) och OpenAPI-validering gröna. Därmed är även den sista dokumenterade avgränsningen utöver externa fordonsdatabaser avklarad. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012EQg3rJsrQ1ZNTvkzmQAtt
This commit is contained in:
@@ -229,6 +229,46 @@ paths:
|
||||
"401": { $ref: "#/components/responses/Fel" }
|
||||
"403": { $ref: "#/components/responses/Fel" }
|
||||
|
||||
/api/delad/{delningskod}/beslut:
|
||||
post:
|
||||
tags: [Delning]
|
||||
summary: Kundens besked på ett åtgärdsförslag
|
||||
description: >
|
||||
Den enda skrivande publika vägen. Endast delningar på **kundnivå**
|
||||
som inte återkallats får svara, det måste finnas ett
|
||||
åtgärdsförslag, och **ett besked per ärende** — svaret kan inte
|
||||
ändras i efterhand. Takt-begränsad per delningskod. Beskedet
|
||||
loggas som `kundbeslut` med kanal `Delningslänk`.
|
||||
security: []
|
||||
parameters:
|
||||
- name: delningskod
|
||||
in: path
|
||||
required: true
|
||||
schema: { type: string }
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
required: [beslut]
|
||||
properties:
|
||||
beslut: { type: string, enum: [godkant, avbojt, delvis] }
|
||||
kommentar: { type: string, maxLength: 500 }
|
||||
responses:
|
||||
"200":
|
||||
description: Beskedet registrerat.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
ok: { type: boolean }
|
||||
"400": { $ref: "#/components/responses/Fel" }
|
||||
"404": { $ref: "#/components/responses/Fel" }
|
||||
"409": { $ref: "#/components/responses/Fel" }
|
||||
"429": { $ref: "#/components/responses/Fel" }
|
||||
|
||||
/api/organisation:
|
||||
get:
|
||||
tags: [Organisation]
|
||||
|
||||
Reference in New Issue
Block a user