| POST | /customerarticle/fromarticle | Create CustomerArticle. | Create CustomerArticle. |
|---|
namespace BokaMera.API.ServiceModel.Db
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type BaseModel() =
class end
[<AllowNullLiteral>]
type ArticleServiceRelation() =
inherit BaseModel()
[<Required>]
member val CompanyId:Guid = new Guid() with get,set
member val Id:Int32 = new Int32() with get,set
[<Required>]
member val ServiceId:Int32 = new Int32() with get,set
[<Required>]
member val ArticleId:Int32 = new Int32() with get,set
[<AllowNullLiteral>]
type ArticleResponse() =
member val CompanyId:Guid = new Guid() with get,set
member val Id:Int32 = new Int32() with get,set
member val Name:String = null with get,set
member val ArticleTypeId:Int32 = new Int32() with get,set
member val Description:String = null with get,set
member val ImageUrl:String = null with get,set
member val Active:Boolean = new Boolean() with get,set
member val Amount:Int32 = new Int32() with get,set
member val Price:Double = new Double() with get,set
member val CurrencyId:String = null with get,set
member val SortOrder:Int32 = new Int32() with get,set
member val UpdatedDate:DateTime = new DateTime() with get,set
member val CreatedDate:DateTime = new DateTime() with get,set
member val Services:ResizeArray<ArticleServiceRelation> = null with get,set
member val ServiceIds:ResizeArray<Int32> = null with get,set
member val PriceSign:String = null with get,set
member val VAT:Nullable<Decimal> = new Nullable<Decimal>() with get,set
[<AllowNullLiteral>]
type CustomerArticleCustomerResponse() =
member val Id:Guid = new Guid() with get,set
member val Firstname:String = null with get,set
member val Lastname:String = null with get,set
member val Email:String = null with get,set
member val Phone:String = null with get,set
[<AllowNullLiteral>]
type CustomerArticleCompanyResponse() =
member val Id:Guid = new Guid() with get,set
member val Name:String = null with get,set
member val LogoType:String = null with get,set
member val Email:String = null with get,set
member val Phone:String = null with get,set
member val City:String = null with get,set
member val Street1:String = null with get,set
member val ZipCode:String = null with get,set
member val CountryId:String = null with get,set
[<AllowNullLiteral>]
type PaymentLogResponse() =
member val Id:Int32 = new Int32() with get,set
member val Amount:Nullable<Double> = new Nullable<Double>() with get,set
member val AmountCredited:Nullable<Double> = new Nullable<Double>() with get,set
member val CurrencyId:String = null with get,set
member val Comments:String = null with get,set
member val Created:DateTime = new DateTime() with get,set
member val Updated:DateTime = new DateTime() with get,set
[<AllowNullLiteral>]
type CustomerArticleResponse() =
member val Id:Int32 = new Int32() with get,set
member val CompanyId:Guid = new Guid() with get,set
member val ArticleId:Nullable<Int32> = new Nullable<Int32>() with get,set
member val Price:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val VAT:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val CurrencyId:String = null with get,set
member val StatusId:Int32 = new Int32() with get,set
member val StatusName:String = null with get,set
member val CustomerId:Nullable<Guid> = new Nullable<Guid>() with get,set
member val CreatedDate:DateTime = new DateTime() with get,set
member val UpdatedDate:DateTime = new DateTime() with get,set
member val Article:ArticleResponse = null with get,set
member val Customer:CustomerArticleCustomerResponse = null with get,set
member val Company:CustomerArticleCompanyResponse = null with get,set
member val PaymentLog:ResizeArray<PaymentLogResponse> = null with get,set
member val ResponseStatus:ResponseStatus = null with get,set
[<AllowNullLiteral>]
type CustomerBase() =
member val CustomerId:Nullable<Guid> = new Nullable<Guid>() with get,set
member val Firstname:String = null with get,set
member val Lastname:String = null with get,set
member val Email:String = null with get,set
member val Phone:String = null with get,set
member val SubscribedToNewsletter:Boolean = new Boolean() with get,set
member val PersonalIdentityNumber:String = null with get,set
[<AllowNullLiteral>]
type CustomerToHandle() =
inherit CustomerBase()
[<AllowNullLiteral>]
type InvoiceAddressToHandle() =
member val CorporateIdentityNumber:String = null with get,set
member val InvoiceAddress1:String = null with get,set
member val InvoiceAddress2:String = null with get,set
member val InvoiceCity:String = null with get,set
member val InvoicePostalCode:String = null with get,set
member val InvoiceCountryCode:String = null with get,set
[<AllowNullLiteral>]
type FromArticleBase() =
///<summary>
///
///</summary>
[<ApiMember(Description="")>]
member val CompanyId:Nullable<Guid> = new Nullable<Guid>() with get,set
///<summary>
///Article ID for the rebate code
///</summary>
[<ApiMember(Description="Article ID for the rebate code", IsRequired=true)>]
member val ArticleId:Int32 = new Int32() with get,set
///<summary>
///Customer information
///</summary>
[<ApiMember(Description="Customer information")>]
member val Customer:CustomerToHandle = null with get,set
///<summary>
///If you want to book with customer information instead of the Customer Id send the customer information here. Note: If customer profile already exists with the same email the information will not be changed, instead the provided information will be added as BookingsComments if it differs from the ordinairy profile.
///</summary>
[<ApiMember(Description="If you want to book with customer information instead of the Customer Id send the customer information here. Note: If customer profile already exists with the same email the information will not be changed, instead the provided information will be added as BookingsComments if it differs from the ordinairy profile. ")>]
member val InvoiceAddress:InvoiceAddressToHandle = null with get,set
[<ApiResponse(Description="You were unauthorized to call this service", StatusCode=401)>]
[<AllowNullLiteral>]
type CreateCustomerArticleFromArticle() =
inherit FromArticleBase()
F# CreateCustomerArticleFromArticle DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /customerarticle/fromarticle HTTP/1.1
Host: testapi.bokamera.se
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CompanyId":"00000000-0000-0000-0000-000000000000","ArticleId":0,"Customer":{"CustomerId":"00000000-0000-0000-0000-000000000000","Firstname":"String","Lastname":"String","Email":"String","Phone":"String","SubscribedToNewsletter":false,"PersonalIdentityNumber":"String"},"InvoiceAddress":{"CorporateIdentityNumber":"String","InvoiceAddress1":"String","InvoiceAddress2":"String","InvoiceCity":"String","InvoicePostalCode":"String","InvoiceCountryCode":"String"}}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"Id":0,"ArticleId":0,"Price":0,"VAT":0,"CurrencyId":"String","StatusId":0,"StatusName":"String","CustomerId":"00000000-0000-0000-0000-000000000000","Article":{"Id":0,"Name":"String","ArticleTypeId":0,"Description":"String","ImageUrl":"String","Active":false,"Amount":0,"Price":0,"CurrencyId":"String","SortOrder":0,"Services":[{"Id":0,"ServiceId":0,"ArticleId":0}],"ServiceIds":[0],"PriceSign":"String","VAT":0},"Customer":{"Firstname":"String","Lastname":"String","Email":"String","Phone":"String"},"Company":{"Name":"String","LogoType":"String","Email":"String","Phone":"String","City":"String","Street1":"String","ZipCode":"String","CountryId":"String"},"PaymentLog":[{"Id":0,"Amount":0,"AmountCredited":0,"CurrencyId":"String","Comments":"String"}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}