1
0
mirror of https://github.com/bitwarden/server.git synced 2025-06-24 12:48:48 -05:00

PM-20574 added revision date back into the mix

This commit is contained in:
voommen-livefront 2025-06-20 15:01:32 -05:00
parent bfeb572147
commit d6f4b85de9
13 changed files with 114 additions and 50 deletions

View File

@ -5,12 +5,13 @@ using Bit.Core.Utilities;
namespace Bit.Core.Dirt.Entities;
public class OrganizationApplication : ITableObject<Guid>
public class OrganizationApplication : ITableObject<Guid>, IRevisable
{
public Guid Id { get; set; }
public Guid OrganizationId { get; set; }
public string Applications { get; set; } = string.Empty;
public DateTime CreationDate { get; set; } = DateTime.UtcNow;
public DateTime RevisionDate { get; set; } = DateTime.UtcNow;
public void SetNewId()
{

View File

@ -0,0 +1,13 @@
CREATE PROCEDURE [dbo].[OrganizationApplication_Update]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@Applications NVARCHAR(MAX),
@RevisionDate DATETIME2(7)
AS
SET NOCOUNT ON;
UPDATE [dbo].[OrganizationApplication]
SET
[OrganizationId] = @OrganizationId,
[Applications] = @Applications,
[RevisionDate] = @RevisionDate
WHERE [Id] = @Id;

View File

@ -3,6 +3,7 @@ CREATE TABLE [dbo].[OrganizationApplication] (
[OrganizationId] UNIQUEIDENTIFIER NOT NULL,
[Applications] NVARCHAR(MAX) NOT NULL,
[CreationDate] DATETIME2 (7) NOT NULL,
[RevisionDate] DATETIME2 (7) NOT NULL,
CONSTRAINT [PK_OrganizationApplication] PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_OrganizationApplication_Organization] FOREIGN KEY ([OrganizationId]) REFERENCES [dbo].[Organization] ([Id])
);

View File

@ -1,74 +1,49 @@
IF OBJECT_ID('dbo.OrganizationApplication') IS NULL
BEGIN
CREATE TABLE [dbo].[OrganizationApplication]
(
[Id] UNIQUEIDENTIFIER NOT NULL,
[OrganizationId] UNIQUEIDENTIFIER NOT NULL,
[Applications] NVARCHAR(MAX) NOT NULL,
[CreationDate] DATETIME2 (7) NOT NULL,
CREATE TABLE [dbo].[OrganizationApplication] (
[Id] UNIQUEIDENTIFIER NOT NULL,
[OrganizationId] UNIQUEIDENTIFIER NOT NULL,
[Applications] NVARCHAR(MAX) NOT NULL,
[CreationDate] DATETIME2 (7) NOT NULL,
[RevisionDate] DATETIME2 (7) NOT NULL,
CONSTRAINT [PK_OrganizationApplication] PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_OrganizationApplication_Organization] FOREIGN KEY ([OrganizationId]) REFERENCES [dbo].[Organization] ([Id])
);
);
CREATE NONCLUSTERED INDEX [IX_OrganizationApplication_OrganizationId]
ON [dbo].[OrganizationApplication]([OrganizationId] ASC);
END
GO
CREATE OR ALTER VIEW [dbo].[OrganizationApplicationView]
AS
SELECT *
FROM [dbo].[OrganizationApplication];
CREATE OR ALTER VIEW [dbo].[OrganizationApplicationView] AS
SELECT * FROM [dbo].[OrganizationApplication];
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_Create]
@Id UNIQUEIDENTIFIER OUTPUT,
@OrganizationId UNIQUEIDENTIFIER,
@Applications NVARCHAR(MAX),
@CreationDate DATETIME2(7)
@CreationDate DATETIME2(7),
@RevisionDate DATETIME2(7)
AS
SET NOCOUNT ON;
INSERT INTO [dbo].[OrganizationApplication]
(
(
[Id],
[OrganizationId],
[Applications],
[CreationDate]
)
[CreationDate],
[RevisionDate]
)
VALUES
(
@Id,
@OrganizationId,
@Applications,
@CreationDate
@Id,
@OrganizationId,
@Applications,
@CreationDate,
@RevisionDate
);
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_DeleteById]
@Id UNIQUEIDENTIFIER
AS
SET NOCOUNT ON;
DELETE FROM
[dbo].[OrganizationApplication]
WHERE
[Id] = @Id;
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_ReadById]
@Id UNIQUEIDENTIFIER
AS
SET NOCOUNT ON;
SELECT
*
FROM [dbo].[OrganizationApplicationView]
WHERE [Id] = @Id;
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_ReadByOrganizationId]
@ -76,10 +51,63 @@ CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_ReadByOrganizationId]
AS
SET NOCOUNT ON;
IF @OrganizationId IS NULL
THROW 50000, 'OrganizationId cannot be null', 1;
SELECT
*
FROM [dbo].[OrganizationApplicationView]
WHERE [OrganizationId] = @OrganizationId;
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_ReadById]
@Id UNIQUEIDENTIFIER
AS
SET NOCOUNT ON;
IF @Id IS NULL
THROW 50000, 'Id cannot be null', 1;
SELECT
*
FROM [dbo].[OrganizationApplicationView]
WHERE [Id] = @Id;
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_Update]
@Id UNIQUEIDENTIFIER OUTPUT,
@OrganizationId UNIQUEIDENTIFIER,
@Applications NVARCHAR(MAX),
@CreationDate DATETIME2(7),
@RevisionDate DATETIME2(7)
AS
SET NOCOUNT ON;
UPDATE [dbo].[OrganizationApplication]
SET
[OrganizationId] = @OrganizationId,
[Applications] = @Applications,
[RevisionDate] = @RevisionDate
WHERE [Id] = @Id;
GO
CREATE OR ALTER PROCEDURE [dbo].[OrganizationApplication_DeleteById]
@Id UNIQUEIDENTIFIER
AS
SET NOCOUNT ON;
IF @Id IS NULL
THROW 50000, 'Id cannot be null', 1;
DELETE FROM [dbo].[OrganizationApplication]
WHERE [Id] = @Id;
GO

