Rev 126 | Rev 195 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 126 | Rev 170 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | package br.com.ec.domain.model; |
1 | package br.com.ec.domain.model; |
| 2 | 2 | ||
| 3 | import java.io.ByteArrayInputStream; |
3 | import java.io.ByteArrayInputStream; |
| 4 | import java.io.ByteArrayOutputStream; |
4 | import java.io.ByteArrayOutputStream; |
| 5 | import java.io.IOException; |
5 | import java.io.IOException; |
| 6 | import java.io.InputStream; |
- | |
| 7 | import java.io.Serializable; |
6 | import java.io.Serializable; |
| 8 | import java.io.StringReader; |
7 | import java.io.StringReader; |
| 9 | import java.util.Date; |
8 | import java.util.Date; |
| 10 | import java.util.List; |
9 | import java.util.List; |
| 11 | 10 | ||
| Line 35... | Line 34... | ||
| 35 | import org.apache.commons.io.IOUtils; |
34 | import org.apache.commons.io.IOUtils; |
| 36 | import org.hibernate.annotations.ForeignKey; |
35 | import org.hibernate.annotations.ForeignKey; |
| 37 | import org.primefaces.model.DefaultStreamedContent; |
36 | import org.primefaces.model.DefaultStreamedContent; |
| 38 | import org.w3c.dom.Document; |
37 | import org.w3c.dom.Document; |
| 39 | 38 | ||
| 40 | import br.com.ec.domain.model.tipos.TipoModeloNotaFiscal; |
- | |
| 41 | import br.com.ec.domain.model.tipos.TipoNotaFiscal; |
- | |
| - | 39 | import br.com.ec.domain.model.tipos.nfe.TipoModeloNotaFiscal; |
|
| - | 40 | import br.com.ec.domain.model.tipos.nfe.TipoNotaFiscal; |
|
| - | 41 | import br.com.ec.domain.model.tipos.nfe.TipoNotaFiscalNaturezaOperacao; |
|
| - | 42 | import br.com.ec.domain.model.tipos.nfe.TipoNotaFiscalPresencaComprador; |
|
| - | 43 | import br.com.ec.domain.model.tipos.nfe.TipoNotaFiscalStatusRetorno; |
|
| 42 | import br.edu.cesmac.core.exception.NegocioException; |
44 | import br.edu.cesmac.core.exception.NegocioException; |
| 43 | import br.edu.cesmac.core.generic.identidade.Identidade; |
45 | import br.edu.cesmac.core.generic.identidade.Identidade; |
| 44 | import br.edu.cesmac.core.interfaces.Alterar; |
46 | import br.edu.cesmac.core.interfaces.Alterar; |
| 45 | import br.edu.cesmac.core.interfaces.Cadastrar; |
47 | import br.edu.cesmac.core.interfaces.Cadastrar; |
| 46 | import br.edu.cesmac.core.util.StringUtil; |
48 | import br.edu.cesmac.core.util.StringUtil; |
| Line 54... | Line 56... | ||
| 54 | public class NotaFiscal implements Serializable, Identidade { |
56 | public class NotaFiscal implements Serializable, Identidade { |
| 55 | 57 | ||
| 56 | private static final long serialVersionUID = 1L; |
58 | private static final long serialVersionUID = 1L; |
| 57 | 59 | ||
| 58 | private Long sequencial; |
60 | private Long sequencial; |
| - | 61 | private String tipoModeloNotaFiscal; |
|
| - | 62 | private String serie; |
|
| 59 | private Long numeroNotaFiscal; |
63 | private Long numeroNotaFiscal; |
| - | 64 | private Date dataHoraEmissao; |
|
| - | 65 | ||
| 60 | private String chave; |
66 | private String chave; |
| 61 | private String serie; |
- | |
| - | 67 | ||
| - | 68 | private String tipoNotaFiscalNaturezaOperacao; // NOVO |
|
| - | 69 | private String tipoNotaFiscalPresencaComprador; //NOVO |
|
| - | 70 | private Boolean indicadorOperacaoConsumidorFinal; |
|
| - | 71 | ||
| 62 | private Venda venda; |
72 | private Venda venda; |
| 63 | private Pessoa pessoaJuridicaEmitente; |
- | |
| 64 | private Pessoa pessoaJuridicaDestinatario; |
- | |
| - | 73 | private Pessoa pessoaEmitente; |
|
| - | 74 | private Pessoa pessoaDestinatario; |
|
| 65 | private String observacaoVenda; |
75 | private String observacaoVenda; |
| 66 | // private Transporte transporte;
|
76 | // private Transporte transporte;
|
| 67 | private String descricaoComplementares; |
77 | private String descricaoComplementares; |
| 68 | private Date dataHoraEmissao; |
- | |
| - | 78 | ||
| 69 | private String textoXml; |
79 | private String textoXml; |
| 70 | private String tipoNotaFiscal; |
80 | private String tipoNotaFiscal; |
| 71 | private String tipoModeloNotaFiscal; |
- | |
| - | 81 | ||
| 72 | private String protocoloAutorizacao; |
82 | private String protocoloAutorizacao; |
| 73 | private String caminhoQrcode; |
83 | private String caminhoQrcode; |
| 74 | 84 | ||
| 75 | private String statusRetorno; |
85 | private String statusRetorno; |
| 76 | private String motivoRetorno; |
86 | private String motivoRetorno; |
| Line 105... | Line 115... | ||
| 105 | public Long getSequencial() { |
115 | public Long getSequencial() { |
| 106 | return sequencial; |
116 | return sequencial; |
| 107 | }
|
117 | }
|
| 108 | public void setSequencial(Long sequencial) { |
118 | public void setSequencial(Long sequencial) { |
| 109 | this.sequencial = sequencial; |
119 | this.sequencial = sequencial; |
| 110 | }
|
- | |
| 111 | - | ||
| 112 | @Column(name="cod_nota_fiscal") |
- | |
| 113 | public String getChave() { |
- | |
| 114 | return chave; |
- | |
| 115 | }
|
- | |
| 116 | public void setChave(String chave) { |
- | |
| 117 | this.chave = chave; |
- | |
| 118 | }
|
120 | }
|
| 119 | 121 | ||
| 120 | @Column(name="dsc_serie") |
122 | @Column(name="dsc_serie") |
| 121 | public String getSerie() { |
123 | public String getSerie() { |
| 122 | return serie; |
124 | return serie; |
| Line 129... | Line 131... | ||
| 129 | public Long getNumeroNotaFiscal() { |
131 | public Long getNumeroNotaFiscal() { |
| 130 | return numeroNotaFiscal; |
132 | return numeroNotaFiscal; |
| 131 | }
|
133 | }
|
| 132 | public void setNumeroNotaFiscal(Long numeroNotaFiscal) { |
134 | public void setNumeroNotaFiscal(Long numeroNotaFiscal) { |
| 133 | this.numeroNotaFiscal = numeroNotaFiscal; |
135 | this.numeroNotaFiscal = numeroNotaFiscal; |
| - | 136 | }
|
|
| - | 137 | ||
| - | 138 | @Column(name="cod_nota_fiscal") |
|
| - | 139 | public String getChave() { |
|
| - | 140 | return chave; |
|
| - | 141 | }
|
|
| - | 142 | public void setChave(String chave) { |
|
| - | 143 | this.chave = chave; |
|
| - | 144 | }
|
|
| - | 145 | ||
| - | 146 | @Transient |
|
| - | 147 | public String getTipoNotaFiscalNaturezaOperacao() { |
|
| - | 148 | return tipoNotaFiscalNaturezaOperacao; |
|
| - | 149 | }
|
|
| - | 150 | public void setTipoNotaFiscalNaturezaOperacao(String tipoNotaFiscalNaturezaOperacao) { |
|
| - | 151 | this.tipoNotaFiscalNaturezaOperacao = tipoNotaFiscalNaturezaOperacao; |
|
| - | 152 | }
|
|
| - | 153 | @Transient |
|
| - | 154 | public String descricaoTipoNotaFiscalNaturezaOperacao() { |
|
| - | 155 | return VerificadorUtil.naoEstaNuloOuVazio(getTipoNotaFiscalNaturezaOperacao())? TipoNotaFiscalNaturezaOperacao.parse(getTipoNotaFiscalNaturezaOperacao()).getDescricao() : null; |
|
| - | 156 | }
|
|
| - | 157 | ||
| - | 158 | @Transient |
|
| - | 159 | public String getTipoNotaFiscalPresencaComprador() { |
|
| - | 160 | return tipoNotaFiscalPresencaComprador; |
|
| - | 161 | }
|
|
| - | 162 | public void setTipoNotaFiscalPresencaComprador(String tipoNotaFiscalPresencaComprador) { |
|
| - | 163 | this.tipoNotaFiscalPresencaComprador = tipoNotaFiscalPresencaComprador; |
|
| - | 164 | }
|
|
| - | 165 | @Transient |
|
| - | 166 | public String descricaoTipoNotaFiscalPresencaComprador() { |
|
| - | 167 | return VerificadorUtil.naoEstaNuloOuVazio(getTipoNotaFiscalPresencaComprador())? TipoNotaFiscalPresencaComprador.parse(getTipoNotaFiscalPresencaComprador()).getDescricao() : null; |
|
| 134 | }
|
168 | }
|
| 135 | 169 | ||
| 136 | @ManyToOne |
170 | @ManyToOne |
| 137 | @ForeignKey(name = "fk_notafiscal_venda") |
171 | @ForeignKey(name = "fk_notafiscal_venda") |
| 138 | @JoinColumn(name="seq_venda", referencedColumnName="seq_venda", insertable=true, updatable=false) |
172 | @JoinColumn(name="seq_venda", referencedColumnName="seq_venda", insertable=true, updatable=false) |
| Line 144... | Line 178... | ||
| 144 | }
|
178 | }
|
| 145 | 179 | ||
| 146 | @ManyToOne |
180 | @ManyToOne |
| 147 | @ForeignKey(name = "fk_notafiscal_emitente") |
181 | @ForeignKey(name = "fk_notafiscal_emitente") |
| 148 | @JoinColumn(name="seq_pessoa_emitente", referencedColumnName="seq_pessoa", insertable=true, updatable=true) |
182 | @JoinColumn(name="seq_pessoa_emitente", referencedColumnName="seq_pessoa", insertable=true, updatable=true) |
| 149 | public Pessoa getPessoaJuridicaEmitente() { |
- | |
| 150 | return pessoaJuridicaEmitente; |
- | |
| - | 183 | public Pessoa getPessoaEmitente() { |
|
| - | 184 | return pessoaEmitente; |
|
| 151 | }
|
185 | }
|
| 152 | public void setPessoaJuridicaEmitente(Pessoa pessoaJuridicaEmitente) { |
- | |
| 153 | this.pessoaJuridicaEmitente = pessoaJuridicaEmitente; |
- | |
| - | 186 | public void setPessoaEmitente(Pessoa pessoaEmitente) { |
|
| - | 187 | this.pessoaEmitente = pessoaEmitente; |
|
| 154 | }
|
188 | }
|
| 155 | 189 | ||
| 156 | @ManyToOne |
190 | @ManyToOne |
| 157 | @ForeignKey(name = "fk_notafiscal_destinatario") |
191 | @ForeignKey(name = "fk_notafiscal_destinatario") |
| 158 | @JoinColumn(name="seq_pessoa_destinatario", referencedColumnName="seq_pessoa", insertable=true, updatable=true) |
192 | @JoinColumn(name="seq_pessoa_destinatario", referencedColumnName="seq_pessoa", insertable=true, updatable=true) |
| 159 | public Pessoa getPessoaJuridicaDestinatario() { |
- | |
| 160 | return pessoaJuridicaDestinatario; |
- | |
| - | 193 | public Pessoa getPessoaDestinatario() { |
|
| - | 194 | return pessoaDestinatario; |
|
| 161 | }
|
195 | }
|
| 162 | public void setPessoaJuridicaDestinatario(Pessoa pessoaJuridicaDestinatario) { |
- | |
| 163 | this.pessoaJuridicaDestinatario = pessoaJuridicaDestinatario; |
- | |
| - | 196 | public void setPessoaDestinatario(Pessoa pessoaDestinatario) { |
|
| - | 197 | this.pessoaDestinatario = pessoaDestinatario; |
|
| 164 | }
|
198 | }
|
| 165 | 199 | ||
| 166 | @Column(name="dsc_obs_venda") |
200 | @Column(name="dsc_obs_venda") |
| 167 | @Size(max = 100, message = "Limite de caracteres ultrapassado: Observação da Venda") |
201 | @Size(max = 100, message = "Limite de caracteres ultrapassado: Observação da Venda") |
| 168 | public String getObservacaoVenda() { |
202 | public String getObservacaoVenda() { |
| Line 246... | Line 280... | ||
| 246 | public String getStatusRetorno() { |
280 | public String getStatusRetorno() { |
| 247 | return statusRetorno; |
281 | return statusRetorno; |
| 248 | }
|
282 | }
|
| 249 | public void setStatusRetorno(String statusRetorno) { |
283 | public void setStatusRetorno(String statusRetorno) { |
| 250 | this.statusRetorno = statusRetorno; |
284 | this.statusRetorno = statusRetorno; |
| - | 285 | }
|
|
| - | 286 | @Transient |
|
| - | 287 | public String resultadoStatusRetorno() { |
|
| - | 288 | TipoNotaFiscalStatusRetorno tipoStatus = TipoNotaFiscalStatusRetorno.parse(new Long(getStatusRetorno())); |
|
| - | 289 | return VerificadorUtil.naoEstaNulo(tipoStatus)? tipoStatus.getDescricao() : getStatusRetorno(); |
|
| 251 | }
|
290 | }
|
| 252 | 291 | ||
| 253 | @Column(name="dsc_motivo_retorno") |
292 | @Column(name="dsc_motivo_retorno") |
| 254 | @Size(max = 100, message = "Limite de caracteres ultrapassado: Motivo do Retorno") |
293 | @Size(max = 100, message = "Limite de caracteres ultrapassado: Motivo do Retorno") |
| 255 | public String getMotivoRetorno() { |
294 | public String getMotivoRetorno() { |