Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sm 104 project Database #2192

Merged
merged 21 commits into from
Sep 5, 2022
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
6925ea1
Project DB addition and sprocs
CarleyDiaz-Bitwarden-zz Aug 15, 2022
b315170
Adding spaces to the end of each file, fixing minor issues
CarleyDiaz-Bitwarden-zz Aug 15, 2022
6ff9bff
removing useless comments
CarleyDiaz-Bitwarden-zz Aug 15, 2022
5833e6f
Adding soft delete proc to migration
CarleyDiaz-Bitwarden-zz Aug 16, 2022
8ee53e3
Project EF Scaffold
Thomas-Avery Aug 17, 2022
06b0e6c
Additional changes to use EF instead of procedures
CarleyDiaz-Bitwarden-zz Aug 17, 2022
7136b89
Adding dependency injection
CarleyDiaz-Bitwarden-zz Aug 17, 2022
c166a40
Fixing lint errors
CarleyDiaz-Bitwarden-zz Aug 18, 2022
2d7a273
Bug fixes
CarleyDiaz-Bitwarden-zz Aug 18, 2022
261f315
Adding migration scripts, removing sproc files, and setting up Entity…
CarleyDiaz-Bitwarden-zz Aug 18, 2022
eb4e164
Adding back accidentally deleted sproc
CarleyDiaz-Bitwarden-zz Aug 22, 2022
04d4aa2
Removing files that shouldn't have been created
CarleyDiaz-Bitwarden-zz Aug 22, 2022
b6cce75
Lint
CarleyDiaz-Bitwarden-zz Aug 22, 2022
ac7bd1e
Small changes based on Oscar's rec (#2215)
coltonhurst Aug 26, 2022
0350f67
Merge branch 'sm/secrets-feature' into SM-104-Project
CarleyDiaz-Bitwarden-zz Aug 30, 2022
50ec647
Migrations for making CreateDate not null
CarleyDiaz-Bitwarden-zz Aug 30, 2022
5a0b00a
adding space to end of file
CarleyDiaz-Bitwarden-zz Aug 30, 2022
8a04c48
Making Revision date not null
CarleyDiaz-Bitwarden-zz Aug 30, 2022
c6ba598
dotnet format
CarleyDiaz-Bitwarden-zz Aug 30, 2022
9b235dd
Adding nonclustered indexes to SQL
CarleyDiaz-Bitwarden-zz Sep 1, 2022
dd2baa7
SM-104: Update PR with changes Thomas proposed
coltonhurst Sep 2, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions src/Sql/dbo/Stored Procedures/Project_Create.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
CREATE PROCEDURE [dbo].[Project_Create]
@Id UNIQUEIDENTIFIER OUTPUT,
@OrganizationId UNIQUEIDENTIFIER,
@Name NVARCHAR(MAX),
@CreationDate DATETIME2 (7),
@RevisionDate DATETIME2 (7),
@DeletedDate DATETIME2 (7)
AS
BEGIN
SET NOCOUNT ON

