<?php
namespace App\Entity;
use App\Repository\FacturaRepository;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass=FacturaRepository::class)
*/
class Factura
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaEnergiaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaEnergiaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaEnergiaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaEnergiaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaEnergiaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaEnergiaP6;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaP6;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $maximetro;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $maximetroP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $maximetroP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $maximetroP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $maximetroP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $maximetroP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $maximetroP6;
/**
* @ORM\Column(type="date")
*/
private $fechaLectura;
/**
* @ORM\Column(type="date")
*/
private $fechaLecturaAnterior;
/**
* @ORM\ManyToOne(targetEntity=TipoLectura::class, inversedBy="facturas")
* @ORM\JoinColumn(nullable=false)
*/
private $tipoLectura;
/**
* @ORM\ManyToOne(targetEntity=TipoLectura::class, inversedBy="facturasAnteriores")
* @ORM\JoinColumn(nullable=false)
*/
private $tipoLecturaAnterior;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $otrosCargos;
/**
* @ORM\Column(type="boolean")
*/
private $devuelta;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioPotenciaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioPotenciaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioPotenciaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioPotenciaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioPotenciaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioPotenciaP6;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioEnergiaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioEnergiaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioEnergiaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioEnergiaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioEnergiaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioEnergiaP6;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $nombreCliente;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $nifCliente;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $direccionCliente;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $cpCliente;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $poblacionCliente;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $provinciaCliente;
/**
* @ORM\ManyToOne(targetEntity=Contrato::class, inversedBy="facturas")
*/
private $contrato;
/**
* @ORM\ManyToOne(targetEntity=Tarifa::class, inversedBy="facturas")
* @ORM\JoinColumn(nullable=false)
*/
private $tarifa;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $fechaEmision;
/**
* @ORM\Column(type="decimal", precision=10, scale=3, nullable=true)
*/
private $potenciaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=3, nullable=true)
*/
private $potenciaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=3, nullable=true)
*/
private $potenciaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=3, nullable=true)
*/
private $potenciaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=3, nullable=true)
*/
private $potenciaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=3, nullable=true)
*/
private $potenciaP6;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $iban;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $ccc;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $alquilerEquipos;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $impuesto;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $iva;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $numeroFactura;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $totalFactura;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $nombreNotificaciones;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $direccionNotificaciones;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $cpNotificaciones;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $poblacionNotificaciones;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $provinciaNotificaciones;
/**
* @ORM\Column(type="boolean")
*/
private $notificaciones;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaAnteriorP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaAnteriorP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaAnteriorP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaAnteriorP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaAnteriorP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaAnteriorP6;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $factorConversion;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaAnteriorP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaAnteriorP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaAnteriorP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaAnteriorP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaAnteriorP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $lecturaReactivaAnteriorP6;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $precioReactivaP1;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $precioReactivaP2;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $precioReactivaP3;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $precioReactivaP4;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $precioReactivaP5;
/**
* @ORM\Column(type="decimal", precision=13, scale=10, nullable=true)
*/
private $precioReactivaP6;
/**
* @ORM\OneToMany(targetEntity=Concepto::class, mappedBy="factura", cascade={"persist", "remove"})
*/
private $conceptos;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $totalCompra;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $fechaEmisionCompra;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $fechaCobroCompra;
/**
* @ORM\ManyToOne(targetEntity=EstadoCompraFactura::class, inversedBy="facturas")
*/
private $estadoCompra;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraEnergiaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraEnergiaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraEnergiaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraEnergiaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraEnergiaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraEnergiaP6;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraPotenciaP1;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraPotenciaP2;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraPotenciaP3;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraPotenciaP4;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraPotenciaP5;
/**
* @ORM\Column(type="decimal", precision=10, scale=7, nullable=true)
*/
private $precioCompraPotenciaP6;
/**
* @ORM\Column(type="decimal", precision=10, scale=5, nullable=true)
*/
private $alquilerEquiposReal;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $totalCompraFactura;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $rentable;
/**
* @ORM\Column(type="date", nullable=true)
*/
private $fechaDevolucion;
/**
* @ORM\ManyToMany(targetEntity=Fraccionamiento::class, mappedBy="facturas")
*/
private $fraccionamientos;
/**
* @ORM\ManyToOne(targetEntity=EstadoFactura::class, inversedBy="facturas")
*/
private $estado;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $importePagado;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $logoHosteleria;
/**
* @ORM\Column(type="decimal", precision=10, scale=2, nullable=true)
*/
private $importeBateriaVirtual;
/**
* @ORM\Column(type="boolean", nullable=true)
*/
private $bateriaVirtual;
public function __construct()
{
$this->conceptos = new ArrayCollection();
$this->fraccionamientos = new ArrayCollection();
}
public function getId(): ?int
{
return $this->id;
}
public function getLecturaEnergiaP1(): ?string
{
return $this->lecturaEnergiaP1;
}
public function setLecturaEnergiaP1(?string $lecturaEnergiaP1): self
{
$this->lecturaEnergiaP1 = $lecturaEnergiaP1;
return $this;
}
public function getLecturaEnergiaP2(): ?string
{
return $this->lecturaEnergiaP2;
}
public function setLecturaEnergiaP2(?string $lecturaEnergiaP2): self
{
$this->lecturaEnergiaP2 = $lecturaEnergiaP2;
return $this;
}
public function getLecturaEnergiaP3(): ?string
{
return $this->lecturaEnergiaP3;
}
public function setLecturaEnergiaP3(?string $lecturaEnergiaP3): self
{
$this->lecturaEnergiaP3 = $lecturaEnergiaP3;
return $this;
}
public function getLecturaEnergiaP4(): ?string
{
return $this->lecturaEnergiaP4;
}
public function setLecturaEnergiaP4(?string $lecturaEnergiaP4): self
{
$this->lecturaEnergiaP4 = $lecturaEnergiaP4;
return $this;
}
public function getLecturaEnergiaP5(): ?string
{
return $this->lecturaEnergiaP5;
}
public function setLecturaEnergiaP5(?string $lecturaEnergiaP5): self
{
$this->lecturaEnergiaP5 = $lecturaEnergiaP5;
return $this;
}
public function getLecturaEnergiaP6(): ?string
{
return $this->lecturaEnergiaP6;
}
public function setLecturaEnergiaP6(?string $lecturaEnergiaP6): self
{
$this->lecturaEnergiaP6 = $lecturaEnergiaP6;
return $this;
}
public function getLecturaReactivaP1(): ?string
{
return $this->lecturaReactivaP1;
}
public function setLecturaReactivaP1(?string $lecturaReactivaP1): self
{
$this->lecturaReactivaP1 = $lecturaReactivaP1;
return $this;
}
public function getLecturaReactivaP2(): ?string
{
return $this->lecturaReactivaP2;
}
public function setLecturaReactivaP2(?string $lecturaReactivaP2): self
{
$this->lecturaReactivaP2 = $lecturaReactivaP2;
return $this;
}
public function getLecturaReactivaP3(): ?string
{
return $this->lecturaReactivaP3;
}
public function setLecturaReactivaP3(?string $lecturaReactivaP3): self
{
$this->lecturaReactivaP3 = $lecturaReactivaP3;
return $this;
}
public function getLecturaReactivaP4(): ?string
{
return $this->lecturaReactivaP4;
}
public function setLecturaReactivaP4(?string $lecturaReactivaP4): self
{
$this->lecturaReactivaP4 = $lecturaReactivaP4;
return $this;
}
public function getLecturaReactivaP5(): ?string
{
return $this->lecturaReactivaP5;
}
public function setLecturaReactivaP5(?string $lecturaReactivaP5): self
{
$this->lecturaReactivaP5 = $lecturaReactivaP5;
return $this;
}
public function getLecturaReactivaP6(): ?string
{
return $this->lecturaReactivaP6;
}
public function setLecturaReactivaP6(?string $lecturaReactivaP6): self
{
$this->lecturaReactivaP6 = $lecturaReactivaP6;
return $this;
}
public function getMaximetro(): ?bool
{
return $this->maximetro;
}
public function setMaximetro(?bool $maximetro): self
{
$this->maximetro = $maximetro;
return $this;
}
public function getMaximetroP1(): ?string
{
return $this->maximetroP1;
}
public function setMaximetroP1(?string $maximetroP1): self
{
$this->maximetroP1 = $maximetroP1;
return $this;
}
public function getMaximetroP2(): ?string
{
return $this->maximetroP2;
}
public function setMaximetroP2(?string $maximetroP2): self
{
$this->maximetroP2 = $maximetroP2;
return $this;
}
public function getMaximetroP3(): ?string
{
return $this->maximetroP3;
}
public function setMaximetroP3(?string $maximetroP3): self
{
$this->maximetroP3 = $maximetroP3;
return $this;
}
public function getMaximetroP4(): ?string
{
return $this->maximetroP4;
}
public function setMaximetroP4(?string $maximetroP4): self
{
$this->maximetroP4 = $maximetroP4;
return $this;
}
public function getMaximetroP5(): ?string
{
return $this->maximetroP5;
}
public function setMaximetroP5(?string $maximetroP5): self
{
$this->maximetroP5 = $maximetroP5;
return $this;
}
public function getMaximetroP6(): ?string
{
return $this->maximetroP6;
}
public function setMaximetroP6(?string $maximetroP6): self
{
$this->maximetroP6 = $maximetroP6;
return $this;
}
public function getFechaLectura(): ?\DateTimeInterface
{
return $this->fechaLectura;
}
public function setFechaLectura(\DateTimeInterface $fechaLectura): self
{
$this->fechaLectura = $fechaLectura;
return $this;
}
public function getFechaLecturaAnterior(): ?\DateTimeInterface
{
return $this->fechaLecturaAnterior;
}
public function setFechaLecturaAnterior(\DateTimeInterface $fechaLecturaAnterior): self
{
$this->fechaLecturaAnterior = $fechaLecturaAnterior;
return $this;
}
public function getTipoLectura(): ?TipoLectura
{
return $this->tipoLectura;
}
public function setTipoLectura(?TipoLectura $tipoLectura): self
{
$this->tipoLectura = $tipoLectura;
return $this;
}
public function getTipoLecturaAnterior(): ?TipoLectura
{
return $this->tipoLecturaAnterior;
}
public function setTipoLecturaAnterior(?TipoLectura $tipoLecturaAnterior): self
{
$this->tipoLecturaAnterior = $tipoLecturaAnterior;
return $this;
}
public function getOtrosCargos(): ?string
{
return $this->otrosCargos;
}
public function setOtrosCargos(?string $otrosCargos): self
{
$this->otrosCargos = $otrosCargos;
return $this;
}
public function getDevuelta(): ?bool
{
return $this->devuelta;
}
public function setDevuelta(bool $devuelta): self
{
$this->devuelta = $devuelta;
return $this;
}
public function getPrecioPotenciaP1(): ?string
{
return $this->precioPotenciaP1;
}
public function setPrecioPotenciaP1(?string $precioPotenciaP1): self
{
$this->precioPotenciaP1 = $precioPotenciaP1;
return $this;
}
public function getPrecioPotenciaP2(): ?string
{
return $this->precioPotenciaP2;
}
public function setPrecioPotenciaP2(?string $precioPotenciaP2): self
{
$this->precioPotenciaP2 = $precioPotenciaP2;
return $this;
}
public function getPrecioPotenciaP3(): ?string
{
return $this->precioPotenciaP3;
}
public function setPrecioPotenciaP3(?string $precioPotenciaP3): self
{
$this->precioPotenciaP3 = $precioPotenciaP3;
return $this;
}
public function getPrecioPotenciaP4(): ?string
{
return $this->precioPotenciaP4;
}
public function setPrecioPotenciaP4(?string $precioPotenciaP4): self
{
$this->precioPotenciaP4 = $precioPotenciaP4;
return $this;
}
public function getPrecioPotenciaP5(): ?string
{
return $this->precioPotenciaP5;
}
public function setPrecioPotenciaP5(?string $precioPotenciaP5): self
{
$this->precioPotenciaP5 = $precioPotenciaP5;
return $this;
}
public function getPrecioPotenciaP6(): ?string
{
return $this->precioPotenciaP6;
}
public function setPrecioPotenciaP6(?string $precioPotenciaP6): self
{
$this->precioPotenciaP6 = $precioPotenciaP6;
return $this;
}
public function getPrecioEnergiaP1(): ?string
{
return $this->precioEnergiaP1;
}
public function setPrecioEnergiaP1(?string $precioEnergiaP1): self
{
$this->precioEnergiaP1 = $precioEnergiaP1;
return $this;
}
public function getPrecioEnergiaP2(): ?string
{
return $this->precioEnergiaP2;
}
public function setPrecioEnergiaP2(?string $precioEnergiaP2): self
{
$this->precioEnergiaP2 = $precioEnergiaP2;
return $this;
}
public function getPrecioEnergiaP3(): ?string
{
return $this->precioEnergiaP3;
}
public function setPrecioEnergiaP3(?string $precioEnergiaP3): self
{
$this->precioEnergiaP3 = $precioEnergiaP3;
return $this;
}
public function getPrecioEnergiaP4(): ?string
{
return $this->precioEnergiaP4;
}
public function setPrecioEnergiaP4(?string $precioEnergiaP4): self
{
$this->precioEnergiaP4 = $precioEnergiaP4;
return $this;
}
public function getPrecioEnergiaP5(): ?string
{
return $this->precioEnergiaP5;
}
public function setPrecioEnergiaP5(?string $precioEnergiaP5): self
{
$this->precioEnergiaP5 = $precioEnergiaP5;
return $this;
}
public function getPrecioEnergiaP6(): ?string
{
return $this->precioEnergiaP6;
}
public function setPrecioEnergiaP6(?string $precioEnergiaP6): self
{
$this->precioEnergiaP6 = $precioEnergiaP6;
return $this;
}
public function getNombreCliente(): ?string
{
return $this->nombreCliente;
}
public function setNombreCliente(?string $nombreCliente): self
{
$this->nombreCliente = $nombreCliente;
return $this;
}
public function getNifCliente(): ?string
{
return $this->nifCliente;
}
public function setNifCliente(?string $nifCliente): self
{
$this->nifCliente = $nifCliente;
return $this;
}
public function getDireccionCliente(): ?string
{
return $this->direccionCliente;
}
public function setDireccionCliente(?string $direccionCliente): self
{
$this->direccionCliente = $direccionCliente;
return $this;
}
public function getCpCliente(): ?string
{
return $this->cpCliente;
}
public function setCpCliente(?string $cpCliente): self
{
$this->cpCliente = $cpCliente;
return $this;
}
public function getPoblacionCliente(): ?string
{
return $this->poblacionCliente;
}
public function setPoblacionCliente(?string $poblacionCliente): self
{
$this->poblacionCliente = $poblacionCliente;
return $this;
}
public function getProvinciaCliente(): ?string
{
return $this->provinciaCliente;
}
public function setProvinciaCliente(?string $provinciaCliente): self
{
$this->provinciaCliente = $provinciaCliente;
return $this;
}
public function getContrato(): ?Contrato
{
return $this->contrato;
}
public function setContrato(?Contrato $contrato): self
{
$this->contrato = $contrato;
return $this;
}
public function getTarifa(): ?Tarifa
{
return $this->tarifa;
}
public function setTarifa(?Tarifa $tarifa): self
{
$this->tarifa = $tarifa;
return $this;
}
public function getFechaEmision(): ?\DateTimeInterface
{
return $this->fechaEmision;
}
public function setFechaEmision(?\DateTimeInterface $fechaEmision): self
{
$this->fechaEmision = $fechaEmision;
return $this;
}
public function getPotenciaP1(): ?string
{
return $this->potenciaP1;
}
public function setPotenciaP1(?string $potenciaP1): self
{
$this->potenciaP1 = $potenciaP1;
return $this;
}
public function getPotenciaP2(): ?string
{
return $this->potenciaP2;
}
public function setPotenciaP2(?string $potenciaP2): self
{
$this->potenciaP2 = $potenciaP2;
return $this;
}
public function getPotenciaP3(): ?string
{
return $this->potenciaP3;
}
public function setPotenciaP3(?string $potenciaP3): self
{
$this->potenciaP3 = $potenciaP3;
return $this;
}
public function getPotenciaP4(): ?string
{
return $this->potenciaP4;
}
public function setPotenciaP4(?string $potenciaP4): self
{
$this->potenciaP4 = $potenciaP4;
return $this;
}
public function getPotenciaP5(): ?string
{
return $this->potenciaP5;
}
public function setPotenciaP5(?string $potenciaP5): self
{
$this->potenciaP5 = $potenciaP5;
return $this;
}
public function getPotenciaP6(): ?string
{
return $this->potenciaP6;
}
public function setPotenciaP6(?string $potenciaP6): self
{
$this->potenciaP6 = $potenciaP6;
return $this;
}
public function getIban(): ?string
{
return $this->iban;
}
public function setIban(?string $iban): self
{
$this->iban = $iban;
return $this;
}
public function getCcc(): ?string
{
return $this->ccc;
}
public function setCcc(string $ccc): self
{
$this->ccc = $ccc;
return $this;
}
public function getAlquilerEquipos(): ?string
{
return $this->alquilerEquipos;
}
public function setAlquilerEquipos(?string $alquilerEquipos): self
{
$this->alquilerEquipos = $alquilerEquipos;
return $this;
}
public function getImpuesto(): ?string
{
return $this->impuesto;
}
public function setImpuesto(?string $impuesto): self
{
$this->impuesto = $impuesto;
return $this;
}
public function getIva(): ?string
{
return $this->iva;
}
public function setIva(?string $iva): self
{
$this->iva = $iva;
return $this;
}
public function getNumeroFactura(): ?string
{
return $this->numeroFactura;
}
public function setNumeroFactura(?string $numeroFactura): self
{
$this->numeroFactura = $numeroFactura;
return $this;
}
public function getTotalFactura(): ?string
{
return $this->totalFactura;
}
public function setTotalFactura(?string $totalFactura): self
{
$this->totalFactura = $totalFactura;
return $this;
}
public function getNombreNotificaciones(): ?string
{
return $this->nombreNotificaciones;
}
public function setNombreNotificaciones(?string $nombreNotificaciones): self
{
$this->nombreNotificaciones = $nombreNotificaciones;
return $this;
}
public function getDireccionNotificaciones(): ?string
{
return $this->direccionNotificaciones;
}
public function setDireccionNotificaciones(?string $direccionNotificaciones): self
{
$this->direccionNotificaciones = $direccionNotificaciones;
return $this;
}
public function getCpNotificaciones(): ?string
{
return $this->cpNotificaciones;
}
public function setCpNotificaciones(?string $cpNotificaciones): self
{
$this->cpNotificaciones = $cpNotificaciones;
return $this;
}
public function getPoblacionNotificaciones(): ?string
{
return $this->poblacionNotificaciones;
}
public function setPoblacionNotificaciones(?string $poblacionNotificaciones): self
{
$this->poblacionNotificaciones = $poblacionNotificaciones;
return $this;
}
public function getProvinciaNotificaciones(): ?string
{
return $this->provinciaNotificaciones;
}
public function setProvinciaNotificaciones(?string $provinciaNotificaciones): self
{
$this->provinciaNotificaciones = $provinciaNotificaciones;
return $this;
}
public function getNotificaciones(): ?bool
{
return $this->notificaciones;
}
public function setNotificaciones(bool $notificaciones): self
{
$this->notificaciones = $notificaciones;
return $this;
}
public function getLecturaAnteriorP1(): ?string
{
return $this->lecturaAnteriorP1;
}
public function setLecturaAnteriorP1(?string $lecturaAnteriorP1): self
{
$this->lecturaAnteriorP1 = $lecturaAnteriorP1;
return $this;
}
public function getLecturaAnteriorP2(): ?string
{
return $this->lecturaAnteriorP2;
}
public function setLecturaAnteriorP2(?string $lecturaAnteriorP2): self
{
$this->lecturaAnteriorP2 = $lecturaAnteriorP2;
return $this;
}
public function getLecturaAnteriorP3(): ?string
{
return $this->lecturaAnteriorP3;
}
public function setLecturaAnteriorP3(?string $lecturaAnteriorP3): self
{
$this->lecturaAnteriorP3 = $lecturaAnteriorP3;
return $this;
}
public function getLecturaAnteriorP4(): ?string
{
return $this->lecturaAnteriorP4;
}
public function setLecturaAnteriorP4(?string $lecturaAnteriorP4): self
{
$this->lecturaAnteriorP4 = $lecturaAnteriorP4;
return $this;
}
public function getLecturaAnteriorP5(): ?string
{
return $this->lecturaAnteriorP5;
}
public function setLecturaAnteriorP5(?string $lecturaAnteriorP5): self
{
$this->lecturaAnteriorP5 = $lecturaAnteriorP5;
return $this;
}
public function getLecturaAnteriorP6(): ?string
{
return $this->lecturaAnteriorP6;
}
public function setLecturaAnteriorP6(?string $lecturaAnteriorP6): self
{
$this->lecturaAnteriorP6 = $lecturaAnteriorP6;
return $this;
}
public function calcularTotal(): float {
$importeTotal=$this->getBaseImponible();
$importeIva=round($this->iva*$importeTotal/100,2);
$totalFactura=round($importeTotal+$importeIva,2);
$this->totalFactura=$totalFactura;
return $totalFactura;
}
public function calcularTotalCompra(): float {
$importeTotal=$this->getBaseImponibleCompra();
$importeIva=round($this->iva*$importeTotal/100,2);
$totalFactura=round($importeTotal+$importeIva,2);
return $totalFactura;
}
public function getBaseImponible(): float
{
return round($this->getImporteEnergia()+$this->getImporteOtrosConceptos(),2);
}
public function getBaseImponibleCompra(): float
{
return round($this->getImporteEnergiaCompra()+$this->getImporteOtrosConceptos(),2);
}
public function getPotenciaFacturada(string $p): ?string
{
$hasMaximetro=$this->maximetro;
$tarifa=$this->tarifa->getNombre();
$tarifaId=$this->tarifa->getId();
if( $hasMaximetro ){
switch ($p){
case 'P1':
$potencia=$this->potenciaP1;
if($tarifa=='3.0A' || $tarifa=='3.1A'){
if($this->maximetroP1>$this->maximetroP4){
$maximetro=$this->maximetroP1;
}else{
$maximetro=$this->maximetroP4;
}
}
else{
$maximetro=$this->maximetroP1;
}
break;
case 'P2':
$potencia=$this->potenciaP2;
if($tarifa=='3.0A' || $tarifa=='3.1A'){
if($this->maximetroP2>$this->maximetroP5){
$maximetro=$this->maximetroP2;
}else{
$maximetro=$this->maximetroP5;
}
}
else{
$maximetro=$this->maximetroP2;
}
break;
case 'P3':
$potencia=$this->potenciaP3;
if($tarifa=='3.0A' || $tarifa=='3.1A'){
if($this->maximetroP3>$this->maximetroP6){
$maximetro=$this->maximetroP3;
}else{
$maximetro=$this->maximetroP6;
}
}
else{
$maximetro=$this->maximetroP3;
}
break;
case 'P4':
$potencia=$this->potenciaP4;
$maximetro=$this->maximetroP4;
break;
case 'P5':
$potencia=$this->potenciaP5;
$maximetro=$this->maximetroP5;
break;
case 'P6':
$potencia=$this->potenciaP6;
$maximetro=$this->maximetroP6;
break;
default:
return 0;
}
if($maximetro!==null){
if($maximetro>$potencia*1.05){
$potencia=$maximetro+($maximetro-$potencia*1.05)*2;
}
elseif($tarifa=='3.0A' || $tarifa=='3.1A' || $tarifaId==29 || $tarifaId==30){
if ($maximetro>$potencia*0.85){
$potencia=$maximetro;
}
else {
$potencia = $potencia * 0.85;
}
}
else{
switch ($p){
case 'P1':
$potencia=$this->potenciaP1;
break;
case 'P2':
$potencia=$this->potenciaP2;
break;
case 'P3':
$potencia=$this->potenciaP3;
break;
case 'P4':
$potencia=$this->potenciaP4;
break;
case 'P5':
$potencia=$this->potenciaP5;
break;
case 'P6':
$potencia=$this->potenciaP6;
break;
default:
return 0;
}
}
}
}else{
switch ($p){
case 'P1':
return $this->potenciaP1;
case 'P2':
return $this->potenciaP2;
case 'P3':
return $this->potenciaP3;
case 'P4':
return $this->potenciaP4;
case 'P5':
return $this->potenciaP5;
case 'P6':
return $this->potenciaP6;
default:
return 0;
}
}
return $potencia;
}
public function getPeriodoFacturacion(): ?string
{
return date_diff( $this->fechaLecturaAnterior, $this->fechaLectura )->days+1;
}
public function getConsumo(): ?string
{
return ($this->lecturaEnergiaP1??0) - ($this->lecturaAnteriorP1??0) +
($this->lecturaEnergiaP2??0) - ($this->lecturaAnteriorP2??0) +
($this->lecturaEnergiaP3??0) - ($this->lecturaAnteriorP3??0) +
($this->lecturaEnergiaP4??0) - ($this->lecturaAnteriorP4??0) +
($this->lecturaEnergiaP5??0) - ($this->lecturaAnteriorP5??0) +
($this->lecturaEnergiaP6??0) - ($this->lecturaAnteriorP6??0);
}
public function getImporteEnergia(): ?float
{
$periodoFacturacion=date_diff($this->fechaLecturaAnterior, $this->fechaLectura)->days+1;
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
$subtotal=round(round($this->getConsumoConvertidoP1()*$this->precioEnergiaP1,2)+round($this->precioPotenciaP1*$periodoFacturacion,2),2);
$importeImpuesto=round($this->impuesto*$this->getConsumoConvertidoP1(),2);
$importeAlquiler=round($periodoFacturacion*$this->alquilerEquipos,2);
}else{
$totalPotencia=$this->getImportePotencia();
$totalEnergia=$this->getImporteConsumo();
$totalReactiva=$this->getImporteReactiva();
$subtotal=round($totalEnergia+$totalPotencia+$totalReactiva,2);
$importeImpuesto=round($this->impuesto*$subtotal/100,2);
$importeAlquiler=round($periodoFacturacion*$this->alquilerEquipos,2);
}
return round($subtotal+$importeAlquiler+$importeImpuesto,2);
}
public function getImporteEnergiaCompra(): ?float
{
$periodoFacturacion=date_diff($this->fechaLecturaAnterior, $this->fechaLectura)->days+1;
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
$subtotal=round(round($this->getConsumoConvertidoP1()*$this->precioCompraEnergiaP1,2)+round($this->precioCompraPotenciaP1*$periodoFacturacion,2),2);
$importeImpuesto=round($this->impuesto*$this->getConsumoConvertidoP1(),2);
$importeAlquiler=round($periodoFacturacion*$this->alquilerEquiposReal,2);
}else{
$totalPotencia=$this->getImportePotenciaCompra();
$totalEnergia=$this->getImporteConsumoCompra();
$totalReactiva=$this->getImporteReactiva();
$subtotal=round($totalEnergia+$totalPotencia+$totalReactiva,2);
$importeImpuesto=round($this->impuesto*$subtotal/100,2);
$importeAlquiler=round($periodoFacturacion*$this->alquilerEquiposReal,2);
}
return round($subtotal+$importeAlquiler+$importeImpuesto,2);
}
public function getImportePotencia(): ?float
{
$periodoFacturacion=date_diff($this->fechaLecturaAnterior, $this->fechaLectura)->days+1;
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
return round($this->getConsumoConvertidoP1()*$this->precioEnergiaP1,2);
}else{
switch( $this->getTarifa()->getNombre() ) {
case '3.0A':
case '3.1A':
return
round(($this->getPotenciaFacturada('P1')??0) * ($this->precioPotenciaP1??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P2')??0) * ($this->precioPotenciaP2??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P3')??0) * ($this->precioPotenciaP3??0) * $periodoFacturacion,2);
default:
return
round(($this->getPotenciaFacturada('P1')??0) * ($this->precioPotenciaP1??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P2')??0) * ($this->precioPotenciaP2??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P3')??0) * ($this->precioPotenciaP3??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P4')??0) * ($this->precioPotenciaP4??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P5')??0) * ($this->precioPotenciaP5??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P6')??0) * ($this->precioPotenciaP6??0) * $periodoFacturacion,2);
}
}
}
public function getImportePotenciaCompra(): ?float
{
$periodoFacturacion=date_diff($this->fechaLecturaAnterior, $this->fechaLectura)->days+1;
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
return round($this->getConsumoConvertidoP1()*$this->precioCompraEnergiaP1,2);
}else{
switch( $this->getTarifa()->getNombre() ) {
case '3.0A':
case '3.1A':
return
round(($this->getPotenciaFacturada('P1')??0) * ($this->precioCompraPotenciaP1??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P2')??0) * ($this->precioCompraPotenciaP2??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P3')??0) * ($this->precioCompraPotenciaP3??0) * $periodoFacturacion,2);
default:
return
round(($this->getPotenciaFacturada('P1')??0) * ($this->precioCompraPotenciaP1??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P2')??0) * ($this->precioCompraPotenciaP2??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P3')??0) * ($this->precioCompraPotenciaP3??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P4')??0) * ($this->precioCompraPotenciaP4??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P5')??0) * ($this->precioCompraPotenciaP5??0) * $periodoFacturacion,2)+
round(($this->getPotenciaFacturada('P6')??0) * ($this->precioCompraPotenciaP6??0) * $periodoFacturacion,2);
}
}
}
public function getImporteConsumo(): ?float
{
$periodoFacturacion=date_diff($this->fechaLecturaAnterior, $this->fechaLectura)->days+1;
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
return round($this->getConsumoConvertidoP1()*$this->precioEnergiaP1,2);
}else{
switch( $this->getTarifa()->getNombre() ) {
case '3.0A':
case '3.1A':
$consumoP1Facturado = ($this->getConsumoP1()) + ($this->getConsumoP4());
$consumoP2Facturado = ($this->getConsumoP2()) + ($this->getConsumoP5());
$consumoP3Facturado = ($this->getConsumoP3()) + ($this->getConsumoP6());
$totalEnergiaP1 = round($consumoP1Facturado * ($this->precioEnergiaP1 ?? 0), 2);
$totalEnergiaP2 = round($consumoP2Facturado * ($this->precioEnergiaP2 ?? 0), 2);
$totalEnergiaP3 = round($consumoP3Facturado * ($this->precioEnergiaP3 ?? 0), 2);
return $totalEnergiaP1 + $totalEnergiaP2 + $totalEnergiaP3;
default:
return
($this->getConsumoP1() * $this->getPrecioEnergiaP1()) +
($this->getConsumoP2() * $this->getPrecioEnergiaP2()) +
($this->getConsumoP3() * $this->getPrecioEnergiaP3()) +
($this->getConsumoP4() * $this->getPrecioEnergiaP4()) +
($this->getConsumoP5() * $this->getPrecioEnergiaP5()) +
($this->getConsumoP6() * $this->getPrecioEnergiaP6());
}
}
}
public function getImporteConsumoCompra(): ?float
{
$periodoFacturacion=date_diff($this->fechaLecturaAnterior, $this->fechaLectura)->days+1;
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
return round($this->getConsumoConvertidoP1()*$this->precioCompraEnergiaP1,2);
}else{
switch( $this->getTarifa()->getNombre() ) {
case '3.0A':
case '3.1A':
$consumoP1Facturado = ($this->getConsumoP1()) + ($this->getConsumoP4());
$consumoP2Facturado = ($this->getConsumoP2()) + ($this->getConsumoP5());
$consumoP3Facturado = ($this->getConsumoP3()) + ($this->getConsumoP6());
$totalEnergiaP1 = round($consumoP1Facturado * ($this->precioCompraEnergiaP1 ?? 0), 2);
$totalEnergiaP2 = round($consumoP2Facturado * ($this->precioCompraEnergiaP2 ?? 0), 2);
$totalEnergiaP3 = round($consumoP3Facturado * ($this->precioCompraEnergiaP3 ?? 0), 2);
return $totalEnergiaP1 + $totalEnergiaP2 + $totalEnergiaP3;
default:
return
($this->getConsumoP1() * $this->precioCompraEnergiaP1) +
($this->getConsumoP2() * $this->precioCompraEnergiaP2) +
($this->getConsumoP3() * $this->precioCompraEnergiaP3) +
($this->getConsumoP4() * $this->precioCompraEnergiaP4) +
($this->getConsumoP5() * $this->precioCompraEnergiaP5) +
($this->getConsumoP6() * $this->precioCompraEnergiaP6);
}
}
}
public function getImporteReactiva(): ?float
{
if($this->getTarifa()->getTipoTarifa()->getNombre()=='Gas'){
return 0;
}else{
switch( $this->getTarifa()->getNombre() ){
case '3.0A': case '3.1A':
$consumoP1Facturado=($this->getConsumoP1()) + ($this->getConsumoP4());
$consumoP2Facturado=($this->getConsumoP2()) + ($this->getConsumoP5());
$excesoReactivaP1=($this->getReactivaP1()+$this->getReactivaP4())-0.33*$consumoP1Facturado;
$excesoReactivaP2=($this->getReactivaP2()+$this->getReactivaP5())-0.33*$consumoP2Facturado;
if($excesoReactivaP1<0)
$excesoReactivaP1=0;
if($excesoReactivaP2<0)
$excesoReactivaP2=0;
$importeReactivaP1=round($excesoReactivaP1*$this->precioReactivaP1,2);
$importeReactivaP2=round($excesoReactivaP2*$this->precioReactivaP2,2);
return $importeReactivaP1+$importeReactivaP2;
default:
$reactivaP1=$this->getReactivaP1();
if($reactivaP1!=0)
$excesoReactivaP1=$reactivaP1-0.33*$this->getConsumoP1();
else
$excesoReactivaP1=0;
$reactivaP2=$this->getReactivaP2();
if($reactivaP2!=0)
$excesoReactivaP2=$reactivaP2-0.33*$this->getConsumoP2();
else
$excesoReactivaP2=0;
$reactivaP3=$this->getReactivaP3();
if($reactivaP3!=0)
$excesoReactivaP3=$reactivaP3-0.33*$this->getConsumoP3();
else
$excesoReactivaP3=0;
$reactivaP4=$this->getReactivaP4();
if($reactivaP4!=0)
$excesoReactivaP4=$reactivaP4-0.33*$this->getConsumoP4();
else
$excesoReactivaP4=0;
$reactivaP5=$this->getReactivaP5();
if($reactivaP5!=0)
$excesoReactivaP5=$reactivaP5-0.33*$this->getConsumoP5();
else
$excesoReactivaP5=0;
$reactivaP6=$this->getReactivaP6();
if($reactivaP6!=0)
$excesoReactivaP6=$reactivaP6-0.33*$this->getConsumoP6();
else
$excesoReactivaP6=0;
if($excesoReactivaP1<0)
$excesoReactivaP1=0;
if($excesoReactivaP2<0)
$excesoReactivaP2=0;
if($excesoReactivaP3<0)
$excesoReactivaP3=0;
if($excesoReactivaP4<0)
$excesoReactivaP4=0;
if($excesoReactivaP5<0)
$excesoReactivaP5=0;
if($excesoReactivaP6<0)
$excesoReactivaP6=0;
$importeReactivaP1=round($excesoReactivaP1*$this->precioReactivaP1,2);
$importeReactivaP2=round($excesoReactivaP2*$this->precioReactivaP2,2);
$importeReactivaP3=round($excesoReactivaP3*$this->precioReactivaP3,2);
$importeReactivaP4=round($excesoReactivaP4*$this->precioReactivaP4,2);
$importeReactivaP5=round($excesoReactivaP5*$this->precioReactivaP5,2);
$importeReactivaP6=round($excesoReactivaP6*$this->precioReactivaP6,2);
return $importeReactivaP1+$importeReactivaP2+$importeReactivaP3+$importeReactivaP4+$importeReactivaP5+$importeReactivaP6;
}
}
}
public function getImporteOtrosConceptos(): ?float{
$otrosConceptos=0;
foreach ($this->conceptos as $concepto){
$otrosConceptos+=round($concepto->getImporte(),2);
}
return round($otrosConceptos,2);
}
public function getConsumoP1(): ?string
{
return ($this->lecturaEnergiaP1??0) - ($this->lecturaAnteriorP1??0);
}
public function getConsumoP2(): ?string
{
return ($this->lecturaEnergiaP2??0) - ($this->lecturaAnteriorP2??0);
}
public function getConsumoP3(): ?string
{
return ($this->lecturaEnergiaP3??0) - ($this->lecturaAnteriorP3??0);
}
public function getConsumoP4(): ?string
{
return ($this->lecturaEnergiaP4??0) - ($this->lecturaAnteriorP4??0);
}
public function getConsumoP5(): ?string
{
return ($this->lecturaEnergiaP5??0) - ($this->lecturaAnteriorP5??0);
}
public function getConsumoP6(): ?string
{
return ($this->lecturaEnergiaP6??0) - ($this->lecturaAnteriorP6??0);
}
public function getReactivaP1(): ?string
{
return ($this->lecturaReactivaP1??0) - ($this->lecturaReactivaAnteriorP1??0);
}
public function getReactivaP2(): ?string
{
return ($this->lecturaReactivaP2??0) - ($this->lecturaReactivaAnteriorP2??0);
}
public function getReactivaP3(): ?string
{
if($this->fechaEmision>date_create('2022-07-31'))
return ($this->lecturaReactivaP3??0) - ($this->lecturaReactivaAnteriorP3??0);
else
return 0;
}
public function getReactivaP4(): ?string
{
return ($this->lecturaReactivaP4??0) - ($this->lecturaReactivaAnteriorP4??0);
}
public function getReactivaP5(): ?string
{
return ($this->lecturaReactivaP5??0) - ($this->lecturaReactivaAnteriorP5??0);
}
public function getReactivaP6(): ?string
{
return ($this->lecturaReactivaP6??0) - ($this->lecturaReactivaAnteriorP6??0);
}
public function getConsumoConvertidoP1(): ?string
{
return ( ($this->lecturaEnergiaP1??0) - ($this->lecturaAnteriorP1??0) )*($this->factorConversion??0);
}
public function getNumeroCuenta(): ?string
{
return $this->iban.' '.implode(' ', str_split($this->ccc, 4)) ;
}
public function getFactorConversion(): ?string
{
return $this->factorConversion;
}
public function setFactorConversion(?string $factorConversion): self
{
$this->factorConversion = $factorConversion;
return $this;
}
public function getLecturaReactivaAnteriorP1(): ?string
{
return $this->lecturaReactivaAnteriorP1;
}
public function setLecturaReactivaAnteriorP1(?string $lecturaReactivaAnteriorP1): self
{
$this->lecturaReactivaAnteriorP1 = $lecturaReactivaAnteriorP1;
return $this;
}
public function getLecturaReactivaAnteriorP2(): ?string
{
return $this->lecturaReactivaAnteriorP2;
}
public function setLecturaReactivaAnteriorP2(?string $lecturaReactivaAnteriorP2): self
{
$this->lecturaReactivaAnteriorP2 = $lecturaReactivaAnteriorP2;
return $this;
}
public function getLecturaReactivaAnteriorP3(): ?string
{
return $this->lecturaReactivaAnteriorP3;
}
public function setLecturaReactivaAnteriorP3(?string $lecturaReactivaAnteriorP3): self
{
$this->lecturaReactivaAnteriorP3 = $lecturaReactivaAnteriorP3;
return $this;
}
public function getLecturaReactivaAnteriorP4(): ?string
{
return $this->lecturaReactivaAnteriorP4;
}
public function setLecturaReactivaAnteriorP4(?string $lecturaReactivaAnteriorP4): self
{
$this->lecturaReactivaAnteriorP4 = $lecturaReactivaAnteriorP4;
return $this;
}
public function getLecturaReactivaAnteriorP5(): ?string
{
return $this->lecturaReactivaAnteriorP5;
}
public function setLecturaReactivaAnteriorP5(?string $lecturaReactivaAnteriorP5): self
{
$this->lecturaReactivaAnteriorP5 = $lecturaReactivaAnteriorP5;
return $this;
}
public function getLecturaReactivaAnteriorP6(): ?string
{
return $this->lecturaReactivaAnteriorP6;
}
public function setLecturaReactivaAnteriorP6(?string $lecturaReactivaAnteriorP6): self
{
$this->lecturaReactivaAnteriorP6 = $lecturaReactivaAnteriorP6;
return $this;
}
public function getPrecioReactivaP1(): ?string
{
return $this->precioReactivaP1;
}
public function setPrecioReactivaP1(?string $precioReactivaP1): self
{
$this->precioReactivaP1 = $precioReactivaP1;
return $this;
}
public function getPrecioReactivaP2(): ?string
{
return $this->precioReactivaP2;
}
public function setPrecioReactivaP2(?string $precioReactivaP2): self
{
$this->precioReactivaP2 = $precioReactivaP2;
return $this;
}
public function getPrecioReactivaP3(): ?string
{
return $this->precioReactivaP3;
}
public function setPrecioReactivaP3(?string $precioReactivaP3): self
{
$this->precioReactivaP3 = $precioReactivaP3;
return $this;
}
public function getPrecioReactivaP4(): ?string
{
return $this->precioReactivaP4;
}
public function setPrecioReactivaP4(?string $precioReactivaP4): self
{
$this->precioReactivaP4 = $precioReactivaP4;
return $this;
}
public function getPrecioReactivaP5(): ?string
{
return $this->precioReactivaP5;
}
public function setPrecioReactivaP5(?string $precioReactivaP5): self
{
$this->precioReactivaP5 = $precioReactivaP5;
return $this;
}
public function getPrecioReactivaP6(): ?string
{
return $this->precioReactivaP6;
}
public function setPrecioReactivaP6(?string $precioReactivaP6): self
{
$this->precioReactivaP6 = $precioReactivaP6;
return $this;
}
/**
* @return Collection|Concepto[]
*/
public function getConceptos(): Collection
{
return $this->conceptos;
}
public function addConcepto(Concepto $concepto): self
{
if (!$this->conceptos->contains($concepto)) {
$this->conceptos[] = $concepto;
$concepto->setFactura($this);
}
return $this;
}
public function removeConcepto(Concepto $concepto): self
{
if ($this->conceptos->contains($concepto)) {
$this->conceptos->removeElement($concepto);
// set the owning side to null (unless already changed)
if ($concepto->getFactura() === $this) {
$concepto->setFactura(null);
}
}
return $this;
}
public function getClassName(){
return 'Factura';
}
public function __toString()
{
return $this->numeroFactura??'-';
}
public function getTotalCompra(): ?string
{
return $this->totalCompra;
}
public function setTotalCompra(?string $totalCompra): self
{
$this->totalCompra = $totalCompra;
return $this;
}
public function getFechaEmisionCompra(): ?\DateTimeInterface
{
return $this->fechaEmisionCompra;
}
public function setFechaEmisionCompra(?\DateTimeInterface $fechaEmisionCompra): self
{
$this->fechaEmisionCompra = $fechaEmisionCompra;
return $this;
}
public function getFechaCobroCompra(): ?\DateTimeInterface
{
return $this->fechaCobroCompra;
}
public function setFechaCobroCompra(?\DateTimeInterface $fechaCobroCompra): self
{
$this->fechaCobroCompra = $fechaCobroCompra;
return $this;
}
public function getEstadoCompra(): ?EstadoCompraFactura
{
return $this->estadoCompra;
}
public function setEstadoCompra(?EstadoCompraFactura $estadoCompra): self
{
$this->estadoCompra = $estadoCompra;
return $this;
}
public function getPrecioCompraEnergiaP1(): ?string
{
return $this->precioCompraEnergiaP1;
}
public function setPrecioCompraEnergiaP1(?string $precioCompraEnergiaP1): self
{
$this->precioCompraEnergiaP1 = $precioCompraEnergiaP1;
return $this;
}
public function getPrecioCompraEnergiaP2(): ?string
{
return $this->precioCompraEnergiaP2;
}
public function setPrecioCompraEnergiaP2(?string $precioCompraEnergiaP2): self
{
$this->precioCompraEnergiaP2 = $precioCompraEnergiaP2;
return $this;
}
public function getPrecioCompraEnergiaP3(): ?string
{
return $this->precioCompraEnergiaP3;
}
public function setPrecioCompraEnergiaP3(?string $precioCompraEnergiaP3): self
{
$this->precioCompraEnergiaP3 = $precioCompraEnergiaP3;
return $this;
}
public function getPrecioCompraEnergiaP4(): ?string
{
return $this->precioCompraEnergiaP4;
}
public function setPrecioCompraEnergiaP4(?string $precioCompraEnergiaP4): self
{
$this->precioCompraEnergiaP4 = $precioCompraEnergiaP4;
return $this;
}
public function getPrecioCompraEnergiaP5(): ?string
{
return $this->precioCompraEnergiaP5;
}
public function setPrecioCompraEnergiaP5(?string $precioCompraEnergiaP5): self
{
$this->precioCompraEnergiaP5 = $precioCompraEnergiaP5;
return $this;
}
public function getPrecioCompraEnergiaP6(): ?string
{
return $this->precioCompraEnergiaP6;
}
public function setPrecioCompraEnergiaP6(?string $precioCompraEnergiaP6): self
{
$this->precioCompraEnergiaP6 = $precioCompraEnergiaP6;
return $this;
}
public function getPrecioCompraPotenciaP1(): ?string
{
return $this->precioCompraPotenciaP1;
}
public function setPrecioCompraPotenciaP1(?string $precioCompraPotenciaP1): self
{
$this->precioCompraPotenciaP1 = $precioCompraPotenciaP1;
return $this;
}
public function getPrecioCompraPotenciaP2(): ?string
{
return $this->precioCompraPotenciaP2;
}
public function setPrecioCompraPotenciaP2(?string $precioCompraPotenciaP2): self
{
$this->precioCompraPotenciaP2 = $precioCompraPotenciaP2;
return $this;
}
public function getPrecioCompraPotenciaP3(): ?string
{
return $this->precioCompraPotenciaP3;
}
public function setPrecioCompraPotenciaP3(?string $precioCompraPotenciaP3): self
{
$this->precioCompraPotenciaP3 = $precioCompraPotenciaP3;
return $this;
}
public function getPrecioCompraPotenciaP4(): ?string
{
return $this->precioCompraPotenciaP4;
}
public function setPrecioCompraPotenciaP4(?string $precioCompraPotenciaP4): self
{
$this->precioCompraPotenciaP4 = $precioCompraPotenciaP4;
return $this;
}
public function getPrecioCompraPotenciaP5(): ?string
{
return $this->precioCompraPotenciaP5;
}
public function setPrecioCompraPotenciaP5(?string $precioCompraPotenciaP5): self
{
$this->precioCompraPotenciaP5 = $precioCompraPotenciaP5;
return $this;
}
public function getPrecioCompraPotenciaP6(): ?string
{
return $this->precioCompraPotenciaP6;
}
public function setPrecioCompraPotenciaP6(?string $precioCompraPotenciaP6): self
{
$this->precioCompraPotenciaP6 = $precioCompraPotenciaP6;
return $this;
}
public function getAlquilerEquiposReal(): ?string
{
return $this->alquilerEquiposReal;
}
public function setAlquilerEquiposReal(?string $alquilerEquiposReal): self
{
$this->alquilerEquiposReal = $alquilerEquiposReal;
return $this;
}
public function getTotalCompraFactura(): ?string
{
return $this->totalCompraFactura;
}
public function setTotalCompraFactura(?string $totalCompraFactura): self
{
$this->totalCompraFactura = $totalCompraFactura;
return $this;
}
public function getRentable(): ?bool
{
return $this->rentable;
}
public function setRentable(?bool $rentable): self
{
$this->rentable = $rentable;
return $this;
}
public function getFechaDevolucion(): ?\DateTimeInterface
{
return $this->fechaDevolucion;
}
public function setFechaDevolucion(?\DateTimeInterface $fechaDevolucion): self
{
$this->fechaDevolucion = $fechaDevolucion;
return $this;
}
/**
* @return Collection<int, Fraccionamiento>
*/
public function getFraccionamientos(): Collection
{
return $this->fraccionamientos;
}
public function addFraccionamiento(Fraccionamiento $fraccionamiento): self
{
if (!$this->fraccionamientos->contains($fraccionamiento)) {
$this->fraccionamientos[] = $fraccionamiento;
$fraccionamiento->addFactura($this);
}
return $this;
}
public function removeFraccionamiento(Fraccionamiento $fraccionamiento): self
{
if ($this->fraccionamientos->removeElement($fraccionamiento)) {
$fraccionamiento->removeFactura($this);
}
return $this;
}
public function getEstado(): ?EstadoFactura
{
return $this->estado;
}
public function setEstado(?EstadoFactura $estado): self
{
$this->estado = $estado;
return $this;
}
public function getImportePagado(): ?string
{
return $this->importePagado;
}
public function setImportePagado(?string $importePagado): self
{
$this->importePagado = $importePagado;
return $this;
}
public function isLogoHosteleria(): ?bool
{
return $this->logoHosteleria;
}
public function setLogoHosteleria(?bool $logoHosteleria): self
{
$this->logoHosteleria = $logoHosteleria;
return $this;
}
public function getImporteBateriaVirtual(): ?string
{
return $this->importeBateriaVirtual;
}
public function setImporteBateriaVirtual(?string $importeBateriaVirtual): self
{
$this->importeBateriaVirtual = $importeBateriaVirtual;
return $this;
}
public function isBateriaVirtual(): ?bool
{
return $this->bateriaVirtual;
}
public function setBateriaVirtual(?bool $bateriaVirtual): self
{
$this->bateriaVirtual = $bateriaVirtual;
return $this;
}
}