Exemplo n.º 1
0
 public Retorno FB70(OrdemInternaFB70 Entrada)
 {
     object[] results = this.Invoke("FB70", new object[] {
         Entrada
     });
     return((Retorno)(results[0]));
 }
Exemplo n.º 2
0
 /// <remarks/>
 public void FB70Async(OrdemInternaFB70 Entrada, object userState)
 {
     if ((this.FB70OperationCompleted == null))
     {
         this.FB70OperationCompleted = new System.Threading.SendOrPostCallback(this.OnFB70OperationCompleted);
     }
     this.InvokeAsync("FB70", new object[] {
         Entrada
     }, this.FB70OperationCompleted, userState);
 }
Exemplo n.º 3
0
        static void TransmitirFB70()
        {
            var lista_fb70_sap = MobLink.WebLeilao.Repositorio.RepositorioGlobal.Arrematante.SelecionarTudo(65)
                                 .Where(p => p.status_cadastro_fb70_sap == "P") //P-ENVIAR
                                 .ToList();

            WSSapLinkPatios.OrdemInternaFB70 ordemInternaFB70;

            foreach (var a in lista_fb70_sap)
            {
                var data_fatura    = a.data_emissao_boleto.Replace("/", "");
                var data_pagamento = a.data_pagamento_boleto.Replace("/", "");

                ordemInternaFB70 = new WSSapLinkPatios.OrdemInternaFB70()
                {
                    codigo_banco       = "BR04",
                    codigo_empresa     = "1080",
                    condicao_pagamento = "B001",
                    forma_pagamento    = "D",

                    numero_ordem_interna = "500314", //PRD 500314 QAD 500280 ??? 30082017

                    codigo_cliente = a.id_documento_cliente_sap,
                    data_fatura    = data_fatura,
                    data_pagamento = data_pagamento,
                    identificacao_leilao_patio_lote = a.lote,
                    numero_boleto_pagamento         = a.numero_boleto
                };

                int casas_decimais = 2;

                //VALORES
                ordemInternaFB70.valor_comissao = decimal.Round(decimal.Parse(a.comissao == "" ? "0" : a.comissao), casas_decimais);
                ordemInternaFB70.valor_desconto = decimal.Round(decimal.Parse(a.descontos == "" ? "0" : a.descontos), casas_decimais);
                //ordemInternaFB70.valor_tarifa_bancaria = decimal.Round(decimal.Parse(a.tarifa_bancaria == "" ? "0" : a.tarifa_bancaria), casas_decimais);
                ordemInternaFB70.valor_tarifa_bancaria     = decimal.Parse("3,70");
                ordemInternaFB70.valor_taxa_administrativa = decimal.Round(decimal.Parse(a.taxa_administrativa == "" ? "0" : a.taxa_administrativa), casas_decimais);
                ordemInternaFB70.valor_lote = decimal.Round(decimal.Parse(a.arrematacao == "" ? "0" : a.arrematacao), casas_decimais);
                //ordemInternaFB70.valor_total_pago = decimal.Round(decimal.Parse(a.valor_total == "" ? "0" : a.valor_total), casas_decimais);
                ordemInternaFB70.valor_total_pago = decimal.Round(decimal.Parse(a.valor_pago == "" ? "0" : a.valor_pago), casas_decimais);

                var valor_do_boleto = decimal.Round(decimal.Parse(a.valor_total == "" ? "0" : a.valor_total), casas_decimais);



                /*
                 * <montante_bruto> = <valor_lote> + <valor_taxa_administrativa> + <valor_comissao> + <valor_tarifa_bancaria> - <valor_desconto>​
                 * Caso o valor pago seja diferente do valor registrado no boleto, a diferença deverá ser informada no campo <valor_pagamento_maior>.
                 */

                //ordemInternaFB70.valor_tarifa_bancaria = ordemInternaFB70.valor_total_pago - valor_do_boleto;

                ordemInternaFB70.montante_bruto = decimal.Round((
                                                                    ordemInternaFB70.valor_lote +
                                                                    ordemInternaFB70.valor_taxa_administrativa +
                                                                    ordemInternaFB70.valor_comissao +
                                                                    ordemInternaFB70.valor_tarifa_bancaria -
                                                                    ordemInternaFB70.valor_desconto), casas_decimais);

                ordemInternaFB70.opcao_valor_desconto        = ordemInternaFB70.valor_desconto > 0;
                ordemInternaFB70.opcao_valor_tarifa_bancaria = ordemInternaFB70.valor_tarifa_bancaria > 0;
                ordemInternaFB70.opcao_valor_pagamento_maior = (valor_do_boleto + ordemInternaFB70.valor_tarifa_bancaria) < ordemInternaFB70.montante_bruto;

                if (ordemInternaFB70.opcao_valor_pagamento_maior)
                {
                    ordemInternaFB70.valor_pagamento_maior = decimal.Round((ordemInternaFB70.valor_total_pago - valor_do_boleto), casas_decimais);
                }

                try
                {
                    var retorno_fb70 = ws.FB70(ordemInternaFB70);

                    if (retorno_fb70.Resultado)
                    {
                        Console.WriteLine("fb70 transmitida para o lote " + ordemInternaFB70.identificacao_leilao_patio_lote);

                        //ATUALIZO O CAMPO status_cadastro_cliente_sap PARA FLAG S - ENVIADO
                        a.status_cadastro_fb70_sap = "S";
                        MobLink.WebLeilao.Repositorio.RepositorioGlobal.Arrematante.Alterar(a);
                    }
                }
                catch (Exception)
                {
                    throw;
                }
            }
        }
Exemplo n.º 4
0
 /// <remarks/>
 public void FB70Async(OrdemInternaFB70 Entrada)
 {
     this.FB70Async(Entrada, null);
 }