1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-02 16:42:50 -05:00

added share data model

This commit is contained in:
Kyle Spearrin
2017-02-21 21:31:52 -05:00
parent 9ca2baba74
commit f101541ff8
11 changed files with 174 additions and 0 deletions

View File

@ -0,0 +1,36 @@
CREATE PROCEDURE [dbo].[Share_Create]
@Id UNIQUEIDENTIFIER,
@UserId UNIQUEIDENTIFIER,
@CipherId UNIQUEIDENTIFIER,
@Key NVARCHAR(MAX),
@Permissions NVARCHAR(MAX),
@Status TINYINT,
@CreationDate DATETIME2(7),
@RevisionDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON
INSERT INTO [dbo].[Share]
(
[Id],
[UserId],
[CipherId],
[Key],
[Permissions],
[Status],
[CreationDate],
[RevisionDate]
)
VALUES
(
@Id,
@UserId,
@CipherId,
@Key,
@Permissions,
@Status,
@CreationDate,
@RevisionDate
)
END

View File

@ -0,0 +1,12 @@
CREATE PROCEDURE [dbo].[Share_DeleteById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON
DELETE
FROM
[dbo].[Share]
WHERE
[Id] = @Id
END

View File

@ -0,0 +1,13 @@
CREATE PROCEDURE [dbo].[Share_ReadById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON
SELECT
*
FROM
[dbo].[ShareView]
WHERE
[Id] = @Id
END

View File

@ -0,0 +1,26 @@
CREATE PROCEDURE [dbo].[Share_Update]
@Id UNIQUEIDENTIFIER,
@UserId UNIQUEIDENTIFIER,
@CipherId UNIQUEIDENTIFIER,
@Key NVARCHAR(MAX),
@Permissions NVARCHAR(MAX),
@Status TINYINT,
@CreationDate DATETIME2(7),
@RevisionDate DATETIME2(7)
AS
BEGIN
SET NOCOUNT ON
UPDATE
[dbo].[Share]
SET
[UserId] = @UserId,
[CipherId] = @CipherId,
[Key] = @Key,
[Permissions] = @Permissions,
[Status] = @Status,
[CreationDate] = @CreationDate,
[RevisionDate] = @RevisionDate
WHERE
[Id] = @Id
END

View File

@ -0,0 +1,19 @@
CREATE TABLE [dbo].[Share] (
[Id] UNIQUEIDENTIFIER NOT NULL,
[UserId] UNIQUEIDENTIFIER NOT NULL,
[CipherId] UNIQUEIDENTIFIER NOT NULL,
[Key] VARCHAR(MAX) NULL,
[Permissions] VARCHAR(MAX) NULL,
[Status] TINYINT NOT NULL,
[CreationDate] DATETIME2 (7) NOT NULL,
[RevisionDate] DATETIME2 (7) NOT NULL,
CONSTRAINT [PK_Share] PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_Share_Cipher] FOREIGN KEY ([CipherId]) REFERENCES [dbo].[Cipher] ([Id]),
CONSTRAINT [FK_Share_User] FOREIGN KEY ([UserId]) REFERENCES [dbo].[User] ([Id])
);
GO
CREATE NONCLUSTERED INDEX [IX_Share_CipherId_Status]
ON [dbo].[Share]([CipherId] ASC, [Status] ASC);

View File

@ -0,0 +1,6 @@
CREATE VIEW [dbo].[ShareView]
AS
SELECT
*
FROM
[dbo].[Share]