{
  "Version": 1,
  "DatabaseName": "AuroraRetail",
  "Source": "demo",
  "SavedUtc": "2026-07-11T16:25:45.4130603+00:00",
  "Nodes": [
    {
      "Id": "1",
      "Schema": "dbo",
      "Name": "Customers",
      "Type": 0,
      "Definition": "CREATE TABLE dbo.Customers (\n  CustomerId INT IDENTITY PRIMARY KEY,\n  Email NVARCHAR(256) NOT NULL UNIQUE,\n  FullName NVARCHAR(200) NOT NULL,\n  CreatedUtc DATETIME2 NOT NULL DEFAULT SYSUTCDATETIME()\n);",
      "FullName": "dbo.Customers"
    },
    {
      "Id": "2",
      "Schema": "dbo",
      "Name": "Orders",
      "Type": 0,
      "Definition": "CREATE TABLE dbo.Orders (\n  OrderId INT IDENTITY PRIMARY KEY,\n  CustomerId INT NOT NULL REFERENCES dbo.Customers(CustomerId),\n  Status TINYINT NOT NULL DEFAULT 0,\n  PlacedUtc DATETIME2 NOT NULL DEFAULT SYSUTCDATETIME()\n);",
      "FullName": "dbo.Orders"
    },
    {
      "Id": "3",
      "Schema": "dbo",
      "Name": "OrderLines",
      "Type": 0,
      "Definition": "CREATE TABLE dbo.OrderLines (\n  OrderLineId BIGINT IDENTITY PRIMARY KEY,\n  OrderId INT NOT NULL REFERENCES dbo.Orders(OrderId),\n  ProductId INT NOT NULL REFERENCES dbo.Products(ProductId),\n  Quantity INT NOT NULL,\n  UnitPrice DECIMAL(10,2) NOT NULL\n);",
      "FullName": "dbo.OrderLines"
    },
    {
      "Id": "4",
      "Schema": "dbo",
      "Name": "Products",
      "Type": 0,
      "Definition": "CREATE TABLE dbo.Products (\n  ProductId INT IDENTITY PRIMARY KEY,\n  CategoryId INT NOT NULL REFERENCES dbo.Categories(CategoryId),\n  SupplierId INT NOT NULL REFERENCES dbo.Suppliers(SupplierId),\n  Sku NVARCHAR(32) NOT NULL UNIQUE,\n  Name NVARCHAR(200) NOT NULL,\n  ListPrice DECIMAL(10,2) NOT NULL\n);",
      "FullName": "dbo.Products"
    },
    {
      "Id": "5",
      "Schema": "dbo",
      "Name": "Categories",
      "Type": 0,
      "Definition": null,
      "FullName": "dbo.Categories"
    },
    {
      "Id": "6",
      "Schema": "dbo",
      "Name": "Suppliers",
      "Type": 0,
      "Definition": null,
      "FullName": "dbo.Suppliers"
    },
    {
      "Id": "7",
      "Schema": "dbo",
      "Name": "Inventory",
      "Type": 0,
      "Definition": null,
      "FullName": "dbo.Inventory"
    },
    {
      "Id": "8",
      "Schema": "audit",
      "Name": "AuditLog",
      "Type": 0,
      "Definition": null,
      "FullName": "audit.AuditLog"
    },
    {
      "Id": "9",
      "Schema": "dbo",
      "Name": "vw_OpenOrders",
      "Type": 1,
      "Definition": "CREATE VIEW dbo.vw_OpenOrders AS\nSELECT o.OrderId, c.FullName, o.PlacedUtc,\n       dbo.fn_OrderTotal(o.OrderId) AS OrderTotal\nFROM dbo.Orders o\nJOIN dbo.Customers c ON c.CustomerId = o.CustomerId\nWHERE o.Status IN (0, 1);",
      "FullName": "dbo.vw_OpenOrders"
    },
    {
      "Id": "10",
      "Schema": "dbo",
      "Name": "vw_ProductCatalog",
      "Type": 1,
      "Definition": "CREATE VIEW dbo.vw_ProductCatalog AS\nSELECT p.Sku, p.Name, cat.Name AS Category, s.Name AS Supplier,\n       p.ListPrice, i.OnHand\nFROM dbo.Products p\nJOIN dbo.Categories cat ON cat.CategoryId = p.CategoryId\nJOIN dbo.Suppliers s   ON s.SupplierId   = p.SupplierId\nJOIN dbo.Inventory i   ON i.ProductId    = p.ProductId;",
      "FullName": "dbo.vw_ProductCatalog"
    },
    {
      "Id": "11",
      "Schema": "sales",
      "Name": "vw_CustomerLifetimeValue",
      "Type": 1,
      "Definition": null,
      "FullName": "sales.vw_CustomerLifetimeValue"
    },
    {
      "Id": "12",
      "Schema": "dbo",
      "Name": "usp_PlaceOrder",
      "Type": 2,
      "Definition": "CREATE PROCEDURE dbo.usp_PlaceOrder\n  @CustomerId INT, @Lines dbo.OrderLineList READONLY\nAS\nBEGIN\n  SET NOCOUNT ON;\n  BEGIN TRAN;\n    INSERT dbo.Orders (CustomerId) VALUES (@CustomerId);\n    DECLARE @OrderId INT = SCOPE_IDENTITY();\n    INSERT dbo.OrderLines (OrderId, ProductId, Quantity, UnitPrice)\n    SELECT @OrderId, ProductId, Quantity, dbo.fn_CurrentPrice(ProductId)\n    FROM @Lines;\n    UPDATE i SET OnHand = i.OnHand - l.Quantity\n    FROM dbo.Inventory i JOIN @Lines l ON l.ProductId = i.ProductId;\n  COMMIT;\nEND",
      "FullName": "dbo.usp_PlaceOrder"
    },
    {
      "Id": "13",
      "Schema": "dbo",
      "Name": "usp_RestockInventory",
      "Type": 2,
      "Definition": null,
      "FullName": "dbo.usp_RestockInventory"
    },
    {
      "Id": "14",
      "Schema": "sales",
      "Name": "usp_MonthlySalesReport",
      "Type": 2,
      "Definition": null,
      "FullName": "sales.usp_MonthlySalesReport"
    },
    {
      "Id": "15",
      "Schema": "dbo",
      "Name": "fn_OrderTotal",
      "Type": 3,
      "Definition": "CREATE FUNCTION dbo.fn_OrderTotal (@OrderId INT)\nRETURNS DECIMAL(12,2) AS\nBEGIN\n  RETURN (SELECT SUM(Quantity * UnitPrice)\n          FROM dbo.OrderLines WHERE OrderId = @OrderId);\nEND",
      "FullName": "dbo.fn_OrderTotal"
    },
    {
      "Id": "16",
      "Schema": "dbo",
      "Name": "fn_CustomerTier",
      "Type": 3,
      "Definition": null,
      "FullName": "dbo.fn_CustomerTier"
    },
    {
      "Id": "17",
      "Schema": "dbo",
      "Name": "trg_Orders_Audit",
      "Type": 5,
      "Definition": "CREATE TRIGGER dbo.trg_Orders_Audit ON dbo.Orders AFTER INSERT, UPDATE AS\nINSERT audit.AuditLog (TableName, KeyValue, ChangedUtc)\nSELECT \u0027Orders\u0027, OrderId, SYSUTCDATETIME() FROM inserted;",
      "FullName": "dbo.trg_Orders_Audit"
    }
  ],
  "Edges": [
    {
      "SourceObjectId": "2",
      "TargetObjectId": "1",
      "Kind": 0,
      "Label": "FK_Orders_Customers"
    },
    {
      "SourceObjectId": "3",
      "TargetObjectId": "2",
      "Kind": 0,
      "Label": "FK_OrderLines_Orders"
    },
    {
      "SourceObjectId": "3",
      "TargetObjectId": "4",
      "Kind": 0,
      "Label": "FK_OrderLines_Products"
    },
    {
      "SourceObjectId": "4",
      "TargetObjectId": "5",
      "Kind": 0,
      "Label": "FK_Products_Categories"
    },
    {
      "SourceObjectId": "4",
      "TargetObjectId": "6",
      "Kind": 0,
      "Label": "FK_Products_Suppliers"
    },
    {
      "SourceObjectId": "7",
      "TargetObjectId": "4",
      "Kind": 0,
      "Label": "FK_Inventory_Products"
    },
    {
      "SourceObjectId": "9",
      "TargetObjectId": "2",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "9",
      "TargetObjectId": "1",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "9",
      "TargetObjectId": "15",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "10",
      "TargetObjectId": "4",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "10",
      "TargetObjectId": "5",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "10",
      "TargetObjectId": "6",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "10",
      "TargetObjectId": "7",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "11",
      "TargetObjectId": "1",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "11",
      "TargetObjectId": "3",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "11",
      "TargetObjectId": "16",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "12",
      "TargetObjectId": "2",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "12",
      "TargetObjectId": "3",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "12",
      "TargetObjectId": "7",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "13",
      "TargetObjectId": "7",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "13",
      "TargetObjectId": "6",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "14",
      "TargetObjectId": "9",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "14",
      "TargetObjectId": "11",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "15",
      "TargetObjectId": "3",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "16",
      "TargetObjectId": "2",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "16",
      "TargetObjectId": "3",
      "Kind": 1,
      "Label": null
    },
    {
      "SourceObjectId": "17",
      "TargetObjectId": "2",
      "Kind": 3,
      "Label": "AFTER INSERT, UPDATE"
    },
    {
      "SourceObjectId": "17",
      "TargetObjectId": "8",
      "Kind": 3,
      "Label": null
    }
  ]
}