Files
Thinh Lam 688fac73e9
CI/CD / backend (push) Failing after 2m8s
CI/CD / frontend (push) Failing after 1m40s
CI/CD / deploy (push) Has been skipped
sciagent code + Gitea Actions CI/CD
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 09:38:30 +07:00

654 lines
21 KiB
Transact-SQL

IF OBJECT_ID(N'[__EFMigrationsHistory]') IS NULL
BEGIN
CREATE TABLE [__EFMigrationsHistory] (
[MigrationId] nvarchar(150) NOT NULL,
[ProductVersion] nvarchar(32) NOT NULL,
CONSTRAINT [PK___EFMigrationsHistory] PRIMARY KEY ([MigrationId])
);
END;
GO
BEGIN TRANSACTION;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AppraisalTeams] (
[Id] uniqueidentifier NOT NULL,
[Name] nvarchar(200) NOT NULL,
[Description] nvarchar(max) NULL,
[IsActive] bit NOT NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_AppraisalTeams] PRIMARY KEY ([Id])
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetRoles] (
[Id] nvarchar(450) NOT NULL,
[Name] nvarchar(256) NULL,
[NormalizedName] nvarchar(256) NULL,
[ConcurrencyStamp] nvarchar(max) NULL,
CONSTRAINT [PK_AspNetRoles] PRIMARY KEY ([Id])
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetUsers] (
[Id] nvarchar(450) NOT NULL,
[FullName] nvarchar(max) NOT NULL,
[IsEnabled] bit NOT NULL,
[CreatedAt] datetime2 NOT NULL,
[LastLoginAt] datetime2 NULL,
[RefreshToken] nvarchar(max) NULL,
[RefreshTokenExpiresAt] datetime2 NULL,
[UnitId] uniqueidentifier NULL,
[UserName] nvarchar(256) NULL,
[NormalizedUserName] nvarchar(256) NULL,
[Email] nvarchar(256) NULL,
[NormalizedEmail] nvarchar(256) NULL,
[EmailConfirmed] bit NOT NULL,
[PasswordHash] nvarchar(max) NULL,
[SecurityStamp] nvarchar(max) NULL,
[ConcurrencyStamp] nvarchar(max) NULL,
[PhoneNumber] nvarchar(max) NULL,
[PhoneNumberConfirmed] bit NOT NULL,
[TwoFactorEnabled] bit NOT NULL,
[LockoutEnd] datetimeoffset NULL,
[LockoutEnabled] bit NOT NULL,
[AccessFailedCount] int NOT NULL,
CONSTRAINT [PK_AspNetUsers] PRIMARY KEY ([Id])
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AuditLogs] (
[Id] uniqueidentifier NOT NULL,
[EntityName] nvarchar(100) NOT NULL,
[EntityId] nvarchar(100) NOT NULL,
[Action] nvarchar(50) NOT NULL,
[ActorUserId] nvarchar(max) NULL,
[ActorDisplayName] nvarchar(max) NULL,
[PreviousValue] nvarchar(max) NULL,
[NewValue] nvarchar(max) NULL,
[Metadata] nvarchar(max) NULL,
[IpAddress] nvarchar(max) NULL,
[UserAgent] nvarchar(max) NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
CONSTRAINT [PK_AuditLogs] PRIMARY KEY ([Id])
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [Notifications] (
[Id] uniqueidentifier NOT NULL,
[RecipientUserId] nvarchar(450) NOT NULL,
[Title] nvarchar(200) NOT NULL,
[Message] nvarchar(max) NOT NULL,
[Type] nvarchar(20) NOT NULL,
[Link] nvarchar(max) NULL,
[IsRead] bit NOT NULL,
[ReadAt] datetime2 NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
CONSTRAINT [PK_Notifications] PRIMARY KEY ([Id])
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [SystemSettings] (
[Id] uniqueidentifier NOT NULL,
[Key] nvarchar(100) NOT NULL,
[Value] nvarchar(max) NOT NULL,
[Description] nvarchar(max) NULL,
[Category] nvarchar(50) NOT NULL,
[IsSecret] bit NOT NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_SystemSettings] PRIMARY KEY ([Id])
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [Units] (
[Id] uniqueidentifier NOT NULL,
[Name] nvarchar(200) NOT NULL,
[Code] nvarchar(50) NOT NULL,
[Description] nvarchar(max) NULL,
[ParentUnitId] uniqueidentifier NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_Units] PRIMARY KEY ([Id]),
CONSTRAINT [FK_Units_Units_ParentUnitId] FOREIGN KEY ([ParentUnitId]) REFERENCES [Units] ([Id]) ON DELETE NO ACTION
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AppraisalTeamMembers] (
[Id] uniqueidentifier NOT NULL,
[AppraisalTeamId] uniqueidentifier NOT NULL,
[UserId] nvarchar(450) NOT NULL,
[Role] nvarchar(50) NOT NULL,
[IsChair] bit NOT NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
CONSTRAINT [PK_AppraisalTeamMembers] PRIMARY KEY ([Id]),
CONSTRAINT [FK_AppraisalTeamMembers_AppraisalTeams_AppraisalTeamId] FOREIGN KEY ([AppraisalTeamId]) REFERENCES [AppraisalTeams] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetRoleClaims] (
[Id] int NOT NULL IDENTITY,
[RoleId] nvarchar(450) NOT NULL,
[ClaimType] nvarchar(max) NULL,
[ClaimValue] nvarchar(max) NULL,
CONSTRAINT [PK_AspNetRoleClaims] PRIMARY KEY ([Id]),
CONSTRAINT [FK_AspNetRoleClaims_AspNetRoles_RoleId] FOREIGN KEY ([RoleId]) REFERENCES [AspNetRoles] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetUserClaims] (
[Id] int NOT NULL IDENTITY,
[UserId] nvarchar(450) NOT NULL,
[ClaimType] nvarchar(max) NULL,
[ClaimValue] nvarchar(max) NULL,
CONSTRAINT [PK_AspNetUserClaims] PRIMARY KEY ([Id]),
CONSTRAINT [FK_AspNetUserClaims_AspNetUsers_UserId] FOREIGN KEY ([UserId]) REFERENCES [AspNetUsers] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetUserLogins] (
[LoginProvider] nvarchar(450) NOT NULL,
[ProviderKey] nvarchar(450) NOT NULL,
[ProviderDisplayName] nvarchar(max) NULL,
[UserId] nvarchar(450) NOT NULL,
CONSTRAINT [PK_AspNetUserLogins] PRIMARY KEY ([LoginProvider], [ProviderKey]),
CONSTRAINT [FK_AspNetUserLogins_AspNetUsers_UserId] FOREIGN KEY ([UserId]) REFERENCES [AspNetUsers] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetUserRoles] (
[UserId] nvarchar(450) NOT NULL,
[RoleId] nvarchar(450) NOT NULL,
CONSTRAINT [PK_AspNetUserRoles] PRIMARY KEY ([UserId], [RoleId]),
CONSTRAINT [FK_AspNetUserRoles_AspNetRoles_RoleId] FOREIGN KEY ([RoleId]) REFERENCES [AspNetRoles] ([Id]) ON DELETE CASCADE,
CONSTRAINT [FK_AspNetUserRoles_AspNetUsers_UserId] FOREIGN KEY ([UserId]) REFERENCES [AspNetUsers] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [AspNetUserTokens] (
[UserId] nvarchar(450) NOT NULL,
[LoginProvider] nvarchar(450) NOT NULL,
[Name] nvarchar(450) NOT NULL,
[Value] nvarchar(max) NULL,
CONSTRAINT [PK_AspNetUserTokens] PRIMARY KEY ([UserId], [LoginProvider], [Name]),
CONSTRAINT [FK_AspNetUserTokens_AspNetUsers_UserId] FOREIGN KEY ([UserId]) REFERENCES [AspNetUsers] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [Authors] (
[Id] uniqueidentifier NOT NULL,
[FullName] nvarchar(200) NOT NULL,
[Email] nvarchar(200) NOT NULL,
[PhoneNumber] nvarchar(max) NULL,
[Position] nvarchar(max) NULL,
[AcademicTitle] nvarchar(max) NULL,
[UnitId] uniqueidentifier NULL,
[UserId] nvarchar(max) NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_Authors] PRIMARY KEY ([Id]),
CONSTRAINT [FK_Authors_Units_UnitId] FOREIGN KEY ([UnitId]) REFERENCES [Units] ([Id]) ON DELETE SET NULL
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [Initiatives] (
[Id] uniqueidentifier NOT NULL,
[Code] nvarchar(50) NOT NULL,
[Title] nvarchar(500) NOT NULL,
[Description] nvarchar(max) NOT NULL,
[ShortSummary] nvarchar(max) NULL,
[Objectives] nvarchar(max) NULL,
[ScopeOfApplication] nvarchar(max) NULL,
[ExpectedOutcomes] nvarchar(max) NULL,
[ActualOutcomes] nvarchar(max) NULL,
[EstimatedBudget] decimal(18,2) NULL,
[ActualBudget] decimal(18,2) NULL,
[StartDate] datetime2 NULL,
[EndDate] datetime2 NULL,
[SubmissionDate] datetime2 NULL,
[ApprovalDate] datetime2 NULL,
[Status] int NOT NULL,
[Category] int NOT NULL,
[Group] int NOT NULL,
[OwningUnitId] uniqueidentifier NOT NULL,
[SubmittedByUserId] nvarchar(max) NOT NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_Initiatives] PRIMARY KEY ([Id]),
CONSTRAINT [FK_Initiatives_Units_OwningUnitId] FOREIGN KEY ([OwningUnitId]) REFERENCES [Units] ([Id]) ON DELETE NO ACTION
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [InitiativeAttachments] (
[Id] uniqueidentifier NOT NULL,
[InitiativeId] uniqueidentifier NOT NULL,
[FileName] nvarchar(260) NOT NULL,
[StoragePath] nvarchar(500) NOT NULL,
[ContentType] nvarchar(100) NOT NULL,
[FileSize] bigint NOT NULL,
[Description] nvarchar(max) NULL,
[Category] nvarchar(max) NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_InitiativeAttachments] PRIMARY KEY ([Id]),
CONSTRAINT [FK_InitiativeAttachments_Initiatives_InitiativeId] FOREIGN KEY ([InitiativeId]) REFERENCES [Initiatives] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [InitiativeAuthors] (
[Id] uniqueidentifier NOT NULL,
[InitiativeId] uniqueidentifier NOT NULL,
[AuthorId] uniqueidentifier NOT NULL,
[ContributionPercentage] decimal(5,2) NOT NULL,
[IsLeadAuthor] bit NOT NULL,
[ContributionDescription] nvarchar(max) NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
CONSTRAINT [PK_InitiativeAuthors] PRIMARY KEY ([Id]),
CONSTRAINT [FK_InitiativeAuthors_Authors_AuthorId] FOREIGN KEY ([AuthorId]) REFERENCES [Authors] ([Id]) ON DELETE NO ACTION,
CONSTRAINT [FK_InitiativeAuthors_Initiatives_InitiativeId] FOREIGN KEY ([InitiativeId]) REFERENCES [Initiatives] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [InitiativeStatusHistories] (
[Id] uniqueidentifier NOT NULL,
[InitiativeId] uniqueidentifier NOT NULL,
[FromStatus] int NOT NULL,
[ToStatus] int NOT NULL,
[Comment] nvarchar(max) NULL,
[ChangedByUserId] nvarchar(max) NOT NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
CONSTRAINT [PK_InitiativeStatusHistories] PRIMARY KEY ([Id]),
CONSTRAINT [FK_InitiativeStatusHistories_Initiatives_InitiativeId] FOREIGN KEY ([InitiativeId]) REFERENCES [Initiatives] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE TABLE [Reviews] (
[Id] uniqueidentifier NOT NULL,
[InitiativeId] uniqueidentifier NOT NULL,
[ReviewerUserId] nvarchar(max) NOT NULL,
[AppraisalTeamId] uniqueidentifier NOT NULL,
[Score] decimal(5,2) NULL,
[NoveltyScore] decimal(5,2) NULL,
[FeasibilityScore] decimal(5,2) NULL,
[ImpactScore] decimal(5,2) NULL,
[EfficiencyScore] decimal(5,2) NULL,
[Decision] int NOT NULL,
[Comments] nvarchar(max) NULL,
[Strengths] nvarchar(max) NULL,
[Weaknesses] nvarchar(max) NULL,
[Recommendations] nvarchar(max) NULL,
[ReviewedAt] datetime2 NULL,
[DueDate] datetime2 NULL,
[CreatedAt] datetime2 NOT NULL,
[UpdatedAt] datetime2 NULL,
[CreatedBy] nvarchar(max) NULL,
[UpdatedBy] nvarchar(max) NULL,
[IsDeleted] bit NOT NULL,
[DeletedAt] datetime2 NULL,
[DeletedBy] nvarchar(max) NULL,
CONSTRAINT [PK_Reviews] PRIMARY KEY ([Id]),
CONSTRAINT [FK_Reviews_AppraisalTeams_AppraisalTeamId] FOREIGN KEY ([AppraisalTeamId]) REFERENCES [AppraisalTeams] ([Id]) ON DELETE NO ACTION,
CONSTRAINT [FK_Reviews_Initiatives_InitiativeId] FOREIGN KEY ([InitiativeId]) REFERENCES [Initiatives] ([Id]) ON DELETE CASCADE
);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE UNIQUE INDEX [IX_AppraisalTeamMembers_AppraisalTeamId_UserId] ON [AppraisalTeamMembers] ([AppraisalTeamId], [UserId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_AspNetRoleClaims_RoleId] ON [AspNetRoleClaims] ([RoleId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
EXEC(N'CREATE UNIQUE INDEX [RoleNameIndex] ON [AspNetRoles] ([NormalizedName]) WHERE [NormalizedName] IS NOT NULL');
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_AspNetUserClaims_UserId] ON [AspNetUserClaims] ([UserId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_AspNetUserLogins_UserId] ON [AspNetUserLogins] ([UserId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_AspNetUserRoles_RoleId] ON [AspNetUserRoles] ([RoleId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [EmailIndex] ON [AspNetUsers] ([NormalizedEmail]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
EXEC(N'CREATE UNIQUE INDEX [UserNameIndex] ON [AspNetUsers] ([NormalizedUserName]) WHERE [NormalizedUserName] IS NOT NULL');
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_AuditLogs_CreatedAt] ON [AuditLogs] ([CreatedAt]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_AuditLogs_EntityName_EntityId] ON [AuditLogs] ([EntityName], [EntityId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Authors_Email] ON [Authors] ([Email]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Authors_UnitId] ON [Authors] ([UnitId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_InitiativeAttachments_InitiativeId] ON [InitiativeAttachments] ([InitiativeId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_InitiativeAuthors_AuthorId] ON [InitiativeAuthors] ([AuthorId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE UNIQUE INDEX [IX_InitiativeAuthors_InitiativeId_AuthorId] ON [InitiativeAuthors] ([InitiativeId], [AuthorId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Initiatives_Category] ON [Initiatives] ([Category]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE UNIQUE INDEX [IX_Initiatives_Code] ON [Initiatives] ([Code]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Initiatives_OwningUnitId] ON [Initiatives] ([OwningUnitId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Initiatives_Status] ON [Initiatives] ([Status]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_InitiativeStatusHistories_InitiativeId] ON [InitiativeStatusHistories] ([InitiativeId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Notifications_RecipientUserId_IsRead] ON [Notifications] ([RecipientUserId], [IsRead]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Reviews_AppraisalTeamId] ON [Reviews] ([AppraisalTeamId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Reviews_InitiativeId] ON [Reviews] ([InitiativeId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE UNIQUE INDEX [IX_SystemSettings_Key] ON [SystemSettings] ([Key]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE UNIQUE INDEX [IX_Units_Code] ON [Units] ([Code]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
CREATE INDEX [IX_Units_ParentUnitId] ON [Units] ([ParentUnitId]);
END;
IF NOT EXISTS (
SELECT * FROM [__EFMigrationsHistory]
WHERE [MigrationId] = N'20260415141734_InitialCreate'
)
BEGIN
INSERT INTO [__EFMigrationsHistory] ([MigrationId], [ProductVersion])
VALUES (N'20260415141734_InitialCreate', N'10.0.6');
END;
COMMIT;
GO