Requested is part of new enum too
Signed-off-by: Émile Ré <nemile.re@gmail.com>
This commit is contained in:
@@ -5,6 +5,12 @@ ALTER TABLE
|
||||
ADD
|
||||
COLUMN status trust_center_document_access_status;
|
||||
|
||||
DELETE FROM
|
||||
trust_center_document_accesses
|
||||
WHERE
|
||||
active = 'F'
|
||||
AND requested = 'F';
|
||||
|
||||
UPDATE
|
||||
trust_center_document_accesses
|
||||
SET
|
||||
@@ -18,4 +24,4 @@ ALTER TABLE
|
||||
ALTER COLUMN
|
||||
status
|
||||
SET
|
||||
NOT NULL;
|
||||
NOT NULL;
|
||||
|
||||
@@ -800,7 +800,7 @@ func (tcdas TrustCenterDocumentAccesses) BulkInsertDocumentAccesses(
|
||||
trustCenterAccessID gid.GID,
|
||||
organizationID gid.GID,
|
||||
documentIDs []gid.GID,
|
||||
requested bool,
|
||||
status TrustCenterDocumentAccessStatus,
|
||||
createdAt time.Time,
|
||||
) error {
|
||||
if len(documentIDs) == 0 {
|
||||
@@ -818,8 +818,8 @@ WITH document_access_data AS (
|
||||
null::text AS report_id,
|
||||
null::text AS trust_center_file_id,
|
||||
false AS active,
|
||||
'REQUESTED'::trust_center_document_access_status AS status,
|
||||
@requested::boolean AS requested,
|
||||
@status::trust_center_document_access_status AS status,
|
||||
false AS requested,
|
||||
@created_at::timestamptz AS created_at,
|
||||
@updated_at::timestamptz AS updated_at
|
||||
)
|
||||
@@ -847,7 +847,7 @@ ON CONFLICT DO NOTHING
|
||||
"trust_center_access_id": trustCenterAccessID,
|
||||
"document_ids": documentIDs,
|
||||
"trust_center_document_access_entity_type": TrustCenterDocumentAccessEntityType,
|
||||
"requested": requested,
|
||||
"status": status,
|
||||
"created_at": createdAt,
|
||||
"updated_at": createdAt,
|
||||
}
|
||||
@@ -866,7 +866,7 @@ func (tcdas TrustCenterDocumentAccesses) BulkInsertReportAccesses(
|
||||
trustCenterAccessID gid.GID,
|
||||
organizationID gid.GID,
|
||||
reportIDs []gid.GID,
|
||||
requested bool,
|
||||
status TrustCenterDocumentAccessStatus,
|
||||
createdAt time.Time,
|
||||
) error {
|
||||
if len(reportIDs) == 0 {
|
||||
@@ -884,8 +884,8 @@ WITH report_access_data AS (
|
||||
unnest(@report_ids::text[]) AS report_id,
|
||||
null::text AS trust_center_file_id,
|
||||
false AS active,
|
||||
'REQUESTED'::trust_center_document_access_status AS status,
|
||||
@requested::boolean AS requested,
|
||||
@status::trust_center_document_access_status AS status,
|
||||
false AS requested,
|
||||
@created_at::timestamptz AS created_at,
|
||||
@updated_at::timestamptz AS updated_at
|
||||
)
|
||||
@@ -913,7 +913,7 @@ ON CONFLICT DO NOTHING
|
||||
"trust_center_document_access_entity_type": TrustCenterDocumentAccessEntityType,
|
||||
"trust_center_access_id": trustCenterAccessID,
|
||||
"report_ids": reportIDs,
|
||||
"requested": requested,
|
||||
"requested": status,
|
||||
"created_at": createdAt,
|
||||
"updated_at": createdAt,
|
||||
}
|
||||
@@ -1049,7 +1049,7 @@ func (tcdas TrustCenterDocumentAccesses) BulkInsertTrustCenterFileAccesses(
|
||||
trustCenterAccessID gid.GID,
|
||||
organizationID gid.GID,
|
||||
trustCenterFileIDs []gid.GID,
|
||||
requested bool,
|
||||
status TrustCenterDocumentAccessStatus,
|
||||
createdAt time.Time,
|
||||
) error {
|
||||
q := `
|
||||
@@ -1063,8 +1063,8 @@ WITH trust_center_file_access_data AS (
|
||||
null::text AS report_id,
|
||||
unnest(@trust_center_file_ids::text[]) AS trust_center_file_id,
|
||||
false AS active,
|
||||
'REQUESTED'::trust_center_document_access_status AS status,
|
||||
@requested::boolean AS requested,
|
||||
@status::trust_center_document_access_status AS status,
|
||||
false AS requested,
|
||||
@created_at::timestamptz AS created_at,
|
||||
@updated_at::timestamptz AS updated_at
|
||||
)
|
||||
@@ -1092,7 +1092,7 @@ ON CONFLICT DO NOTHING
|
||||
"trust_center_document_access_entity_type": TrustCenterDocumentAccessEntityType,
|
||||
"trust_center_access_id": trustCenterAccessID,
|
||||
"trust_center_file_ids": trustCenterFileIDs,
|
||||
"requested": requested,
|
||||
"status": status,
|
||||
"created_at": createdAt,
|
||||
"updated_at": createdAt,
|
||||
}
|
||||
|
||||
@@ -355,7 +355,16 @@ func (s TrustCenterAccessService) upsertDocumentAccesses(
|
||||
|
||||
if documentIDs != nil {
|
||||
var documentAccesses coredata.TrustCenterDocumentAccesses
|
||||
if err := documentAccesses.BulkInsertDocumentAccesses(ctx, tx, s.svc.scope, accessID, organizationID, documentIDs, false, now); err != nil {
|
||||
if err := documentAccesses.BulkInsertDocumentAccesses(
|
||||
ctx,
|
||||
tx,
|
||||
s.svc.scope,
|
||||
accessID,
|
||||
organizationID,
|
||||
documentIDs,
|
||||
coredata.TrustCenterDocumentAccessStatusGranted,
|
||||
now,
|
||||
); err != nil {
|
||||
return fmt.Errorf("cannot create document accesses: %w", err)
|
||||
}
|
||||
if err := coredata.GrantByDocumentIDs(ctx, tx, s.svc.scope, accessID, documentIDs, now); err != nil {
|
||||
@@ -365,7 +374,16 @@ func (s TrustCenterAccessService) upsertDocumentAccesses(
|
||||
|
||||
if reportIDs != nil {
|
||||
var documentAccesses coredata.TrustCenterDocumentAccesses
|
||||
if err := documentAccesses.BulkInsertReportAccesses(ctx, tx, s.svc.scope, accessID, organizationID, reportIDs, false, now); err != nil {
|
||||
if err := documentAccesses.BulkInsertReportAccesses(
|
||||
ctx,
|
||||
tx,
|
||||
s.svc.scope,
|
||||
accessID,
|
||||
organizationID,
|
||||
reportIDs,
|
||||
coredata.TrustCenterDocumentAccessStatusGranted,
|
||||
now,
|
||||
); err != nil {
|
||||
return fmt.Errorf("cannot create report accesses: %w", err)
|
||||
}
|
||||
if err := coredata.GrantByReportIDs(ctx, tx, s.svc.scope, accessID, reportIDs, now); err != nil {
|
||||
@@ -375,7 +393,16 @@ func (s TrustCenterAccessService) upsertDocumentAccesses(
|
||||
|
||||
if trustCenterFileIDs != nil {
|
||||
var documentAccesses coredata.TrustCenterDocumentAccesses
|
||||
if err := documentAccesses.BulkInsertTrustCenterFileAccesses(ctx, tx, s.svc.scope, accessID, organizationID, trustCenterFileIDs, false, now); err != nil {
|
||||
if err := documentAccesses.BulkInsertTrustCenterFileAccesses(
|
||||
ctx,
|
||||
tx,
|
||||
s.svc.scope,
|
||||
accessID,
|
||||
organizationID,
|
||||
trustCenterFileIDs,
|
||||
coredata.TrustCenterDocumentAccessStatusGranted,
|
||||
now,
|
||||
); err != nil {
|
||||
return fmt.Errorf("cannot create trust center file accesses: %w", err)
|
||||
}
|
||||
if err := coredata.GrantByTrustCenterFileIDs(ctx, tx, s.svc.scope, accessID, trustCenterFileIDs, now); err != nil {
|
||||
|
||||
@@ -209,15 +209,42 @@ func (s TrustCenterAccessService) Request(
|
||||
|
||||
var accesses coredata.TrustCenterDocumentAccesses
|
||||
|
||||
if err := accesses.BulkInsertDocumentAccesses(ctx, tx, s.svc.scope, access.ID, access.OrganizationID, newDocumentIDs, true, now); err != nil {
|
||||
if err := accesses.BulkInsertDocumentAccesses(
|
||||
ctx,
|
||||
tx,
|
||||
s.svc.scope,
|
||||
access.ID,
|
||||
access.OrganizationID,
|
||||
newDocumentIDs,
|
||||
coredata.TrustCenterDocumentAccessStatusRequested,
|
||||
now,
|
||||
); err != nil {
|
||||
return fmt.Errorf("cannot bulk insert trust center document accesses: %w", err)
|
||||
}
|
||||
|
||||
if err := accesses.BulkInsertReportAccesses(ctx, tx, s.svc.scope, access.ID, access.OrganizationID, newReportIDs, true, now); err != nil {
|
||||
if err := accesses.BulkInsertReportAccesses(
|
||||
ctx,
|
||||
tx,
|
||||
s.svc.scope,
|
||||
access.ID,
|
||||
access.OrganizationID,
|
||||
newReportIDs,
|
||||
coredata.TrustCenterDocumentAccessStatusRequested,
|
||||
now,
|
||||
); err != nil {
|
||||
return fmt.Errorf("cannot bulk insert trust center report accesses: %w", err)
|
||||
}
|
||||
|
||||
if err := accesses.BulkInsertTrustCenterFileAccesses(ctx, tx, s.svc.scope, access.ID, access.OrganizationID, newTrustCenterFileIDs, true, now); err != nil {
|
||||
if err := accesses.BulkInsertTrustCenterFileAccesses(
|
||||
ctx,
|
||||
tx,
|
||||
s.svc.scope,
|
||||
access.ID,
|
||||
access.OrganizationID,
|
||||
newTrustCenterFileIDs,
|
||||
coredata.TrustCenterDocumentAccessStatusRequested,
|
||||
now,
|
||||
); err != nil {
|
||||
return fmt.Errorf("cannot bulk insert trust center file accesses: %w", err)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user