OSZZ API

<back to all web services

CreateOrder

using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Oszz.Api.Models;
using BackOffice.Core;

namespace BackOffice.Core
{
    public enum OrderItemState
    {
        Undefined,
        Sold,
        Refused,
        InOrder,
        InSupplierCart,
        Purchased,
        NotDistributed,
        InCart,
        Ready,
        Distributed,
        SupplierRefused,
        Archived,
        GivingOutScan,
        InProcessing,
        Return,
        Returned,
        RefusedByClient,
        PurchasedBySupplier,
        InParentCart,
        InSupplierWebCart,
        WorkInSupplierWebCart,
        Deficit,
    }

}

namespace Oszz.Api.Models
{
    [DataContract]
    public partial class CreateOrder
    {
        public CreateOrder()
        {
            GlobalIds = new long[]{};
        }

        [DataMember]
        public virtual long[] GlobalIds { get; set; }

        [DataMember]
        public virtual Guid TokenId { get; set; }
    }

    [DataContract]
    public partial class CreateOrderResponse
    {
        public CreateOrderResponse()
        {
            Result = new OrderItemModel[]{};
        }

        [DataMember]
        public virtual ResponseStatus ResponseStatus { get; set; }

        [DataMember]
        public virtual OrderItemModel[] Result { get; set; }
    }

    [DataContract]
    public partial class OrderItemModel
    {
        public OrderItemModel()
        {
            Motions = new OrderItemMotionModel[]{};
        }

        [DataMember]
        public virtual Guid OrderItemId { get; set; }

        [DataMember]
        public virtual long GlobalId { get; set; }

        [DataMember]
        public virtual DateTime Date { get; set; }

        [DataMember]
        public virtual DateTime LastUpdate { get; set; }

        [DataMember]
        public virtual Guid ProductId { get; set; }

        [DataMember]
        public virtual string ProductNumber { get; set; }

        [DataMember]
        public virtual string ProductTitle { get; set; }

        [DataMember]
        public virtual string ManufacturerTitle { get; set; }

        [DataMember]
        public virtual Guid? ReplacementProductId { get; set; }

        [DataMember]
        public virtual string ReplacementProductNumber { get; set; }

        [DataMember]
        public virtual string ReplacementProductTitle { get; set; }

        [DataMember]
        public virtual string ReplacementManufacturerTitle { get; set; }

        [DataMember]
        public virtual int Quantity { get; set; }

        [DataMember]
        public virtual decimal Price { get; set; }

        [DataMember]
        public virtual decimal InitialPrice { get; set; }

        [DataMember]
        public virtual string Comment { get; set; }

        [DataMember]
        public virtual int ExpectedDeliveryDays { get; set; }

        [DataMember]
        public virtual int GuaranteedDeliveryDays { get; set; }

        [DataMember]
        public virtual DateTime? GuaranteedDeliveryTime { get; set; }

        [DataMember]
        public virtual DateTime? ExpectedDeliveryTime { get; set; }

        [DataMember]
        public virtual string PriceListLogo { get; set; }

        [DataMember]
        public virtual string Delivery { get; set; }

        [DataMember]
        public virtual bool IsCash { get; set; }

        [DataMember]
        public virtual DateTime? DeliveryDate { get; set; }

        [DataMember]
        public virtual bool PriceListUseSchedule { get; set; }

        [DataMember]
        public virtual Guid SupplierAliasId { get; set; }

        [DataMember]
        public virtual Guid? SubcustomerId { get; set; }

        [DataMember]
        public virtual bool? IsCashSubcustomer { get; set; }

        [DataMember]
        public virtual string SubcustomerLogo { get; set; }

        [DataMember]
        public virtual decimal? InitialSubcustomerPrice { get; set; }

        [DataMember]
        public virtual decimal? SubcustomerPrice { get; set; }

        [DataMember]
        public virtual OrderItemMotionModel[] Motions { get; set; }
    }

    [DataContract]
    public partial class OrderItemMotionModel
    {
        [DataMember]
        public virtual Guid MotionId { get; set; }

        [DataMember]
        public virtual Guid? ParentId { get; set; }

