/* Options: Date: 2026-04-23 04:09:17 Version: 10.05 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bokamera.se //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: UpdateCustomerArticle.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* @Route(Path="/customerarticle/{Id}", Verbs="PUT") @ApiResponse(Description="You were unauthorized to call this service", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") open class UpdateCustomerArticle : IReturn, ICompany { /** * The customer article id */ @ApiMember(Description="The customer article id", IsRequired=true, ParameterType="path") open var Id:Int? = null /** * The company id, if empty will use the company id for the user you are logged in with. */ @ApiMember(Description="The company id, if empty will use the company id for the user you are logged in with.") override var CompanyId:UUID? = null /** * The new status of the customer article */ @ApiMember(Description="The new status of the customer article") open var StatusId:CustomerArticleStatusEnum? = null /** * Updated price */ @ApiMember(Description="Updated price") open var Price:BigDecimal? = null /** * Updated VAT */ @ApiMember(Description="Updated VAT") open var VAT:BigDecimal? = null /** * Updated currency */ @ApiMember(Description="Updated currency") open var CurrencyId:String? = null companion object { private val responseType = CustomerArticleResponse::class.java } override fun getResponseType(): Any? = UpdateCustomerArticle.responseType } open class CustomerArticleResponse { open var Id:Int? = null open var CompanyId:UUID? = null open var ArticleId:Int? = null open var Price:BigDecimal? = null open var VAT:BigDecimal? = null open var CurrencyId:String? = null open var StatusId:Int? = null open var StatusName:String? = null open var CustomerId:UUID? = null open var CreatedDate:Date? = null open var UpdatedDate:Date? = null open var Article:ArticleResponse? = null open var Customer:CustomerArticleCustomerResponse? = null open var Company:CustomerArticleCompanyResponse? = null open var PaymentLog:ArrayList = ArrayList() open var ResponseStatus:ResponseStatus? = null } interface ICompany { var CompanyId:UUID? } enum class CustomerArticleStatusEnum(val value:Int) { AwaitingPayment(1), AwaitingPaymentFromProvider(2), AwaitingPaymentNoTimeLimit(3), Active(4), Off(5), } open class CustomerArticleCustomerResponse { open var Id:UUID? = null open var Firstname:String? = null open var Lastname:String? = null open var Email:String? = null open var Phone:String? = null } open class CustomerArticleCompanyResponse { open var Id:UUID? = null open var Name:String? = null open var LogoType:String? = null open var Email:String? = null open var Phone:String? = null open var City:String? = null open var Street1:String? = null open var ZipCode:String? = null open var CountryId:String? = null } open class PaymentLogResponse { open var Id:Int? = null open var Amount:Double? = null open var AmountCredited:Double? = null open var CurrencyId:String? = null open var Comments:String? = null open var Created:Date? = null open var Updated:Date? = null } open class ArticleResponse { open var CompanyId:UUID? = null open var Id:Int? = null open var Name:String? = null open var ArticleTypeId:Int? = null open var Description:String? = null open var ImageUrl:String? = null open var Active:Boolean? = null open var Amount:Int? = null open var Price:Double? = null open var CurrencyId:String? = null open var SortOrder:Int? = null open var UpdatedDate:Date? = null open var CreatedDate:Date? = null open var Duration:Int? = null open var Services:ArrayList = ArrayList() open var ServiceIds:ArrayList = ArrayList() open var PriceSign:String? = null open var VAT:BigDecimal? = null open var ValidDays:Int? = null open var SendNotification:Boolean? = null open var NotificationEmail:String? = null }