feat: omnichannel contactmoment registration (#234)#307
feat: omnichannel contactmoment registration (#234)#307rubenvdlinde wants to merge 12 commits intodevelopmentfrom
Conversation
- design.md referenced 'ContactmomentList.vue' (missing 'en') in 3 places; corrected to match actual filename 'ContactmomentenList.vue' Co-fixed-by: Juan Claude van Damme <hydra-reviewer@conduction.nl>
…el-registratie' into feature/234/2026-03-20-omnichannel-registratie
Quality Report — ConductionNL/pipelinq @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ❌ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| composer | ✅ | ✅ 100/100 | |||
| npm | ✅ | ✅ 249/249 | |||
| PHPUnit | ⏭️ | ||||
| Newman | ⏭️ | ||||
| Playwright | ❌ |
Spec coverage: 14% (42 tests / 298 specs)
Quality workflow — 2026-04-20 20:44 UTC
Download the full PDF report from the workflow artifacts.
Security Review — Clyde BarcodeResult: PASS (0 fixed, 0 unfixed, 0 blocking) Scope3 changed files reviewed: Checks Run
Drift Signal — npm auditThe pre-run quality stage reported Summary
No inline comments posted — no per-file findings to annotate. |
Closes #234
Summary
Implements omnichannel contact registration enabling KCC agents to register interactions from any channel (phone, email, counter, chat, social media, letter). Adds contactmoment entity with channel-specific metadata, adaptive form based on channel selection, call timer for phone contacts, and filterable contact moment list with search and CSV export.
Spec Reference
openspec/changes/2026-03-20-omnichannel-registratie/design.mdChanges
lib/Settings/pipelinq_register.json— Added contactmoment schema with VNG Klantinteracties alignmentsrc/views/contactmomenten/ContactmomentList.vue— Filterable list with channel icons, search, CSV exportsrc/views/contactmomenten/ContactmomentForm.vue— Adaptive form based on channel selectionsrc/views/contactmomenten/ContactmomentDetail.vue— Full detail view with linked entitiessrc/components/CallTimer.vue— MM:SS timer component for phone call duration trackingsrc/router/index.js— Added contactmomenten routes (/contactmomenten, /contactmomenten/new, /contactmomenten/:id)src/navigation/MainMenu.vue— Added Contact Moments navigation entryTest Coverage