From 63fcbd9515684e7f5e39a925cbaf482041b99f6f Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Tue, 19 Jan 2016 15:17:33 +0200 Subject: [PATCH 1/3] Story#105852786 - Invoice' bank transaction should have sum in order to mean that invoice payment finished --- app/models/directo.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/models/directo.rb b/app/models/directo.rb index 502dfe089..bf5bc9043 100644 --- a/app/models/directo.rb +++ b/app/models/directo.rb @@ -8,7 +8,7 @@ class Directo < ActiveRecord::Base builder = Nokogiri::XML::Builder.new(encoding: "UTF-8") do |xml| xml.invoices { group.each do |invoice| - next if invoice.account_activity.nil? || invoice.account_activity.bank_transaction.nil? + next if invoice.account_activity.nil? || invoice.account_activity.bank_transaction.nil? || invoice.account_activity.bank_transaction.sum.nil? num = invoice.number mappers[num] = invoice @@ -32,8 +32,9 @@ class Directo < ActiveRecord::Base end data = builder.to_xml.gsub("\n",'') - response = RestClient::Request.execute(url: ENV['directo_invoice_url'], method: :post, payload: {put: "1", what: "invoice", xmldata: data}, verify_ssl: false).to_s - dump_result_to_db(mappers, response) + # response = RestClient::Request.execute(url: ENV['directo_invoice_url'], method: :post, payload: {put: "1", what: "invoice", xmldata: data}, verify_ssl: false).to_s + # dump_result_to_db(mappers, response) + binding.pry end end From c3db50b5cdd2f650cc495684b1276ab5a08ef253 Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Tue, 19 Jan 2016 15:27:17 +0200 Subject: [PATCH 2/3] Story#105852786 - Invoice' bank transaction should have sum in order to mean that invoice payment finished --- app/models/directo.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/models/directo.rb b/app/models/directo.rb index bf5bc9043..ae8c2b48c 100644 --- a/app/models/directo.rb +++ b/app/models/directo.rb @@ -8,7 +8,8 @@ class Directo < ActiveRecord::Base builder = Nokogiri::XML::Builder.new(encoding: "UTF-8") do |xml| xml.invoices { group.each do |invoice| - next if invoice.account_activity.nil? || invoice.account_activity.bank_transaction.nil? || invoice.account_activity.bank_transaction.sum.nil? + next if invoice.account_activity.nil? || invoice.account_activity.bank_transaction.nil? + next if invoice.account_activity.bank_transaction.sum.nil? num = invoice.number mappers[num] = invoice @@ -32,9 +33,8 @@ class Directo < ActiveRecord::Base end data = builder.to_xml.gsub("\n",'') - # response = RestClient::Request.execute(url: ENV['directo_invoice_url'], method: :post, payload: {put: "1", what: "invoice", xmldata: data}, verify_ssl: false).to_s - # dump_result_to_db(mappers, response) - binding.pry + response = RestClient::Request.execute(url: ENV['directo_invoice_url'], method: :post, payload: {put: "1", what: "invoice", xmldata: data}, verify_ssl: false).to_s + dump_result_to_db(mappers, response) end end From 66bdc5146b9f1d94e8378697395aa81c4f0ca9bc Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Tue, 19 Jan 2016 15:36:50 +0200 Subject: [PATCH 3/3] Story#105852786 - Do not send invoice to directo if sum is not matching with bank transaction --- app/models/directo.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/directo.rb b/app/models/directo.rb index ae8c2b48c..af62d21a2 100644 --- a/app/models/directo.rb +++ b/app/models/directo.rb @@ -9,7 +9,7 @@ class Directo < ActiveRecord::Base xml.invoices { group.each do |invoice| next if invoice.account_activity.nil? || invoice.account_activity.bank_transaction.nil? - next if invoice.account_activity.bank_transaction.sum.nil? + next if invoice.account_activity.bank_transaction.sum.nil? || invoice.account_activity.bank_transaction.sum != invoice.sum_cache num = invoice.number mappers[num] = invoice