1
0
Fork 0
mirror of https://github.com/s-frick/effigenix.git synced 2026-03-28 17:04:49 +01:00
effigenix/backend/docs/mvp/ddd/10-supporting-bcs.md
Sebastian Frick c2c48a03e8 refactor: restructure repository with separate backend and frontend directories
- Move Java backend to backend/ directory
- Create frontend/ directory for TypeScript TUI and future WebUI
- Update .gitignore for Node.js and worktrees
- Update README.md with new repository structure
- Copy documentation to backend/
2026-02-17 22:08:51 +01:00

2 KiB

Supporting BCs - Übersicht

Domain Type: SUPPORTING DDD-Aufwand: Vereinfacht (weniger Komplexität als Core)


Master Data BC

Article (Aggregate Root)

Article
├── ArticleId
├── ArticleName
├── ArticleNumber (SKU)
├── Category (ProductCategory)
├── SalesUnits[] (Entity)
│   ├── Unit (PIECE_FIXED | KG | 100G | PIECE_VARIABLE)
│   ├── PriceModel (FIXED | WEIGHT_BASED)
│   └── Price (Money)
├── Status (ACTIVE | INACTIVE)
└── Supplier References[]

Supplier (Aggregate Root)

Supplier
├── SupplierId
├── Name
├── Address
├── PaymentTerms
├── QualityCertificates[]
└── Rating (Quality, Delivery, Price)

Customer (Aggregate Root)

Customer
├── CustomerId
├── CustomerType (B2C | B2B)
├── Name
├── DeliveryAddresses[]
├── FrameContract (optional)
└── Preferences (Bio, Regional, etc.)

Sales BC

Order (Aggregate Root)

Order
├── OrderId
├── OrderType (PRE_ORDER | B2B_ORDER | WALK_IN)
├── CustomerId
├── OrderDate
├── DeliveryDate
├── Items[]
└── Status (OPEN | CONFIRMED | FULFILLED)

Invoice (Aggregate Root)

Invoice
├── InvoiceId
├── OrderId
├── InvoiceDate
├── Items[]
├── TotalAmount
└── PaymentStatus (OPEN | PAID | OVERDUE)

Scale Integration BC

ScaleSyncJob (Aggregate Root)

ScaleSyncJob
├── SyncJobId
├── ScaleId
├── SyncType (ARTICLES | PRICES | LABELS)
├── Status (PENDING | IN_PROGRESS | COMPLETED | FAILED)
└── SyncedAt

BondDataImport (Aggregate Root)

BondDataImport
├── ImportId
├── ImportDate
├── BranchId
├── ScaleId
├── SalesData[] (Entity)
│   ├── ArticleId
│   ├── Quantity
│   ├── Price
│   ├── SoldAt
│   └── BatchId (if traceable)
└── Status (PENDING | IMPORTED | FAILED)

Triggers: StockMovement for each sale