Package systextil.integracao.dao
Class NotasDao
java.lang.Object
systextil.integracao.dao.GenericDao
systextil.integracao.dao.NotasDao
DAO para Notas Fiscais (FLNF_010) - script_sql 257518-004.
FLNF_010: COD_EMPRESA, DOCUMENTO, SERIE, DATA_EMISSAO, DATA_LEITURA, EMISSOR, STATUS.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidatualizarStatus(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, String novoStatus) buscarDescricaoEtapa(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int codEtapa) static StringbuscarNomeFornecedor(br.com.intersys.systextil.connection.AppConnection conn, Nota nota) buscarNota(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) calcularProximoStatusFluxoPublic(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) Calcula o proximo STATUS do fluxo (etapas) com base: - no fornecedor emissor da FLNF_010 (coluna EMISSOR) - no FORNECEDOR do roteiro em FLNF_020 - nas etapas vinculadas em FLNF_025/FLNF_030 (usa a descricao da primeira etapa).listarEtapasPermitidas(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, String usuario) Lista etapas permitidas para o usuario com base em FLNF_040/045.listarItensPendentesFlnf015(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) Lista itens da FLNF_015 com STATUS = 'pendente' ou 'desligado'.listarItensPorChaveAcesso(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, String chaveAcesso) Lista itens da nota fiscal (I_OBRF_015) filtrados por chave de acesso.listarItensPorDocumentoSerie(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) Lista itens da nota fiscal (I_OBRF_015) filtrados por documento e serie.listarNotas(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, String status) listarNotasComFiltroEmpresa(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresaLogada, String usuario, String status) Lista notas fiscais com filtro de empresa baseado em permissao do usuario Se usuario tem permissao multi-empresa, retorna de todas as empresas Caso contrario, filtra apenas pela empresa logadavoidmoverNota(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, int codEtapa, String usuario, String origem, Mdi mdi) Move nota para etapa especifica (se usuario tem permissao).moverNotasLote(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, List<MovimentacaoLoteDTO.NotaInfo> notas, int codEtapa, String usuario, String origem, Mdi mdi) Move multiplas notas em lote.obterProximoStatusAposAtual(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, String statusAtual) Obtem o proximo STATUS do fluxo apos o status atual (ex.: apos CONFERENCIA -> proxima etapa do roteiro).voidregistrarEntrada(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, Date dataEntrada, String transportadora, String placaCaminhao, String placaReboque, String motorista, String chaveAcesso, String observacao, Mdi mdi) Registro de entrada (portaria): grava FLNF_016 e atualiza STATUS em FLNF_010/FLNF_015.registrarEntradaLote(br.com.intersys.systextil.connection.AppConnection conn, List<RegistroEntradaLoteDTO.NotaInfo> notas, Date dataEntrada, String transportadora, String placaCaminhao, String placaReboque, String motorista, String observacao, String usuario, Mdi mdi) Registra entrada de multiplas notas fiscais em lote Retorna lista de sucessos e falhasstatic booleanverificarPermissaoMultiEmpresa(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, String usuario) Verifica se usuario tem permissao para visualizar notas de todas as empresas Consulta a tabela OPER_550 (programa FLNF_F001, subprograma multi_empresa)Methods inherited from class systextil.integracao.dao.GenericDao
atlzUltimoPreco, atualizaRequisicaoAumox, buscaNotaOrigPorDesc, calcularPrecoCustoItem, deletaNota, deleteCpag010, deleteICpag010, deleteIObrf010, deleteIObrf015, deleteIObrf015OrigXml, deleteIObrf016, deleteObrf010, deleteObrf015, deleteObrf016, encontraFatorConversao, excluiIpiIcmsOutros, exists, exists, existsCfopConsignado, existsCfopDevolVenda, existsCfopRemessaIndus, existsCfopRetornoIndus, existsClassificFiscal, existsExcecaoCfopAliquotaIcms, existsObrf010, existsPedidoCompra, getAviamentoProd, getBloqueiaTitulo, getCaracterSerie, getChavePix, getCodContFornecedor, getCodEmpresa, getCodMatriz, getCodProdBasi010, getCodProdExcecaoCfopAliquotaIcms, getCodProdutoSupr060Pedido, getCodProdutoSupr060SeqPedido, getCondPagtoCompra, getCondPgtoPedido, getConsideraDupXml, getConsideraParametroCompras, getDtPeriodoEstq, getEmiteDuplicata, getEspecie, getFatorConvBasi200, getFatorConvSupr060, getFirstPedido, getFlagFechamento, getGeraContabil, getGeraContabil, getHistCanc, getHistContabil, getImportaEanXml, getIpi, getNatOperOper279, getNatOperProdSped, getNaturezaExcecaoCfopAliquotaIcms, getNomeFornecedor, getNumContabNf, getOperCalcSupr060, getOptanteSimples, getPedidoCompra, getPlanoDeContas, getPortadorPedido, getQtdeVendidaRecur, getSaldoDevolvido, getSaldoDevolvidoForm, getSaldoDevolvidoRecur, getStatusNf, getSumValorIpi, getTipoChavePix, getTipoPagamentoForn, getTpProdSped, getTpProdutoSped, getTpProdutoSpedEmpresa, getTransacaoNatOper, getUsuarioDigitacaoCapa, getValorMaximoPagamento, insereObrf074, insertObrf275, insertObrf275Recur, insertSupr060, isDivergencia, isItemPedSeq, isLiberado, isOper281, isOper281, isPosicaoDuplic, itemComNotaOrigem, itemMaisDeUmaNota, listCfopConsignado, listCfopDevolVenda, listCodProdutoSupr060, listExistsClassificFiscal, listNaturezasDeOperacao, listSaldosDevolvidos, listTransacoesAtualizaEstoque, removeAcentos, sqlBuscaNotaOrigPorEan, sqlBuscaNotaOrigPorSKU, sqlItemIndustrial, sqlItemNfNaoRelacionada, sqlItemNfProdRefer, sqlItemNfProdReferSemCd, sqlItemNfSemProdRefer, sqlNfItemDevolSemNf, sqlNfItemDevolSemNfSemCd, sqlNfSemProd, sqlSaldoItemNfSemProdRefer, updateFlagItens, updateICpag010FlagImportacao, updateICpag010NumContabil, updateIObrf010FlagImportacao, updateIObrf015FlagImportacao, updateIObrf016FlagImportacao, updateNotaOrigem, updateNumContabil, updateSitBloqueio, usaNotaReferenciada, usaReferenciaFornecedor
-
Constructor Details
-
NotasDao
public NotasDao()
-
-
Method Details
-
listarNotas
public List<NotaFiscalDTO> listarNotas(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, String status) throws Exception - Throws:
Exception
-
buscarNomeFornecedor
-
buscarNota
public NotaFiscalDTO buscarNota(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) throws Exception - Throws:
Exception
-
atualizarStatus
public void atualizarStatus(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, String novoStatus) throws Exception - Throws:
Exception
-
verificarPermissaoMultiEmpresa
public static boolean verificarPermissaoMultiEmpresa(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, String usuario) throws Exception Verifica se usuario tem permissao para visualizar notas de todas as empresas Consulta a tabela OPER_550 (programa FLNF_F001, subprograma multi_empresa)- Throws:
Exception
-
listarNotasComFiltroEmpresa
public List<NotaFiscalDTO> listarNotasComFiltroEmpresa(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresaLogada, String usuario, String status) throws Exception Lista notas fiscais com filtro de empresa baseado em permissao do usuario Se usuario tem permissao multi-empresa, retorna de todas as empresas Caso contrario, filtra apenas pela empresa logada- Throws:
Exception
-
registrarEntrada
public void registrarEntrada(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, Date dataEntrada, String transportadora, String placaCaminhao, String placaReboque, String motorista, String chaveAcesso, String observacao, Mdi mdi) throws Exception Registro de entrada (portaria): grava FLNF_016 e atualiza STATUS em FLNF_010/FLNF_015. FLNF_016: COD_EMPRESA, CHAVE_ACESSO, DOCUMENTO, SERIE, DATA_ENTRADA, TRANSPORTADORA, PLACA_CAMINHAO, PLACA_REBOQUE, MOTORISTA, OBSERVACAO, USUARIO. CHAVE_ACESSO passa a receber a chave real da NF-e, quando informada.- Throws:
Exception
-
calcularProximoStatusFluxoPublic
public String calcularProximoStatusFluxoPublic(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) throws Exception Calcula o proximo STATUS do fluxo (etapas) com base: - no fornecedor emissor da FLNF_010 (coluna EMISSOR) - no FORNECEDOR do roteiro em FLNF_020 - nas etapas vinculadas em FLNF_025/FLNF_030 (usa a descricao da primeira etapa). Regra: - tenta achar roteiro com FORNECEDOR = emissor; - se nao encontrar, pega roteiro com FORNECEDOR nula/vazia; - se nao achar roteiro ou etapa, retorna "CONFERENCIA".- Throws:
Exception
-
obterProximoStatusAposAtual
public String obterProximoStatusAposAtual(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, String statusAtual) throws Exception Obtem o proximo STATUS do fluxo apos o status atual (ex.: apos CONFERENCIA -> proxima etapa do roteiro). Usado ao concluir conferencia: avanca para a proxima etapa do fluxo com base no fornecedor da nota (FLNF_010.EMISSOR) e no roteiro cadastrado em FLNF_020 (fornecedor) e etapas em FLNF_025/FLNF_030.- Throws:
Exception
-
listarItensPendentesFlnf015
public List<InconsistenciaPendenteDTO> listarItensPendentesFlnf015(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) throws Exception Lista itens da FLNF_015 com STATUS = 'pendente' ou 'desligado'. Usa somente FLNF_015 para garantir consistencia com o estado atual da nota. Usado pelo Kanban para exibir os problemas pendentes (apenas visualizacao). FLNF_015: COD_EMPRESA, DOCUMENTO, SERIE, EMISSOR, VALIDACAO, STATUS, USUARIO, DATA_VLD (script 257518-005).- Throws:
Exception
-
listarItensPorChaveAcesso
public List<ItemConferenciaDTO> listarItensPorChaveAcesso(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, String chaveAcesso) throws Exception Lista itens da nota fiscal (I_OBRF_015) filtrados por chave de acesso. Usado no modal de conferencia de itens.- Throws:
Exception
-
listarItensPorDocumentoSerie
public List<ItemConferenciaDTO> listarItensPorDocumentoSerie(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie) throws Exception Lista itens da nota fiscal (I_OBRF_015) filtrados por documento e serie. Usado no modal de conferencia de itens (fallback quando nao ha chave de acesso).- Throws:
Exception
-
buscarDescricaoEtapa
public String buscarDescricaoEtapa(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int codEtapa) -
registrarEntradaLote
public RegistroEntradaLoteDTO.RegistroLoteResponse registrarEntradaLote(br.com.intersys.systextil.connection.AppConnection conn, List<RegistroEntradaLoteDTO.NotaInfo> notas, Date dataEntrada, String transportadora, String placaCaminhao, String placaReboque, String motorista, String observacao, String usuario, Mdi mdi) throws Exception Registra entrada de multiplas notas fiscais em lote Retorna lista de sucessos e falhas- Throws:
Exception
-
listarEtapasPermitidas
public List<EtapaDTO> listarEtapasPermitidas(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, String usuario) throws Exception Lista etapas permitidas para o usuario com base em FLNF_040/045. Retorna apenas etapas que o usuario tem permissao (liberador) e que fazem parte do fluxo do fornecedor da nota.- Throws:
Exception
-
moverNota
public void moverNota(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, int documento, int serie, int codEtapa, String usuario, String origem, Mdi mdi) throws Exception Move nota para etapa especifica (se usuario tem permissao). Registra log em FLNF_100.- Parameters:
origem- Nome da tela/aba de origem (ex: "Monitor", "Portaria", "Conferencia")- Throws:
Exception
-
moverNotasLote
public MovimentacaoLoteResponse moverNotasLote(br.com.intersys.systextil.connection.AppConnection conn, int codEmpresa, List<MovimentacaoLoteDTO.NotaInfo> notas, int codEtapa, String usuario, String origem, Mdi mdi) throws Exception Move multiplas notas em lote.- Parameters:
origem- Nome da tela/aba de origem (ex: "Monitor", "Kanban")- Throws:
Exception
-