INSERT INTO [dbo].[Project]
(
Id,
OrganizationId,
Name,
CreationDate,
RevisionDate,
DeletedDate
)
VALUES
(
@Id,
@OrganizationId,
@Name,
@CreationDate,
@RevisionDate,
@DeletedDate
)
END
18 changes: 18 additions & 0 deletions src/Sql/dbo/Stored Procedures/Project_ReadById.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
CREATE PROCEDURE [dbo].[Project_ReadById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON

SELECT
Id,
OrganizationId,
Name,
CreationDate,
RevisionDate,
DeletedDate
FROM
[dbo].[Project]
WHERE
[Id] = @Id
END
18 changes: 18 additions & 0 deletions src/Sql/dbo/Stored Procedures/Project_ReadByOrganizationId.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
CREATE PROCEDURE [dbo].[Project_ReadByOrganizationId]
@OrganizationId UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON

SELECT
Id,
OrganizationId,
Name,
CreationDate,
RevisionDate,
DeletedDate
FROM
[dbo].[Project]
WHERE
[OrganizationId] = @OrganizationId
END
35 changes: 35 additions & 0 deletions src/Sql/dbo/Stored Procedures/Project_SoftDelete.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
CREATE PROCEDURE [dbo].[Project_SoftDelete]
@Ids AS [dbo].[GuidIdArray] READONLY,
@OrganizationId AS UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON

CREATE TABLE #Temp
(
[Id] UNIQUEIDENTIFIER NOT NULL
)

INSERT INTO #Temp
SELECT
[Id]
FROM
[dbo].[Project]
WHERE
OrganizationId = @OrganizationId
AND [DeletedDate] IS NULL
AND [Id] IN (SELECT * FROM @Ids)

-- Delete Project
DECLARE @UtcNow DATETIME2(7) = GETUTCDATE();
UPDATE
[dbo].[Project]
SET
[DeletedDate] = @UtcNow,
[RevisionDate] = @UtcNow
WHERE
[Id] IN (SELECT [Id] FROM #Temp)

DROP TABLE #Temp
END

22 changes: 22 additions & 0 deletions src/Sql/dbo/Stored Procedures/Project_Update.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
CREATE PROCEDURE [dbo].[Project_Update]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@Name NVARCHAR(MAX),
@CreationDate DATETIME2 (7),
@RevisionDate DATETIME2 (7),
@DeletedDate DATETIME2 (7)
AS
BEGIN
SET NOCOUNT ON

UPDATE
[dbo].[Project]
SET
[OrganizationId] = @OrganizationId,
[Name] = @Name,
[CreationDate] = @CreationDate,
[RevisionDate] = @RevisionDate,
[DeletedDate] = @DeletedDate
WHERE
[Id] = @Id
END
11 changes: 11 additions & 0 deletions src/Sql/dbo/Tables/Project.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@

CREATE TABLE [dbo].[Project] (
[Id] UNIQUEIDENTIFIER NOT NULL,
[OrganizationId] UNIQUEIDENTIFIER NULL,
[Name] NVARCHAR(MAX),
[CreationDate] DATETIME2 (7),
[RevisionDate] DATETIME2 (7),
[DeletedDate] DATETIME2 (7),
CONSTRAINT [PK_Project] PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_Project_Organization] FOREIGN KEY ([OrganizationId]) REFERENCES [dbo].[Organization] ([Id]),
coltonhurst marked this conversation as resolved.
Show resolved Hide resolved
);
137 changes: 137 additions & 0 deletions util/Migrator/DbScripts/2022-08-10_00_Project.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
IF OBJECT_ID('[dbo].[Project]') IS NULL
BEGIN
CREATE TABLE [dbo].[Project] (
[Id] UNIQUEIDENTIFIER NOT NULL,
[OrganizationId] UNIQUEIDENTIFIER NULL,
[Name] NVARCHAR(MAX),
[CreationDate] DATETIME2 (7),
[RevisionDate] DATETIME2 (7),
[DeletedDate] DATETIME2 (7),
CONSTRAINT [PK_Project] PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_Project_Organization] FOREIGN KEY ([OrganizationId]) REFERENCES [dbo].[Organization] ([Id]),
coltonhurst marked this conversation as resolved.
Show resolved Hide resolved
);
END

GO

-- Edit
-- SOFTDeleteMany(array)
cd-bitwarden marked this conversation as resolved.
Show resolved Hide resolved

IF OBJECT_ID('[dbo].[Project_ReadByOrganizationId]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[Project_ReadByOrganizationId]
END
GO

CREATE PROCEDURE [dbo].[Project_ReadByOrganizationId]
@OrganizationId UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON

SELECT
Id,
OrganizationId,
Name,
CreationDate,
RevisionDate,
DeletedDate
FROM
[dbo].[Project]
WHERE
[OrganizationId] = @OrganizationId
END
GO


IF OBJECT_ID('[dbo].[Project_ReadById]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[Project_ReadById]
END
GO

CREATE PROCEDURE [dbo].[Project_ReadById]
@Id UNIQUEIDENTIFIER
AS
BEGIN
SET NOCOUNT ON

SELECT
Id,
OrganizationId,
Name,
CreationDate,
RevisionDate,
DeletedDate
FROM
[dbo].[Project]
WHERE
[Id] = @Id
END
GO

IF OBJECT_ID('[dbo].[Project_Create]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[Project_Create]
END
GO

CREATE PROCEDURE [dbo].[Project_Create]
@Id UNIQUEIDENTIFIER OUTPUT,
@OrganizationId UNIQUEIDENTIFIER,
@Name NVARCHAR(MAX),
@CreationDate DATETIME2 (7),
@RevisionDate DATETIME2 (7),
@DeletedDate DATETIME2 (7)
AS
BEGIN
SET NOCOUNT ON

INSERT INTO [dbo].[Project]
(
Id,
OrganizationId,
Name,
CreationDate,
RevisionDate,
DeletedDate
)
VALUES
(
@Id,
@OrganizationId,
@Name,
@CreationDate,
@RevisionDate,
@DeletedDate
)
END

IF OBJECT_ID('[dbo].[Project_Update]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[Project_Update]
END
GO

CREATE PROCEDURE [dbo].[Project_Update]
@Id UNIQUEIDENTIFIER,
@OrganizationId UNIQUEIDENTIFIER,
@Name NVARCHAR(MAX),
@CreationDate DATETIME2 (7),
@RevisionDate DATETIME2 (7),
@DeletedDate DATETIME2 (7)
AS
BEGIN
SET NOCOUNT ON

UPDATE
[dbo].[Project]
SET
[OrganizationId] = @OrganizationId,
[Name] = @Name,
[CreationDate] = @CreationDate,
[RevisionDate] = @RevisionDate,
[DeletedDate] = @DeletedDate
WHERE
[Id] = @Id
END