src/Entity/Product.php line 15

Open in your IDE?
  1. <?php
  2. namespace App\Entity;
  3. use App\Repository\ProductRepository;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. use Symfony\Component\HttpFoundation\Session\SessionInterface;
  8. use Symfony\Component\Validator\Constraints as Assert;
  9. /**
  10.  * @ORM\Entity(repositoryClass=ProductRepository::class)
  11.  */
  12. class Product
  13. {
  14.     /**
  15.      * @ORM\Id
  16.      * @ORM\GeneratedValue
  17.      * @ORM\Column(type="integer")
  18.      */
  19.     private $id;
  20.     /**
  21.      * @ORM\Column(type="string", length=255)
  22.      */
  23.     private $name;
  24.     /**
  25.      * @ORM\Column(type="text", nullable=true)
  26.      */
  27.     private $description;
  28.     /**
  29.      * @ORM\Column(type="text", nullable=true)
  30.      */
  31.     private $moreInformation;
  32.     /**
  33.      * @Assert\Type(type="float", message="Type a float (eg 10.25)")
  34.      * @ORM\Column(type="float")
  35.      */
  36.     private $price;
  37.     /**
  38.      * @ORM\Column(type="boolean", nullable=true)
  39.      */
  40.     private $isBestSeller false;
  41.     /**
  42.      * @ORM\Column(type="boolean", nullable=true)
  43.      */
  44.     private $isNewArrival false;
  45.     /**
  46.      * @ORM\Column(type="boolean", nullable=true)
  47.      */
  48.     private $isFeatured false;
  49.     /**
  50.      * @ORM\Column(type="boolean", nullable=true)
  51.      */
  52.     private $isSpecialOffer false;
  53.     /**
  54.      * @ORM\Column(type="string", length=255)
  55.      */
  56.     private $image;
  57.     /**
  58.      * @ORM\Column(type="integer")
  59.      */
  60.     private $quantity;
  61.     /**
  62.      * @ORM\Column(type="datetime")
  63.      */
  64.     private $createdAt;
  65.     /**
  66.      * @ORM\Column(type="text", nullable=true)
  67.      */
  68.     private $tags;
  69.     /**
  70.      * @ORM\Column(type="string", length=255)
  71.      */
  72.     private $slug;
  73.     /**
  74.      * @ORM\ManyToMany(targetEntity=Shop::class, inversedBy="produit")
  75.      */
  76.     private $shops;
  77.     /**
  78.      * @ORM\OneToMany(targetEntity=ProductImages::class, mappedBy="product", cascade={"persist"})
  79.      */
  80.     private $productImages;
  81.     /**
  82.      * @ORM\Column(type="boolean")
  83.      */
  84.     private $isPromotionalPrice;
  85.     /**
  86.      * @ORM\Column(type="float")
  87.      */
  88.     private $promotionalPrice;
  89.     /**
  90.      * @ORM\Column(type="integer")
  91.      */
  92.     private $pourcentagePromotionalPrice;
  93.     /**
  94.      * @ORM\Column(type="boolean")
  95.      */
  96.     private $etat;
  97.     /**
  98.      * @ORM\Column(type="bigint")
  99.      */
  100.     private $nombreVue;
  101.     /**
  102.      * @ORM\ManyToMany(targetEntity=Categories::class, inversedBy="products")
  103.      */
  104.     private $category;
  105.     /**
  106.      * @ORM\OneToMany(targetEntity=RelatedProduct::class, mappedBy="product")
  107.      */
  108.     private $relatedProducts;
  109.     /**
  110.      * @ORM\OneToMany(targetEntity=ReviewsProduct::class, mappedBy="product")
  111.      */
  112.     private $reviewsProducts;
  113.     /**
  114.      * @ORM\ManyToMany(targetEntity=Tag::class, inversedBy="product")
  115.      */
  116.     private $tag;
  117.     /**
  118.      * @ORM\Column(type="integer", nullable=true)
  119.      */
  120.     private $poidNet;
  121.     /**
  122.      * @ORM\Column(type="float", nullable=true)
  123.      */
  124.     private $longueur;
  125.     /**
  126.      * @ORM\Column(type="float", nullable=true)
  127.      */
  128.     private $largeur;
  129.     /**
  130.      * @ORM\Column(type="float", nullable=true)
  131.      */
  132.     private $hauteur;
  133.     /**
  134.      * @ORM\Column(type="integer")
  135.      */
  136.     private $minCommande;
  137.     /**
  138.      * @ORM\Column(type="integer", nullable=true)
  139.      */
  140.     private $pieceInPackage;
  141.     /**
  142.      * @ORM\ManyToMany(targetEntity=Colors::class, inversedBy="products")
  143.      */
  144.     private $colors;
  145.     /**
  146.      * @ORM\ManyToMany(targetEntity=Size::class, inversedBy="products")
  147.      */
  148.     private $sizes;
  149.     /**
  150.      * @ORM\ManyToOne(targetEntity=User::class, inversedBy="products")
  151.      */
  152.     private $user;
  153.     /**
  154.      * @ORM\Column(type="string", length=255, nullable=true)
  155.      */
  156.     private $ImageDeSpecification;
  157.     /**
  158.      * @ORM\Column(type="float")
  159.      */
  160.     private $maxPrice;
  161.     /**
  162.      * @ORM\Column(type="integer")
  163.      */
  164.     private $maxCommande;
  165.     /**
  166.      * @ORM\ManyToMany(targetEntity=Emballage::class, inversedBy="products")
  167.      */
  168.     private $emballage;
  169.     /**
  170.      * @ORM\OneToMany(targetEntity=PriceInterval::class, cascade={"persist","remove"} ,mappedBy="product")
  171.      */
  172.     private $priceIntervals;
  173.     private $reelPrice;
  174.     private $reelMaxPrice;
  175.     private $reelPriceRmb;
  176.     private $reelMaxPriceRmb;
  177.     /**
  178.      * @var SessionInterface
  179.      */
  180.     private $session;
  181.     public function __construct()
  182.     {
  183.         $this->category = new ArrayCollection();
  184.         $this->tagsProducts = new ArrayCollection();
  185.         $this->relatedProducts = new ArrayCollection();
  186.         $this->reviewsProducts = new ArrayCollection();
  187.         $this->createdAt = new \DateTime();
  188.         $this->quantity 0;
  189.         $this->price 0;
  190.         $this->maxPrice 0;
  191.         $this->shops = new ArrayCollection();
  192.         $this->productImages = new ArrayCollection();
  193.         $this->setIsPromotionalPrice(false);
  194.         $this->tag = new ArrayCollection();
  195.         $this->description '
  196.                             <div style="width:80%">
  197.                             <h2>Product All description</h2>
  198.                             
  199.                             <table border="1" cellpadding="0" cellspacing="0" style="float:right; height:111px; width:270px">
  200.                                 <caption><strong>Specification</strong></caption>
  201.                                 <tbody>
  202.                                     <tr>
  203.                                         <td>&nbsp;</td>
  204.                                         <td>&nbsp;</td>
  205.                                         <td>&nbsp;</td>
  206.                                     </tr>
  207.                                     <tr>
  208.                                         <td>&nbsp;</td>
  209.                                         <td>&nbsp;</td>
  210.                                         <td>&nbsp;</td>
  211.                                     </tr>
  212.                                     <tr>
  213.                                         <td>&nbsp;</td>
  214.                                         <td>&nbsp;</td>
  215.                                         <td>&nbsp;</td>
  216.                                     </tr>
  217.                                 </tbody>
  218.                             </table>
  219.                             
  220.                             <p>Type the text here</p>
  221.                             </div>
  222.                             ';
  223.         $this->longueur 0;
  224.         $this->largeur 0;
  225.         $this->hauteur 0;
  226.         $this->poidNet 0;
  227.         $this->minCommande 1;
  228.         $this->maxCommande 10;
  229.         $this->pieceInPackage 1;
  230.         $this->colors = new ArrayCollection();
  231.         $this->sizes = new ArrayCollection();
  232.         $this->emballage = new ArrayCollection();
  233.         $this->priceIntervals = new ArrayCollection();
  234.     }
  235.     public function getId(): ?int
  236.     {
  237.         return $this->id;
  238.     }
  239.     public function getName(): ?string
  240.     {
  241.         return $this->name;
  242.     }
  243.     public function setName(string $name): self
  244.     {
  245.         $this->name $name;
  246.         return $this;
  247.     }
  248.     public function getDescription(): ?string
  249.     {
  250.         return $this->description;
  251.     }
  252.     public function setDescription(string $description): self
  253.     {
  254.         $this->description $description;
  255.         return $this;
  256.     }
  257.     public function getMoreInformation(): ?string
  258.     {
  259.         return $this->moreInformation;
  260.     }
  261.     public function setMoreInformation(?string $moreInformation): self
  262.     {
  263.         $this->moreInformation $moreInformation;
  264.         return $this;
  265.     }
  266.     public function getPrice(): ?float
  267.     {
  268.         $price $this->price;
  269.         //dd($_SESSION['_sf2_attributes']['devise']);
  270.         /* convertion taux */
  271.         if(isset($_SESSION['_sf2_attributes']['devise'])){
  272.             if($_SESSION['_sf2_attributes']['devise'] == '$'){
  273.                 $price $this->price 6.48;
  274.             }
  275.         }
  276.         /* Pourcentage de reduction pour le prix promotionnel */
  277.         if($this->getIsPromotionalPrice() === true){
  278.             $price $price - (($price/100) * $this->getPourcentagePromotionalPrice());
  279.             return round($price,2);
  280.         }
  281.         return round($price,2);
  282.     }
  283.     public function setPrice(float $price): self
  284.     {
  285.         $this->price $price;
  286.         return $this;
  287.     }
  288.     public function getMaxPrice(): ?float
  289.     {
  290.         $price $this->maxPrice;
  291.         if(isset($_SESSION['_sf2_attributes']['devise'])){
  292.             if($_SESSION['_sf2_attributes']['devise'] === '$'){
  293.                 $price $this->maxPrice 6.48;
  294.             }
  295.         }
  296.         if($this->getIsPromotionalPrice() === true){
  297.             $price $this->maxPrice - (($this->maxPrice/100) * $this->getPourcentagePromotionalPrice());
  298.             return round($price,2);
  299.         }
  300.         return round($price,2);
  301.     }
  302.     public function setMaxPrice(float $maxPrice): self
  303.     {
  304.         $this->maxPrice $maxPrice;
  305.         return $this;
  306.     }
  307.     public function getIsBestSeller(): ?bool
  308.     {
  309.         return $this->isBestSeller;
  310.     }
  311.     public function setIsBestSeller(?bool $isBestSeller): self
  312.     {
  313.         $this->isBestSeller $isBestSeller;
  314.         return $this;
  315.     }
  316.     public function getIsNewArrival(): ?bool
  317.     {
  318.         return $this->isNewArrival;
  319.     }
  320.     public function setIsNewArrival(?bool $isNewArrival): self
  321.     {
  322.         $this->isNewArrival $isNewArrival;
  323.         return $this;
  324.     }
  325.     public function getIsFeatured(): ?bool
  326.     {
  327.         return $this->isFeatured;
  328.     }
  329.     public function setIsFeatured(?bool $isFeatured): self
  330.     {
  331.         $this->isFeatured $isFeatured;
  332.         return $this;
  333.     }
  334.     public function getIsSpecialOffer(): ?bool
  335.     {
  336.         return $this->isSpecialOffer;
  337.     }
  338.     public function setIsSpecialOffer(?bool $isSpecialOffer): self
  339.     {
  340.         $this->isSpecialOffer $isSpecialOffer;
  341.         return $this;
  342.     }
  343.     public function getImage(): ?string
  344.     {
  345.         return $this->image;
  346.     }
  347.     public function setImage(string $image): self
  348.     {
  349.         $this->image $image;
  350.         return $this;
  351.     }
  352.     /**
  353.      * @return Collection|RelatedProduct[]
  354.      */
  355.     public function getRelatedProducts(): Collection
  356.     {
  357.         return $this->relatedProducts;
  358.     }
  359.     public function addRelatedProduct(RelatedProduct $relatedProduct): self
  360.     {
  361.         if (!$this->relatedProducts->contains($relatedProduct)) {
  362.             $this->relatedProducts[] = $relatedProduct;
  363.             $relatedProduct->setProduct($this);
  364.         }
  365.         return $this;
  366.     }
  367.     public function removeRelatedProduct(RelatedProduct $relatedProduct): self
  368.     {
  369.         if ($this->relatedProducts->removeElement($relatedProduct)) {
  370.             // set the owning side to null (unless already changed)
  371.             if ($relatedProduct->getProduct() === $this) {
  372.                 $relatedProduct->setProduct(null);
  373.             }
  374.         }
  375.         return $this;
  376.     }
  377.     /**
  378.      * @return Collection|ReviewsProduct[]
  379.      */
  380.     public function getReviewsProducts(): Collection
  381.     {
  382.         return $this->reviewsProducts;
  383.     }
  384.     public function addReviewsProduct(ReviewsProduct $reviewsProduct): self
  385.     {
  386.         if (!$this->reviewsProducts->contains($reviewsProduct)) {
  387.             $this->reviewsProducts[] = $reviewsProduct;
  388.             $reviewsProduct->setProduct($this);
  389.         }
  390.         return $this;
  391.     }
  392.     public function removeReviewsProduct(ReviewsProduct $reviewsProduct): self
  393.     {
  394.         if ($this->reviewsProducts->removeElement($reviewsProduct)) {
  395.             // set the owning side to null (unless already changed)
  396.             if ($reviewsProduct->getProduct() === $this) {
  397.                 $reviewsProduct->setProduct(null);
  398.             }
  399.         }
  400.         return $this;
  401.     }
  402.     public function __toString(){
  403.         return $this->name;
  404.     }
  405.     public function getQuantity(): ?int
  406.     {
  407.         return $this->quantity;
  408.     }
  409.     public function setQuantity(int $quantity): self
  410.     {
  411.         $this->quantity $quantity;
  412.         return $this;
  413.     }
  414.     public function getCreatedAt(): ?\DateTimeInterface
  415.     {
  416.         return $this->createdAt;
  417.     }
  418.     public function setCreatedAt(\DateTimeInterface $createdAt): self
  419.     {
  420.         $this->createdAt $createdAt;
  421.         return $this;
  422.     }
  423.     public function getTags(): ?string
  424.     {
  425.         return $this->tags;
  426.     }
  427.     public function setTags(?string $tags): self
  428.     {
  429.         $this->tags $tags;
  430.         return $this;
  431.     }
  432.     public function getSlug(): ?string
  433.     {
  434.         return $this->slug;
  435.     }
  436.     public function setSlug(string $slug): self
  437.     {
  438.         $this->slug $slug;
  439.         return $this;
  440.     }
  441.     /**
  442.      * @return Collection|Shop[]
  443.      */
  444.     public function getShops(): Collection
  445.     {
  446.         return $this->shops;
  447.     }
  448.     public function addShop(Shop $shop): self
  449.     {
  450.         if (!$this->shops->contains($shop)) {
  451.             $this->shops[] = $shop;
  452.         }
  453.         return $this;
  454.     }
  455.     public function removeShop(Shop $shop): self
  456.     {
  457.         $this->shops->removeElement($shop);
  458.         return $this;
  459.     }
  460.     /**
  461.      * @return Collection|Categories[]
  462.      */
  463.     public function getCategory(): Collection
  464.     {
  465.         return $this->category;
  466.     }
  467.     public function addCategory(Categories $category): self
  468.     {
  469.         if (!$this->category->contains($category)) {
  470.             $this->category[] = $category;
  471.         }
  472.         return $this;
  473.     }
  474.     public function removeCategory(Categories $category): self
  475.     {
  476.         $this->category->removeElement($category);
  477.         return $this;
  478.     }
  479.     /**
  480.      * @return Collection|ProductImages[]
  481.      */
  482.     public function getProductImages(): Collection
  483.     {
  484.         return $this->productImages;
  485.     }
  486.     public function addProductImage(ProductImages $productImage): self
  487.     {
  488.         if (!$this->productImages->contains($productImage)) {
  489.             $this->productImages[] = $productImage;
  490.             $productImage->setProduct($this);
  491.         }
  492.         return $this;
  493.     }
  494.     public function removeProductImage(ProductImages $productImage): self
  495.     {
  496.         if ($this->productImages->removeElement($productImage)) {
  497.             // set the owning side to null (unless already changed)
  498.             if ($productImage->getProduct() === $this) {
  499.                 $productImage->setProduct(null);
  500.             }
  501.         }
  502.         return $this;
  503.     }
  504.     public function getIsPromotionalPrice(): ?bool
  505.     {
  506.         return $this->isPromotionalPrice;
  507.     }
  508.     public function setIsPromotionalPrice(bool $isPromotionalPrice): self
  509.     {
  510.         $this->isPromotionalPrice $isPromotionalPrice;
  511.         return $this;
  512.     }
  513.     public function getPromotionalPrice(): ?float
  514.     {
  515.         return $this->promotionalPrice;
  516.     }
  517.     public function setPromotionalPrice(float $promotionalPrice): self
  518.     {
  519.         $this->promotionalPrice $promotionalPrice;
  520.         return $this;
  521.     }
  522.     public function getPourcentagePromotionalPrice(): ?int
  523.     {
  524.         return $this->pourcentagePromotionalPrice;
  525.     }
  526.     public function setPourcentagePromotionalPrice(int $pourcentagePromotionalPrice): self
  527.     {
  528.         $this->pourcentagePromotionalPrice $pourcentagePromotionalPrice;
  529.         return $this;
  530.     }
  531.     public function getEtat(): ?bool
  532.     {
  533.         return $this->etat;
  534.     }
  535.     public function setEtat(bool $etat): self
  536.     {
  537.         $this->etat $etat;
  538.         return $this;
  539.     }
  540.     public function getNombreVue(): ?string
  541.     {
  542.         return $this->nombreVue;
  543.     }
  544.     public function setNombreVue(int $nombreVue): self
  545.     {
  546.         $this->nombreVue $this->nombreVue $nombreVue;
  547.         return $this;
  548.     }
  549.     /**
  550.      * @return Collection|Tag[]
  551.      */
  552.     public function getTag(): Collection
  553.     {
  554.         return $this->tag;
  555.     }
  556.     public function addTag(Tag $tag): self
  557.     {
  558.         if (!$this->tag->contains($tag)) {
  559.             $this->tag[] = $tag;
  560.             $tag->addProduct($this);
  561.         }
  562.         return $this;
  563.     }
  564.     public function removeTag(Tag $tag): self
  565.     {
  566.         if ($this->tag->removeElement($tag)) {
  567.             $tag->removeProduct($this);
  568.         }
  569.         return $this;
  570.     }
  571.     public function getPoidNet(): ?int
  572.     {
  573.         return $this->poidNet;
  574.     }
  575.     public function setPoidNet(?int $poidNet): self
  576.     {
  577.         $this->poidNet $poidNet;
  578.         return $this;
  579.     }
  580.     public function getLongueur(): ?float
  581.     {
  582.         return $this->longueur;
  583.     }
  584.     public function setLongueur(?float $longueur): self
  585.     {
  586.         $this->longueur $longueur;
  587.         return $this;
  588.     }
  589.     public function getLargeur(): ?float
  590.     {
  591.         return $this->largeur;
  592.     }
  593.     public function setLargeur(?float $largeur): self
  594.     {
  595.         $this->largeur $largeur;
  596.         return $this;
  597.     }
  598.     public function getHauteur(): ?float
  599.     {
  600.         return $this->hauteur;
  601.     }
  602.     public function setHauteur(?float $hauteur): self
  603.     {
  604.         $this->hauteur $hauteur;
  605.         return $this;
  606.     }
  607.     public function getMinCommande(): ?float
  608.     {
  609.         return $this->minCommande;
  610.     }
  611.     public function setMinCommande(float $minCommande): self
  612.     {
  613.         $this->minCommande $minCommande;
  614.         return $this;
  615.     }
  616.     public function getPieceInPackage(): ?int
  617.     {
  618.         return $this->pieceInPackage;
  619.     }
  620.     public function setPieceInPackage(?int $pieceInPackage): self
  621.     {
  622.         $this->pieceInPackage $pieceInPackage;
  623.         return $this;
  624.     }
  625.     /**
  626.      * @return Collection|Colors[]
  627.      */
  628.     public function getColors(): Collection
  629.     {
  630.         return $this->colors;
  631.     }
  632.     public function addColor(Colors $color): self
  633.     {
  634.         if (!$this->colors->contains($color)) {
  635.             $this->colors[] = $color;
  636.         }
  637.         return $this;
  638.     }
  639.     public function removeColor(Colors $color): self
  640.     {
  641.         $this->colors->removeElement($color);
  642.         return $this;
  643.     }
  644.     /**
  645.      * @return Collection|Size[]
  646.      */
  647.     public function getSizes(): Collection
  648.     {
  649.         return $this->sizes;
  650.     }
  651.     public function addSize(Size $size): self
  652.     {
  653.         if (!$this->sizes->contains($size)) {
  654.             $this->sizes[] = $size;
  655.         }
  656.         return $this;
  657.     }
  658.     public function removeSize(Size $size): self
  659.     {
  660.         $this->sizes->removeElement($size);
  661.         return $this;
  662.     }
  663.     public function getUser(): ?user
  664.     {
  665.         return $this->user;
  666.     }
  667.     public function setUser(?user $user): self
  668.     {
  669.         $this->user $user;
  670.         return $this;
  671.     }
  672.     public function getImageDeSpecification(): ?string
  673.     {
  674.         return $this->ImageDeSpecification;
  675.     }
  676.     public function setImageDeSpecification(?string $ImageDeSpecification): self
  677.     {
  678.         $this->ImageDeSpecification $ImageDeSpecification;
  679.         return $this;
  680.     }
  681.     /**
  682.      * @return Collection|Emballage[]
  683.      */
  684.     public function getEmballage(): Collection
  685.     {
  686.         return $this->emballage;
  687.     }
  688.     public function addEmballage(Emballage $emballage): self
  689.     {
  690.         if (!$this->emballage->contains($emballage)) {
  691.             $this->emballage[] = $emballage;
  692.         }
  693.         return $this;
  694.     }
  695.     public function removeEmballage(Emballage $emballage): self
  696.     {
  697.         $this->emballage->removeElement($emballage);
  698.         return $this;
  699.     }
  700.     /**
  701.      * @return mixed
  702.      */
  703.     public function getMaxCommande()
  704.     {
  705.         return $this->maxCommande;
  706.     }
  707.     public function setMaxCommande(float $maxCommande): self
  708.     {
  709.         $this->maxCommande $maxCommande;
  710.         return $this;
  711.     }
  712.     /**
  713.      * @return Collection|PriceInterval[]
  714.      */
  715.     public function getPriceIntervals(): Collection
  716.     {
  717.         return $this->priceIntervals;
  718.     }
  719.     public function addPriceInterval(PriceInterval $priceInterval): self
  720.     {
  721.         if (!$this->priceIntervals->contains($priceInterval)) {
  722.             $this->priceIntervals[] = $priceInterval;
  723.             $priceInterval->setProduct($this);
  724.         }
  725.         return $this;
  726.     }
  727.     public function removePriceInterval(PriceInterval $priceInterval): self
  728.     {
  729.         if ($this->priceIntervals->removeElement($priceInterval)) {
  730.             // set the owning side to null (unless already changed)
  731.             if ($priceInterval->getProduct() === $this) {
  732.                 $priceInterval->setProduct(null);
  733.             }
  734.         }
  735.         return $this;
  736.     }
  737.     /**
  738.      * @return mixed
  739.      */
  740.     public function getReelPrice()
  741.     {
  742.         $price $this->price;
  743.         if(isset($_SESSION['_sf2_attributes']['devise'])){
  744.             if($_SESSION['_sf2_attributes']['devise'] == '$'){
  745.                 $price round$this->price 6.48,2);
  746.             }
  747.         }
  748.         return $this->reelPrice $price;
  749.     }
  750.     /**
  751.      * @return mixed
  752.      */
  753.     public function getReelMaxPrice()
  754.     {
  755.         $price $this->maxPrice;
  756.         if(isset($_SESSION['_sf2_attributes']['devise'])){
  757.             if($_SESSION['_sf2_attributes']['devise'] == '$'){
  758.                 $price round($this->maxPrice 6.48,2);
  759.             }
  760.         }
  761.         return $this->reelMaxPrice $price;
  762.     }
  763.     /**
  764.      * @return mixed
  765.      */
  766.     public function getReelPriceRmb()
  767.     {
  768.         return $this->reelPriceRmb $this->price;
  769.     }
  770.     /**
  771.      * @return mixed
  772.      */
  773.     public function getReelMaxPriceRmb()
  774.     {
  775.         return $this->reelMaxPriceRmb $this->maxPrice;
  776.     }
  777. }