private static void PreencherEnderecos(KhanPedidoServiceReference.Pedido pedido, Data.Model.Cliente cliente) { pedido.endent = cliente.EnderecoEntrega; pedido.baient = cliente.BairroEntrega; pedido.cident = cliente.CidadeEntrega; pedido.estent = cliente.UfEntrega; pedido.endent_num = cliente.NumeroEntrega; pedido.endent_complemento = cliente.ComplEntrega; pedido.cepent = cliente.CepEntrega; if (!string.IsNullOrEmpty(cliente.EnderecoCobranca)) { pedido.endfat = cliente.EnderecoCobranca; pedido.baifat = cliente.BairroCobranca; pedido.cidfat = cliente.CidadeCobranca; pedido.estfat = cliente.UfCobranca; pedido.endfat_num = cliente.NumeroCobranca; pedido.endfat_complemento = cliente.ComplCobranca; pedido.cepfat = cliente.CepCobranca; } else { pedido.endfat = cliente.Endereco; pedido.baifat = cliente.Bairro; pedido.cidfat = cliente.Cidade; pedido.estfat = cliente.Uf; pedido.endfat_num = cliente.Numero; pedido.endfat_complemento = cliente.Compl; pedido.cepfat = cliente.Cep; } }
private void ApagarIntegracao(int idNf) { var pedido = new KhanPedidoServiceReference.Pedido { Token = this.configuracao.Token, codempresa = this.configuracao.Empresa, numped_int = idNf, }; var situacao = this.PedidoClient.ExcluirPedido(pedido); if (!StringComparer.InvariantCultureIgnoreCase.Equals(situacao?.status_integracao, "Pedido Excluido com sucesso")) { throw new IntegracaoException(situacao?.status_integracao); } }
private KhanPedidoServiceReference.Pedido Converter(GDA.GDASession sessao, Data.Model.NotaFiscal notaFiscal) { var cliente = Data.DAL.ClienteDAO.Instance.GetElement(sessao, notaFiscal.IdCliente.GetValueOrDefault()); var produtosNf = Data.DAL.ProdutosNfDAO.Instance.GetByNf(sessao, notaFiscal.IdNf).ToList(); var produtos = Data.DAL.ProdutoDAO.Instance.ObterProdutos(sessao, produtosNf.Select(f => f.IdProd).Distinct()).ToList(); var parcelas = Data.DAL.ParcelaNfDAO.Instance.GetByNf(sessao, notaFiscal.IdNf); var pedido = new KhanPedidoServiceReference.Pedido { Token = this.configuracao.Token, codempresa = this.configuracao.Empresa, numped_int = (int)notaFiscal.IdNf, seqped_int = 0, datped = notaFiscal.DataCad.ToString("yyyyMMdd"), numpedc = string.Empty, nomcad = cliente.Nome, tipos = "Cliente,", tipodoc1 = cliente.TipoPessoa == "J" ? PessoaJuridica : PessoaFisica, numdoc1 = cliente.CpfCnpj.SomenteNumero(), tipodoc2 = cliente.TipoPessoa == "J" ? TipoDocumentoInscricaoEstadual : TipoDocumentoNenhum, numdoc2 = cliente.TipoPessoa == "J" ? cliente.RgEscinst : null, tippag = ObterTipoPagamentoPedido(notaFiscal.FormaPagto), numpar = parcelas.Count, statusw = NotaFiscalEmitida, numped = 0, seqped = 0, email = cliente.EmailFiscal, foneddd = this.ObterDDD(cliente.TelCont), fonenum = this.ObterTelefoneSemDDD(cliente.TelCont), codven = "0", autoriz_comercial = string.Empty, contrato = string.Empty, numnf = notaFiscal.NumeroNFe.ToString(), serie = notaFiscal.Serie, xml = string.Empty, numnf_origem = string.Empty, numitens = produtosNf.Count, tipes = notaFiscal.TipoDocumento == 2 ? "S" : "E", tipoEnvio = string.Empty, codTipoEnvio = string.Empty, nf_chave = notaFiscal.ChaveAcesso, nf_contingencia = string.Empty, nf_data_contingencia = string.Empty, nf_justif_contingencia = string.Empty, nf_numprotocolo = notaFiscal.NumProtocolo ?? string.Empty, nf_operador_caixa = string.Empty, cp_terminal = string.Empty, nf_numprotocolo_Can = notaFiscal.NumProtocoloCanc ?? string.Empty, nf_dat_cancelamento = string.Empty, }; PreencherEnderecos(pedido, cliente); var sequenciaItem = 1; pedido.Itens = produtosNf .Select(produtoNf => this.ConverterItemPedido(produtoNf, produtos.FirstOrDefault(produto => produto.IdProd == produtoNf.IdProd), ref sequenciaItem)) .ToList(); var sequenciaParcela = 1; pedido.Parcelas = parcelas .Select(parcelaNf => this.ConverterParcelaPedido(parcelaNf, ref sequenciaParcela)) .ToList(); return(pedido); }