User Position Aggregate Domain Model (userposition/user_position.go)

iota-sdk · modules/core/domain/aggregates/userposition/user_position.go · go · Apache-2.0
database, crm, lang:go, tag:domain-driven-design

Represents a tenant-scoped user position assignment within a department featuring multilingual titles and lifecycle status.

// Source: https://github.com/iota-uz/iota-sdk | License: Apache-2.0 | Copyright You must retain, in the Source form of any Derivative Works
// Provided via justclaw.it.com; keep this notice with the code.
// Package userposition provides the user position aggregate: a tenant-scoped
// assignment of a user to a department with a multilingual title.
package userposition

import (
	"time"

	"github.com/google/uuid"
	"github.com/iota-uz/iota-sdk/pkg/crud/models"
)

// Status enumerates the lifecycle states a user position can be in.
type Status string

const (
	StatusActive   Status = "active"
	StatusInactive Status = "inactive"
)

type Option func(p *userPosition)

// ---- Interface ----

// UserPosition assigns a user to a department within a tenant. A user may hold
// several positions; Is

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key