Files
server/util/Migrator/DbScripts/2025-08-22_01_AddOrganizationReportStoredProcedures.sql

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

157 lines
3.4 KiB
MySQL
Raw Normal View History

Organization report tables, repos, services, and endpoints (#6158) * PM-23754 initial commit * pm-23754 fixing controller tests * pm-23754 adding commands and queries * pm-23754 adding endpoints, command/queries, repositories, and sql migrations * pm-23754 add new sql scripts * PM-23754 adding sql scripts * pm-23754 * PM-23754 fixing migration script * PM-23754 fixing migration script again * PM-23754 fixing migration script validation * PM-23754 fixing db validation script issue * PM-23754 fixing endpoint and db validation * PM-23754 fixing unit tests * PM-23754 fixing implementation based on comments and tests * PM-23754 updating logging statements * PM-23754 making changes based on PR comments. * updating migration scripts * removing old migration files * update code based testing for whole data object for OrganizationReport and add a stored procedure. * updating services, unit tests, repository tests * fixing unit tests * fixing migration script * fixing migration script again * fixing migration script * another fix * fixing sql file, updating controller to account for different orgIds in the url and body. * updating error message in controllers without a body * making a change to the command * Refactor ReportsController by removing organization reports The IDropOrganizationReportCommand is no longer needed * will code based on PR comments. * fixing unit test * fixing migration script based on last changes. * adding another check in endpoint and adding unit tests * fixing route parameter. * PM-23754 updating data fields to return just the column * PM-23754 fixing repository method signatures * PM-23754 making change to orgId parameter through out code to align with api naming --------- Co-authored-by: Tom <144813356+ttalty@users.noreply.github.com>
2025-09-08 15:06:13 -05:00
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_GetLatestByOrganizationId]
@OrganizationId UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON
SELECT TOP 1
[Id],
[OrganizationId],
[ReportData],
[CreationDate],
[ContentEncryptionKey],
[SummaryData],
[ApplicationData],
[RevisionDate]
FROM [dbo].[OrganizationReportView]
WHERE [OrganizationId] = @OrganizationId
ORDER BY [RevisionDate] DESC
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_GetSummariesByDateRange]
@OrganizationId UNIQUEIDENTIFIER,
@StartDate DATETIME2(7),
@EndDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON
SELECT
[SummaryData]
FROM [dbo].[OrganizationReportView]
WHERE [OrganizationId] = @OrganizationId
AND [RevisionDate] >= @StartDate
AND [RevisionDate] <= @EndDate
ORDER BY [RevisionDate] DESC
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_GetSummaryDataById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON
SELECT
[SummaryData]
FROM [dbo].[OrganizationReportView]
WHERE [Id] = @Id
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_UpdateSummaryData]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@SummaryData NVARCHAR(MAX),
@RevisionDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON;
UPDATE [dbo].[OrganizationReport]
SET
[SummaryData] = @SummaryData,
[RevisionDate] = @RevisionDate
WHERE [Id] = @Id
AND [OrganizationId] = @OrganizationId;
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_GetReportDataById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON
SELECT
[ReportData]
FROM [dbo].[OrganizationReportView]
WHERE [Id] = @Id
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_UpdateReportData]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@ReportData NVARCHAR(MAX),
@RevisionDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON;
UPDATE [dbo].[OrganizationReport]
SET
[ReportData] = @ReportData,
[RevisionDate] = @RevisionDate
WHERE [Id] = @Id
AND [OrganizationId] = @OrganizationId;
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_GetApplicationDataById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON
SELECT
[ApplicationData]
FROM [dbo].[OrganizationReportView]
WHERE [Id] = @Id;
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_UpdateApplicationData]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@ApplicationData NVARCHAR(MAX),
@RevisionDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON;
UPDATE [dbo].[OrganizationReport]
SET
[ApplicationData] = @ApplicationData,
[RevisionDate] = @RevisionDate
WHERE [Id] = @Id
AND [OrganizationId] = @OrganizationId;
END
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationReport_Update]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@ReportData NVARCHAR(MAX),
@CreationDate DATETIME2(7),
@ContentEncryptionKey VARCHAR(MAX),
@SummaryData NVARCHAR(MAX),
@ApplicationData NVARCHAR(MAX),
@RevisionDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON;
UPDATE [dbo].[OrganizationReport]
SET
[OrganizationId] = @OrganizationId,
[ReportData] = @ReportData,
[CreationDate] = @CreationDate,
[ContentEncryptionKey] = @ContentEncryptionKey,
[SummaryData] = @SummaryData,
[ApplicationData] = @ApplicationData,
[RevisionDate] = @RevisionDate
WHERE [Id] = @Id;
END
GO