src/AtechNet/CoreBundle/Entity/ClaimSetting.php line 16

Open in your IDE?
  1. <?php
  2. namespace App\AtechNet\CoreBundle\Entity;
  3. use Doctrine\ORM\Mapping\Column;
  4. use Doctrine\ORM\Mapping\Entity;
  5. use Doctrine\ORM\Mapping\JoinColumn;
  6. use Doctrine\ORM\Mapping\ManyToOne;
  7. use Doctrine\ORM\Mapping\Table as Table;
  8. /**
  9.  * ClaimSetting
  10.  *
  11.  * @Table(name="claim_settings")
  12.  * @Entity()
  13.  */
  14. class ClaimSetting extends AbstractSignedEntity
  15. {
  16.     public const int TYPE_CLAIM_FEDEX_TRACKING_NUMBER = 1;
  17.     public const int TYPE_CLAIM_IMPORT_FEDEX_TRACKING_NUMBER = 2;
  18.     /**
  19.      * @var Claim
  20.      *
  21.      * @ManyToOne(targetEntity="Claim", inversedBy="settings")
  22.      * @JoinColumn(name="claim_id", referencedColumnName="id")
  23.      */
  24.     private $claim;
  25.     /**
  26.      * @var int
  27.      *
  28.      * @Column(name="type", type="integer")
  29.      */
  30.     private $type;
  31.     /**
  32.      * @var string
  33.      *
  34.      * @Column(name="value", type="string", length=256)
  35.      */
  36.     private $value;
  37.     /**
  38.      * @return Claim
  39.      */
  40.     public function getClaim()
  41.     {
  42.         return $this->claim;
  43.     }
  44.     /**
  45.      * @param Claim $claim
  46.      * @return void
  47.      */
  48.     public function setClaim(Claim $claim): void
  49.     {
  50.         $this->claim = $claim;
  51.     }
  52.     /**
  53.      * @return int
  54.      */
  55.     public function getType()
  56.     {
  57.         return $this->type;
  58.     }
  59.     /**
  60.      * @param int $type
  61.      */
  62.     public function setType($type)
  63.     {
  64.         return $this->type = $type;
  65.     }
  66.     /**
  67.      * @return string
  68.      */
  69.     public function getValue()
  70.     {
  71.         return $this->value;
  72.     }
  73.     /**
  74.      * @param string $value
  75.      */
  76.     public function setValue($value)
  77.     {
  78.         return $this->value = $value;
  79.     }
  80.     /**
  81.      * @param Claim $claim
  82.      * @param $settingCode
  83.      * @param $settingValue
  84.      * @return ClaimSetting
  85.      */
  86.     public static function createSetting(Claim $claim, $settingCode, $settingValue): ClaimSetting
  87.     {
  88.         $claimSetting = new ClaimSetting();
  89.         $claimSetting->setClaim($claim);
  90.         $claimSetting->setType($settingCode);
  91.         $claimSetting->setValue($settingValue);
  92.         return $claimSetting;
  93.     }
  94.     /**
  95.      * @param ClaimSetting $claimSetting
  96.      * @param $settingValue
  97.      * @return ClaimSetting
  98.      */
  99.     public static function updateSettingValue(ClaimSetting $claimSetting, $settingValue): ClaimSetting
  100.     {
  101.         $claimSetting->setValue($settingValue);
  102.         return $claimSetting;
  103.     }
  104. }