service backend
All checks were successful
ci/woodpecker/push/db Pipeline was successful
ci/woodpecker/push/nats Pipeline was successful

This commit is contained in:
Stephan D
2025-11-07 18:35:26 +01:00
parent 20e8f9acc4
commit 62a6631b9a
537 changed files with 48453 additions and 0 deletions

View File

@@ -0,0 +1,72 @@
package mservice
import "github.com/tech/sendico/pkg/merrors"
type Type = string
const (
Accounts Type = "accounts" // Represents user accounts in the system
Amplitude Type = "amplitude" // Represents analytics integration with Amplitude
Automations Type = "automation" // Represents automation workflows
Changes Type = "changes" // Tracks changes made to resources
Clients Type = "clients" // Represents client information
Comments Type = "comments" // Represents comments on tasks or other resources
ChainGateway Type = "chain_gateway" // Represents chain gateway microservice
FXOracle Type = "fx_oracle" // Represents FX oracle microservice
FeePlans Type = "fee_plans" // Represents fee plans microservice
FilterProjects Type = "filter_projects" // Represents comments on tasks or other resources
Invitations Type = "invitations" // Represents invitations sent to users
Invoices Type = "invoices" // Represents invoices
Logo Type = "logo" // Represents logos for organizations or projects
Ledger Type = "ledger" // Represents ledger microservice
LedgerAccounts Type = "ledger_accounts" // Represents ledger accounts microservice
LedgerBalances Type = "ledger_balances" // Represents ledger account balances microservice
LedgerEntries Type = "ledger_journal_entries" // Represents ledger journal entries microservice
LedgerOutbox Type = "ledger_outbox" // Represents ledger outbox microservice
LedgerParties Type = "ledger_parties" // Represents ledger account owner parties microservice
LedgerPlines Type = "ledger_posting_lines" // Represents ledger journal posting lines microservice
PaymentOrchestrator Type = "payment_orchestrator" // Represents payment orchestration microservice
ChainWallets Type = "chain_wallets" // Represents managed chain wallets
ChainWalletBalances Type = "chain_wallet_balances" // Represents managed chain wallet balances
ChainTransfers Type = "chain_transfers" // Represents chain transfers
ChainDeposits Type = "chain_deposits" // Represents chain deposits
Notifications Type = "notifications" // Represents notifications sent to users
Organizations Type = "organizations" // Represents organizations in the system
Payments Type = "payments" // Represents payments service
Permissions Type = "permissions" // Represents permissiosns service
Policies Type = "policies" // Represents access control policies
PolicyAssignements Type = "policy_assignments" // Represents policy assignments database
Priorities Type = "priorities" // Represents object properties
PriorityGroups Type = "priority_groups" // Represents task or project priorities
Projects Type = "projects" // Represents projects managed in the system
PropertyBindings Type = "property_bindings" // Represents properties bindings of resources
PropertySchemas Type = "property_schemas" // Represents properties or attributes of resources
Properties Type = "properties" // Represents property values of the propertites of specific objects
Reactions Type = "reactions" // Represents comment reactions
RefreshTokens Type = "refresh_tokens" // Represents refresh tokens for authentication
Roles Type = "roles" // Represents roles in access control
Statuses Type = "statuses" // Represents statuses of tasks or projects
StatusGroups Type = "status_groups" // Represents status groups
Steps Type = "steps" // Represents steps in workflows or processes
Storage Type = "storage" // Represents statuses of tasks or projects
Tags Type = "tags" // Represents tags managed in the system
Tasks Type = "tasks" // Represents tasks managed in the system
Teams Type = "teams" // Represents teams managed in the system
Tenants Type = "tenants" // Represents tenants managed in the system
Workflows Type = "workflows" // Represents workflows for tasks or projects
Workspaces Type = "workspaces" // Represents workspaces containing projects and teams
)
func StringToSType(s string) (Type, error) {
switch Type(s) {
case Accounts, Amplitude, Automations, Changes, Clients, Comments, ChainGateway, ChainWallets, ChainWalletBalances,
ChainTransfers, ChainDeposits, FXOracle, FeePlans, FilterProjects, Invitations, Invoices, Logo, Ledger,
LedgerAccounts, LedgerBalances, LedgerEntries, LedgerOutbox, LedgerParties, LedgerPlines, Notifications,
Organizations, Payments, PaymentOrchestrator, Permissions, Policies, PolicyAssignements, Priorities,
PriorityGroups, Projects, PropertyBindings, PropertySchemas, Properties, Reactions, RefreshTokens, Roles,
Statuses, StatusGroups, Steps, Storage, Tags, Tasks, Teams, Tenants, Workflows, Workspaces:
return Type(s), nil
default:
return "", merrors.DataConflict("invalid service type: " + s)
}
}