Skip to content

Commit

Permalink
feat: reporting RLS configs
Browse files Browse the repository at this point in the history
  • Loading branch information
dleard committed Feb 18, 2025
1 parent 9b61560 commit fef92bf
Show file tree
Hide file tree
Showing 14 changed files with 233 additions and 0 deletions.
1 change: 1 addition & 0 deletions bc_obps/reporting/enums/enums.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ class ReportingTableNames(Enum):
REPORT_SOURCE_TYPE = 'report_source_type'
REPORT_UNIT = 'report_unit'
REPORT_VERIFICATION_VISIT = 'report_verification_visit'
REPORT_VERIFICATION = 'report_verification'
REPORT_VERSION = 'report_version'
REPORT = 'report'
REPORTING_FIELD = 'reporting_field'
Expand Down
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_person_responsible.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_PERSON_RESPONSIBLE)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_product.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_PRODUCT)
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_PRODUCT_EMISSION_ALLOCATION)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_raw_activity_data.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_RAW_ACTIVITY_DATA)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_source_type.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_SOURCE_TYPE)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_unit.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_UNIT)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_verification.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_VERIFICATION)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_verification_visit.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_VERIFICATION_VISIT)
19 changes: 19 additions & 0 deletions bc_obps/reporting/models/rls_configs/report_version.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [
RlsOperations.SELECT,
RlsOperations.INSERT,
RlsOperations.UPDATE,
RlsOperations.DELETE,
],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORT_VERSION)
14 changes: 14 additions & 0 deletions bc_obps/reporting/models/rls_configs/reporting_field.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [RlsOperations.SELECT],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORTING_FIELD)
14 changes: 14 additions & 0 deletions bc_obps/reporting/models/rls_configs/reporting_year.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [RlsOperations.SELECT],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.REPORTING_YEAR)
14 changes: 14 additions & 0 deletions bc_obps/reporting/models/rls_configs/source_type.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
from reporting.enums.enums import ReportingTableNames
from rls.enums import RlsRoles, RlsOperations
from rls.utils.helpers import generate_rls_grants


class Rls:
role_grants_mapping = {
RlsRoles.INDUSTRY_USER: [RlsOperations.SELECT],
RlsRoles.CAS_DIRECTOR: [RlsOperations.SELECT],
RlsRoles.CAS_ADMIN: [RlsOperations.SELECT],
RlsRoles.CAS_ANALYST: [RlsOperations.SELECT],
RlsRoles.CAS_VIEW_ONLY: [RlsOperations.SELECT],
}
grants = generate_rls_grants(role_grants_mapping, ReportingTableNames.SOURCE_TYPE)

0 comments on commit fef92bf

Please sign in to comment.