src/JanusHercules/FeedManagementCsvExport/Api/Entity/WorkOnRecurrentJobCsvResult.php line 16

Open in your IDE?
  1. <?php
  2. namespace JanusHercules\FeedManagementCsvExport\Api\Entity;
  3. use App\Entity\ExternalPartner\IntegratedExternalPartnerCustomer;
  4. use App\Entity\RecurrentJob;
  5. use App\Utility\DatabaseIdGenerator;
  6. use Doctrine\DBAL\Types\Types;
  7. use Doctrine\ORM\Mapping as ORM;
  8. use Doctrine\ORM\Mapping\Column;
  9. use JanusHercules\HighVolumeProcess\Domain\Entity\HighVolumeProcessTask;
  10. use JanusHercules\HighVolumeProcess\Domain\Entity\HighVolumeProcessTaskResultInterface;
  11. #[ORM\Entity]
  12. #[ORM\Table(name: 'work_on_recurrent_job_csv_results')]
  13. class WorkOnRecurrentJobCsvResult implements HighVolumeProcessTaskResultInterface
  14. {
  15. public const MAX_XML_SECTION_LENGTH = 16384;
  16. #[ORM\Id]
  17. #[ORM\GeneratedValue(strategy: 'CUSTOM')]
  18. #[ORM\CustomIdGenerator(class: DatabaseIdGenerator::class)]
  19. #[Column(
  20. type : Types::GUID,
  21. unique: true
  22. )]
  23. private ?string $id = null;
  24. public function getId(): ?string
  25. {
  26. return $this->id;
  27. }
  28. #[ORM\ManyToOne(targetEntity: RecurrentJob::class)]
  29. #[ORM\JoinColumn(
  30. name : 'recurrent_jobs_id',
  31. referencedColumnName: 'id',
  32. nullable : false,
  33. onDelete : 'CASCADE'
  34. )]
  35. private RecurrentJob $recurrentJob;
  36. public function getRecurrentJob(): RecurrentJob
  37. {
  38. return $this->recurrentJob;
  39. }
  40. public function setRecurrentJob(RecurrentJob $recurrentJob): void
  41. {
  42. $this->recurrentJob = $recurrentJob;
  43. }
  44. #[Column(
  45. type: Types::TEXT,
  46. )]
  47. private string $csvLine;
  48. public function getCSVLine(): string
  49. {
  50. return $this->csvLine;
  51. }
  52. public function setCSVLine(string $csvLine): void
  53. {
  54. $this->csvLine = $csvLine;
  55. }
  56. #[ORM\ManyToOne(
  57. targetEntity: HighVolumeProcessTask::class,
  58. )]
  59. #[ORM\JoinColumn(
  60. name : 'high_volume_process_tasks_id',
  61. referencedColumnName: 'id',
  62. nullable : false,
  63. onDelete : 'CASCADE'
  64. )]
  65. private HighVolumeProcessTask $task;
  66. public function getTask(): HighVolumeProcessTask
  67. {
  68. return $this->task;
  69. }
  70. public function setTask(HighVolumeProcessTask $task): void
  71. {
  72. $this->task = $task;
  73. }
  74. #[ORM\ManyToOne(targetEntity: IntegratedExternalPartnerCustomer::class)]
  75. #[ORM\JoinColumn(
  76. name : 'integrated_external_partner_customers_id',
  77. referencedColumnName: 'id',
  78. nullable : false,
  79. onDelete : 'CASCADE'
  80. )]
  81. private IntegratedExternalPartnerCustomer $integratedExternalPartnerCustomer;
  82. public function getIntegratedExternalPartnerCustomer(): IntegratedExternalPartnerCustomer
  83. {
  84. return $this->integratedExternalPartnerCustomer;
  85. }
  86. public function setIntegratedExternalPartnerCustomer(IntegratedExternalPartnerCustomer $integratedExternalPartnerCustomer): void
  87. {
  88. $this->integratedExternalPartnerCustomer = $integratedExternalPartnerCustomer;
  89. }
  90. }