Subversion Repositories Integrator Subversion

Rev

Rev 495 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

package br.com.ec.domain.dto;

import java.io.Serializable;
import java.util.Date;

public class NotaFiscalProdutoDTO implements Serializable {

        private static final long serialVersionUID = 1L;

        private Long sequencial;
        private Integer quantidade;
        private Double valor;
        private String xmlDetalheCompra;
        private NotaFiscalDTO notaFiscalDTO;
        private CompraProdutoDTO compraProdutoDTO;
       
        /*<det nItem="2"><prod>
         * <cProd>019539</cProd>
         * <cEAN>6939684512827</cEAN>
         * <xProd>ADAPTADOR CARREGADOR POR INDUÇÃO SEM FIO(QI) PARA  (PRETA)</xProd>
         * <NCM>85044010</NCM>
         * <CEST>2103700</CEST>
         * <CFOP>5152</CFOP>
         * <uCom>UN</uCom>
         * <qCom>1.0000</qCom>
         * <vUnCom>20.9000000000</vUnCom>
         * <vProd>20.90</vProd>
         * <cEANTrib>6939684512827</cEANTrib>
         * <uTrib>UN</uTrib>
         * <qTrib>1.0000</qTrib>
         * <vUnTrib>20.90</vUnTrib>
         * <indTot>1</indTot>
         * </prod>
         * <imposto>
         * <ICMS>
         * <ICMSSN102>
         * <orig>0</orig>
         * <CSOSN>400</CSOSN>
         * </ICMSSN102></ICMS>
         * <PIS><PISNT><CST>07</CST></PISNT></PIS>
         * <COFINS><COFINSNT><CST>07</CST></COFINSNT></COFINS>
         * </imposto></det>
         */

       
        public NotaFiscalProdutoDTO() {}
       
        public static String CONSULTA_DTO_COMPLETA = "e.sequencial, e.quantidade, e.valor, e.xmlDetalheCompra, e.notaFiscal.sequencial, e.notaFiscal.chave, e.notaFiscal.numeroNotaFiscal, "
                        + "e.notaFiscal.dataHoraEmissao, e.compraProduto.sequencial, e.compraProduto.valorCompra, e.compraProduto.produto.sequencial, e.compraProduto.produto.codigo, "
                        + "e.compraProduto.produto.tipo, e.compraProduto.produto.modelo.sequencial, e.compraProduto.produto.modelo.descricao, "
                        + "e.compraProduto.produto.modelo.marca.sequencial, e.compraProduto.produto.modelo.marca.descricao, "
                        + "e.compraProduto.produto.tributacao.sequencial, e.compraProduto.produto.tributacao.descricao, e.compraProduto.produto.tributacao.codigoNCM, "
                        + "e.compraProduto.produto.tributacao.codigoEST, e.compraProduto.produto.tributacao.sujeitoST, "
                        + "e.compraProduto.produto.estilo, e.compraProduto.produto.sujeitoST, "
                        + "e.compraProduto.produto.descricao, e.compraProduto.produto.cor, e.compraProduto.produto.codigoEAN, e.compraProduto.compra.notaFiscal.sequencial, "
                        + "e.compraProduto.compra.notaFiscal.chave, e.compraProduto.compra.notaFiscal.numeroNotaFiscal, e.compraProduto.compra.notaFiscal.dataHoraEmissao";
        public NotaFiscalProdutoDTO(Long sequencial, Integer quantidade, Double valor, String xmlDetalheCompra, Long sequencialNotaFiscal, String chaveNotaFiscal, Long numeroNotaFiscal,
                        Date dataHoraEmissaoNotaFiscal, Long sequencialCompraProduto, Double valorCompraProduto, Long sequencialProduto, String codigoProduto, String tipoProduto,
                        Long sequencialModelo, String descricaoModelo, Long sequencialMarca, String descricaoMarca,
                        Long sequencialTributacao, String descricaoTributacao, String codigoNCM, String codigoEST, Boolean sujeitoSTTributacao,
                        String estiloProduto, Boolean sujeitoST, String descricaoProduto, String corProduto, String codigoEAN,
                        Long sequencialNotaFiscalRefenciada, String chaveNotaFiscalRefenciada, Long numeroNotaFiscalReferenciada, Date dataHoraEmissaoNotaFiscalReferenciada) {
                super();
                this.sequencial = sequencial;
                this.notaFiscalDTO = new NotaFiscalDTO(sequencialNotaFiscal, chaveNotaFiscal, numeroNotaFiscal, dataHoraEmissaoNotaFiscal);
               
                MarcaDTO marcaDTO = new MarcaDTO(sequencialMarca, descricaoMarca);
                ModeloDTO modeloDTO = new ModeloDTO(sequencialModelo, descricaoModelo, marcaDTO);
                TributacaoDTO tributacaoDTO = new TributacaoDTO(sequencialTributacao, descricaoTributacao, codigoNCM, codigoEST, sujeitoSTTributacao);
                ProdutoDTO produtoDTO = new ProdutoDTO(sequencialProduto, codigoProduto, tipoProduto, modeloDTO, estiloProduto, descricaoProduto, corProduto, codigoEAN);
                produtoDTO.setSujeitoST(sujeitoST);
                produtoDTO.setTributacaoDTO(tributacaoDTO);
                NotaFiscalDTO notaFiscalDTO = new NotaFiscalDTO(sequencialNotaFiscalRefenciada, chaveNotaFiscalRefenciada, numeroNotaFiscalReferenciada, dataHoraEmissaoNotaFiscalReferenciada);
                CompraDTO compraDTO = new CompraDTO();
                compraDTO.setNotaFiscalDTO(notaFiscalDTO);
                this.compraProdutoDTO = new CompraProdutoDTO(sequencialCompraProduto, compraDTO, produtoDTO, valorCompraProduto);
                this.quantidade = quantidade;
                this.valor = valor;
                this.xmlDetalheCompra = xmlDetalheCompra;
        }
       
