Source code for sapimclient.model.data_type

"""Pydantic models for Data Type Resources."""

from datetime import datetime
from typing import ClassVar

from pydantic import AliasChoices, Field

from .base import Resource, ValueClass


[docs] class _DataType(Resource): """Base class for DataType resources.""" attr_seq: ClassVar[str] = 'data_type_seq' data_type_seq: str | None = None description: str | None = None create_date: datetime | None = Field(None, exclude=True, repr=False) created_by: str | None = Field(None, exclude=True, repr=False) modified_by: str | None = Field(None, exclude=True, repr=False) not_allow_update: bool | None = None
[docs] class CreditType(_DataType): """Credit Type.""" attr_endpoint: ClassVar[str] = 'api/v2/creditTypes' credit_type_id: str = Field(validation_alias=AliasChoices('creditTypeId', 'id'))
[docs] class EarningCode(_DataType): """Earning Code.""" attr_endpoint: ClassVar[str] = 'api/v2/earningCodes' earning_code_id: str = Field(validation_alias=AliasChoices('earningCodeId', 'id'))
[docs] class EarningGroup(_DataType): """Earning Group.""" attr_endpoint: ClassVar[str] = 'api/v2/earningGroups' earning_group_id: str = Field(validation_alias=AliasChoices('earningGroupId', 'id'))
[docs] class EventType(_DataType): """Event Type.""" attr_endpoint: ClassVar[str] = 'api/v2/eventTypes' event_type_id: str = Field(validation_alias=AliasChoices('eventTypeId', 'id'))
[docs] class FixedValueType(_DataType): """Fixed Value Type.""" attr_endpoint: ClassVar[str] = 'api/v2/fixedValueTypes' fixed_value_type_id: str = Field( validation_alias=AliasChoices('fixedValueTypeId', 'id'), )
[docs] class PositionRelationType(_DataType): """Position Relation Type.""" attr_endpoint: ClassVar[str] = 'api/v2/positionRelationTypes' name: str
[docs] class Reason(_DataType): """Reason.""" attr_endpoint: ClassVar[str] = 'api/v2/reasons' reason_id: str = Field(validation_alias=AliasChoices('reasonId', 'id'))
[docs] class StatusCode(_DataType): """Status Code.""" attr_endpoint: ClassVar[str] = 'api/v2/statusCodes' status: str name: str | None = None type: str | None = None is_active: bool = True
[docs] class UnitType(_DataType): """Unit Type.""" attr_endpoint: ClassVar[str] = 'api/v2/unitTypes' unit_type_seq: str name: str symbol: str | None = None scale: int reporting_scale: int position_of_symbol: int currency_locale: str | None = None value_class: ValueClass formatting: str | None = None