mirror of
https://github.com/s-frick/effigenix.git
synced 2026-03-28 17:19:56 +01:00
feat(cli): Stammdaten-TUI mit Master Data API-Anbindung
- Neue Screens: Kategorien, Lieferanten, Artikel, Kunden (jeweils Liste, Detail, Anlegen + Detailaktionen wie Bewertung, Zertifikate, Verkaufseinheiten, Lieferadressen, Präferenzen) - API-Client: Resources für alle 4 Stammdaten-Aggregate implementiert (categories, suppliers, articles, customers) mit Mapping von verschachtelten Domain-VOs auf flache DTOs - Lieferant, Artikel, Kategorie: echte HTTP-Calls gegen Backend (/api/suppliers, /api/articles, /api/categories, /api/customers) - 204-No-Content-Endpoints (removeSalesUnit, removeSupplier, removeCertificate, removeDeliveryAddress, removeFrameContract) lösen Re-Fetch des Aggregats aus - MasterdataMenu, Navigation-Erweiterung, App.tsx-Routing
This commit is contained in:
parent
797f435a49
commit
d27dbaa843
30 changed files with 3882 additions and 1 deletions
|
|
@ -12,6 +12,25 @@ import { UserDetailScreen } from './components/users/UserDetailScreen.js';
|
|||
import { ChangePasswordScreen } from './components/users/ChangePasswordScreen.js';
|
||||
import { RoleListScreen } from './components/roles/RoleListScreen.js';
|
||||
import { RoleDetailScreen } from './components/roles/RoleDetailScreen.js';
|
||||
// Stammdaten
|
||||
import { MasterdataMenu } from './components/masterdata/MasterdataMenu.js';
|
||||
import { CategoryListScreen } from './components/masterdata/categories/CategoryListScreen.js';
|
||||
import { CategoryDetailScreen } from './components/masterdata/categories/CategoryDetailScreen.js';
|
||||
import { CategoryCreateScreen } from './components/masterdata/categories/CategoryCreateScreen.js';
|
||||
import { SupplierListScreen } from './components/masterdata/suppliers/SupplierListScreen.js';
|
||||
import { SupplierDetailScreen } from './components/masterdata/suppliers/SupplierDetailScreen.js';
|
||||
import { SupplierCreateScreen } from './components/masterdata/suppliers/SupplierCreateScreen.js';
|
||||
import { RateSupplierScreen } from './components/masterdata/suppliers/RateSupplierScreen.js';
|
||||
import { AddCertificateScreen } from './components/masterdata/suppliers/AddCertificateScreen.js';
|
||||
import { ArticleListScreen } from './components/masterdata/articles/ArticleListScreen.js';
|
||||
import { ArticleDetailScreen } from './components/masterdata/articles/ArticleDetailScreen.js';
|
||||
import { ArticleCreateScreen } from './components/masterdata/articles/ArticleCreateScreen.js';
|
||||
import { AddSalesUnitScreen } from './components/masterdata/articles/AddSalesUnitScreen.js';
|
||||
import { CustomerListScreen } from './components/masterdata/customers/CustomerListScreen.js';
|
||||
import { CustomerDetailScreen } from './components/masterdata/customers/CustomerDetailScreen.js';
|
||||
import { CustomerCreateScreen } from './components/masterdata/customers/CustomerCreateScreen.js';
|
||||
import { AddDeliveryAddressScreen } from './components/masterdata/customers/AddDeliveryAddressScreen.js';
|
||||
import { SetPreferencesScreen } from './components/masterdata/customers/SetPreferencesScreen.js';
|
||||
|
||||
function ScreenRouter() {
|
||||
const { isAuthenticated, loading } = useAuth();
|
||||
|
|
@ -49,6 +68,25 @@ function ScreenRouter() {
|
|||
{current === 'change-password' && <ChangePasswordScreen />}
|
||||
{current === 'role-list' && <RoleListScreen />}
|
||||
{current === 'role-detail' && <RoleDetailScreen />}
|
||||
{/* Stammdaten */}
|
||||
{current === 'masterdata-menu' && <MasterdataMenu />}
|
||||
{current === 'category-list' && <CategoryListScreen />}
|
||||
{current === 'category-detail' && <CategoryDetailScreen />}
|
||||
{current === 'category-create' && <CategoryCreateScreen />}
|
||||
{current === 'supplier-list' && <SupplierListScreen />}
|
||||
{current === 'supplier-detail' && <SupplierDetailScreen />}
|
||||
{current === 'supplier-create' && <SupplierCreateScreen />}
|
||||
{current === 'supplier-rate' && <RateSupplierScreen />}
|
||||
{current === 'supplier-add-certificate' && <AddCertificateScreen />}
|
||||
{current === 'article-list' && <ArticleListScreen />}
|
||||
{current === 'article-detail' && <ArticleDetailScreen />}
|
||||
{current === 'article-create' && <ArticleCreateScreen />}
|
||||
{current === 'article-add-sales-unit' && <AddSalesUnitScreen />}
|
||||
{current === 'customer-list' && <CustomerListScreen />}
|
||||
{current === 'customer-detail' && <CustomerDetailScreen />}
|
||||
{current === 'customer-create' && <CustomerCreateScreen />}
|
||||
{current === 'customer-add-delivery-address' && <AddDeliveryAddressScreen />}
|
||||
{current === 'customer-set-preferences' && <SetPreferencesScreen />}
|
||||
</MainLayout>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue