Example #1
0
        private infCTeNormOs ConverterCteNormal(Documento documento)
        {
            var infCteNorm = new infCTeNormOs();

            InfPrestacaoServico(documento, infCteNorm);

            InfDocumentosReferenciados(documento, infCteNorm);

            InfSeguros(documento, infCteNorm);

            InfCteSubstituicao(documento, infCteNorm);

            InfCteComplementado(documento, infCteNorm);

            InfCteAnulacao(documento, infCteNorm);

            AutorizadosParaDownloadXml(documento, infCteNorm);

            infCteNorm.infModal = new infModalOs();
            var modalRodo = new rodoOS();

            infCteNorm.infModal.ContainerModal = modalRodo;

            modalRodo.TAF            = documento.RodoviarioOS.Taf;
            modalRodo.NroRegEstadual = documento.RodoviarioOS.NumeroRegistroEstadual;

            ModalRodoviarioOs(documento, modalRodo);

            return(infCteNorm);
        }
Example #2
0
        private static void ModalRodoviarioOs(Documento documento, rodoOS modalRodo)
        {
            if (documento.RodoviarioOS.Veiculo != null)
            {
                var veiculo = new veicOs();
                modalRodo.veic = veiculo;

                veiculo.placa   = documento.RodoviarioOS.Veiculo.Placa;
                veiculo.RENAVAM = documento.RodoviarioOS.Veiculo.Renavam;

                if (documento.RodoviarioOS.Veiculo.Proprietario != null)
                {
                    var docProprietario = documento.RodoviarioOS.Veiculo.Proprietario;
                    var proprietario    = new prop();
                    modalRodo.veic.prop = proprietario;

                    if (docProprietario.DocumentoUnico.Length == 11)
                    {
                        proprietario.CPF = docProprietario.DocumentoUnico;
                    }

                    if (docProprietario.DocumentoUnico.Length == 14)
                    {
                        proprietario.CNPJ = docProprietario.DocumentoUnico;
                    }

                    proprietario.TAF            = docProprietario.Taf;
                    proprietario.NroRegEstadual = docProprietario.NumeroRegistroEstadual;
                    proprietario.xNome          = docProprietario.NomeOuRazaoSocial;
                    proprietario.IE             = docProprietario.InscricaoEstadual;
                    proprietario.UF             = proprietario.UF.SiglaParaEstado(docProprietario.EstadoUf.Sigla);

                    switch (docProprietario.TipoProprietario)
                    {
                    case TipoProprietario.TacAgregado:
                        proprietario.tpProp = tpPropProp.TACAgregado;
                        break;

                    case TipoProprietario.TacIndependente:
                        proprietario.tpProp = tpPropProp.TACIndependente;
                        break;

                    case TipoProprietario.Outros:
                        proprietario.tpProp = tpPropProp.Outros;
                        break;

                    default:
                        throw new ArgumentOutOfRangeException();
                    }

                    veiculo.UF = veiculo.UF.SiglaParaEstado(documento.RodoviarioOS.Veiculo.EstadoUf.Sigla);
                }
            }
        }