added some TODO.spec

This commit is contained in:
Michael Hoennig 2024-10-16 13:12:19 +02:00
parent 5c2aec1c37
commit 04138fe991
5 changed files with 21 additions and 13 deletions

View File

@ -115,7 +115,7 @@ classDiagram
+BankAccount refundBankAccount +BankAccount refundBankAccount
+String defaultPrefix: mei +String defaultPrefix: mei
} }
debitor-MeierGmbH o-- partner-MeierGmbH debitor-MeierGmbH o-- rel-MeierGmbH
debitor-MeierGmbH *-- rel-MeierGmbH-Buha debitor-MeierGmbH *-- rel-MeierGmbH-Buha
class contactData-MeierGmbH-Buha { class contactData-MeierGmbH-Buha {

View File

@ -8,7 +8,7 @@ create table hs_office_debitor
( (
uuid uuid unique references rbac.object (uuid) initially deferred, uuid uuid unique references rbac.object (uuid) initially deferred,
version int not null default 0, version int not null default 0,
debitorNumberSuffix char(2) not null check (debitorNumberSuffix::text ~ '^[0-9][0-9]$'), debitorNumberSuffix char(2) not null check (debitorNumberSuffix::text ~ '^[0-9][0-9]$'), -- TODO.spec: more digits? max digits DATEV?
debitorRelUuid uuid not null references hs_office_relation(uuid), debitorRelUuid uuid not null references hs_office_relation(uuid),
billable boolean not null default true, billable boolean not null default true,
vatId varchar(24), vatId varchar(24),

View File

@ -8,7 +8,7 @@ CREATE TYPE HsOfficeMembershipStatus AS ENUM (
'INVALID', 'INVALID',
'ACTIVE', 'ACTIVE',
'CANCELLED', 'CANCELLED',
'TRANSFERRED', 'TRANSFERRED', -- only in legally mandatory cases (e.g. community of heirs -> single heir)
'DECEASED', 'DECEASED',
'LIQUIDATED', 'LIQUIDATED',
'EXPULSED', 'EXPULSED',
@ -22,7 +22,7 @@ create table if not exists hs_office_membership
uuid uuid unique references rbac.object (uuid) initially deferred, uuid uuid unique references rbac.object (uuid) initially deferred,
version int not null default 0, version int not null default 0,
partnerUuid uuid not null references hs_office_partner(uuid), partnerUuid uuid not null references hs_office_partner(uuid),
memberNumberSuffix char(2) not null check (memberNumberSuffix::text ~ '^[0-9][0-9]$'), memberNumberSuffix char(2) not null check (memberNumberSuffix::text ~ '^[0-9][0-9]$'), -- TODO.spec: more digits?
validity daterange not null, validity daterange not null,
status HsOfficeMembershipStatus not null default 'ACTIVE', status HsOfficeMembershipStatus not null default 'ACTIVE',
membershipFeeBillable boolean not null default true, membershipFeeBillable boolean not null default true,

View File

@ -4,7 +4,13 @@
--changeset michael.hoennig:hs-office-coopshares-MAIN-TABLE endDelimiter:--// --changeset michael.hoennig:hs-office-coopshares-MAIN-TABLE endDelimiter:--//
-- ---------------------------------------------------------------------------- -- ----------------------------------------------------------------------------
CREATE TYPE HsOfficeCoopSharesTransactionType AS ENUM ('ADJUSTMENT', 'SUBSCRIPTION', 'CANCELLATION'); CREATE TYPE HsOfficeCoopSharesTransactionType AS ENUM (
'ADJUSTMENT',
'SUBSCRIPTION',
'CANCELLATION',
'TRANSFER', -- only for legally mandatory cases (member deceased) TODO.spec: clarify if that's true
'ADOPTION' -- only for legally mandatory cases (member deceased) TODO.spec: clarify if that's true
);
CREATE CAST (character varying as HsOfficeCoopSharesTransactionType) WITH INOUT AS IMPLICIT; CREATE CAST (character varying as HsOfficeCoopSharesTransactionType) WITH INOUT AS IMPLICIT;

View File

@ -4,14 +4,16 @@
--changeset michael.hoennig:hs-office-coopassets-MAIN-TABLE endDelimiter:--// --changeset michael.hoennig:hs-office-coopassets-MAIN-TABLE endDelimiter:--//
-- ---------------------------------------------------------------------------- -- ----------------------------------------------------------------------------
CREATE TYPE HsOfficeCoopAssetsTransactionType AS ENUM ('ADJUSTMENT', CREATE TYPE HsOfficeCoopAssetsTransactionType AS ENUM (
'ADJUSTMENT',
'DEPOSIT', 'DEPOSIT',
'DISBURSAL', 'DISBURSAL',
'TRANSFER', 'TRANSFER',
'ADOPTION', 'ADOPTION',
'CLEARING', 'CLEARING',
'LOSS', 'LOSS',
'LIMITATION'); 'LIMITATION'
);
CREATE CAST (character varying as HsOfficeCoopAssetsTransactionType) WITH INOUT AS IMPLICIT; CREATE CAST (character varying as HsOfficeCoopAssetsTransactionType) WITH INOUT AS IMPLICIT;