From 375e6490097aaa47070fb8b1e86baf92f5cfd336 Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Tue, 5 Apr 2016 16:12:33 +0300 Subject: [PATCH] story#116954455 - set parameter debug for Directo monthly invoices --- app/models/directo.rb | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/app/models/directo.rb b/app/models/directo.rb index 0bfdd4548..d20874630 100644 --- a/app/models/directo.rb +++ b/app/models/directo.rb @@ -60,7 +60,8 @@ class Directo < ActiveRecord::Base end - def self.send_monthly_invoices + def self.send_monthly_invoices(debug: false) + @debug = debug I18n.locale = :et month = Time.now - 1.month invoices_until = month.end_of_month @@ -141,10 +142,14 @@ class Directo < ActiveRecord::Base 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 - Setting.directo_monthly_number_last = directo_next - Nokogiri::XML(response).css("Result").each do |res| - Directo.create!(response: res.as_json.to_h, invoice_number: directo_next) - Rails.logger.info("[DIRECTO] Invoice #{res.attributes["docid"].value} was pushed and return is #{res.as_json.to_h.inspect}") + if @debug + STDOUT << "#{Time.zone.now.utc} - Directo xml had to be sent #{data}\n" + else + Setting.directo_monthly_number_last = directo_next + Nokogiri::XML(response).css("Result").each do |res| + Directo.create!(response: res.as_json.to_h, invoice_number: directo_next) + Rails.logger.info("[DIRECTO] Invoice #{res.attributes["docid"].value} was pushed and return is #{res.as_json.to_h.inspect}") + end end else Rails.logger.info("[DIRECTO] Registrar #{registrar.id} has nothing to be sent to Directo")