mirror of
https://github.com/bitwarden/server.git
synced 2025-07-12 13:19:01 -05:00
reimport sql proj. added cipherdetails function.
This commit is contained in:
15
src/Sql/dbo/Functions/CipherDetails.sql
Normal file
15
src/Sql/dbo/Functions/CipherDetails.sql
Normal file
@ -0,0 +1,15 @@
|
||||
CREATE FUNCTION [dbo].[CipherDetails](@UserId UNIQUEIDENTIFIER)
|
||||
RETURNS TABLE
|
||||
AS RETURN
|
||||
SELECT
|
||||
C.*,
|
||||
CASE WHEN F.[CipherId] IS NULL THEN 0 ELSE 1 END [Favorite],
|
||||
FO.[Id] [FolderId]
|
||||
FROM
|
||||
[dbo].[Cipher] C
|
||||
LEFT JOIN
|
||||
[dbo].[Favorite] F ON F.[CipherId] = C.[Id] AND F.[UserId] = @UserId
|
||||
LEFT JOIN
|
||||
[dbo].[FolderCipher] FC ON FC.[CipherId] = C.[Id]
|
||||
LEFT JOIN
|
||||
[dbo].[Folder] FO ON FO.[Id] = FC.[FolderId] AND FO.[UserId] = @UserId
|
@ -1,13 +0,0 @@
|
||||
CREATE PROCEDURE [dbo].[CipherDetails_ReadById]
|
||||
@Id UNIQUEIDENTIFIER
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[CipherDetailsView]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
@ -8,7 +8,7 @@ BEGIN
|
||||
SELECT DISTINCT
|
||||
C.*
|
||||
FROM
|
||||
[dbo].[CipherDetailsView] C
|
||||
[dbo].[CipherDetails](@UserId) C
|
||||
LEFT JOIN
|
||||
[dbo].[SubvaultCipher] SC ON SC.[CipherId] = C.[Id]
|
||||
LEFT JOIN
|
||||
|
@ -8,7 +8,7 @@ BEGIN
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[CipherDetailsView]
|
||||
[dbo].[CipherDetails](@UserId) C
|
||||
WHERE
|
||||
[RevisionDate] > @SinceRevisionDate
|
||||
AND [UserId] = @UserId
|
||||
@ -21,4 +21,4 @@ BEGIN
|
||||
[Date] > @SinceRevisionDate
|
||||
AND [Event] = 2 -- Only cipher delete events.
|
||||
AND [UserId] = @UserId
|
||||
END
|
||||
END
|
||||
|
@ -8,7 +8,7 @@ BEGIN
|
||||
SELECT DISTINCT
|
||||
C.*
|
||||
FROM
|
||||
[dbo].[CipherDetailsView] C
|
||||
[dbo].[CipherDetails](@UserId) C
|
||||
LEFT JOIN
|
||||
[dbo].[SubvaultCipher] SC ON SC.[CipherId] = C.[Id]
|
||||
LEFT JOIN
|
||||
|
@ -7,7 +7,7 @@ BEGIN
|
||||
SELECT DISTINCT
|
||||
C.*
|
||||
FROM
|
||||
[dbo].[CipherDetailsView] C
|
||||
[dbo].[CipherDetails](@UserId) C
|
||||
LEFT JOIN
|
||||
[dbo].[SubvaultCipher] SC ON SC.[CipherId] = C.[Id]
|
||||
LEFT JOIN
|
||||
|
@ -7,7 +7,7 @@ BEGIN
|
||||
SELECT DISTINCT
|
||||
C.*
|
||||
FROM
|
||||
[dbo].[CipherDetailsView] C
|
||||
[dbo].[CipherDetails](@UserId) C
|
||||
INNER JOIN
|
||||
[dbo].[SubvaultCipher] SC ON SC.[CipherId] = C.[Id]
|
||||
INNER JOIN
|
||||
|
@ -9,4 +9,4 @@ BEGIN
|
||||
[dbo].[Cipher]
|
||||
WHERE
|
||||
[Id] = @Id
|
||||
END
|
||||
END
|
||||
|
@ -10,4 +10,4 @@ BEGIN
|
||||
[dbo].[FolderView]
|
||||
WHERE
|
||||
[UserId] = @UserId
|
||||
END
|
||||
END
|
||||
|
@ -14,4 +14,4 @@ BEGIN
|
||||
[dbo].[OrganizationUser] OU ON OU.[Id] = SU.[OrganizationUserId]
|
||||
WHERE
|
||||
[OU].[UserId] = @UserId
|
||||
END
|
||||
END
|
||||
|
@ -14,4 +14,4 @@ BEGIN
|
||||
[OrganizationUser] OU ON OU.[Id] = SU.[OrganizationUserId]
|
||||
WHERE
|
||||
OU.[UserId] = @UserId
|
||||
END
|
||||
END
|
@ -36,4 +36,4 @@ BEGIN
|
||||
[Id] = @Id
|
||||
|
||||
COMMIT TRANSACTION User_DeleteById
|
||||
END
|
||||
END
|
||||
|
@ -1,11 +1,11 @@
|
||||
CREATE TABLE [dbo].[Cipher] (
|
||||
[Id] UNIQUEIDENTIFIER NOT NULL,
|
||||
[UserId] UNIQUEIDENTIFIER NULL,
|
||||
[OrganizationId] UNIQUEIDENTIFIER NULL,
|
||||
[Type] TINYINT NOT NULL,
|
||||
[Data] NVARCHAR (MAX) NOT NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[RevisionDate] DATETIME2 (7) NOT NULL,
|
||||
[Id] UNIQUEIDENTIFIER NOT NULL,
|
||||
[UserId] UNIQUEIDENTIFIER NULL,
|
||||
[OrganizationId] UNIQUEIDENTIFIER NULL,
|
||||
[Type] TINYINT NOT NULL,
|
||||
[Data] NVARCHAR (MAX) NOT NULL,
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[RevisionDate] DATETIME2 (7) NOT NULL,
|
||||
CONSTRAINT [PK_Cipher] PRIMARY KEY CLUSTERED ([Id] ASC),
|
||||
CONSTRAINT [FK_Cipher_User] FOREIGN KEY ([UserId]) REFERENCES [dbo].[User] ([Id])
|
||||
);
|
||||
@ -50,6 +50,7 @@ BEGIN
|
||||
WHERE
|
||||
[Id] = @UserId
|
||||
END
|
||||
|
||||
GO
|
||||
CREATE TRIGGER [dbo].[Cipher_Updated]
|
||||
ON [dbo].[Cipher] AFTER UPDATE
|
||||
@ -84,6 +85,7 @@ BEGIN
|
||||
WHERE
|
||||
[Id] = @UserId
|
||||
END
|
||||
|
||||
GO
|
||||
CREATE TRIGGER [dbo].[Cipher_Deleted]
|
||||
ON [dbo].[Cipher] AFTER DELETE
|
||||
@ -117,4 +119,4 @@ BEGIN
|
||||
[AccountRevisionDate] = GETUTCDATE()
|
||||
WHERE
|
||||
[Id] = @UserId
|
||||
END
|
||||
END
|
||||
|
@ -2,7 +2,7 @@
|
||||
[UserId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[CipherId] UNIQUEIDENTIFIER NOT NULL,
|
||||
CONSTRAINT [PK_Favorite] PRIMARY KEY CLUSTERED ([UserId] ASC, [CipherId] ASC),
|
||||
CONSTRAINT [FK_Favorite_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]),
|
||||
CONSTRAINT [FK_Favorite_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_Favorite_User] FOREIGN KEY ([UserId]) REFERENCES [dbo].[User] ([Id])
|
||||
);
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
[FolderId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[CipherId] UNIQUEIDENTIFIER NOT NULL,
|
||||
CONSTRAINT [PK_FolderCipher] PRIMARY KEY CLUSTERED ([FolderId] ASC, [CipherId] ASC),
|
||||
CONSTRAINT [FK_FolderCipher_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]),
|
||||
CONSTRAINT [FK_FolderCipher_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_FolderCipher_Folder] FOREIGN KEY ([FolderId]) REFERENCES [dbo].[Folder] ([Id])
|
||||
);
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
[GroupId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[UserId] UNIQUEIDENTIFIER NOT NULL,
|
||||
CONSTRAINT [PK_GroupUser] PRIMARY KEY CLUSTERED ([GroupId] ASC, [UserId] ASC),
|
||||
CONSTRAINT [FK_GroupUser_Group] FOREIGN KEY ([GroupId]) REFERENCES [dbo].[Group] ([Id]),
|
||||
CONSTRAINT [FK_GroupUser_Group] FOREIGN KEY ([GroupId]) REFERENCES [dbo].[Group] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_GroupUser_User] FOREIGN KEY ([UserId]) REFERENCES [dbo].[User] ([Id])
|
||||
);
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
[SubvaultId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[CipherId] UNIQUEIDENTIFIER NOT NULL,
|
||||
CONSTRAINT [PK_SubvaultCipher] PRIMARY KEY CLUSTERED ([SubvaultId] ASC, [CipherId] ASC),
|
||||
CONSTRAINT [FK_SubvaultCipher_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]),
|
||||
CONSTRAINT [FK_SubvaultCipher_Subvault] FOREIGN KEY ([SubvaultId]) REFERENCES [dbo].[Subvault] ([Id])
|
||||
CONSTRAINT [FK_SubvaultCipher_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_SubvaultCipher_Subvault] FOREIGN KEY ([SubvaultId]) REFERENCES [dbo].[Subvault] ([Id]) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
[SubvaultId] UNIQUEIDENTIFIER NOT NULL,
|
||||
[GroupId] UNIQUEIDENTIFIER NOT NULL,
|
||||
CONSTRAINT [PK_SubvaultGroup] PRIMARY KEY CLUSTERED ([SubvaultId] ASC, [GroupId] ASC),
|
||||
CONSTRAINT [FK_SubvaultGroup_Group] FOREIGN KEY ([GroupId]) REFERENCES [dbo].[Group] ([Id]),
|
||||
CONSTRAINT [FK_SubvaultGroup_Subvault] FOREIGN KEY ([SubvaultId]) REFERENCES [dbo].[Subvault] ([Id])
|
||||
CONSTRAINT [FK_SubvaultGroup_Group] FOREIGN KEY ([GroupId]) REFERENCES [dbo].[Group] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_SubvaultGroup_Subvault] FOREIGN KEY ([SubvaultId]) REFERENCES [dbo].[Subvault] ([Id]) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
|
@ -7,7 +7,7 @@
|
||||
[CreationDate] DATETIME2 (7) NOT NULL,
|
||||
[RevisionDate] DATETIME2 (7) NOT NULL,
|
||||
CONSTRAINT [PK_SubvaultUser] PRIMARY KEY CLUSTERED ([Id] ASC),
|
||||
CONSTRAINT [FK_SubvaultUser_OrganizationUser] FOREIGN KEY ([OrganizationUserId]) REFERENCES [dbo].[OrganizationUser] ([Id]),
|
||||
CONSTRAINT [FK_SubvaultUser_Subvault] FOREIGN KEY ([SubvaultId]) REFERENCES [dbo].[Subvault] ([Id])
|
||||
CONSTRAINT [FK_SubvaultUser_OrganizationUser] FOREIGN KEY ([OrganizationUserId]) REFERENCES [dbo].[OrganizationUser] ([Id]) ON DELETE CASCADE,
|
||||
CONSTRAINT [FK_SubvaultUser_Subvault] FOREIGN KEY ([SubvaultId]) REFERENCES [dbo].[Subvault] ([Id]) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
|
3
src/Sql/dbo/User Defined Types/GuidIdArray.sql
Normal file
3
src/Sql/dbo/User Defined Types/GuidIdArray.sql
Normal file
@ -0,0 +1,3 @@
|
||||
CREATE TYPE [dbo].[GuidIdArray] AS TABLE (
|
||||
[Id] UNIQUEIDENTIFIER NOT NULL);
|
||||
|
@ -1 +0,0 @@
|
||||
CREATE TYPE [dbo].[GuidIdArray] AS TABLE ([Id] UNIQUEIDENTIFIER NOT NULL);
|
@ -1,12 +0,0 @@
|
||||
CREATE VIEW [dbo].[CipherDetailsView]
|
||||
AS
|
||||
SELECT
|
||||
C.*,
|
||||
CASE WHEN F.[CipherId] IS NULL THEN 0 ELSE 1 END [Favorite],
|
||||
FC.[FolderId]
|
||||
FROM
|
||||
[dbo].[Cipher] C
|
||||
LEFT JOIN
|
||||
[dbo].[Favorite] F ON F.[CipherId] = C.[Id]
|
||||
LEFT JOIN
|
||||
[dbo].[FolderCipher] FC ON FC.[CipherId] = C.[Id]
|
@ -3,4 +3,4 @@ AS
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
[dbo].[Folder]
|
||||
[dbo].[Folder]
|
||||
|
Reference in New Issue
Block a user