Namespace GastroSky.Models
Classes
- BlacklistedEmailDomain
Blacklisted email domains will go in here. Known spammer domains and scam/phishing/porn/whatever the fuck we don't wanna have in our DB should go in here.
- Booster
Boosters table. Boosters SKU format: GSKY-BST-{Booster name}-{Duration of booster}H-V{Version number}
- Company
Companies table.
- CompanySubscription
Company-to-Subscription junction table.
- ConfigurationEntry
GastroSky configuration table.
- Error
Error structure to return in response bodies.
- Errors
Possible errors to be returned from the various backend endpoints.
- InterestedUser
Interested users
- InvalidatedAuthToken
Invalidated auth tokens should be dumped into this table upon logout/exhaustion/once known to be compromised (uh oh...).
- MailAttachment
An email attachment's details.
- MailTemplate
Mail template to be used for email traffic in the GastroSky backend.
- News
News article.
- Order
An order placed via the Gastrosky website.
- OrderedProduct
Junction table that assigns the ordered Products to an Order.
- PepperBrand
Pepper brand. Yummy.
- Post
A post. Main domain model class for this project. Everything revolves around this.
- PostPremiumUpgrade
Junction-table for premium upgrades.
- PremiumUpgrade
Premium upgrade Premium SKU format: GSKY-PRP-{DurationDays}D-V{Version number}
- Product
A product sold by Gastrosky Sagl. Could be a Booster, could be a PremiumUpgrade, but NO BUNDLES! Only single, atomic entries for every product sold! Can be accumulated in an Order.
- SentEmail
Email that was sent out by the GastroSky backend.
- Slug
DB-wide unique identifier of a resource.
- SmtpCredentials
SMTP credentials to use for sending mail (e.g. via Mailgun or something similar).
- Subscription
This is the subscription that users can pay for when they are regular customers with increasing as well as recurring needs. Subscription SKU format: GSKY-SUB-{Number of Posts Available}P-{Duration of subscription}M-{Custom user or ALL}-{Company slug or ALL}-V{Version number}
- Translation
Translations table. Translation SKU format: GSKY-TRNS-{From language}-{To language}-{MIN or WORD}-V{Version number}
- TranslationRequest
A translation request for post description
- Translator
A translator
- User
A GastroSky user account.
- UserAgent
User-AgentHTTP header DB entry.
- UserClaim
A user auth claim. This is used for authorization purposes (permission handling).
- UserLoginAttempt
Logged User login attempt. Yes: we record and keep track of every login attempt. Failed and successful ones.
- UserPostInteraction
A User's Post interaction. Can be created on other people's behalf by Post authors.
Check the wiki for more information on business logic, rules and current schema of the GastroSky Sagl.
- UserSubscription
User-to-Subscription junction table.
Structs
- ClaimType
JWT auth claim type ID (e.g.
https://api.gastrosky.ch/identity/claims/resources/users).
Enums
- AccessLevel
Unix-like access type. Can be bitwise-orred: e.g. read+write can be obtained by combining
AccessLevel.Read | AccessLevel.Write
- BusinessLegalForm
Possible business legal forms.
- CompanyRole
Possible company roles.
- Language
Language supported by GastroSky.
- MailTemplateOrderByColumn
Which column a MailTemplate related query should be ordered by.
- PostAnnualRevenueBracket
Possible Annual Revenue Bracket.
- PostCategory
Possible post category.
- SortingOrder
Sorting order preference. Used in query filters.
- UserPostInteractionStatus
Status that a UserPostInteraction can be in.