This commit is contained in:
seb
2026-10-13 13:21:11 +02:00
parent a5886b7c92
commit 8a626b17fc
15 changed files with 541 additions and 83 deletions

View File

@@ -1,5 +1,6 @@
/** Drop order = reverse of schema create dependency order. */
export const TABLES = [
'ordersummary',
'package',
'shipping',
'payment',

View File

@@ -1177,6 +1177,44 @@ BEGIN
END
`;
export const INIT_ORDERSUMMARY = `
IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'ordersummary')
BEGIN
CREATE TABLE ordersummary (
id INT IDENTITY(1,1) PRIMARY KEY,
company_id INT NOT NULL,
manifest_id INT NOT NULL CONSTRAINT UQ_ordersummary_manifest UNIQUE,
order_number NVARCHAR(100) NOT NULL,
order_date DATETIME2 NOT NULL,
created_at DATETIME2 NOT NULL CONSTRAINT DF_ordersummary_created_at DEFAULT SYSUTCDATETIME(),
entity_id INT NULL,
customer_name NVARCHAR(255) NULL,
positions INT NOT NULL CONSTRAINT DF_ordersummary_positions DEFAULT 0,
gross_total FLOAT NOT NULL CONSTRAINT DF_ordersummary_gross_total DEFAULT 0,
paid_total FLOAT NOT NULL CONSTRAINT DF_ordersummary_paid_total DEFAULT 0,
ordered_quantity FLOAT NOT NULL CONSTRAINT DF_ordersummary_ordered_quantity DEFAULT 0,
shipped_quantity FLOAT NOT NULL CONSTRAINT DF_ordersummary_shipped_quantity DEFAULT 0,
is_paid TINYINT NOT NULL CONSTRAINT DF_ordersummary_is_paid DEFAULT 0,
is_shipped TINYINT NOT NULL CONSTRAINT DF_ordersummary_is_shipped DEFAULT 0,
CONSTRAINT FK_ordersummary_company FOREIGN KEY (company_id) REFERENCES company(id) ON DELETE NO ACTION,
CONSTRAINT FK_ordersummary_manifest FOREIGN KEY (manifest_id) REFERENCES manifest(id) ON DELETE CASCADE,
CONSTRAINT FK_ordersummary_entity FOREIGN KEY (entity_id) REFERENCES entity(id) ON DELETE SET NULL
);
CREATE INDEX IX_ordersummary_company_date
ON ordersummary (company_id, order_date DESC, manifest_id DESC);
CREATE INDEX IX_ordersummary_company_shipped
ON ordersummary (company_id, is_shipped);
CREATE INDEX IX_ordersummary_company_paid
ON ordersummary (company_id, is_paid);
CREATE INDEX IX_ordersummary_company_number
ON ordersummary (company_id, order_number);
END
`;
export const INIT_MCP_CLIENT = `
IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'mcp_client')
BEGIN
@@ -1299,6 +1337,7 @@ export const SCHEMA_SCRIPTS = [
INIT_PAYMENT,
INIT_SHIPPING,
INIT_PACKAGE,
INIT_ORDERSUMMARY,
INIT_MCP_CLIENT,
INIT_MCP_AUTH_CODE,
INIT_MCP_TOKEN,