sql-scripts/04_demo.sql
Rama develop · réplica de lectura del repositorio original.
/* ==========================================================================================================
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.';