예제 #1
0
        private Transporte GetTransporte(Retorno.TNFe nfe)
        {
            var transportadoraNFe = nfe.infNFe.transp.transporta;

            if (transportadoraNFe != null)
            {
                var uf = TUfConversor.ToSiglaUf((TUf)(int)transportadoraNFe.UF);

                var modelo         = nfe.infNFe.ide.mod == Retorno.TMod.Item55 ? Modelo.Modelo55 : Modelo.Modelo65;
                var transportadora = new Transportadora(transportadoraNFe.Item, transportadoraNFe.xEnder,
                                                        transportadoraNFe.IE, transportadoraNFe.xMun, uf, transportadoraNFe.xNome);

                if (nfe.infNFe.transp.Items.Length <= 0)
                {
                    return(new Transporte(modelo, transportadora, null));
                }
                var veiculoNFe = (Retorno.TVeiculo)nfe.infNFe.transp.Items[0];
                var veiculo    = new Veiculo(veiculoNFe.placa, TUfConversor.ToSiglaUf(veiculoNFe.UF));

                return(new Transporte(modelo, transportadora, veiculo));
            }

            return(nfe.infNFe.transp.modFrete == Retorno.TNFeInfNFeTranspModFrete.Item9
                ? new Transporte(Modelo.Modelo65, null, null)
                : null);
        }
예제 #2
0
 public void Should_Return_Correct_String_Value_When_Enum_Is_Valid_Other_Type(string expected, Retorno.TUf entry)
 {
     Assert.Equal(expected, TUfConversor.ToSiglaUf(entry));
 }