public BlocoDestinatarioRemetente(DanfeViewModel viewModel, Estilo estilo) : base(viewModel, estilo)
        {
            var destinatario = viewModel.Destinatario;

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.RazaoSocial, destinatario.RazaoSocial)
            .ComCampo(DanfeConstantes.CnpjCpf, DanfeHelper.FormatarCpfCnpj(destinatario.CnpjCpf), AlinhamentoHorizontal.Centro)
            .ComCampo("Data de Emissão", viewModel.DataHoraEmissao.Formatar(), AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 45F * Proporcao, 30F * Proporcao);

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.Endereco, destinatario.EnderecoLinha1)
            .ComCampo(DanfeConstantes.BairroDistrito, destinatario.EnderecoBairro)
            .ComCampo(DanfeConstantes.Cep, DanfeHelper.FormatarCEP(destinatario.EnderecoCep), AlinhamentoHorizontal.Centro)
            .ComCampo("Data Entrada / Saída", ViewModel.DataSaidaEntrada.Formatar(), AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 45F * Proporcao, 25F * Proporcao, 30F * Proporcao);

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.Municipio, destinatario.Municipio)
            .ComCampo(DanfeConstantes.FoneFax, DanfeHelper.FormatarTelefone(destinatario.Telefone), AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.UF, destinatario.EnderecoUf, AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.InscricaoEstadual, destinatario.Ie, AlinhamentoHorizontal.Centro)
            .ComCampo("Hora Entrada / Saída", ViewModel.HoraSaidaEntrada.Formatar(), AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 35F * Proporcao, 7F * Proporcao, 40F * Proporcao, 30F * Proporcao);
        }
예제 #2
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();
        }
        public BlocoEventoIdentificacao(DanfeEventoViewModel viewModel, Estilo estilo) : base(viewModel, estilo)
        {
            #region Propriedades

            var chaveAcesso = DanfeHelper.FormatarChaveAcesso(viewModel.ChaveAcesso);
            var modelo      = viewModel.ChaveAcesso.Substring(20, 2);
            var serie       = viewModel.ChaveAcesso.Substring(22, 3);
            var numero      = DanfeHelper.FormatarNumeroNF(viewModel.ChaveAcesso.Substring(25, 9));
            var ano         = viewModel.ChaveAcesso.Substring(2, 2);
            var mes         = viewModel.ChaveAcesso.Substring(4, 2);

            #endregion

            var codigoBarras = new Barcode128C(viewModel.ChaveAcesso, Estilo)
            {
                Height = AlturaCodigo
            };

            var coluna = new VerticalStack();
            var linha1 = new LinhaCampos(estilo)
            {
                Height = AlturaLinhaCampo
            }
            .ComCampo("MODELO", modelo)
            .ComCampo("SÉRIE", serie)
            .ComCampo("NÚMERO", numero)
            .ComCampo("MÊS / ANO DA EMISSÃO", $"{mes} / {ano}")
            .ComLargurasIguais();

            var linha2 = new Campo("CHAVE DE ACESSO", chaveAcesso, estilo)
            {
                Height = AlturaLinhaCampo
            };

            coluna.Add(linha1, linha2);

            var fl = new FlexibleLine {
                Height = codigoBarras.Height
            }
            .ComElemento(coluna)
            .ComElemento(codigoBarras)
            .ComLargurasIguais();

            MainVerticalStack.Add(fl);
        }
        protected BlocoLocalEntregaRetirada(DanfeViewModel viewModel, Estilo estilo, LocalEntregaRetiradaViewModel localModel) : base(viewModel, estilo)
        {
            Model = localModel ?? throw new ArgumentNullException(nameof(localModel));

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.NomeRazaoSocial, Model.NomeRazaoSocial)
            .ComCampo(DanfeConstantes.CnpjCpf, DanfeHelper.FormatarCpfCnpj(Model.CnpjCpf), AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.InscricaoEstadual, Model.InscricaoEstadual, AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 45F * Proporcao, 30F * Proporcao);

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.Endereco, Model.Endereco)
            .ComCampo(DanfeConstantes.BairroDistrito, Model.Bairro)
            .ComCampo(DanfeConstantes.Cep, DanfeHelper.FormatarCEP(Model.Cep), AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 45F * Proporcao, 30F * Proporcao);

            AdicionarLinhaCampos()
            .ComCampo(DanfeConstantes.Municipio, Model.Municipio)
            .ComCampo(DanfeConstantes.UF, Model.Uf, AlinhamentoHorizontal.Centro)
            .ComCampo(DanfeConstantes.FoneFax, DanfeHelper.FormatarTelefone(Model.Telefone), AlinhamentoHorizontal.Centro)
            .ComLarguras(0, 7F * Proporcao, 30F * Proporcao);
        }