403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/catalog/lib/v2/Price/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/catalog/lib/v2/Price/BasePrice.php
<?php

namespace Bitrix\Catalog\v2\Price;

use Bitrix\Catalog\v2\BaseEntity;
use Bitrix\Catalog\v2\Fields\TypeCasters\MapTypeCaster;
use Bitrix\Catalog\v2\HasSettingsTrait;

/**
 * Class BasePrice
 *
 * @package Bitrix\Catalog\v2\Price
 *
 * !!! This API is in alpha stage and is not stable. This is subject to change at any time without notice.
 * @internal
 */
abstract class BasePrice extends BaseEntity
{
	use HasSettingsTrait;

	public function __construct(PriceRepositoryContract $priceRepository)
	{
		parent::__construct($priceRepository);
	}

	public function setPrice(?float $price): self
	{
		$this->setField('PRICE', $price);

		return $this;
	}

	public function unsetPrice(): self
	{
		return $this->setPrice(null);
	}

	public function hasPrice(): bool
	{
		return $this->hasField('PRICE') && is_numeric($this->getField('PRICE'));
	}

	public function getPrice(): ?float
	{
		return $this->hasPrice() ? (float)$this->getField('PRICE') : null;
	}

	public function setCurrency($currency): self
	{
		$this->setField('CURRENCY', $currency);

		return $this;
	}

	public function getCurrency(): string
	{
		return (string)$this->getField('CURRENCY');
	}

	public function isPriceBase(): bool
	{
		return $this->getSetting('BASE') === 'Y';
	}

	public function setGroupId(int $groupId): self
	{
		$this->setField('CATALOG_GROUP_ID', $groupId);

		return $this;
	}

	public function getGroupId(): int
	{
		return (int)$this->getField('CATALOG_GROUP_ID');
	}

	public function setProductId(int $productId): self
	{
		$this->setField('PRODUCT_ID', $productId);

		return $this;
	}

	public function getProductId(): int
	{
		return (int)$this->getField('PRODUCT_ID');
	}

	protected function getFieldsMap(): array
	{
		return [
			'ID' => MapTypeCaster::NULLABLE_INT,
			'PRODUCT_ID' => MapTypeCaster::INT,
			'EXTRA_ID' => MapTypeCaster::NULLABLE_INT,
			'CATALOG_GROUP_ID' => MapTypeCaster::INT,
			'PRICE' => MapTypeCaster::NULLABLE_FLOAT,
			'CURRENCY' => MapTypeCaster::STRING,
			'TIMESTAMP_X' => MapTypeCaster::DATETIME,
			'QUANTITY_FROM' => MapTypeCaster::NULLABLE_INT,
			'QUANTITY_TO' => MapTypeCaster::NULLABLE_INT,
		];
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit