Composable Commerce PHP SDKPHP SDK
  • Namespace
  • Class
  • Tree

Namespaces

  • Commercetools
    • Commons
      • Helper
    • Core
      • Builder
        • Request
        • Update
      • Cache
      • Client
        • Adapter
        • OAuth
      • Error
      • Helper
        • Annotate
        • State
          • Renderer
        • Subscriber
          • Log
      • Model
        • ApiClient
        • Cart
        • CartDiscount
        • Category
        • Channel
        • Common
        • Customer
        • CustomerGroup
        • CustomField
        • CustomObject
        • DiscountCode
        • Extension
        • Inventory
        • Message
        • Order
        • OrderEdit
        • Payment
        • Product
          • Search
        • ProductDiscount
        • ProductSelection
        • ProductType
        • Project
        • Review
        • ShippingMethod
        • ShoppingList
        • State
        • Store
        • Subscription
        • TaxCategory
        • Type
        • Zone
      • Request
        • ApiClients
        • CartDiscounts
          • Command
        • Carts
          • Command
        • Categories
          • Command
        • Channels
          • Command
        • CustomerGroups
          • Command
        • Customers
          • Command
        • CustomField
          • Command
        • CustomObjects
        • DiscountCodes
          • Command
        • Extensions
          • Command
        • GraphQL
        • InStores
        • Inventory
          • Command
        • Me
          • Command
        • Messages
        • OrderEdits
          • Command
          • StagedOrder
            • Command
        • Orders
          • Command
        • Payments
          • Command
        • ProductDiscounts
          • Command
        • Products
          • Command
        • ProductSelections
          • Command
        • ProductTypes
          • Command
        • Project
          • Command
        • Query
        • Reviews
          • Command
        • ShippingMethods
          • Command
        • ShoppingLists
          • Command
        • States
          • Command
        • Stores
          • Command
        • Subscriptions
          • Command
        • TaxCategories
          • Command
        • Types
          • Command
        • Zones
          • Command
      • Response

Classes

  • AbsoluteCartDiscountValue
  • CartDiscount
  • CartDiscountCollection
  • CartDiscountDraft
  • CartDiscountReference
  • CartDiscountReferenceCollection
  • CartDiscountTarget
  • CartDiscountValue
  • CustomLineItemsTarget
  • GiftLineItemCartDiscountValue
  • LineItemsTarget
  • MultiBuyCustomLineItemsTarget
  • MultiBuyLineItemsTarget
  • RelativeCartDiscountValue
  • ShippingCostTarget
  1   2   3   4   5   6   7   8   9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65  66  67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90  91  92  93  94  95  96  97  98  99 100 101 102 103 104 105 106 107 
<?php
/**
 * @author @jenschude <jens.schulze@commercetools.de>
 */

namespace Commercetools\Core\Model\CartDiscount;

use Commercetools\Core\Model\Common\CreatedBy;
use Commercetools\Core\Model\Common\LastModifiedBy;
use Commercetools\Core\Model\Common\Resource;
use Commercetools\Core\Model\Common\LocalizedString;
use Commercetools\Core\Model\Common\ReferenceCollection;
use Commercetools\Core\Model\Common\DateTimeDecorator;
use Commercetools\Core\Model\CustomField\CustomFieldObject;
use DateTime;

