Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
100.00% |
1 / 1 |
|
100.00% |
54 / 54 |
CRAP | |
100.00% |
175 / 175 |
Product | |
100.00% |
1 / 1 |
|
100.00% |
67 / 67 |
107 | |
100.00% |
175 / 175 |
__toString | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
_calc | |
100.00% |
1 / 1 |
13 | |
100.00% |
27 / 27 |
|||
isEnable | |
100.00% |
1 / 1 |
2 | |
100.00% |
1 / 1 |
|||
getClassName1 | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getClassName2 | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getClassCategories1 | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getClassCategories2 | |
100.00% |
1 / 1 |
2 | |
100.00% |
2 / 2 |
|||
getStockFind | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getStockMin | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getStockMax | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getStockUnlimitedMin | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getStockUnlimitedMax | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getPrice01Min | |
100.00% |
1 / 1 |
2 | |
100.00% |
3 / 3 |
|||
getPrice01Max | |
100.00% |
1 / 1 |
2 | |
100.00% |
3 / 3 |
|||
getPrice02Min | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getPrice02Max | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getPrice01IncTaxMin | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getPrice01IncTaxMax | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getPrice02IncTaxMin | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getPrice02IncTaxMax | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getCodeMin | |
100.00% |
1 / 1 |
4 | |
100.00% |
6 / 6 |
|||
getCodeMax | |
100.00% |
1 / 1 |
4 | |
100.00% |
6 / 6 |
|||
getClassCategories | |
100.00% |
1 / 1 |
10 | |
100.00% |
20 / 20 |
|||
getMainListImage | |
100.00% |
1 / 1 |
2 | |
100.00% |
2 / 2 |
|||
__construct | |
100.00% |
1 / 1 |
1 | |
100.00% |
7 / 7 |
|||
__clone | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
copy | |
100.00% |
1 / 1 |
5 | |
100.00% |
23 / 23 |
|||
getId | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setName | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getName | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setNote | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getNote | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setDescriptionList | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getDescriptionList | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setDescriptionDetail | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getDescriptionDetail | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setSearchWord | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getSearchWord | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setFreeArea | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getFreeArea | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setDelFlg | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getDelFlg | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
setCreateDate | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getCreateDate | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
setUpdateDate | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getUpdateDate | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
addProductCategory | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
removeProductCategory | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getProductCategories | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
addProductClass | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
removeProductClass | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getProductClasses | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
hasProductClass | |
100.00% |
1 / 1 |
4 | |
100.00% |
4 / 4 |
|||
addCustomerFavoriteProduct | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
removeCustomerFavoriteProduct | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getCustomerFavoriteProducts | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
setCreator | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getCreator | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
setStatus | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
getStatus | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
addProductImage | |
100.00% |
1 / 1 |
1 | |
100.00% |
2 / 2 |
|||
removeProductImage | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getProductImage | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
getMainFileName | |
100.00% |
1 / 1 |
2 | |
100.00% |
3 / 3 |
|||
addProductTag | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
removeProductTag | |
100.00% |
1 / 1 |
1 | |
100.00% |
0 / 0 |
|||
getProductTag | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
<?php | |
/* | |
* This file is part of EC-CUBE | |
* | |
* Copyright(c) 2000-2015 LOCKON CO.,LTD. All Rights Reserved. | |
* | |
* http://www.lockon.co.jp/ | |
* | |
* This program is free software; you can redistribute it and/or | |
* modify it under the terms of the GNU General Public License | |
* as published by the Free Software Foundation; either version 2 | |
* of the License, or (at your option) any later version. | |
* | |
* This program is distributed in the hope that it will be useful, | |
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
* GNU General Public License for more details. | |
* | |
* You should have received a copy of the GNU General Public License | |
* along with this program; if not, write to the Free Software | |
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | |
*/ | |
namespace Eccube\Entity; | |
use Eccube\Common\Constant; | |
use Doctrine\Common\Collections\ArrayCollection; | |
/** | |
* Product | |
*/ | |
class Product extends \Eccube\Entity\AbstractEntity | |
{ | |
private $_calc = false; | |
private $stockFinds = array(); | |
private $stocks = array(); | |
private $stockUnlimiteds = array(); | |
private $price01 = array(); | |
private $price02 = array(); | |
private $price01IncTaxs = array(); | |
private $price02IncTaxs = array(); | |
private $codes = array(); | |
private $classCategories1 = array(); | |
private $classCategories2 = array(); | |
private $className1; | |
private $className2; | |
/** | |
* @return string | |
*/ | |
public function __toString() | |
{ | |
return $this->getName(); | |
} | |
public function _calc() | |
{ | |
if (!$this->_calc) { | |
$i = 0; | |
foreach ($this->getProductClasses() as $ProductClass) { | |
/* @var $ProductClass \Eccube\Entity\ProductClass */ | |
// del_flg | |
if ($ProductClass->getDelFlg() === 1) { | |
continue; | |
} | |
// stock_find | |
$this->stockFinds[] = $ProductClass->getStockFind(); | |
// stock | |
$this->stocks[] = $ProductClass->getStock(); | |
// stock_unlimited | |
$this->stockUnlimiteds[] = $ProductClass->getStockUnlimited(); | |
// price01 | |
if (!is_null($ProductClass->getPrice01())) { | |
$this->price01[] = $ProductClass->getPrice01(); | |
// price01IncTax | |
$this->price01IncTaxs[] = $ProductClass->getPrice01IncTax(); | |
} | |
// price02 | |
$this->price02[] = $ProductClass->getPrice02(); | |
// price02IncTax | |
$this->price02IncTaxs[] = $ProductClass->getPrice02IncTax(); | |
// product_code | |
$this->codes[] = $ProductClass->getCode(); | |
if ($i === 0) { | |
if ($ProductClass->getClassCategory1() && $ProductClass->getClassCategory1()->getId()) { | |
$this->className1 = $ProductClass->getClassCategory1()->getClassName()->getName(); | |
} | |
if ($ProductClass->getClassCategory2() && $ProductClass->getClassCategory2()->getId()) { | |
$this->className2 = $ProductClass->getClassCategory2()->getClassName()->getName(); | |
} | |
} | |
if ($ProductClass->getClassCategory1()) { | |
$classCategoryId1 = $ProductClass->getClassCategory1()->getId(); | |
if (!empty($classCategoryId1)) { | |
$this->classCategories1[$ProductClass->getClassCategory1()->getId()] = $ProductClass->getClassCategory1()->getName(); | |
if ($ProductClass->getClassCategory2()) { | |
$this->classCategories2[$ProductClass->getClassCategory1()->getId()][$ProductClass->getClassCategory2()->getId()] = $ProductClass->getClassCategory2()->getName(); | |
} | |
} | |
} | |
$i++; | |
} | |
$this->_calc = true; | |
} | |
} | |
/** | |
* Is Enable | |
* | |
* @return bool | |
*/ | |
public function isEnable() | |
{ | |
return $this->getStatus()->getId() === \Eccube\Entity\Master\Disp::DISPLAY_SHOW ? true : false; | |
} | |
/** | |
* Get ClassName1 | |
* | |
* @return bool | |
*/ | |
public function getClassName1() | |
{ | |
$this->_calc(); | |
return $this->className1; | |
} | |
/** | |
* Get ClassName2 | |
* | |
* @return bool | |
*/ | |
public function getClassName2() | |
{ | |
$this->_calc(); | |
return $this->className2; | |
} | |
/** | |
* Get getClassCategories1 | |
* | |
* @return bool | |
*/ | |
public function getClassCategories1() | |
{ | |
$this->_calc(); | |
return $this->classCategories1; | |
} | |
/** | |
* Get getClassCategories2 | |
* | |
* @return bool | |
*/ | |
public function getClassCategories2($class_category1) | |
{ | |
$this->_calc(); | |
return isset($this->classCategories2[$class_category1]) ? $this->classCategories2[$class_category1] : array(); | |
} | |
/** | |
* Get StockFind | |
* | |
* @return bool | |
*/ | |
public function getStockFind() | |
{ | |
$this->_calc(); | |
return max($this->stockFinds); | |
} | |
/** | |
* Get Stock min | |
* | |
* @return integer | |
*/ | |
public function getStockMin() | |
{ | |
$this->_calc(); | |
return min($this->stocks); | |
} | |
/** | |
* Get Stock max | |
* | |
* @return integer | |
*/ | |
public function getStockMax() | |
{ | |
$this->_calc(); | |
return max($this->stocks); | |
} | |
/** | |
* Get StockUnlimited min | |
* | |
* @return integer | |
*/ | |
public function getStockUnlimitedMin() | |
{ | |
$this->_calc(); | |
return min($this->stockUnlimiteds); | |
} | |
/** | |
* Get StockUnlimited max | |
* | |
* @return integer | |
*/ | |
public function getStockUnlimitedMax() | |
{ | |
$this->_calc(); | |
return max($this->stockUnlimiteds); | |
} | |
/** | |
* Get Price01 min | |
* | |
* @return integer | |
*/ | |
public function getPrice01Min() | |
{ | |
$this->_calc(); | |
if (count($this->price01) == 0) { | |
return null; | |
} | |
return min($this->price01); | |
} | |
/** | |
* Get Price01 max | |
* | |
* @return integer | |
*/ | |
public function getPrice01Max() | |
{ | |
$this->_calc(); | |
if (count($this->price01) == 0) { | |
return null; | |
} | |
return max($this->price01); | |
} | |
/** | |
* Get Price02 min | |
* | |
* @return integer | |
*/ | |
public function getPrice02Min() | |
{ | |
$this->_calc(); | |
return min($this->price02); | |
} | |
/** | |
* Get Price02 max | |
* | |
* @return integer | |
*/ | |
public function getPrice02Max() | |
{ | |
$this->_calc(); | |
return max($this->price02); | |
} | |
/** | |
* Get Price01IncTax min | |
* | |
* @return integer | |
*/ | |
public function getPrice01IncTaxMin() | |
{ | |
$this->_calc(); | |
return min($this->price01IncTaxs); | |
} | |
/** | |
* Get Price01IncTax max | |
* | |
* @return integer | |
*/ | |
public function getPrice01IncTaxMax() | |
{ | |
$this->_calc(); | |
return max($this->price01IncTaxs); | |
} | |
/** | |
* Get Price02IncTax min | |
* | |
* @return integer | |
*/ | |
public function getPrice02IncTaxMin() | |
{ | |
$this->_calc(); | |
return min($this->price02IncTaxs); | |
} | |
/** | |
* Get Price02IncTax max | |
* | |
* @return integer | |
*/ | |
public function getPrice02IncTaxMax() | |
{ | |
$this->_calc(); | |
return max($this->price02IncTaxs); | |
} | |
/** | |
* Get Product_code min | |
* | |
* @return integer | |
*/ | |
public function getCodeMin() | |
{ | |
$this->_calc(); | |
$codes = array(); | |
foreach ($this->codes as $code) { | |
if (!is_null($code)) { | |
$codes[] = $code; | |
} | |
} | |
return count($codes) ? min($codes) : null; | |
} | |
/** | |
* Get Product_code max | |
* | |
* @return integer | |
*/ | |
public function getCodeMax() | |
{ | |
$this->_calc(); | |
$codes = array(); | |
foreach ($this->codes as $code) { | |
if (!is_null($code)) { | |
$codes[] = $code; | |
} | |
} | |
return count($codes) ? max($codes) : null; | |
} | |
/** | |
* Get ClassCategories | |
* | |
* @return array | |
*/ | |
public function getClassCategories() | |
{ | |
$this->_calc(); | |
$class_categories = array( | |
'__unselected' => array( | |
'__unselected' => array( | |
'name' => '選択してください', | |
'product_class_id' => '', | |
), | |
), | |
); | |
foreach ($this->getProductClasses() as $ProductClass) { | |
/* @var $ProductClass \Eccube\Entity\ProductClass */ | |
$ClassCategory1 = $ProductClass->getClassCategory1(); | |
$ClassCategory2 = $ProductClass->getClassCategory2(); | |
$class_category_id1 = $ClassCategory1 ? (string) $ClassCategory1->getId() : '__unselected2'; | |
$class_category_id2 = $ClassCategory2 ? (string) $ClassCategory2->getId() : ''; | |
$class_category_name1 = $ClassCategory1 ? $ClassCategory1->getName() . ($ProductClass->getStockFind() ? '' : ' (品切れ中)') : ''; | |
$class_category_name2 = $ClassCategory2 ? $ClassCategory2->getName() . ($ProductClass->getStockFind() ? '' : ' (品切れ中)') : ''; | |
$class_categories[$class_category_id1]['#'] = array( | |
'classcategory_id2' => '', | |
'name' => '選択してください', | |
'product_class_id' => '', | |
); | |
$class_categories[$class_category_id1]['#'.$class_category_id2] = array( | |
'classcategory_id2' => $class_category_id2, | |
'name' => $class_category_name2, | |
'stock_find' => $ProductClass->getStockFind(), | |
'price01' => $ProductClass->getPrice01() === null ? '' : number_format($ProductClass->getPrice01IncTax()), | |
'price02' => number_format($ProductClass->getPrice02IncTax()), | |
'product_class_id' => (string) $ProductClass->getId(), | |
'product_code' => $ProductClass->getCode() === null ? '' : $ProductClass->getCode(), | |
'product_type' => (string) $ProductClass->getProductType()->getId(), | |
); | |
} | |
return $class_categories; | |
} | |
public function getMainListImage() { | |
$ProductImages = $this->getProductImage(); | |
return empty($ProductImages) ? null : $ProductImages[0]; | |
} | |
/** | |
* @var integer | |
*/ | |
private $id; | |
/** | |
* @var string | |
*/ | |
private $name; | |
/** | |
* @var string | |
*/ | |
private $note; | |
/** | |
* @var string | |
*/ | |
private $description_list; | |
/** | |
* @var string | |
*/ | |
private $description_detail; | |
/** | |
* @var string | |
*/ | |
private $search_word; | |
/** | |
* @var string | |
*/ | |
private $free_area; | |
/** | |
* @var integer | |
*/ | |
private $del_flg; | |
/** | |
* @var \DateTime | |
*/ | |
private $create_date; | |
/** | |
* @var \DateTime | |
*/ | |
private $update_date; | |
/** | |
* @var \Doctrine\Common\Collections\Collection | |
*/ | |
private $ProductCategories; | |
/** | |
* @var \Doctrine\Common\Collections\Collection | |
*/ | |
private $ProductClasses; | |
/** | |
* @var \Doctrine\Common\Collections\Collection | |
*/ | |
private $CustomerFavoriteProducts; | |
/** | |
* @var \Eccube\Entity\Member | |
*/ | |
private $Creator; | |
/** | |
* @var \Eccube\Entity\Master\Disp | |
*/ | |
private $Status; | |
/** | |
* Constructor | |
*/ | |
public function __construct() | |
{ | |
$this->ProductCategories = new ArrayCollection(); | |
$this->ProductClasses = new ArrayCollection(); | |
$this->ProductStatuses = new ArrayCollection(); | |
$this->CustomerFavoriteProducts = new ArrayCollection(); | |
$this->ProductImage = new ArrayCollection(); | |
$this->ProductTag = new ArrayCollection(); | |
} | |
public function __clone() | |
{ | |
$this->id = null; | |
} | |
public function copy() | |
{ | |
// コピー対象外 | |
$this->CustomerFavoriteProducts = new ArrayCollection(); | |
$Categories = $this->getProductCategories(); | |
$this->ProductCategories = new ArrayCollection(); | |
foreach ($Categories as $Category) { | |
$CopyCategory = clone $Category; | |
$this->addProductCategory($CopyCategory); | |
$CopyCategory->setProduct($this); | |
} | |
$Classes = $this->getProductClasses(); | |
$this->ProductClasses = new ArrayCollection(); | |
foreach ($Classes as $Class) { | |
$CopyClass = clone $Class; | |
$this->addProductClass($CopyClass); | |
$CopyClass->setProduct($this); | |
} | |
$Images = $this->getProductImage(); | |
$this->ProductImage = new ArrayCollection(); | |
foreach ($Images as $Image) { | |
$CloneImage = clone $Image; | |
$this->addProductImage($CloneImage); | |
$CloneImage->setProduct($this); | |
} | |
$Tags = $this->getProductTag(); | |
$this->ProductTag = new ArrayCollection(); | |
foreach ($Tags as $Tag) { | |
$CloneTag = clone $Tag; | |
$this->addProductTag($CloneTag); | |
$CloneTag->setProduct($this); | |
} | |
return $this; | |
} | |
/** | |
* Get id | |
* | |
* @return integer | |
*/ | |
public function getId() | |
{ | |
return $this->id; | |
} | |
/** | |
* Set name | |
* | |
* @param string $name | |
* @return Product | |
*/ | |
public function setName($name) | |
{ | |
$this->name = $name; | |
return $this; | |
} | |
/** | |
* Get name | |
* | |
* @return string | |
*/ | |
public function getName() | |
{ | |
return $this->name; | |
} | |
/** | |
* Set note | |
* | |
* @param string $note | |
* @return Product | |
*/ | |
public function setNote($note) | |
{ | |
$this->note = $note; | |
return $this; | |
} | |
/** | |
* Get note | |
* | |
* @return string | |
*/ | |
public function getNote() | |
{ | |
return $this->note; | |
} | |
/** | |
* Set description_list | |
* | |
* @param string $descriptionList | |
* @return Product | |
*/ | |
public function setDescriptionList($descriptionList) | |
{ | |
$this->description_list = $descriptionList; | |
return $this; | |
} | |
/** | |
* Get description_list | |
* | |
* @return string | |
*/ | |
public function getDescriptionList() | |
{ | |
return $this->description_list; | |
} | |
/** | |
* Set description_detail | |
* | |
* @param string $descriptionDetail | |
* @return Product | |
*/ | |
public function setDescriptionDetail($descriptionDetail) | |
{ | |
$this->description_detail = $descriptionDetail; | |
return $this; | |
} | |
/** | |
* Get description_detail | |
* | |
* @return string | |
*/ | |
public function getDescriptionDetail() | |
{ | |
return $this->description_detail; | |
} | |
/** | |
* Set search_word | |
* | |
* @param string $searchWord | |
* @return Product | |
*/ | |
public function setSearchWord($searchWord) | |
{ | |
$this->search_word = $searchWord; | |
return $this; | |
} | |
/** | |
* Get search_word | |
* | |
* @return string | |
*/ | |
public function getSearchWord() | |
{ | |
return $this->search_word; | |
} | |
/** | |
* Set free_area | |
* | |
* @param string $freeArea | |
* @return Product | |
*/ | |
public function setFreeArea($freeArea) | |
{ | |
$this->free_area = $freeArea; | |
return $this; | |
} | |
/** | |
* Get free_area | |
* | |
* @return string | |
*/ | |
public function getFreeArea() | |
{ | |
return $this->free_area; | |
} | |
/** | |
* Set del_flg | |
* | |
* @param integer $delFlg | |
* @return Product | |
*/ | |
public function setDelFlg($delFlg) | |
{ | |
$this->del_flg = $delFlg; | |
return $this; | |
} | |
/** | |
* Get del_flg | |
* | |
* @return integer | |
*/ | |
public function getDelFlg() | |
{ | |
return $this->del_flg; | |
} | |
/** | |
* Set create_date | |
* | |
* @param \DateTime $createDate | |
* @return Product | |
*/ | |
public function setCreateDate($createDate) | |
{ | |
$this->create_date = $createDate; | |
return $this; | |
} | |
/** | |
* Get create_date | |
* | |
* @return \DateTime | |
*/ | |
public function getCreateDate() | |
{ | |
return $this->create_date; | |
} | |
/** | |
* Set update_date | |
* | |
* @param \DateTime $updateDate | |
* @return Product | |
*/ | |
public function setUpdateDate($updateDate) | |
{ | |
$this->update_date = $updateDate; | |
return $this; | |
} | |
/** | |
* Get update_date | |
* | |
* @return \DateTime | |
*/ | |
public function getUpdateDate() | |
{ | |
return $this->update_date; | |
} | |
/** | |
* Add ProductCategories | |
* | |
* @param \Eccube\Entity\ProductCategory $productCategories | |
* @return Product | |
*/ | |
public function addProductCategory(\Eccube\Entity\ProductCategory $productCategories) | |
{ | |
$this->ProductCategories[] = $productCategories; | |
return $this; | |
} | |
/** | |
* Remove ProductCategories | |
* | |
* @param \Eccube\Entity\ProductCategory $productCategories | |
*/ | |
public function removeProductCategory(\Eccube\Entity\ProductCategory $productCategories) | |
{ | |
$this->ProductCategories->removeElement($productCategories); | |
} | |
/** | |
* Get ProductCategories | |
* | |
* @return \Doctrine\Common\Collections\Collection | |
*/ | |
public function getProductCategories() | |
{ | |
return $this->ProductCategories; | |
} | |
/** | |
* Add ProductClasses | |
* | |
* @param \Eccube\Entity\ProductClass $productClasses | |
* @return Product | |
*/ | |
public function addProductClass(\Eccube\Entity\ProductClass $productClasses) | |
{ | |
$this->ProductClasses[] = $productClasses; | |
return $this; | |
} | |
/** | |
* Remove ProductClasses | |
* | |
* @param \Eccube\Entity\ProductClass $productClasses | |
*/ | |
public function removeProductClass(\Eccube\Entity\ProductClass $productClasses) | |
{ | |
$this->ProductClasses->removeElement($productClasses); | |
} | |
/** | |
* Get ProductClasses | |
* | |
* @return \Doctrine\Common\Collections\Collection | |
*/ | |
public function getProductClasses() | |
{ | |
return $this->ProductClasses; | |
} | |
public function hasProductClass() | |
{ | |
foreach ($this->ProductClasses as $ProductClass) { | |
if (!is_null($ProductClass->getClassCategory1()) && $ProductClass->getDelFlg() == Constant::DISABLED) { | |
return true; | |
} | |
} | |
return false; | |
} | |
/** | |
* Add CustomerFavoriteProducts | |
* | |
* @param \Eccube\Entity\CustomerFavoriteProduct $customerFavoriteProducts | |
* @return Product | |
*/ | |
public function addCustomerFavoriteProduct(\Eccube\Entity\CustomerFavoriteProduct $customerFavoriteProducts) | |
{ | |
$this->CustomerFavoriteProducts[] = $customerFavoriteProducts; | |
return $this; | |
} | |
/** | |
* Remove CustomerFavoriteProducts | |
* | |
* @param \Eccube\Entity\CustomerFavoriteProduct $customerFavoriteProducts | |
*/ | |
public function removeCustomerFavoriteProduct(\Eccube\Entity\CustomerFavoriteProduct $customerFavoriteProducts) | |
{ | |
$this->CustomerFavoriteProducts->removeElement($customerFavoriteProducts); | |
} | |
/** | |
* Get CustomerFavoriteProducts | |
* | |
* @return \Doctrine\Common\Collections\Collection | |
*/ | |
public function getCustomerFavoriteProducts() | |
{ | |
return $this->CustomerFavoriteProducts; | |
} | |
/** | |
* Set Creator | |
* | |
* @param \Eccube\Entity\Member $creator | |
* @return Product | |
*/ | |
public function setCreator(\Eccube\Entity\Member $creator) | |
{ | |
$this->Creator = $creator; | |
return $this; | |
} | |
/** | |
* Get Creator | |
* | |
* @return \Eccube\Entity\Member | |
*/ | |
public function getCreator() | |
{ | |
return $this->Creator; | |
} | |
/** | |
* Set Status | |
* | |
* @param \Eccube\Entity\Master\Disp $status | |
* @return Product | |
*/ | |
public function setStatus(\Eccube\Entity\Master\Disp $status = null) | |
{ | |
$this->Status = $status; | |
return $this; | |
} | |
/** | |
* Get Status | |
* | |
* @return \Eccube\Entity\Master\Disp | |
*/ | |
public function getStatus() | |
{ | |
return $this->Status; | |
} | |
/** | |
* @var \Doctrine\Common\Collections\Collection | |
*/ | |
private $ProductImage; | |
/** | |
* @var \Doctrine\Common\Collections\Collection | |
*/ | |
private $ProductTag; | |
/** | |
* Add ProductImage | |
* | |
* @param \Eccube\Entity\ProductImage $productImage | |
* @return Product | |
*/ | |
public function addProductImage(\Eccube\Entity\ProductImage $productImage) | |
{ | |
$this->ProductImage[] = $productImage; | |
return $this; | |
} | |
/** | |
* Remove ProductImage | |
* | |
* @param \Eccube\Entity\ProductImage $productImage | |
*/ | |
public function removeProductImage(\Eccube\Entity\ProductImage $productImage) | |
{ | |
$this->ProductImage->removeElement($productImage); | |
} | |
/** | |
* Get ProductImage | |
* | |
* @return \Doctrine\Common\Collections\Collection | |
*/ | |
public function getProductImage() | |
{ | |
return $this->ProductImage; | |
} | |
public function getMainFileName() | |
{ | |
if (count($this->ProductImage) > 0) { | |
return $this->ProductImage[0]; | |
} else { | |
return null; | |
} | |
} | |
/** | |
* Add ProductTag | |
* | |
* @param \Eccube\Entity\ProductTag $productTag | |
* @return Product | |
*/ | |
public function addProductTag(\Eccube\Entity\ProductTag $productTag) | |
{ | |
$this->ProductTag[] = $productTag; | |
return $this; | |
} | |
/** | |
* Remove ProductTag | |
* | |
* @param \Eccube\Entity\ProductTag $productTag | |
*/ | |
public function removeProductTag(\Eccube\Entity\ProductTag $productTag) | |
{ | |
$this->ProductTag->removeElement($productTag); | |
} | |
/** | |
* Get ProductTag | |
* | |
* @return \Doctrine\Common\Collections\Collection | |
*/ | |
public function getProductTag() | |
{ | |
return $this->ProductTag; | |
} | |
} |