""" Options: Date: 2024-11-21 11:48:52 Version: 8.23 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://api.bokamera.se #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: AddBillingInformation.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum class ICompany: company_id: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BaseModel: pass @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BillingMethodCountriesRelation(BaseModel): # @Required() billing_method_id: int = 0 # @Required() country_id: Optional[str] = None modified_date: Optional[datetime.datetime] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BillingMethod(BaseModel): billing_method_countries_relation: Optional[List[BillingMethodCountriesRelation]] = None # @Required() name: Optional[str] = None # @Required() description: Optional[str] = None modified_date: Optional[datetime.datetime] = None id: int = 0 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class BillingInformationResponse: # @ApiMember(Description="The company id.") company_id: Optional[str] = None """ The company id. """ # @ApiMember(Description="The prefered billing method.", IsRequired=true) billing_method_id: int = 0 """ The prefered billing method. """ # @ApiMember(Description="The name that should be printed on the billing information, normally this would be your company name.") name: Optional[str] = None """ The name that should be printed on the billing information, normally this would be your company name. """ # @ApiMember(Description="If you want to add the attention to the billing address.") attention: Optional[str] = None """ If you want to add the attention to the billing address. """ # @ApiMember(Description="The street for the billing adress. This is required when having postal invoice as billing method.") street1: Optional[str] = None """ The street for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The street for the billing adress.") street2: Optional[str] = None """ The street for the billing adress. """ # @ApiMember(Description="The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method.") zip_code: Optional[str] = None """ The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The city for the billing adress. This is required when having postal invoice as billing method.") city: Optional[str] = None """ The city for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The country for the billing adress. This is required when having postal invoice as billing method.") country_id: Optional[str] = None """ The country for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The billing email. This is required when having email invoice as billing method.") email: Optional[str] = None """ The billing email. This is required when having email invoice as billing method. """ # @ApiMember(Description="The company global location number.") gln: Optional[str] = None """ The company global location number. """ # @ApiMember(Description="You're internal rereference.") reference_line1: Optional[str] = None """ You're internal rereference. """ # @ApiMember(Description="You're internal rereference.") reference_line2: Optional[str] = None """ You're internal rereference. """ # @ApiMember(Description="The billing payment terms in days. This is default 15 days.") payment_terms_days: int = 0 """ The billing payment terms in days. This is default 15 days. """ # @ApiMember(Description="The company vat registration number.") vat_registration_number: Optional[str] = None """ The company vat registration number. """ # @ApiMember(Description="The billing method options to choose from") billing_method_options: Optional[List[BillingMethod]] = None """ The billing method options to choose from """ # @Route("/billing/company/", "POST") # @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) # @ValidateRequest(Validator="IsAuthenticated") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class AddBillingInformation(IReturn[BillingInformationResponse], ICompany): # @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") company_id: Optional[str] = None """ The company id, if empty will use the company id for the user you are logged in with. """ # @ApiMember(Description="The prefered billing method.", IsRequired=true) billing_method_id: int = 0 """ The prefered billing method. """ # @ApiMember(Description="The name that should be printed on the billing information, normally this would be your company name.") name: Optional[str] = None """ The name that should be printed on the billing information, normally this would be your company name. """ # @ApiMember(Description="If you want to add the attention to the billing address.") attention: Optional[str] = None """ If you want to add the attention to the billing address. """ # @ApiMember(Description="The street for the billing adress. This is required when having postal invoice as billing method.") street1: Optional[str] = None """ The street for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The street for the billing adress.") street2: Optional[str] = None """ The street for the billing adress. """ # @ApiMember(Description="The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method.") zip_code: Optional[str] = None """ The zip code (postal code) for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The city for the billing adress. This is required when having postal invoice as billing method.") city: Optional[str] = None """ The city for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The country for the billing adress. This is required when having postal invoice as billing method.") country_id: Optional[str] = None """ The country for the billing adress. This is required when having postal invoice as billing method. """ # @ApiMember(Description="The billing email. This is required when having email invoice as billing method.") email: Optional[str] = None """ The billing email. This is required when having email invoice as billing method. """ # @ApiMember(Description="The billing payment terms in days. This is default 15 days.") payment_terms_days: Optional[int] = None """ The billing payment terms in days. This is default 15 days. """ # @ApiMember(Description="The company vat registration number.") vat_registration_number: Optional[str] = None """ The company vat registration number. """ # @ApiMember(Description="The company global location number.") gln: Optional[str] = None """ The company global location number. """ # @ApiMember(Description="You're internal rereference.") reference_line1: Optional[str] = None """ You're internal rereference. """ # @ApiMember(Description="You're internal rereference.") reference_line2: Optional[str] = None """ You're internal rereference. """