/**
 * @package Commercetools\Core\Model\CartDiscount
 * @link https://docs.commercetools.com/http-api-projects-cartDiscounts.html#cartdiscount
 * @method string getId()
 * @method CartDiscount setId(string $id = null)
 * @method int getVersion()
 * @method CartDiscount setVersion(int $version = null)
 * @method DateTimeDecorator getCreatedAt()
 * @method CartDiscount setCreatedAt(DateTime $createdAt = null)
 * @method DateTimeDecorator getLastModifiedAt()
 * @method CartDiscount setLastModifiedAt(DateTime $lastModifiedAt = null)
 * @method LocalizedString getName()
 * @method CartDiscount setName(LocalizedString $name = null)
 * @method LocalizedString getDescription()
 * @method CartDiscount setDescription(LocalizedString $description = null)
 * @method CartDiscountValue getValue()
 * @method CartDiscount setValue(CartDiscountValue $value = null)
 * @method string getCartPredicate()
 * @method CartDiscount setCartPredicate(string $cartPredicate = null)
 * @method CartDiscountTarget getTarget()
 * @method CartDiscount setTarget(CartDiscountTarget $target = null)
 * @method string getSortOrder()
 * @method CartDiscount setSortOrder(string $sortOrder = null)
 * @method bool getIsActive()
 * @method CartDiscount setIsActive(bool $isActive = null)
 * @method DateTimeDecorator getValidFrom()
 * @method CartDiscount setValidFrom(DateTime $validFrom = null)
 * @method DateTimeDecorator getValidUntil()
 * @method CartDiscount setValidUntil(DateTime $validUntil = null)
 * @method bool getRequiresDiscountCode()
 * @method CartDiscount setRequiresDiscountCode(bool $requiresDiscountCode = null)
 * @method ReferenceCollection getReferences()
 * @method CartDiscount setReferences(ReferenceCollection $references = null)
 * @method string getStackingMode()
 * @method CartDiscount setStackingMode(string $stackingMode = null)
 * @method CustomFieldObject getCustom()
 * @method CartDiscount setCustom(CustomFieldObject $custom = null)
 * @method string getKey()
 * @method CartDiscount setKey(string $key = null)
 * @method CreatedBy getCreatedBy()
 * @method CartDiscount setCreatedBy(CreatedBy $createdBy = null)
 * @method LastModifiedBy getLastModifiedBy()
 * @method CartDiscount setLastModifiedBy(LastModifiedBy $lastModifiedBy = null)
 * @method CartDiscountReference getReference()
 */
class CartDiscount extends Resource
{
    const MODE_STACKING = 'Stacking';
    const MODE_STOP = 'StopAfterThisDiscount';

    public function fieldDefinitions()
    {
        return [
            'id' => [static::TYPE => 'string'],
            'version' => [static::TYPE => 'int'],
            'createdAt' => [
                static::TYPE => DateTime::class,
                static::DECORATOR => DateTimeDecorator::class
            ],
            'lastModifiedAt' => [
                static::TYPE => DateTime::class,
                static::DECORATOR => DateTimeDecorator::class
            ],
            'name' => [static::TYPE => LocalizedString::class],
            'key' => [static::TYPE => 'string', static::OPTIONAL => true],
            'description' => [static::TYPE => LocalizedString::class, static::OPTIONAL => true],
            'value' => [static::TYPE => CartDiscountValue::class],
            'cartPredicate' => [static::TYPE => 'string'],
            'target' => [static::TYPE => CartDiscountTarget::class, static::OPTIONAL => true],
            'sortOrder' => [static::TYPE => 'string'],
            'isActive' => [static::TYPE => 'bool'],
            'validFrom' => [
                static::TYPE => DateTime::class,
                static::OPTIONAL => true,
                static::DECORATOR => DateTimeDecorator::class
            ],
            'validUntil' => [
                static::TYPE => DateTime::class,
                static::OPTIONAL => true,
                static::DECORATOR => DateTimeDecorator::class
            ],
            'requiresDiscountCode' => [static::TYPE => 'bool'],
            'references' => [static::TYPE => ReferenceCollection::class],
            'stackingMode' => [static::TYPE => 'string'],
            'custom' => [static::TYPE => CustomFieldObject::class, static::OPTIONAL => true],
            'createdBy' => [static::TYPE => CreatedBy::class, static::OPTIONAL => true],
            'lastModifiedBy' => [static::TYPE => LastModifiedBy::class, static::OPTIONAL => true],
        ];
    }
}
PHP SDK API documentation generated by ApiGen