Ejemplo n.º 1
0
        public BlocoTransportador(DanfeViewModel viewModel, Estilo campoEstilo) : base(viewModel, campoEstilo)
        {
            var transportadora = viewModel.Transportadora;

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.RazaoSocial, transportadora.RazaoSocial)
            .ComCampo("Frete", transportadora.ModalidadeFreteString, AlinhamentoHorizontal.Centro)
            .ComCampo("Código ANTT", transportadora.CodigoAntt, AlinhamentoHorizontal.Centro)
            .ComCampo("Placa do Veículo", transportadora.Placa, AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.UF, transportadora.VeiculoUf, AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.CnpjCpf, DanfeHelper.FormatarCnpj(transportadora.CnpjCpf), AlinhamentoHorizontal.Centro)
            .ComLarguras(0, LarguraFrete, LarguraCampoCodigoAntt, LarguraCampoPlacaVeiculo, LarguraCampoUf, LarguraCampoCnpj);

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.Endereco, transportadora.EnderecoLogadrouro)
            .ComCampo(DanfeConstantes.Municipio, transportadora.Municipio)
            .ComCampo(DanfeConstantes.UF, transportadora.EnderecoUf, AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.InscricaoEstadual, transportadora.Ie, AlinhamentoHorizontal.Centro)
            .ComLarguras(0, LarguraCampoPlacaVeiculo + LarguraCampoCodigoAntt, LarguraCampoUf, LarguraCampoCnpj);

            var l = (LarguraCampoCodigoAntt + LarguraCampoPlacaVeiculo + LarguraCampoUf + LarguraCampoCnpj) / 3F;

            AdicionarLinhaCampos()
            .ComCampoNumerico(DanfeConstantes.Quantidade, transportadora.QuantidadeVolumes, 3)
            .ComCampo("Espécie", transportadora.Especie)
            .ComCampo("Marca", transportadora.Marca)
            .ComCampo("Numeração", transportadora.Numeracao)
            .ComCampoNumerico("Peso Bruto", transportadora.PesoBruto, 3)
            .ComCampoNumerico("Peso Líquido", transportadora.PesoLiquido, 3)
            .ComLarguras(20F / 200F * 100, 0, 0, l, l, l);
        }
        public BlocoIdentificacaoEmitente(DanfeViewModel viewModel, Estilo estilo) : base(viewModel, estilo)
        {
            var textoConsulta = new TextoSimples(Estilo, DanfeConstantes.TextoConsulta)
            {
                Height = 8,
                AlinhamentoHorizontal = AlinhamentoHorizontal.Centro,
                AlinhamentoVertical   = AlinhamentoVertical.Centro,
                TamanhoFonte          = 9
            };

            var campoChaveAcesso = new Campo("Chave de Acesso", DanfeHelper.FormatarChaveAcesso(ViewModel.ChaveAcesso), estilo, AlinhamentoHorizontal.Centro)
            {
                Height = DanfeConstantes.CampoAltura
            };
            var codigoBarras = new Barcode128C(viewModel.ChaveAcesso, Estilo)
            {
                Height = AlturaLinha1 - textoConsulta.Height - campoChaveAcesso.Height
            };

            var coluna3 = new VerticalStack();

            coluna3.Add(codigoBarras, campoChaveAcesso, textoConsulta);

            ifdNfe     = new NumeroNfSerie2(estilo, ViewModel);
            idEmitente = new IdentificacaoEmitente(Estilo, ViewModel);

            FlexibleLine fl = new FlexibleLine {
                Height = coluna3.Height
            }
            .ComElemento(idEmitente)
            .ComElemento(ifdNfe)
            .ComElemento(coluna3)
            .ComLarguras(0, 15, 46.5F);

            MainVerticalStack.Add(fl);

            AdicionarLinhaCampos()
            .ComCampo("Natureza da operação", ViewModel.NaturezaOperacao)
            .ComCampo("Protocolo de autorização", ViewModel.ProtocoloAutorizacao, AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 46.5F);

            AdicionarLinhaCampos()
            .ComCampo("Inscrição Estadual", ViewModel.Emitente.Ie, AlinhamentoHorizontal.Centro)
            .ComCampo("Inscrição Estadual do Subst. Tributário", ViewModel.Emitente.IeSt, AlinhamentoHorizontal.Centro)
            .ComCampo("Cnpj", DanfeHelper.FormatarCnpj(ViewModel.Emitente.CnpjCpf), AlinhamentoHorizontal.Centro)
            .ComLargurasIguais();
        }