Ctrl K
ComunidadGuías…

sql-scripts/04_demo.sql

Rama develop · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
/* ==========================================================================================================
    Taskist - Sample data (optional)

    One sample client, project, module and sub-module, so a fresh installation has something to explore.
    For evaluation and development only: skip it on a real deployment.

    Run after 02_defaults.sql. Idempotent: rows are matched on their name, so re-running inserts only what
    is missing.
========================================================================================================== */

SET NOCOUNT ON;
SET XACT_ABORT ON;
BEGIN TRANSACTION;

IF NOT EXISTS (SELECT 1 FROM [Client] WHERE [Name] = N'Acme Corporation')
    INSERT INTO [Client] ([Name], [Description], [ContactPerson], [PhoneNumber], [Email], [Website], [Active], [Deleted])
    VALUES (N'Acme Corporation', N'Sample client for getting started.', N'John Doe', N'0000000000', N'contact@taskist.org', N'https://acme.test', 1, 0);

DECLARE @clientId INT = (SELECT TOP (1) [Id] FROM [Client] WHERE [Name] = N'Acme Corporation' ORDER BY [Id]);

IF NOT EXISTS (SELECT 1 FROM [Project] WHERE [Name] = N'Sample Project')
    INSERT INTO [Project] ([Name], [Description], [StartDate], [EndDate], [ClientId], [ProjectManagerId], [TeamLeadId], [GitProjectReference], [Active], [Deleted])
    VALUES (N'Sample Project', N'Sample project for getting started.', '2024-01-01', NULL, @clientId, NULL, NULL, NULL, 1, 0);

DECLARE @projectId INT = (SELECT TOP (1) [Id] FROM [Project] WHERE [Name] = N'Sample Project' ORDER BY [Id]);

IF NOT EXISTS (SELECT 1 FROM [Module] WHERE [Name] = N'General' AND [ProjectId] = @projectId)
    INSERT INTO [Module] ([Name], [Description], [ProjectId], [Active], [Deleted])
    VALUES (N'General', N'Default module.', @projectId, 1, 0);

DECLARE @moduleId INT = (SELECT TOP (1) [Id] FROM [Module] WHERE [Name] = N'General' AND [ProjectId] = @projectId ORDER BY [Id]);

IF NOT EXISTS (SELECT 1 FROM [SubModule] WHERE [Name] = N'General' AND [ModuleId] = @moduleId)
    INSERT INTO [SubModule] ([Name], [Description], [ModuleId], [OwnerId], [Active], [Deleted])
    VALUES (N'General', N'Default sub-module.', @moduleId, NULL, 1, 0);

COMMIT TRANSACTION;
PRINT 'Sample data seeded.';