        /*
        public static String CONSULTA_DTO_SIMPLES = "e.sequencial, e.notaFiscal.sequencial, e.produto.sequencial, "
                        + "e.quantidade";
        public NotaFiscalProdutoDTO(Long sequencial, Long sequencialNotaFiscal, Long sequencialProduto, Integer quantidade) {
                super();
                this.sequencial = sequencial;
                this.quantidade = quantidade;
        }
       
        StringBuilder descricaoCompleta = new StringBuilder();
                if (this.getTipo().equals(TipoProduto.CAPA.getValor())) {
                        descricaoCompleta.append("CAPA");
                }
                if (!this.getTipo().equals(TipoProduto.ACESSORIO.getValor())) {
                        descricaoCompleta.append(" ");
                        descricaoCompleta.append(this.getDescricaoDoModelo());
                }
                if (VerificadorUtil.naoEstaNuloOuVazio(this.getEstilo())) {
                        descricaoCompleta.append(" ");
                        descricaoCompleta.append(this.getDescricaoDoEstilo());
                }
                descricaoCompleta.append(" ");
                if (this.getDescricao().length() > 50) {
                        descricaoCompleta.append(this.getDescricao().substring(0, 50));
                } else {
                        descricaoCompleta.append(this.getDescricao());
                }
                if (VerificadorUtil.naoEstaNuloOuVazio(this.getCor())) {
                        descricaoCompleta.append(" (");
                        descricaoCompleta.append(this.getDescricaoDaCor());
                        descricaoCompleta.append(")");
                }
                if (VerificadorUtil.naoEstaNuloOuVazio(observacaoNotaFiscal)) {
                        descricaoCompleta.append(" ");
                        descricaoCompleta.append(observacaoNotaFiscal);
                }
                return descricaoCompleta.toString().trim();
        */


        public Long getSequencial() {
                return sequencial;
        }
        public void setSequencial(Long sequencial) {
                this.sequencial = sequencial;
        }

        public Integer getQuantidade() {
                return quantidade;
        }
        public void setQuantidade(Integer quantidade) {
                this.quantidade = quantidade;
        }
       
        public Double getValor() {
                return valor;
        }
        public void setValor(Double valor) {
                this.valor = valor;
        }
       
        public String getXmlDetalheCompra() {
                return xmlDetalheCompra;
        }
        public void setXmlDetalheCompra(String xmlDetalheCompra) {
                this.xmlDetalheCompra = xmlDetalheCompra;
        }
       
        public NotaFiscalDTO getNotaFiscalDTO() {
                return notaFiscalDTO;
        }
        public void setNotaFiscalDTO(NotaFiscalDTO notaFiscalDTO) {
                this.notaFiscalDTO = notaFiscalDTO;
        }
       
        public CompraProdutoDTO getCompraProdutoDTO() {
                return compraProdutoDTO;
        }
        public void setCompraProdutoDTO(CompraProdutoDTO compraProdutoDTO) {
                this.compraProdutoDTO = compraProdutoDTO;
        }

}