/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package mx.edu.um.mateo.contabilidad.facturas.model; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.ManyToOne; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; import javax.persistence.UniqueConstraint; import javax.persistence.Version; import mx.edu.um.mateo.general.model.Empresa; import mx.edu.um.mateo.general.model.Usuario; import mx.edu.um.mateo.general.utils.UtilStatus; import mx.edu.um.mateo.rh.model.Empleado; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.web.multipart.MultipartFile; /** * * @author develop */ @Entity(name = "informeProveedorDetalle") @Table(name = "informeProveedorDetalle", uniqueConstraints = { @UniqueConstraint(columnNames = {"foliofactura", "empresa_id"}), @UniqueConstraint(columnNames = {"rfcproveedor", "empresa_id"})}) public class InformeProveedorDetalle implements Serializable { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Version private Integer version; //*****En el caso del empleado, estos atributos contienen los datos del proveedor que expidio la factura private String RFCProveedor; private String folioFactura; private String folioFiscal; private String nombreProveedor; //************************** private BigDecimal subtotal; private BigDecimal IVA; private BigDecimal total; private String status; @DateTimeFormat(pattern = "dd/MM/yyyy") @Temporal(TemporalType.DATE) private Date fechaFactura; private String pathPDF; private String pathXMl; private String nombrePDF; private String nombreXMl; @ManyToOne private Contrarecibo contrarecibo; @ManyToOne(optional = false) private InformeProveedor informeProveedor; @ManyToOne(optional = false) private Empresa empresa; @ManyToOne(fetch = FetchType.LAZY) private Usuario usuarioAlta; @ManyToOne(optional = true, fetch = FetchType.LAZY) private ProveedorFacturas proveedorFacturas; @ManyToOne(optional = true, fetch = FetchType.LAZY) private Empleado empleado; @ManyToOne(fetch = FetchType.LAZY) private Usuario usuarioMOdificacion; @ManyToOne(fetch = FetchType.LAZY) private Usuario usuarioAutRech; @DateTimeFormat(pattern = "dd/MM/yyyy") @Temporal(TemporalType.DATE) private Date fechaCaptura; @Temporal(TemporalType.DATE) private Date fechaAutRech; @DateTimeFormat(pattern = "dd/MM/yyyy") @Temporal(TemporalType.DATE) private Date fechaModificacion; @Column(name = "dcto_pronto_pago", precision = 9, scale = 2) private BigDecimal dctoProntoPago; private transient MultipartFile file; private transient MultipartFile file2; @Column(name = "filePdf") private byte[] pdfFile; @Column(name = "fileXml") private byte[] xmlFile; public InformeProveedorDetalle() { dctoProntoPago = BigDecimal.ZERO; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Integer getVersion() { return version; } public void setVersion(Integer version) { this.version = version; } public String getRFCProveedor() { return RFCProveedor; } public void setRFCProveedor(String RFCProveedor) { this.RFCProveedor = RFCProveedor; } public String getFolioFactura() { return folioFactura; } public void setFolioFactura(String folioFactura) { this.folioFactura = folioFactura; } public String getNombreProveedor() { return nombreProveedor; } public void setNombreProveedor(String nombreProveedor) { this.nombreProveedor = nombreProveedor; } public BigDecimal getSubtotal() { return subtotal; } public void setSubtotal(BigDecimal subtotal) { this.subtotal = subtotal; } public BigDecimal getIVA() { return IVA; } public void setIVA(BigDecimal IVA) { this.IVA = IVA; } public BigDecimal getTotal() { return total; } public void setTotal(BigDecimal total) { this.total = total; } public String getStatus() { return status; } public String getStatusTexto() { return UtilStatus.valueStatus(this.status); } public void setStatus(String status) { this.status = status; } public Date getFechaFactura() { return fechaFactura; } public void setFechaFactura(Date fechaFactura) { this.fechaFactura = fechaFactura; } public String getPathPDF() { return pathPDF; } public void setPathPDF(String pathPDF) { this.pathPDF = pathPDF; } public String getPathXMl() { return pathXMl; } public void setPathXMl(String pathXMl) { this.pathXMl = pathXMl; } public String getNombrePDF() { return nombrePDF; } public void setNombrePDF(String nombrePDF) { this.nombrePDF = nombrePDF; } public String getNombreXMl() { return nombreXMl; } public void setNombreXMl(String nombreXMl) { this.nombreXMl = nombreXMl; } public InformeProveedor getInformeProveedor() { return informeProveedor; } public void setInformeProveedor(InformeProveedor informeProveedor) { this.informeProveedor = informeProveedor; } public Empresa getEmpresa() { return empresa; } public void setEmpresa(Empresa empresa) { this.empresa = empresa; } public Contrarecibo getContrarecibo() { return contrarecibo; } public void setContrarecibo(Contrarecibo contrarecibo) { this.contrarecibo = contrarecibo; } public Usuario getUsuarioAlta() { return usuarioAlta; } public void setUsuarioAlta(Usuario usuarioAlta) { this.usuarioAlta = usuarioAlta; } public Usuario getUsuarioMOdificacion() { return usuarioMOdificacion; } public void setUsuarioMOdificacion(Usuario usuarioMOdificacion) { this.usuarioMOdificacion = usuarioMOdificacion; } public Date getFechaCaptura() { return fechaCaptura; } public void setFechaCaptura(Date fechaCaptura) { this.fechaCaptura = fechaCaptura; } public Date getFechaModificacion() { return fechaModificacion; } public void setFechaModificacion(Date fechaModificacion) { this.fechaModificacion = fechaModificacion; } public Usuario getUsuarioAutRech() { return usuarioAutRech; } public void setUsuarioAutRech(Usuario usuarioAutRech) { this.usuarioAutRech = usuarioAutRech; } public Date getFechaAutRech() { return fechaAutRech; } public void setFechaAutRech(Date fechaAutRech) { this.fechaAutRech = fechaAutRech; } public BigDecimal getDctoProntoPago() { return dctoProntoPago; } public void setDctoProntoPago(BigDecimal dctoProntoPago) { this.dctoProntoPago = dctoProntoPago; } public MultipartFile getFile() { return file; } public void setFile(MultipartFile file) { this.file = file; } public MultipartFile getFile2() { return file2; } public void setFile2(MultipartFile file2) { this.file2 = file2; } public ProveedorFacturas getProveedorFacturas() { return proveedorFacturas; } public void setProveedorFacturas(ProveedorFacturas proveedorFacturas) { this.proveedorFacturas = proveedorFacturas; } public Empleado getEmpleado() { return empleado; } public void setEmpleado(Empleado empleado) { this.empleado = empleado; } @Override public String toString() { return "InformeProveedorDetalle{" + "id=" + id + ", version=" + version + ", RFCProveedor=" + RFCProveedor + ", folioFactura=" + folioFactura + ", nombreProveedor=" + nombreProveedor + ", subtotal=" + subtotal + ", IVA=" + IVA + ", total=" + total + ", status=" + status + ", fechaFactura=" + fechaFactura + ", pathPDF=" + pathPDF + ", pathXMl=" + pathXMl + ", nombrePDF=" + nombrePDF + ", nombreXMl=" + nombreXMl + ", contrarecibo=" + contrarecibo + ", informeProveedor=" + informeProveedor + ", empresa=" + empresa + ", usuarioAlta=" + usuarioAlta + ", proveedorFacturas=" + proveedorFacturas + ", empleado=" + empleado + ", usuarioMOdificacion=" + usuarioMOdificacion + ", usuarioAutRech=" + usuarioAutRech + ", fechaCaptura=" + fechaCaptura + ", fechaAutRech=" + fechaAutRech + ", fechaModificacion=" + fechaModificacion + ", dctoProntoPago=" + dctoProntoPago + ", file=" + file + ", file2=" + file2 + '}'; } public byte[] getPdfFile() { return pdfFile; } public void setPdfFile(byte[] pdfFile) { this.pdfFile = pdfFile; } public byte[] getXmlFile() { return xmlFile; } public void setXmlFile(byte[] xmlFile) { this.xmlFile = xmlFile; } public String getFolioFiscal() { return folioFiscal; } public void setFolioFiscal(String folioFiscal) { this.folioFiscal = folioFiscal; } }