From fa682e178019b5fbebf735c82215f9fd703237ad Mon Sep 17 00:00:00 2001 From: Vladimir Krylov Date: Tue, 5 Apr 2016 16:53:18 +0300 Subject: [PATCH] story#116954455 - directo monthly invoices use billing date, not real --- app/models/directo.rb | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/models/directo.rb b/app/models/directo.rb index 523a7b036..50153ef89 100644 --- a/app/models/directo.rb +++ b/app/models/directo.rb @@ -101,8 +101,8 @@ class Directo < ActiveRecord::Base "ProductName" => ".#{pricelist.category} registreerimine: #{pricelist.years_amount} aasta", "UnitPriceWoVAT" => pricelist.price_decimal/pricelist.years_amount } - hash["StartDate"] = (activity.created_at + year.year).strftime(date_format) if year > 1 - hash["EndDate"] = (activity.created_at + year.year + 1).strftime(date_format) if year > 1 + hash["StartDate"] = (activity.created_at + (year-1).year).end_of_month.strftime(date_format) if year > 1 + hash["EndDate"] = (activity.created_at + (year-1).year + 1).end_of_month.strftime(date_format) if year > 1 if items.has_key?(hash) items[hash]["Quantity"] += 1 @@ -113,8 +113,10 @@ class Directo < ActiveRecord::Base end #adding prepaiments - registrar_activities.where(activity_type: [AccountActivity::ADD_CREDIT]).each do |activity| - hash = {"ProductID" => Setting.directo_receipt_product_name, "Unit" => "tk", "ProductName" => "Domeenide ettemaks", "UnitPriceWoVAT"=>activity.sum} + if items.any? + total = 0 + items.each{ |key, val| total += val["Quantity"] * key["UnitPriceWoVAT"] } + hash = {"ProductID" => Setting.directo_receipt_product_name, "Unit" => "tk", "ProductName" => "Domeenide ettemaks", "UnitPriceWoVAT"=>total} items[hash] = {"RN"=>counter.next, "RR" => counter.now, "Quantity"=> -1} end