Example #1
0
        /// <summary>
        /// Permite adicionar uma Viagem em uma Operação de Transporte existente, desde que a mesma
        /// não tenha ultrapassado o prazo do fim da viagem, esteja cancelada ou encerrada
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public PefAdicionarViagemResult AdicionarViagemPef(PefAdicionarViagemRequest request)
        {
            var    saveOptions = ACBr.Net.DFe.Core.Common.DFeSaveOptions.DisableFormatting | ACBr.Net.DFe.Core.Common.DFeSaveOptions.OmitDeclaration | ACBr.Net.DFe.Core.Common.DFeSaveOptions.RemoveSpaces;
            string xmlEnvio    = request.GetXml(saveOptions).Trim();
            string xmlresposta = Request(MetodoWebService.PefAdicionarViagem, xmlEnvio);

            var response = PefAdicionarViagemResponse.Load(xmlresposta);

            return(response.Result);
        }
Example #2
0
        private static bool AdicionarViagemPef(Client client)
        {
            var pef = new PefAdicionarViagemRequest(client)
            {
                NaoAdicionarParcialmente    = false,
                CodigoIdentificacaoOperacao = "0",
                Viagens = new PefAdicionarViagemViagens()
                {
                    CodigoMunicipioDestino = 3510123,
                    CodigoMunicipioOrigem  = 3510123,
                    CepOrigem       = "17300000",
                    CepDestino      = "17300000",
                    DocumentoViagem = "Documento da viagem aqui",
                    NotasFiscais    = new PefAdicionarViagemNotasFiscais()
                    {
                        CodigoNcmNaturezaCarga = "8471",
                        Data = DateTime.Now,
                        DescricaoMercadoria = "Descrição da mercadoria aqui",
                        Numero = "0",
                        QuantidadeMercadoriaNoEmbarque = 0,
                        Serie       = "1",
                        TipoCalculo = TipoCalculoQuebraFrete.SemQuebra,
                        ToleranciaDePerdaDeMercadoria = new PefAdicionarOperacaoTransporteToleranciaDePerdaDeMercadoria()
                        {
                            Tipo  = TipoToleranciaDePerda.Nenhum,
                            Valor = 0
                        },
                        UnidadeMedidaMercadoria          = UnidadeMedidaDaMercadoria.Kg,
                        ValorMercadoriaPorUnidade        = 0,
                        ValorFretePorUnidadeDeMercadoria = 0,
                        ValorTotal = 0
                    },
                    Valores = new PefAdicionarViagemValores()
                    {
                        Combustivel = 0,
                        JustificativaOutrosCreditos = "Justificativa aqui",
                        JustificativaOutrosDebitos  = "Justificativa aqui",
                        OutrosCreditos    = 0,
                        OutroDebitos      = 0,
                        Pedagio           = 0,
                        Seguro            = 0,
                        TotalAdiantamento = 0,
                        TotalQuitacao     = 0,
                        TotalOperacao     = 0,
                        TotalViagem       = 0
                    },
                    Pagamentos = new PefAdicionarViagemPagamentos()
                    {
                        Categoria               = CategoriaPagamento.Adiantamento,
                        DataLiberacao           = DateTime.Now,
                        Documento               = "Documento aqui",
                        IdPagamentoCliente      = "",
                        InformacaoAdicional     = "",
                        CnpjFilialAbastecimento = "01234567000189",
                        InformacoesBancarias    = new PefAdicionarPagamentoInformacoesBancarias()
                        {
                            Agencia             = "1395",
                            Conta               = "256398",
                            InstituicaoBancaria = "Bradesco"
                        },
                        Tipo  = TipoPagamento.eFRETE,
                        Valor = 0
                    }
                }
            };

            var resposta = client.AdicionarViagemPef(pef);

            if (!resposta.Sucesso)
            {
                throw new ArgumentException($"{resposta.Excecao.Codigo} - {resposta.Excecao.Mensagem}");
            }

            return(resposta.Sucesso);
        }