-- SPDX-FileCopyrightText: 2022-24 Sarah Vaupel ,Steffen Jost -- -- SPDX-License-Identifier: AGPL-3.0-or-later -- Description of companies associated with users Company name CompanyName -- == (CI Text) shorthand CompanyShorthand -- == (CI Text) and CompanyKey :: CompanyShorthand -> CompanyId A change to AvsId as primary key is too much work and not strictly necessary due to Uniqueness avsId Int default=0 -- primary key from avs, use negative numbers for non-AVS companies prefersPostal Bool default=false -- new company users prefers letters by post instead of email postAddress StoredMarkup Maybe -- default company postal address, including company name email UserEmail Maybe -- Case-insensitive generic company eMail address UniqueCompanyName name -- UniqueCompanyShorthand shorthand -- unnecessary, since it is the primary key already UniqueCompanyAvsId avsId Primary shorthand -- newtype Key Company = CompanyKey { unCompanyKey :: CompanyShorthand } deriving Ord Eq Show Generic Binary -- -- TODO: a way to populate this table (manually) -- CompanySynonym -- synonym CompanyName -- canonical CompanyShorthand OnDeleteCascade OnUpdateCascade -- DEPRECATED: should be CompanyId -- UniqueCompanySynonym synonym -- deriving Ord Eq Show Generic