        [DataMember]
        public virtual OrderItemState State { get; set; }

        [DataMember]
        public virtual string StateTitle { get; set; }

        [DataMember]
        public virtual DateTime Date { get; set; }

        [DataMember]
        public virtual int InitialQuantity { get; set; }

        [DataMember]
        public virtual int Quantity { get; set; }

        [DataMember]
        public virtual DateTime? PlannedDeliveryDate { get; set; }
    }

}

C# CreateOrder DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .soap12 suffix or ?format=soap12

HTTP + SOAP12

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /soap12 HTTP/1.1 
Host: api.oszz.ru 
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>

<CreateOrder xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <GlobalIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:long>0</d2p1:long>
  </GlobalIds>
  <TokenId>00000000-0000-0000-0000-000000000000</TokenId>
</CreateOrder>

    </soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>

<CreateOrderResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.servicestack.net/types">
  <ResponseStatus>
    <ErrorCode>String</ErrorCode>
    <Message>String</Message>
    <StackTrace>String</StackTrace>
    <Errors>
      <ResponseError>
        <ErrorCode>String</ErrorCode>
        <FieldName>String</FieldName>
        <Message>String</Message>
        <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </Meta>
      </ResponseError>
    </Errors>
    <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </Meta>
  </ResponseStatus>
  <Result>
    <OrderItemModel>
      <Comment>String</Comment>
      <Date>0001-01-01T00:00:00</Date>
      <Delivery>String</Delivery>
      <DeliveryDate>0001-01-01T00:00:00</DeliveryDate>
      <ExpectedDeliveryDays>0</ExpectedDeliveryDays>
      <ExpectedDeliveryTime>0001-01-01T00:00:00</ExpectedDeliveryTime>
      <GlobalId>0</GlobalId>
      <GuaranteedDeliveryDays>0</GuaranteedDeliveryDays>
      <GuaranteedDeliveryTime>0001-01-01T00:00:00</GuaranteedDeliveryTime>
      <InitialPrice>0</InitialPrice>
      <InitialSubcustomerPrice>0</InitialSubcustomerPrice>
      <IsCash>false</IsCash>
      <IsCashSubcustomer>false</IsCashSubcustomer>
      <LastUpdate>0001-01-01T00:00:00</LastUpdate>
      <ManufacturerTitle>String</ManufacturerTitle>
      <Motions>
        <OrderItemMotionModel>
          <Date>0001-01-01T00:00:00</Date>
          <InitialQuantity>0</InitialQuantity>
          <MotionId>00000000-0000-0000-0000-000000000000</MotionId>
          <ParentId>00000000-0000-0000-0000-000000000000</ParentId>
          <PlannedDeliveryDate>0001-01-01T00:00:00</PlannedDeliveryDate>
          <Quantity>0</Quantity>
          <State>Undefined</State>
          <StateTitle>String</StateTitle>
        </OrderItemMotionModel>
      </Motions>
      <OrderItemId>00000000-0000-0000-0000-000000000000</OrderItemId>
      <Price>0</Price>
      <PriceListLogo>String</PriceListLogo>
      <PriceListUseSchedule>false</PriceListUseSchedule>
      <ProductId>00000000-0000-0000-0000-000000000000</ProductId>
      <ProductNumber>String</ProductNumber>
      <ProductTitle>String</ProductTitle>
      <Quantity>0</Quantity>
      <ReplacementManufacturerTitle>String</ReplacementManufacturerTitle>
      <ReplacementProductId>00000000-0000-0000-0000-000000000000</ReplacementProductId>
      <ReplacementProductNumber>String</ReplacementProductNumber>
      <ReplacementProductTitle>String</ReplacementProductTitle>
      <SubcustomerId>00000000-0000-0000-0000-000000000000</SubcustomerId>
      <SubcustomerLogo>String</SubcustomerLogo>
      <SubcustomerPrice>0</SubcustomerPrice>
      <SupplierAliasId>00000000-0000-0000-0000-000000000000</SupplierAliasId>
    </OrderItemModel>
  </Result>
</CreateOrderResponse>

    </soap12:Body>
</soap12:Envelope>