View File

@ -985,6 +985,9 @@ namespace Bit.MySqlMigrations.Migrations
b.Property<Guid>("OrganizationId")
.HasColumnType("char(36)");
b.Property<DateTime>("RevisionDate")
.HasColumnType("datetime(6)");
b.HasKey("Id");
b.HasIndex("Id")

View File

@ -18,7 +18,8 @@ public partial class _2025061300_OrganizationReportsql : Migration
OrganizationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Applications = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
CreationDate = table.Column<DateTime>(type: "datetime(6)", nullable: false)
CreationDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
RevisionDate = table.Column<DateTime>(type: "datetime(6)", nullable: false)
},
constraints: table =>
{

View File

@ -982,6 +982,9 @@ namespace Bit.MySqlMigrations.Migrations
b.Property<Guid>("OrganizationId")
.HasColumnType("char(36)");
b.Property<DateTime>("RevisionDate")
.HasColumnType("datetime(6)");
b.HasKey("Id");
b.HasIndex("Id")

View File

@ -990,6 +990,9 @@ namespace Bit.PostgresMigrations.Migrations
b.Property<Guid>("OrganizationId")
.HasColumnType("uuid");
b.Property<DateTime>("RevisionDate")
.HasColumnType("timestamp with time zone");
b.HasKey("Id");
b.HasIndex("Id")

View File

@ -17,7 +17,8 @@ public partial class _2025061300_OrganizationReportsql : Migration
Id = table.Column<Guid>(type: "uuid", nullable: false),
OrganizationId = table.Column<Guid>(type: "uuid", nullable: false),
Applications = table.Column<string>(type: "text", nullable: false),
CreationDate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false)
CreationDate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
RevisionDate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false)
},
constraints: table =>
{

View File

@ -987,6 +987,9 @@ namespace Bit.PostgresMigrations.Migrations
b.Property<Guid>("OrganizationId")
.HasColumnType("uuid");
b.Property<DateTime>("RevisionDate")
.HasColumnType("timestamp with time zone");
b.HasKey("Id");
b.HasIndex("Id")

View File

@ -974,6 +974,9 @@ namespace Bit.SqliteMigrations.Migrations
b.Property<Guid>("OrganizationId")
.HasColumnType("TEXT");
b.Property<DateTime>("RevisionDate")
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("Id")

View File

@ -17,7 +17,8 @@ public partial class _2025061300_OrganizationReportsql : Migration
Id = table.Column<Guid>(type: "TEXT", nullable: false),
OrganizationId = table.Column<Guid>(type: "TEXT", nullable: false),
Applications = table.Column<string>(type: "TEXT", nullable: false),
CreationDate = table.Column<DateTime>(type: "TEXT", nullable: false)
CreationDate = table.Column<DateTime>(type: "TEXT", nullable: false),
RevisionDate = table.Column<DateTime>(type: "TEXT", nullable: false)
},
constraints: table =>
{

View File

@ -971,6 +971,9 @@ namespace Bit.SqliteMigrations.Migrations
b.Property<Guid>("OrganizationId")
.HasColumnType("TEXT");
b.Property<DateTime>("RevisionDate")
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("Id")