Class MLBRDocFiscal

All Implemented Interfaces:
Serializable, Cloneable, Comparator<Object>, I_LBR_DocFiscal, I_Persistent, DocAction, DocOptions, Evaluatee

public class MLBRDocFiscal extends X_LBR_DocFiscal implements DocAction, DocOptions
Header do Documento Fiscal
Version:
$Id: MLBRDocFiscal.java, 2018/01/10 12:21:12 muriloht
  • Refactor JAXB e Melhorias
  • Author:
    Murilo H. Torquato (devCoffee, www.devcoffee.com.br), muriloht
    See Also:
    • Field Details

    • Constructor Details

    • Method Details

      • getNFe

        public static MLBRDocFiscal[] getNFe(int C_Invoice_ID, String trxName)
        Obter Nota Fiscal vinculada a uma fatura
        Parameters:
        ctx -
        C_Invoice_ID -
        trxName -
        Returns:
      • geLBRDocFiscal

        public static MLBRDocFiscal geLBRDocFiscal(int p_M_InOut_ID, boolean nfImportada, String trxName)
        Obtem um DocumentoFiscal associado a um recebimento/expedicao de material
        Parameters:
        p_M_InOut_ID -
        Returns:
      • setC_DocTypeTarget_ID

        public void setC_DocTypeTarget_ID()
        Ajusta o Tipo de Documento correto para a NF de acordo com a Organização ou pela Fatura
      • setInvoice

        public void setInvoice(MInvoice inv, boolean force) throws LBRDocException
        Set Invoice
        Parameters:
        inv -
        Throws:
        LBRDocException
        Exception
      • setOrder

        public void setOrder(MOrder order) throws LBRDocException
        Set Order
        Parameters:
        order -
        Throws:
        LBRDocException
        Exception
      • setInOut

        public void setInOut(MInOut inout, boolean force) throws LBRDocException
        Set InOut
        Parameters:
        inout -
        Throws:
        LBRDocException
        Exception
      • setMovement

        public void setMovement(MMovement movement, boolean isSOTrx, boolean force) throws LBRDocException
        Set Movement
        Parameters:
        movement -
        force -
        Throws:
        LBRDocException
      • getIdentificadorLocalDestino

        public String getIdentificadorLocalDestino(int C_BPartner_Location_ID, MOrgInfo orgInfo)
        Com base nas informações da Organização e PN, Define O idenficador do Loca de Destino da Operação.
        Parameters:
        C_BPartner_Location_ID -
        orgInfo -
        Returns:
      • updateHeader

        protected void updateHeader()
      • setC_Invoice_ID

        public void setC_Invoice_ID(int p_C_Invoice_ID)
        Set Invoice.
        Specified by:
        setC_Invoice_ID in interface I_LBR_DocFiscal
        Overrides:
        setC_Invoice_ID in class X_LBR_DocFiscal
        Parameters:
        C_Invoice_ID - Invoice Identifier
      • addNFref

        public void addNFref(MLBRDocFiscal ref, String infAdCpl)
        Adicionar um Documento como NF-e Referenciada q uando o documento está lançado no sistema (temos ID)
        Parameters:
        ref - documento fiscal referenciado
        infAdCpl - texto para adicionar às informações complementares
      • addNFref

        public void addNFref(String chNF)
        Adicionar um Documento como NF-e Referenciada quando o documento NÃO está lançado no sistema (não temos ID)
        Parameters:
        chNF - chave do documento fiscal referenciado
      • isNFe

        public boolean isNFe()
        Documento Fiscal e uma NF-e
        Returns:
      • isNFCe

        public boolean isNFCe()
        Documento Fiscal e uma NF-e
        Returns:
      • isCFe

        public boolean isCFe()
      • setInfoRetira

        public void setInfoRetira(MBPartnerLocation loc)
        Informações do Local de Retira
      • setInfoEntrega

        public void setInfoEntrega(MBPartnerLocation loc)
        Informacoes do Local de Entrega
      • setOrgAsEmitOrDest

        public void setOrgAsEmitOrDest(int p_AD_Org_Trx_ID, int p_OrgST_ID)
        Seta informções da organização mediante o documento ser de emissão propria ou nao
        Parameters:
        AD_OrgTrx_ID - Performing or initiating organization
      • setEnderecoEmitente

        public void setEnderecoEmitente(int C_Location_ID)
        Set Endereco do Emitente
        Parameters:
        c_Location_ID -
      • setMunicipioEnderecoEmitente

        public void setMunicipioEnderecoEmitente(int C_City_ID)
        Set Informacoes do Municipio do Emitente
        Parameters:
        C_City_ID -
      • setBPAsEmitOrDest

        public void setBPAsEmitOrDest(int C_BPartner_ID)
        Define o PN como Emitente ou Destinatário Mediante documento proprio ou não
        Parameters:
        Dest_BPartner_ID - Parceiro Destinatario
      • setEnderecoDestinatario

        public void setEnderecoDestinatario(int C_Location_ID)
        Set Endereco Destinatario.
        Parameters:
        C_Location_ID - Endereco Destinatario
      • setUFPaisEnderecoDestinatario

        public void setUFPaisEnderecoDestinatario(MRegion region, MCountry bpcountry)
        Set Informacoes da Regiao do Destinatario
        Parameters:
        region -
      • setUFPaisEnderecoRetirada

        public void setUFPaisEnderecoRetirada(MRegion region, MCountry bpcountry)
        Set Informacoes da Regiao de Retirada
        Parameters:
        region -
      • setUFPaisEnderecoEntrega

        public void setUFPaisEnderecoEntrega(MRegion region, MCountry bpcountry)
        Set Informacoes da Regiao de Entrega
        Parameters:
        region -
      • setMunicipioEnderecoDestintario

        public void setMunicipioEnderecoDestintario(int p_C_City_ID)
        Set Informacoes do Municipio do Destinatario
        Parameters:
        p_C_City_ID -
      • setMunicipoRetirada

        public void setMunicipoRetirada(int C_City_ID)
        Set Informacoes do Municipio de Retirada
        Parameters:
        C_City_ID -
      • setMunicipioEntrega

        public void setMunicipioEntrega(int C_City_ID)
        Set Informacoes do Municipio de Entrega
        Parameters:
        C_City_ID -
      • beforeSave

        protected boolean beforeSave(boolean newRecord)
        Before Save
        Overrides:
        beforeSave in class PO
        Parameters:
        newRecord - new
        Returns:
        true
      • afterSave

        protected boolean afterSave(boolean newRecord, boolean success)
        After Save
        Overrides:
        afterSave in class PO
        Parameters:
        newRecord - new
        success - success
        Returns:
        success
      • beforeDelete

        protected boolean beforeDelete()
        Before Delete
        Overrides:
        beforeDelete in class PO
        Returns:
        true
      • afterDelete

        protected boolean afterDelete(boolean success)
        After Delete
        Overrides:
        afterDelete in class PO
        Parameters:
        success -
        Returns:
        deleted
      • getLines

        public Query getLines(String tableName, String orderBy)
        getLines
        Parameters:
        String - tableName
        String - orderBy or null
        Returns:
        Query query
      • getItemLines

        public MLBRDocFiscalLine[] getItemLines(String orderBy)
        Obter Itens do documento fiscal
        Parameters:
        String - orderBy or null
        Returns:
        MLBRDocFiscalLine[] lines
      • getCobrancas

        public MLBRDocFiscalCobrDup[] getCobrancas(String orderBy)
        Obter dados da cobranca
        Parameters:
        String - orderBy or null
        Returns:
        MLBRDocFiscalLine[] lines
      • getDetPag

        public MLBRDocFiscalDetPag[] getDetPag(String orderBy)
        Obter dados de detalhes de pagamento
        Parameters:
        String - orderBy or null
        Returns:
        MLBRDocFiscalLine[] lines
      • getVolumeLines

        public MLBRDocFiscalTranspVol[] getVolumeLines(String orderBy)
        Obter dados de volumes
        Parameters:
        String - orderBy or null
        Returns:
        MLBRDocFiscalLine[] lines
      • getNFRef

        public MLBRDocFiscalRef[] getNFRef(String orderBy)
        Obter Notas Fiscais Referenciadas
        Parameters:
        String - orderBy or null
        Returns:
        MLBRDocFiscalRef[] nfs
      • processIt

        public boolean processIt(String processAction)
        Process document
        Specified by:
        processIt in interface DocAction
        Parameters:
        processAction - document action
        Returns:
        true if performed
      • unlockIt

        public boolean unlockIt()
        Unlock Document.
        Specified by:
        unlockIt in interface DocAction
        Returns:
        true if success
      • invalidateIt

        public boolean invalidateIt()
        Description copied from interface: DocAction
        Invalidate Document
        Specified by:
        invalidateIt in interface DocAction
        Returns:
        true if success
      • getAvailableDate

        public Timestamp getAvailableDate()
      • prepareIt

        public String prepareIt()
        Description copied from interface: DocAction
        Prepare Document
        Specified by:
        prepareIt in interface DocAction
        Returns:
        new status (In Progress or Invalid)
      • approveIt

        public boolean approveIt()
        Description copied from interface: DocAction
        Approve Document
        Specified by:
        approveIt in interface DocAction
        Returns:
        true if success
      • rejectIt

        public boolean rejectIt()
        Description copied from interface: DocAction
        Reject Approval
        Specified by:
        rejectIt in interface DocAction
        Returns:
        true if success
      • completeIt

        public String completeIt()
        Description copied from interface: DocAction
        Complete Document
        Specified by:
        completeIt in interface DocAction
        Returns:
        new status (Complete, In Progress, Invalid, Waiting ..)
      • closeIt

        public boolean closeIt()
        Description copied from interface: DocAction
        Close Document
        Specified by:
        closeIt in interface DocAction
        Returns:
        true if success
      • reverseCorrectIt

        public boolean reverseCorrectIt()
        Description copied from interface: DocAction
        Reverse Correction
        Specified by:
        reverseCorrectIt in interface DocAction
        Returns:
        true if success
      • reverseAccrualIt

        public boolean reverseAccrualIt()
        Description copied from interface: DocAction
        Reverse Accrual
        Specified by:
        reverseAccrualIt in interface DocAction
        Returns:
        true if success
      • reActivateIt

        public boolean reActivateIt()
        Description copied from interface: DocAction
        Re-activate
        Specified by:
        reActivateIt in interface DocAction
        Returns:
        true if success
      • getSummary

        public String getSummary()
        Description copied from interface: DocAction
        Get Summary
        Specified by:
        getSummary in interface DocAction
        Returns:
        Summary of Document
      • getDocumentInfo

        public String getDocumentInfo()
        Description copied from interface: DocAction
        Get Document Info
        Specified by:
        getDocumentInfo in interface DocAction
        Returns:
        Type and Document No
      • createPDF

        public File createPDF()
        Description copied from interface: DocAction
        Create PDF
        Specified by:
        createPDF in interface DocAction
        Returns:
        file
      • getProcessMsg

        public String getProcessMsg()
        Description copied from interface: DocAction
        Get Process Message
        Specified by:
        getProcessMsg in interface DocAction
        Returns:
        clear text message
      • getDoc_User_ID

        public int getDoc_User_ID()
        Description copied from interface: DocAction
        Get Document Owner
        Specified by:
        getDoc_User_ID in interface DocAction
        Returns:
        AD_User_ID
      • getC_Currency_ID

        public int getC_Currency_ID()
        Description copied from class: X_LBR_DocFiscal
        Get Currency.
        Specified by:
        getC_Currency_ID in interface DocAction
        Specified by:
        getC_Currency_ID in interface I_LBR_DocFiscal
        Overrides:
        getC_Currency_ID in class X_LBR_DocFiscal
        Returns:
        The Currency for this record
      • getApprovalAmt

        public BigDecimal getApprovalAmt()
        Description copied from interface: DocAction
        Get Document Approval Amount
        Specified by:
        getApprovalAmt in interface DocAction
        Returns:
        amount
      • isReceipt

        public boolean isReceipt()
        Verifica se eh uma NF de entrada ou saida Retorna True caso tpNF = 0.
      • getTOLERANCIA

        public BigDecimal getTOLERANCIA()
        Obter tolerancia permitida na comparacao de valores numericos
        Returns:
      • isCreditMemo

        public boolean isCreditMemo()
      • authorizeNFe

        public static String authorizeNFe(br.inf.portalfiscal.nfe.schema.retconssitnfe.TProtNFe.InfProt infProt, String trxName)
        Método utilizado para a consulta da situação (protocolo) da NF-e.
      • authorizeNFe

        public static String authorizeNFe(br.inf.portalfiscal.nfe.schema.retconsrecinfe.TProtNFe.InfProt infProt, String trxName)
        Método utilizado para o retorno da consulta do recebimento da NF-e.
      • setlbr_NFeStatus

        public void setlbr_NFeStatus(String lbr_NFeStatus)
        Set NFe Status.
        Specified by:
        setlbr_NFeStatus in interface I_LBR_DocFiscal
        Overrides:
        setlbr_NFeStatus in class X_LBR_DocFiscal
        Parameters:
        lbr_NFeStatus - Status of NFe
      • getNFe

        public static MLBRDocFiscal getNFe(String NFeID, String trxName)
      • getDocumentNo

        public static String getDocumentNo(int LBR_DocFiscal_ID, String trxName)
      • podeInserirNoLote

        public boolean podeInserirNoLote()
      • setStatusNFe

        public void setStatusNFe(br.inf.portalfiscal.nfe.schema.retconssitnfe.TRetConsSitNFe retConsNFe) throws ParseException
        Throws:
        ParseException
      • setIsPrinted

        public void setIsPrinted(boolean isPrinted)
        Set Printed.
        Specified by:
        setIsPrinted in interface I_LBR_DocFiscal
        Overrides:
        setIsPrinted in class X_LBR_DocFiscal
        Parameters:
        IsPrinted - Indicates if this document / line is printed
      • setClientOrg

        public void setClientOrg(PO po)
        Overwrite Client Org if different
        Overrides:
        setClientOrg in class PO
        Parameters:
        po - persistent object
      • setIsCancelled

        public void setIsCancelled(MLBREventoNFe eventoNFe, br.inf.portalfiscal.nfe.schema.enveventocancnfe.TRetEvento.InfEvento infReturn)
      • appendNFeDesc

        public void appendNFeDesc(String nfeDesc)
        Adiciona uma novo texto antes da descrição atual
        Parameters:
        nfeDesc -
      • voidIt

        public boolean voidIt()
        Description copied from interface: DocAction
        Void Document
        Specified by:
        voidIt in interface DocAction
        Returns:
        true if success
      • deleteLines

        public boolean deleteLines()
        Delete NF Lines
        Returns:
      • deleteDadosCobranca

        public boolean deleteDadosCobranca()
        Delete Dados da Cobranca
        Returns:
      • deleteNFRef

        public boolean deleteNFRef()
        Delete Documentos Referenciados
        Returns:
      • deleteVolumesRemessas

        public boolean deleteVolumesRemessas()
        Delete Volumes e Remessas
        Returns:
      • deleteLacresDosVolumes

        public boolean deleteLacresDosVolumes()
        Delete Lacres dos Volumes
        Returns:
      • deleteAll

        public boolean deleteAll()
      • getCF

        public static MLBRDocFiscal[] getCF(int AD_Org_ID, int documentNo, String trxName)
        Obter Cupom Fiscal
        Parameters:
        ctx -
        C_Invoice_ID -
        trxName -
        Returns:
      • getLBR_DocFiscal_ID

        public static int getLBR_DocFiscal_ID(String DocumentNo, boolean IsSOTrx, String trx)
        Obter ID de documento Fiscal à partir do Número do Documento
        Parameters:
        DocumentNo -
        IsSOTrx -
        trx -
        Returns:
      • getLines

        public MLBRDocFiscalLine[] getLines(String orderBy)
        getLines
        Parameters:
        String - orderBy or null
        Returns:
        MLBRDocFiscalLine[] lines
      • getLines

        public MLBRDocFiscalLine[] getLines(Object[] parameters, String whereClause, String orderBy)
        getLines
        Parameters:
        Object - [] parameters
        String - whereClause
        String - orderBy
        Returns:
        MLBRDocFiscalLine[] lines
      • isComplete

        public boolean isComplete()
        Document Status is Complete or Closed
        Returns:
        true if CO, CL or RE
      • getForSped

        public static List<MLBRDocFiscal> getForSped(Properties ctx, Timestamp DateFrom, Timestamp DateTo, Integer[] orgs_ID, Boolean IsSOTrx, String trxName, Boolean efd) throws Exception
        Retornar Documentos Fiscais de acordo com os parâmetros
        Parameters:
        ctx -
        DateFrom -
        DateTo -
        orgs_ID - Array com um conjunto de organizações ou NULL para todas
        IsSOTrx - Transação de Venda/Compra ou NULL para amabas
        TrxName - transação do BD
        Returns:
        Throws:
        Exception
      • setShipper

        public void setShipper(MShipper shipper)
        Dados da Transportadora
        Parameters:
        shipper -
      • customizeValidActions

        public int customizeValidActions(String docStatus, Object processing, String orderType, String isSOTrx, int AD_Table_ID, String[] docAction, String[] options, int index)
        Description copied from interface: DocOptions
        Customize Valid Actions
        Specified by:
        customizeValidActions in interface DocOptions
        Returns:
        Number of valid options
      • getautXML

        public List<MLBRDocFiscalautXML> getautXML()
        Retorna uma lista com os autorizados a realizar o download do XML
        Returns:
      • getXML

        public File getXML()
        Retorna o Arquivo XML da NF
        Returns:
      • setAproxTaxIBPT

        public void setAproxTaxIBPT(boolean isSummary)
        Colocar no campo de descrição os valor aproximados de impostos de acordo com o manual do IBPT
      • addInfAdCPl

        public void addInfAdCPl(String msg)
        Adiciona novas mensagens complementares ao documento
        Parameters:
        msg -
      • addpCredSN

        public void addpCredSN(BigDecimal valor, BigDecimal aliquota, BigDecimal base)
      • getDocStatusName

        public String getDocStatusName()
        Get Document Status
        Returns:
        Document Status Clear Text
      • getDocFiscaisRef

        public List<MLBRDocFiscal> getDocFiscaisRef()
      • getTemplatePadrao

        public static MMailText getTemplatePadrao(int adOrgID)
        Método responsável por retornar a Template Padrão (MMailText) para o título.
        Parameters:
        adOrgID - : Deve ser informada a Organização onde deve ser feito a busca.
        Returns:
        Uma instância da MMailText caso seja encontrada.
      • setIsNotaEnviada

        public void setIsNotaEnviada(boolean isEmailEnviado)
        Atualiza status do envio da nota por email passando
        Parameters:
        isEmailEnviado -
      • getSaldoPrevistoAEnviar

        public static BigDecimal getSaldoPrevistoAEnviar(int mProductId, int adOrgId, String trxName)