<?php
/**
 * Properties for the Hub API.
 *
 * @package northmill-online-shared
 */

declare(strict_types=1);

namespace Northmill_Online_Shared\Abstracts\Hub_API\Models;

/**
 * Properties for the Hub API.
 */
class Hub_API_Properties {
	/**
	 * Articles
	 */
	public const ARTICLE_NUMBER                     = 'ArticleNumber';
	public const ARTICLE_NAME                       = 'ArticleName';
	public const ARTICLE_ARTICLE_TEXT_HTML          = 'ArticleTextHtml';
	public const ARTICLE_DESCRIPTION                = 'ArticleDescription';
	public const ARTICLE_IS_ACTIVE                  = 'IsActive';
	public const ARTICLE_IS_WEB_SHOP_ARTICLE        = 'IsWebshopArticle';
	public const ARTICLE_IS_OPEN                    = 'IsOpenArticle';
	public const ARTICLE_UPDATE_ON_EXISTING         = 'UpdateOnExisting';
	public const ARTICLE_TYPE                       = 'ArticleType';
    public const ARTICLE_GOODS_TYPE                 = 'ArticleGoodsType';
	public const ARTICLE_RECOMMENDED_PRICE          = 'RecommendedPrice';
	public const ARTICLE_RETAIL_PRICE               = 'RetailPrice';
	public const ARTICLE_VAT_RATE                   = 'VatRate';
	public const ARTICLE_DISCOUNT                   = 'Discount';
	public const ARTICLE_AMOUNT_INC_VAT_EX_DISCOUNT = 'UnitAmountInclVatExclDiscount';
	public const ARTICLE_QUANTITY                   = 'Quantity';
	public const ARTICLE_UNIT                       = 'Unit';
	public const ARTICLE_ACCOUNT_CODE_ID            = 'AccountCodeId';
	public const ARTICLE_ACCUMULATIVE               = 'Ackumulative'; // "Accumulative" is misspelled in API.
	public const ARTICLE_ORDER_TICKET_DIALOGUE      = 'BongShowDialouge'; // "Dialouge" is misspelled in API.
	public const ARTICLE_ORDER_TICKET_TEXT          = 'BongText';
	public const ARTICLE_ORDER_TICKET_COPIES        = 'BongNumberOfCopies';
	public const ARTICLE_ORDER_TICKET_PRINTER       = 'BongPrinter';
	public const ARTICLE_ORDER_TICKET_TYPE          = 'BongType';
	public const ARTICLE_DISPLAY_ORDER              = 'DisplayOrder';
	public const ARTICLE_IS_STOCK_ITEM              = 'IsStockItem';
	public const ARTICLE_BARCODE                    = 'Barcode';
	public const ARTICLE_BARCODE_ALTERNATIVES       = 'BarcodeAlternatives';
	public const ARTICLE_GROUP_ID                   = 'GroupId';
	public const ARTICLE_FILES                      = 'Files';
	public const ARTICLE_ARTICLE_INFO_UPDATE_TIME   = 'ArticleInfoUpdateTime';
	public const ARTICLE_QUANTITY_UPDATED_TIME      = 'QuantityUpdatedTime';
	public const ARTICLE_IS_QUICK_BUTTON            = 'IsQuickButton';
	public const ARTICLE_QUICK_BUTTON_COLOR         = 'QuickButtonColor';
	public const ARTICLE_REQUIRES_PREPARATION       = 'RequiresPreparation'; // Used in Customize Order.
	public const ARTICLE_MIN_PREPARATION_TIME       = 'MinimumPreparationTime'; // Used in Customize Order.

	public const ARTICLE_TYPE_GOODS = 'Goods';

	/**
	 * Orders
	 */
	public const ORDER_NUMBER                     = 'Number';
	public const ORDER_YOUR_ORDER_NUMBER          = 'YourOrderNo';
	public const ORDER_OUR_REFERENCE              = 'OurReference';
	public const ORDER_EXTERNAL_REFERENCE         = 'ExternalReference';
	public const ORDER_UPDATE_ON_EXISTING         = 'UpdateOnExisting';
	public const ORDER_STATE                      = 'State';
	public const ORDER_ROWS                       = 'Rows';
	public const ORDER_CUSTOMER                   = 'Customer';
	public const ORDER_BILLING_ADDRESS            = 'BillingAddress';
	public const ORDER_SHIPPING_ADDRESS           = 'ShippingAddress';
	public const ORDER_PAYMENT_OPTION             = 'PaymentOption';
	public const ORDER_PAYMENT_STATUS             = 'PaymentStatus';
	public const ORDER_PAYMENT_REFERENCE          = 'PaymentReference';
	public const ORDER_PAYMENT_ORIGIN             = 'PaymentOrigin';
	public const ORDER_NOTE                       = 'Note';
	public const ORDER_ADJUST_STOCK_IF_OPEN_STATE = 'AdjustStockIfOpenState';
}
