billing 0.0.7i → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/models/billing/bill.rb +12 -33
- data/app/models/billing/report.rb +1 -2
- data/app/models/billing/version.rb +0 -2
- data/lib/billing/engine.rb +0 -5
- data/lib/billing/version.rb +1 -1
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/db/schema.rb +1 -4
- data/test/dummy/log/development.log +0 -479
- metadata +5 -22
- data/app/jobs/billing/issue_fiscal_doc.rb +0 -132
- data/db/migrate/20150510235441_add_master_to_billing_version.rb +0 -6
- data/db/migrate/20150512040421_add_deleted_at_to_billing_report.rb +0 -5
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 2ad7f574f1fd705d1c3fa07c37a6d82206cebe8d
         | 
| 4 | 
            +
              data.tar.gz: d9c2f1161ef14b21b15fce52fa6befe525946cd9
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 59892ba7beb3905f859f85f4c564191c0e85ac59c2cc48486f6077653f9e8881c10bba5ff39e6242ac6768e978b8de4663cad0f27f0e2c4058643ec398c77dc7
         | 
| 7 | 
            +
              data.tar.gz: df3c4069cc8a8cb59d6439fb9daf72fa9cbba6889c02c375dc7dc9d264781ff1ce614d3056896942fdbaebcb4c885109c8a789dfb7919f3e2a8cb551224a0497
         | 
    
        data/app/models/billing/bill.rb
    CHANGED
    
    | @@ -39,7 +39,6 @@ module Billing | |
| 39 39 | 
             
                  self.name = "B:#{number}" if name.nil?
         | 
| 40 40 | 
             
                end
         | 
| 41 41 | 
             
                before_save :perform_autofin, if: :becomes_paid?
         | 
| 42 | 
            -
                after_save :create_fiscal_job, if: :fiscalizable?
         | 
| 43 42 |  | 
| 44 43 | 
             
                validates_numericality_of :total, greater_than_or_equal_to: 0
         | 
| 45 44 | 
             
                validates_numericality_of :balance, less_than_or_equal_to: 0
         | 
| @@ -90,24 +89,17 @@ module Billing | |
| 90 89 | 
             
                end
         | 
| 91 90 |  | 
| 92 91 | 
             
                def fiscalize(detailed = false)
         | 
| 93 | 
            -
                   | 
| 94 | 
            -
                   | 
| 95 | 
            -
                  #self.extface_job if save
         | 
| 96 | 
            -
                  if defined?(Extface) && fiscalizable? && device = origin.try(:fiscal_device)
         | 
| 97 | 
            -
                    #self.extface_job = origin.fiscal_device.driver.fiscalize(self) if fiscalizable? && origin.try(:fiscal_device)
         | 
| 98 | 
            -
                    self.extface_job = device.jobs.new
         | 
| 99 | 
            -
                    self.extface_job if save
         | 
| 100 | 
            -
                  end
         | 
| 92 | 
            +
                  self.extface_job = origin.fiscal_device.driver.fiscalize(self, detailed) if fiscalizable? && origin.try(:fiscal_device)
         | 
| 93 | 
            +
                  self.extface_job if save
         | 
| 101 94 | 
             
                end
         | 
| 102 95 |  | 
| 103 96 | 
             
                def global_modifier_value
         | 
| 104 | 
            -
                  global_modifiers = modifiers.select{ |m| m.charge.nil? }
         | 
| 105 | 
            -
             | 
| 106 | 
            -
             | 
| 107 | 
            -
             | 
| 108 | 
            -
                       | 
| 109 | 
            -
                    end
         | 
| 110 | 
            -
                    return gvalue
         | 
| 97 | 
            +
                  if global_modifiers = modifiers.select{ |m| m.charge.nil? }
         | 
| 98 | 
            +
                    Money.new(0).tap() do |value|
         | 
| 99 | 
            +
                      global_modifiers.each do |global_modifier|
         | 
| 100 | 
            +
                        value += global_modifier.percent_ratio.nil? ? global_modifier.fixed_value : (charges_a.sum(&:value).to_money * global_modifier.percent_ratio)
         | 
| 101 | 
            +
                      end
         | 
| 102 | 
            +
                    end if global_modifiers.any?
         | 
| 111 103 | 
             
                  end
         | 
| 112 104 | 
             
                end
         | 
| 113 105 |  | 
| @@ -115,10 +107,6 @@ module Billing | |
| 115 107 | 
             
                  # get operator, who close/pay the bill?
         | 
| 116 108 | 
             
                  #operator.operator_fiscal_driver_mapping.find_by(extface_driver_id: fiscal_driver.id) if fiscal_driver.fiscal?
         | 
| 117 109 | 
             
                end
         | 
| 118 | 
            -
                
         | 
| 119 | 
            -
                def fiscalizable?
         | 
| 120 | 
            -
                  self.finalized_at.present? && payments.select(&:fiscal?).any? && origin.try(:fiscal_device) && balance.zero?
         | 
| 121 | 
            -
                end
         | 
| 122 110 |  | 
| 123 111 | 
             
                private
         | 
| 124 112 | 
             
                  def calculate_modifiers
         | 
| @@ -164,26 +152,17 @@ module Billing | |
| 164 152 | 
             
                  end
         | 
| 165 153 |  | 
| 166 154 | 
             
                  def perform_autofin
         | 
| 167 | 
            -
                    p "!!!!!!!!!!perform_autofin"
         | 
| 168 155 | 
             
                    if autofin
         | 
| 169 156 | 
             
                      self.finalized_at = Time.now
         | 
| 170 | 
            -
                      if defined? | 
| 171 | 
            -
                         | 
| 172 | 
            -
                        self.extface_job = device.jobs.new
         | 
| 157 | 
            +
                      if defined? Extface
         | 
| 158 | 
            +
                        self.extface_job = origin.fiscal_device.driver.fiscalize(self) if fiscalizable? && origin.try(:fiscal_device)
         | 
| 173 159 | 
             
                      end
         | 
| 174 160 | 
             
                    end
         | 
| 175 161 | 
             
                    true
         | 
| 176 162 | 
             
                  end
         | 
| 177 163 |  | 
| 178 | 
            -
                  def  | 
| 179 | 
            -
                     | 
| 180 | 
            -
                      p "device: #{device.try(:id)}"
         | 
| 181 | 
            -
                      p "self: #{self.try(:id)}"
         | 
| 182 | 
            -
                      p "self.finalized_at changed: #{self.finalized_at_changed?}"
         | 
| 183 | 
            -
                      
         | 
| 184 | 
            -
                      Resque.enqueue_to("extface_#{device.id}", Billing::IssueFiscalDoc, self.id)
         | 
| 185 | 
            -
                    end
         | 
| 186 | 
            -
                    true
         | 
| 164 | 
            +
                  def fiscalizable?
         | 
| 165 | 
            +
                    payments.select(&:fiscal?).any?
         | 
| 187 166 | 
             
                  end
         | 
| 188 167 |  | 
| 189 168 | 
             
              end
         | 
| @@ -5,8 +5,7 @@ module Billing | |
| 5 5 | 
             
                FISCAL_PERIOD_REPORT = 'period_report'.freeze
         | 
| 6 6 | 
             
                FISCAL_PAYED_RECVD = 'payed_recvd'.freeze
         | 
| 7 7 | 
             
                F_OPERATIONS = [FISCAL_X_REPORT, FISCAL_Z_REPORT, FISCAL_PERIOD_REPORT, FISCAL_PAYED_RECVD].freeze
         | 
| 8 | 
            -
             | 
| 9 | 
            -
                acts_as_paranoid if respond_to?(:acts_as_paranoid)
         | 
| 8 | 
            +
                  
         | 
| 10 9 | 
             
                has_paper_trail class_name: 'Billing::Version'
         | 
| 11 10 | 
             
                belongs_to :origin, inverse_of: :reports
         | 
| 12 11 | 
             
                has_many :bills, inverse_of: :report, autosave: true
         | 
    
        data/lib/billing/engine.rb
    CHANGED
    
    
    
        data/lib/billing/version.rb
    CHANGED
    
    
| Binary file | 
    
        data/test/dummy/db/schema.rb
    CHANGED
    
    | @@ -11,7 +11,7 @@ | |
| 11 11 | 
             
            #
         | 
| 12 12 | 
             
            # It's strongly recommended that you check this file into your version control system.
         | 
| 13 13 |  | 
| 14 | 
            -
            ActiveRecord::Schema.define(version:  | 
| 14 | 
            +
            ActiveRecord::Schema.define(version: 20150510142229) do
         | 
| 15 15 |  | 
| 16 16 | 
             
              create_table "billing_bills", force: :cascade do |t|
         | 
| 17 17 | 
             
                t.integer  "billable_id"
         | 
| @@ -231,7 +231,6 @@ ActiveRecord::Schema.define(version: 20150512040421) do | |
| 231 231 | 
             
                t.string   "f_operation",              limit: 255
         | 
| 232 232 | 
             
                t.integer  "f_amount_cents",                       default: 0,     null: false
         | 
| 233 233 | 
             
                t.string   "f_amount_currency",        limit: 255, default: "USD", null: false
         | 
| 234 | 
            -
                t.datetime "deleted_at"
         | 
| 235 234 | 
             
              end
         | 
| 236 235 |  | 
| 237 236 | 
             
              add_index "billing_reports", ["origin_id"], name: "index_billing_reports_on_origin_id"
         | 
| @@ -280,8 +279,6 @@ ActiveRecord::Schema.define(version: 20150512040421) do | |
| 280 279 | 
             
                t.string   "ip",             limit: 255
         | 
| 281 280 | 
             
                t.string   "user_agent",     limit: 255
         | 
| 282 281 | 
             
                t.text     "object_changes"
         | 
| 283 | 
            -
                t.integer  "master_id"
         | 
| 284 | 
            -
                t.string   "master_type"
         | 
| 285 282 | 
             
              end
         | 
| 286 283 |  | 
| 287 284 | 
             
              add_index "billing_versions", ["item_type", "item_id"], name: "index_billing_versions_on_item_type_and_item_id"
         | 
| @@ -2331,482 +2331,3 @@ Migrating to AddObjectChangesToBillingVersions (20150510142229) | |
| 2331 2331 | 
             
                        FROM sqlite_temp_master
         | 
| 2332 2332 | 
             
                        WHERE name='index_billing_versions_on_item_type_and_item_id' AND type='index'
         | 
| 2333 2333 | 
             
            [0m
         | 
| 2334 | 
            -
              [1m[36mActiveRecord::SchemaMigration Load (0.3ms)[0m  [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
         | 
| 2335 | 
            -
            Migrating to AddMasterToBillingVersion (20150510235441)
         | 
| 2336 | 
            -
              [1m[35m (0.1ms)[0m  begin transaction
         | 
| 2337 | 
            -
              [1m[36m (0.5ms)[0m  [1mALTER TABLE "billing_versions" ADD "master_id" integer[0m
         | 
| 2338 | 
            -
              [1m[35m (0.3ms)[0m  ALTER TABLE "billing_versions" ADD "master_type" varchar
         | 
| 2339 | 
            -
              [1m[36mSQL (0.3ms)[0m  [1mINSERT INTO "schema_migrations" ("version") VALUES (?)[0m  [["version", "20150510235441"]]
         | 
| 2340 | 
            -
              [1m[35m (82.0ms)[0m  commit transaction
         | 
| 2341 | 
            -
              [1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m  [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
         | 
| 2342 | 
            -
              [1m[35m (0.3ms)[0m              SELECT sql
         | 
| 2343 | 
            -
                        FROM sqlite_master
         | 
| 2344 | 
            -
                        WHERE name='index_billing_bills_on_billable_id_and_billable_type' AND type='index'
         | 
| 2345 | 
            -
                        UNION ALL
         | 
| 2346 | 
            -
                        SELECT sql
         | 
| 2347 | 
            -
                        FROM sqlite_temp_master
         | 
| 2348 | 
            -
                        WHERE name='index_billing_bills_on_billable_id_and_billable_type' AND type='index'
         | 
| 2349 | 
            -
             | 
| 2350 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2351 | 
            -
                        FROM sqlite_master
         | 
| 2352 | 
            -
                        WHERE name='index_billing_bills_on_origin_id' AND type='index'
         | 
| 2353 | 
            -
                        UNION ALL
         | 
| 2354 | 
            -
                        SELECT sql
         | 
| 2355 | 
            -
                        FROM sqlite_temp_master
         | 
| 2356 | 
            -
                        WHERE name='index_billing_bills_on_origin_id' AND type='index'
         | 
| 2357 | 
            -
            [0m
         | 
| 2358 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2359 | 
            -
                        FROM sqlite_master
         | 
| 2360 | 
            -
                        WHERE name='index_billing_bills_on_extface_job_id' AND type='index'
         | 
| 2361 | 
            -
                        UNION ALL
         | 
| 2362 | 
            -
                        SELECT sql
         | 
| 2363 | 
            -
                        FROM sqlite_temp_master
         | 
| 2364 | 
            -
                        WHERE name='index_billing_bills_on_extface_job_id' AND type='index'
         | 
| 2365 | 
            -
             | 
| 2366 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2367 | 
            -
                        FROM sqlite_master
         | 
| 2368 | 
            -
                        WHERE name='index_billing_bills_on_report_id' AND type='index'
         | 
| 2369 | 
            -
                        UNION ALL
         | 
| 2370 | 
            -
                        SELECT sql
         | 
| 2371 | 
            -
                        FROM sqlite_temp_master
         | 
| 2372 | 
            -
                        WHERE name='index_billing_bills_on_report_id' AND type='index'
         | 
| 2373 | 
            -
            [0m
         | 
| 2374 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2375 | 
            -
                        FROM sqlite_master
         | 
| 2376 | 
            -
                        WHERE name='index_billing_charges_on_bill_id' AND type='index'
         | 
| 2377 | 
            -
                        UNION ALL
         | 
| 2378 | 
            -
                        SELECT sql
         | 
| 2379 | 
            -
                        FROM sqlite_temp_master
         | 
| 2380 | 
            -
                        WHERE name='index_billing_charges_on_bill_id' AND type='index'
         | 
| 2381 | 
            -
             | 
| 2382 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2383 | 
            -
                        FROM sqlite_master
         | 
| 2384 | 
            -
                        WHERE name='index_billing_charges_on_revenue_at' AND type='index'
         | 
| 2385 | 
            -
                        UNION ALL
         | 
| 2386 | 
            -
                        SELECT sql
         | 
| 2387 | 
            -
                        FROM sqlite_temp_master
         | 
| 2388 | 
            -
                        WHERE name='index_billing_charges_on_revenue_at' AND type='index'
         | 
| 2389 | 
            -
            [0m
         | 
| 2390 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2391 | 
            -
                        FROM sqlite_master
         | 
| 2392 | 
            -
                        WHERE name='index_billing_charges_on_deleted_at' AND type='index'
         | 
| 2393 | 
            -
                        UNION ALL
         | 
| 2394 | 
            -
                        SELECT sql
         | 
| 2395 | 
            -
                        FROM sqlite_temp_master
         | 
| 2396 | 
            -
                        WHERE name='index_billing_charges_on_deleted_at' AND type='index'
         | 
| 2397 | 
            -
             | 
| 2398 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2399 | 
            -
                        FROM sqlite_master
         | 
| 2400 | 
            -
                        WHERE name='index_billing_charges_on_origin_id' AND type='index'
         | 
| 2401 | 
            -
                        UNION ALL
         | 
| 2402 | 
            -
                        SELECT sql
         | 
| 2403 | 
            -
                        FROM sqlite_temp_master
         | 
| 2404 | 
            -
                        WHERE name='index_billing_charges_on_origin_id' AND type='index'
         | 
| 2405 | 
            -
            [0m
         | 
| 2406 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2407 | 
            -
                        FROM sqlite_master
         | 
| 2408 | 
            -
                        WHERE name='index_billing_charges_on_chargable_id_and_chargable_type' AND type='index'
         | 
| 2409 | 
            -
                        UNION ALL
         | 
| 2410 | 
            -
                        SELECT sql
         | 
| 2411 | 
            -
                        FROM sqlite_temp_master
         | 
| 2412 | 
            -
                        WHERE name='index_billing_charges_on_chargable_id_and_chargable_type' AND type='index'
         | 
| 2413 | 
            -
             | 
| 2414 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2415 | 
            -
                        FROM sqlite_master
         | 
| 2416 | 
            -
                        WHERE name='index_billing_departments_on_deleted_at' AND type='index'
         | 
| 2417 | 
            -
                        UNION ALL
         | 
| 2418 | 
            -
                        SELECT sql
         | 
| 2419 | 
            -
                        FROM sqlite_temp_master
         | 
| 2420 | 
            -
                        WHERE name='index_billing_departments_on_deleted_at' AND type='index'
         | 
| 2421 | 
            -
            [0m
         | 
| 2422 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2423 | 
            -
                        FROM sqlite_master
         | 
| 2424 | 
            -
                        WHERE name='index_billing_departments_on_tax_group_id' AND type='index'
         | 
| 2425 | 
            -
                        UNION ALL
         | 
| 2426 | 
            -
                        SELECT sql
         | 
| 2427 | 
            -
                        FROM sqlite_temp_master
         | 
| 2428 | 
            -
                        WHERE name='index_billing_departments_on_tax_group_id' AND type='index'
         | 
| 2429 | 
            -
             | 
| 2430 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2431 | 
            -
                        FROM sqlite_master
         | 
| 2432 | 
            -
                        WHERE name='index_billing_modifiers_on_bill_id' AND type='index'
         | 
| 2433 | 
            -
                        UNION ALL
         | 
| 2434 | 
            -
                        SELECT sql
         | 
| 2435 | 
            -
                        FROM sqlite_temp_master
         | 
| 2436 | 
            -
                        WHERE name='index_billing_modifiers_on_bill_id' AND type='index'
         | 
| 2437 | 
            -
            [0m
         | 
| 2438 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2439 | 
            -
                        FROM sqlite_master
         | 
| 2440 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_operator_id' AND type='index'
         | 
| 2441 | 
            -
                        UNION ALL
         | 
| 2442 | 
            -
                        SELECT sql
         | 
| 2443 | 
            -
                        FROM sqlite_temp_master
         | 
| 2444 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_operator_id' AND type='index'
         | 
| 2445 | 
            -
             | 
| 2446 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2447 | 
            -
                        FROM sqlite_master
         | 
| 2448 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2449 | 
            -
                        UNION ALL
         | 
| 2450 | 
            -
                        SELECT sql
         | 
| 2451 | 
            -
                        FROM sqlite_temp_master
         | 
| 2452 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2453 | 
            -
            [0m
         | 
| 2454 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2455 | 
            -
                        FROM sqlite_master
         | 
| 2456 | 
            -
                        WHERE name='index_billing_operators_on_deleted_at' AND type='index'
         | 
| 2457 | 
            -
                        UNION ALL
         | 
| 2458 | 
            -
                        SELECT sql
         | 
| 2459 | 
            -
                        FROM sqlite_temp_master
         | 
| 2460 | 
            -
                        WHERE name='index_billing_operators_on_deleted_at' AND type='index'
         | 
| 2461 | 
            -
             | 
| 2462 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2463 | 
            -
                        FROM sqlite_master
         | 
| 2464 | 
            -
                        WHERE name='index_billing_origins_on_transfer_device_id' AND type='index'
         | 
| 2465 | 
            -
                        UNION ALL
         | 
| 2466 | 
            -
                        SELECT sql
         | 
| 2467 | 
            -
                        FROM sqlite_temp_master
         | 
| 2468 | 
            -
                        WHERE name='index_billing_origins_on_transfer_device_id' AND type='index'
         | 
| 2469 | 
            -
            [0m
         | 
| 2470 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2471 | 
            -
                        FROM sqlite_master
         | 
| 2472 | 
            -
                        WHERE name='index_billing_origins_on_deleted_at' AND type='index'
         | 
| 2473 | 
            -
                        UNION ALL
         | 
| 2474 | 
            -
                        SELECT sql
         | 
| 2475 | 
            -
                        FROM sqlite_temp_master
         | 
| 2476 | 
            -
                        WHERE name='index_billing_origins_on_deleted_at' AND type='index'
         | 
| 2477 | 
            -
             | 
| 2478 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2479 | 
            -
                        FROM sqlite_master
         | 
| 2480 | 
            -
                        WHERE name='index_billing_origins_on_fiscal_device_id' AND type='index'
         | 
| 2481 | 
            -
                        UNION ALL
         | 
| 2482 | 
            -
                        SELECT sql
         | 
| 2483 | 
            -
                        FROM sqlite_temp_master
         | 
| 2484 | 
            -
                        WHERE name='index_billing_origins_on_fiscal_device_id' AND type='index'
         | 
| 2485 | 
            -
            [0m
         | 
| 2486 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2487 | 
            -
                        FROM sqlite_master
         | 
| 2488 | 
            -
                        WHERE name='index_billing_payment_types_on_deleted_at' AND type='index'
         | 
| 2489 | 
            -
                        UNION ALL
         | 
| 2490 | 
            -
                        SELECT sql
         | 
| 2491 | 
            -
                        FROM sqlite_temp_master
         | 
| 2492 | 
            -
                        WHERE name='index_billing_payment_types_on_deleted_at' AND type='index'
         | 
| 2493 | 
            -
             | 
| 2494 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2495 | 
            -
                        FROM sqlite_master
         | 
| 2496 | 
            -
                        WHERE name='index_billing_payments_on_bill_id' AND type='index'
         | 
| 2497 | 
            -
                        UNION ALL
         | 
| 2498 | 
            -
                        SELECT sql
         | 
| 2499 | 
            -
                        FROM sqlite_temp_master
         | 
| 2500 | 
            -
                        WHERE name='index_billing_payments_on_bill_id' AND type='index'
         | 
| 2501 | 
            -
            [0m
         | 
| 2502 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2503 | 
            -
                        FROM sqlite_master
         | 
| 2504 | 
            -
                        WHERE name='index_billing_payments_on_deleted_at' AND type='index'
         | 
| 2505 | 
            -
                        UNION ALL
         | 
| 2506 | 
            -
                        SELECT sql
         | 
| 2507 | 
            -
                        FROM sqlite_temp_master
         | 
| 2508 | 
            -
                        WHERE name='index_billing_payments_on_deleted_at' AND type='index'
         | 
| 2509 | 
            -
             | 
| 2510 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2511 | 
            -
                        FROM sqlite_master
         | 
| 2512 | 
            -
                        WHERE name='index_billing_plus_on_department_id' AND type='index'
         | 
| 2513 | 
            -
                        UNION ALL
         | 
| 2514 | 
            -
                        SELECT sql
         | 
| 2515 | 
            -
                        FROM sqlite_temp_master
         | 
| 2516 | 
            -
                        WHERE name='index_billing_plus_on_department_id' AND type='index'
         | 
| 2517 | 
            -
            [0m
         | 
| 2518 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2519 | 
            -
                        FROM sqlite_master
         | 
| 2520 | 
            -
                        WHERE name='index_billing_plus_on_tax_group_id' AND type='index'
         | 
| 2521 | 
            -
                        UNION ALL
         | 
| 2522 | 
            -
                        SELECT sql
         | 
| 2523 | 
            -
                        FROM sqlite_temp_master
         | 
| 2524 | 
            -
                        WHERE name='index_billing_plus_on_tax_group_id' AND type='index'
         | 
| 2525 | 
            -
             | 
| 2526 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2527 | 
            -
                        FROM sqlite_master
         | 
| 2528 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_payment_type_id' AND type='index'
         | 
| 2529 | 
            -
                        UNION ALL
         | 
| 2530 | 
            -
                        SELECT sql
         | 
| 2531 | 
            -
                        FROM sqlite_temp_master
         | 
| 2532 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_payment_type_id' AND type='index'
         | 
| 2533 | 
            -
            [0m
         | 
| 2534 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2535 | 
            -
                        FROM sqlite_master
         | 
| 2536 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2537 | 
            -
                        UNION ALL
         | 
| 2538 | 
            -
                        SELECT sql
         | 
| 2539 | 
            -
                        FROM sqlite_temp_master
         | 
| 2540 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2541 | 
            -
             | 
| 2542 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2543 | 
            -
                        FROM sqlite_master
         | 
| 2544 | 
            -
                        WHERE name='index_billing_reports_on_origin_id' AND type='index'
         | 
| 2545 | 
            -
                        UNION ALL
         | 
| 2546 | 
            -
                        SELECT sql
         | 
| 2547 | 
            -
                        FROM sqlite_temp_master
         | 
| 2548 | 
            -
                        WHERE name='index_billing_reports_on_origin_id' AND type='index'
         | 
| 2549 | 
            -
            [0m
         | 
| 2550 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2551 | 
            -
                        FROM sqlite_master
         | 
| 2552 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_tax_group_id' AND type='index'
         | 
| 2553 | 
            -
                        UNION ALL
         | 
| 2554 | 
            -
                        SELECT sql
         | 
| 2555 | 
            -
                        FROM sqlite_temp_master
         | 
| 2556 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_tax_group_id' AND type='index'
         | 
| 2557 | 
            -
             | 
| 2558 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2559 | 
            -
                        FROM sqlite_master
         | 
| 2560 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2561 | 
            -
                        UNION ALL
         | 
| 2562 | 
            -
                        SELECT sql
         | 
| 2563 | 
            -
                        FROM sqlite_temp_master
         | 
| 2564 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2565 | 
            -
            [0m
         | 
| 2566 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2567 | 
            -
                        FROM sqlite_master
         | 
| 2568 | 
            -
                        WHERE name='index_billing_versions_on_item_type_and_item_id' AND type='index'
         | 
| 2569 | 
            -
                        UNION ALL
         | 
| 2570 | 
            -
                        SELECT sql
         | 
| 2571 | 
            -
                        FROM sqlite_temp_master
         | 
| 2572 | 
            -
                        WHERE name='index_billing_versions_on_item_type_and_item_id' AND type='index'
         | 
| 2573 | 
            -
             | 
| 2574 | 
            -
              [1m[36mActiveRecord::SchemaMigration Load (0.3ms)[0m  [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
         | 
| 2575 | 
            -
            Migrating to AddDeletedAtToBillingReport (20150512040421)
         | 
| 2576 | 
            -
              [1m[35m (0.1ms)[0m  begin transaction
         | 
| 2577 | 
            -
              [1m[36m (0.6ms)[0m  [1mALTER TABLE "billing_reports" ADD "deleted_at" datetime[0m
         | 
| 2578 | 
            -
              [1m[35mSQL (0.3ms)[0m  INSERT INTO "schema_migrations" ("version") VALUES (?)  [["version", "20150512040421"]]
         | 
| 2579 | 
            -
              [1m[36m (114.6ms)[0m  [1mcommit transaction[0m
         | 
| 2580 | 
            -
              [1m[35mActiveRecord::SchemaMigration Load (0.5ms)[0m  SELECT "schema_migrations".* FROM "schema_migrations"
         | 
| 2581 | 
            -
              [1m[36m (0.3ms)[0m  [1m            SELECT sql
         | 
| 2582 | 
            -
                        FROM sqlite_master
         | 
| 2583 | 
            -
                        WHERE name='index_billing_bills_on_billable_id_and_billable_type' AND type='index'
         | 
| 2584 | 
            -
                        UNION ALL
         | 
| 2585 | 
            -
                        SELECT sql
         | 
| 2586 | 
            -
                        FROM sqlite_temp_master
         | 
| 2587 | 
            -
                        WHERE name='index_billing_bills_on_billable_id_and_billable_type' AND type='index'
         | 
| 2588 | 
            -
            [0m
         | 
| 2589 | 
            -
              [1m[35m (0.3ms)[0m              SELECT sql
         | 
| 2590 | 
            -
                        FROM sqlite_master
         | 
| 2591 | 
            -
                        WHERE name='index_billing_bills_on_origin_id' AND type='index'
         | 
| 2592 | 
            -
                        UNION ALL
         | 
| 2593 | 
            -
                        SELECT sql
         | 
| 2594 | 
            -
                        FROM sqlite_temp_master
         | 
| 2595 | 
            -
                        WHERE name='index_billing_bills_on_origin_id' AND type='index'
         | 
| 2596 | 
            -
             | 
| 2597 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2598 | 
            -
                        FROM sqlite_master
         | 
| 2599 | 
            -
                        WHERE name='index_billing_bills_on_extface_job_id' AND type='index'
         | 
| 2600 | 
            -
                        UNION ALL
         | 
| 2601 | 
            -
                        SELECT sql
         | 
| 2602 | 
            -
                        FROM sqlite_temp_master
         | 
| 2603 | 
            -
                        WHERE name='index_billing_bills_on_extface_job_id' AND type='index'
         | 
| 2604 | 
            -
            [0m
         | 
| 2605 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2606 | 
            -
                        FROM sqlite_master
         | 
| 2607 | 
            -
                        WHERE name='index_billing_bills_on_report_id' AND type='index'
         | 
| 2608 | 
            -
                        UNION ALL
         | 
| 2609 | 
            -
                        SELECT sql
         | 
| 2610 | 
            -
                        FROM sqlite_temp_master
         | 
| 2611 | 
            -
                        WHERE name='index_billing_bills_on_report_id' AND type='index'
         | 
| 2612 | 
            -
             | 
| 2613 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2614 | 
            -
                        FROM sqlite_master
         | 
| 2615 | 
            -
                        WHERE name='index_billing_charges_on_bill_id' AND type='index'
         | 
| 2616 | 
            -
                        UNION ALL
         | 
| 2617 | 
            -
                        SELECT sql
         | 
| 2618 | 
            -
                        FROM sqlite_temp_master
         | 
| 2619 | 
            -
                        WHERE name='index_billing_charges_on_bill_id' AND type='index'
         | 
| 2620 | 
            -
            [0m
         | 
| 2621 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2622 | 
            -
                        FROM sqlite_master
         | 
| 2623 | 
            -
                        WHERE name='index_billing_charges_on_revenue_at' AND type='index'
         | 
| 2624 | 
            -
                        UNION ALL
         | 
| 2625 | 
            -
                        SELECT sql
         | 
| 2626 | 
            -
                        FROM sqlite_temp_master
         | 
| 2627 | 
            -
                        WHERE name='index_billing_charges_on_revenue_at' AND type='index'
         | 
| 2628 | 
            -
             | 
| 2629 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2630 | 
            -
                        FROM sqlite_master
         | 
| 2631 | 
            -
                        WHERE name='index_billing_charges_on_deleted_at' AND type='index'
         | 
| 2632 | 
            -
                        UNION ALL
         | 
| 2633 | 
            -
                        SELECT sql
         | 
| 2634 | 
            -
                        FROM sqlite_temp_master
         | 
| 2635 | 
            -
                        WHERE name='index_billing_charges_on_deleted_at' AND type='index'
         | 
| 2636 | 
            -
            [0m
         | 
| 2637 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2638 | 
            -
                        FROM sqlite_master
         | 
| 2639 | 
            -
                        WHERE name='index_billing_charges_on_origin_id' AND type='index'
         | 
| 2640 | 
            -
                        UNION ALL
         | 
| 2641 | 
            -
                        SELECT sql
         | 
| 2642 | 
            -
                        FROM sqlite_temp_master
         | 
| 2643 | 
            -
                        WHERE name='index_billing_charges_on_origin_id' AND type='index'
         | 
| 2644 | 
            -
             | 
| 2645 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2646 | 
            -
                        FROM sqlite_master
         | 
| 2647 | 
            -
                        WHERE name='index_billing_charges_on_chargable_id_and_chargable_type' AND type='index'
         | 
| 2648 | 
            -
                        UNION ALL
         | 
| 2649 | 
            -
                        SELECT sql
         | 
| 2650 | 
            -
                        FROM sqlite_temp_master
         | 
| 2651 | 
            -
                        WHERE name='index_billing_charges_on_chargable_id_and_chargable_type' AND type='index'
         | 
| 2652 | 
            -
            [0m
         | 
| 2653 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2654 | 
            -
                        FROM sqlite_master
         | 
| 2655 | 
            -
                        WHERE name='index_billing_departments_on_deleted_at' AND type='index'
         | 
| 2656 | 
            -
                        UNION ALL
         | 
| 2657 | 
            -
                        SELECT sql
         | 
| 2658 | 
            -
                        FROM sqlite_temp_master
         | 
| 2659 | 
            -
                        WHERE name='index_billing_departments_on_deleted_at' AND type='index'
         | 
| 2660 | 
            -
             | 
| 2661 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2662 | 
            -
                        FROM sqlite_master
         | 
| 2663 | 
            -
                        WHERE name='index_billing_departments_on_tax_group_id' AND type='index'
         | 
| 2664 | 
            -
                        UNION ALL
         | 
| 2665 | 
            -
                        SELECT sql
         | 
| 2666 | 
            -
                        FROM sqlite_temp_master
         | 
| 2667 | 
            -
                        WHERE name='index_billing_departments_on_tax_group_id' AND type='index'
         | 
| 2668 | 
            -
            [0m
         | 
| 2669 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2670 | 
            -
                        FROM sqlite_master
         | 
| 2671 | 
            -
                        WHERE name='index_billing_modifiers_on_bill_id' AND type='index'
         | 
| 2672 | 
            -
                        UNION ALL
         | 
| 2673 | 
            -
                        SELECT sql
         | 
| 2674 | 
            -
                        FROM sqlite_temp_master
         | 
| 2675 | 
            -
                        WHERE name='index_billing_modifiers_on_bill_id' AND type='index'
         | 
| 2676 | 
            -
             | 
| 2677 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2678 | 
            -
                        FROM sqlite_master
         | 
| 2679 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_operator_id' AND type='index'
         | 
| 2680 | 
            -
                        UNION ALL
         | 
| 2681 | 
            -
                        SELECT sql
         | 
| 2682 | 
            -
                        FROM sqlite_temp_master
         | 
| 2683 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_operator_id' AND type='index'
         | 
| 2684 | 
            -
            [0m
         | 
| 2685 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2686 | 
            -
                        FROM sqlite_master
         | 
| 2687 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2688 | 
            -
                        UNION ALL
         | 
| 2689 | 
            -
                        SELECT sql
         | 
| 2690 | 
            -
                        FROM sqlite_temp_master
         | 
| 2691 | 
            -
                        WHERE name='index_billing_op_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2692 | 
            -
             | 
| 2693 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2694 | 
            -
                        FROM sqlite_master
         | 
| 2695 | 
            -
                        WHERE name='index_billing_operators_on_deleted_at' AND type='index'
         | 
| 2696 | 
            -
                        UNION ALL
         | 
| 2697 | 
            -
                        SELECT sql
         | 
| 2698 | 
            -
                        FROM sqlite_temp_master
         | 
| 2699 | 
            -
                        WHERE name='index_billing_operators_on_deleted_at' AND type='index'
         | 
| 2700 | 
            -
            [0m
         | 
| 2701 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2702 | 
            -
                        FROM sqlite_master
         | 
| 2703 | 
            -
                        WHERE name='index_billing_origins_on_transfer_device_id' AND type='index'
         | 
| 2704 | 
            -
                        UNION ALL
         | 
| 2705 | 
            -
                        SELECT sql
         | 
| 2706 | 
            -
                        FROM sqlite_temp_master
         | 
| 2707 | 
            -
                        WHERE name='index_billing_origins_on_transfer_device_id' AND type='index'
         | 
| 2708 | 
            -
             | 
| 2709 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2710 | 
            -
                        FROM sqlite_master
         | 
| 2711 | 
            -
                        WHERE name='index_billing_origins_on_deleted_at' AND type='index'
         | 
| 2712 | 
            -
                        UNION ALL
         | 
| 2713 | 
            -
                        SELECT sql
         | 
| 2714 | 
            -
                        FROM sqlite_temp_master
         | 
| 2715 | 
            -
                        WHERE name='index_billing_origins_on_deleted_at' AND type='index'
         | 
| 2716 | 
            -
            [0m
         | 
| 2717 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2718 | 
            -
                        FROM sqlite_master
         | 
| 2719 | 
            -
                        WHERE name='index_billing_origins_on_fiscal_device_id' AND type='index'
         | 
| 2720 | 
            -
                        UNION ALL
         | 
| 2721 | 
            -
                        SELECT sql
         | 
| 2722 | 
            -
                        FROM sqlite_temp_master
         | 
| 2723 | 
            -
                        WHERE name='index_billing_origins_on_fiscal_device_id' AND type='index'
         | 
| 2724 | 
            -
             | 
| 2725 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2726 | 
            -
                        FROM sqlite_master
         | 
| 2727 | 
            -
                        WHERE name='index_billing_payment_types_on_deleted_at' AND type='index'
         | 
| 2728 | 
            -
                        UNION ALL
         | 
| 2729 | 
            -
                        SELECT sql
         | 
| 2730 | 
            -
                        FROM sqlite_temp_master
         | 
| 2731 | 
            -
                        WHERE name='index_billing_payment_types_on_deleted_at' AND type='index'
         | 
| 2732 | 
            -
            [0m
         | 
| 2733 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2734 | 
            -
                        FROM sqlite_master
         | 
| 2735 | 
            -
                        WHERE name='index_billing_payments_on_bill_id' AND type='index'
         | 
| 2736 | 
            -
                        UNION ALL
         | 
| 2737 | 
            -
                        SELECT sql
         | 
| 2738 | 
            -
                        FROM sqlite_temp_master
         | 
| 2739 | 
            -
                        WHERE name='index_billing_payments_on_bill_id' AND type='index'
         | 
| 2740 | 
            -
             | 
| 2741 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2742 | 
            -
                        FROM sqlite_master
         | 
| 2743 | 
            -
                        WHERE name='index_billing_payments_on_deleted_at' AND type='index'
         | 
| 2744 | 
            -
                        UNION ALL
         | 
| 2745 | 
            -
                        SELECT sql
         | 
| 2746 | 
            -
                        FROM sqlite_temp_master
         | 
| 2747 | 
            -
                        WHERE name='index_billing_payments_on_deleted_at' AND type='index'
         | 
| 2748 | 
            -
            [0m
         | 
| 2749 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2750 | 
            -
                        FROM sqlite_master
         | 
| 2751 | 
            -
                        WHERE name='index_billing_plus_on_department_id' AND type='index'
         | 
| 2752 | 
            -
                        UNION ALL
         | 
| 2753 | 
            -
                        SELECT sql
         | 
| 2754 | 
            -
                        FROM sqlite_temp_master
         | 
| 2755 | 
            -
                        WHERE name='index_billing_plus_on_department_id' AND type='index'
         | 
| 2756 | 
            -
             | 
| 2757 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2758 | 
            -
                        FROM sqlite_master
         | 
| 2759 | 
            -
                        WHERE name='index_billing_plus_on_tax_group_id' AND type='index'
         | 
| 2760 | 
            -
                        UNION ALL
         | 
| 2761 | 
            -
                        SELECT sql
         | 
| 2762 | 
            -
                        FROM sqlite_temp_master
         | 
| 2763 | 
            -
                        WHERE name='index_billing_plus_on_tax_group_id' AND type='index'
         | 
| 2764 | 
            -
            [0m
         | 
| 2765 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2766 | 
            -
                        FROM sqlite_master
         | 
| 2767 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_payment_type_id' AND type='index'
         | 
| 2768 | 
            -
                        UNION ALL
         | 
| 2769 | 
            -
                        SELECT sql
         | 
| 2770 | 
            -
                        FROM sqlite_temp_master
         | 
| 2771 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_payment_type_id' AND type='index'
         | 
| 2772 | 
            -
             | 
| 2773 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2774 | 
            -
                        FROM sqlite_master
         | 
| 2775 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2776 | 
            -
                        UNION ALL
         | 
| 2777 | 
            -
                        SELECT sql
         | 
| 2778 | 
            -
                        FROM sqlite_temp_master
         | 
| 2779 | 
            -
                        WHERE name='index_billing_pt_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2780 | 
            -
            [0m
         | 
| 2781 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2782 | 
            -
                        FROM sqlite_master
         | 
| 2783 | 
            -
                        WHERE name='index_billing_reports_on_origin_id' AND type='index'
         | 
| 2784 | 
            -
                        UNION ALL
         | 
| 2785 | 
            -
                        SELECT sql
         | 
| 2786 | 
            -
                        FROM sqlite_temp_master
         | 
| 2787 | 
            -
                        WHERE name='index_billing_reports_on_origin_id' AND type='index'
         | 
| 2788 | 
            -
             | 
| 2789 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2790 | 
            -
                        FROM sqlite_master
         | 
| 2791 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_tax_group_id' AND type='index'
         | 
| 2792 | 
            -
                        UNION ALL
         | 
| 2793 | 
            -
                        SELECT sql
         | 
| 2794 | 
            -
                        FROM sqlite_temp_master
         | 
| 2795 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_tax_group_id' AND type='index'
         | 
| 2796 | 
            -
            [0m
         | 
| 2797 | 
            -
              [1m[35m (0.2ms)[0m              SELECT sql
         | 
| 2798 | 
            -
                        FROM sqlite_master
         | 
| 2799 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2800 | 
            -
                        UNION ALL
         | 
| 2801 | 
            -
                        SELECT sql
         | 
| 2802 | 
            -
                        FROM sqlite_temp_master
         | 
| 2803 | 
            -
                        WHERE name='index_billing_tg_fp_mappings_on_extface_driver_id' AND type='index'
         | 
| 2804 | 
            -
             | 
| 2805 | 
            -
              [1m[36m (0.2ms)[0m  [1m            SELECT sql
         | 
| 2806 | 
            -
                        FROM sqlite_master
         | 
| 2807 | 
            -
                        WHERE name='index_billing_versions_on_item_type_and_item_id' AND type='index'
         | 
| 2808 | 
            -
                        UNION ALL
         | 
| 2809 | 
            -
                        SELECT sql
         | 
| 2810 | 
            -
                        FROM sqlite_temp_master
         | 
| 2811 | 
            -
                        WHERE name='index_billing_versions_on_item_type_and_item_id' AND type='index'
         | 
| 2812 | 
            -
            [0m
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: billing
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.7
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Alex Vangelov
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2015-05-10 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rails
         | 
| @@ -52,20 +52,6 @@ dependencies: | |
| 52 52 | 
             
                - - ">="
         | 
| 53 53 | 
             
                  - !ruby/object:Gem::Version
         | 
| 54 54 | 
             
                    version: '0'
         | 
| 55 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 56 | 
            -
              name: resque
         | 
| 57 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 58 | 
            -
                requirements:
         | 
| 59 | 
            -
                - - ">="
         | 
| 60 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            -
                    version: '0'
         | 
| 62 | 
            -
              type: :runtime
         | 
| 63 | 
            -
              prerelease: false
         | 
| 64 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 65 | 
            -
                requirements:
         | 
| 66 | 
            -
                - - ">="
         | 
| 67 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 68 | 
            -
                    version: '0'
         | 
| 69 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 56 | 
             
              name: sqlite3
         | 
| 71 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -90,7 +76,6 @@ files: | |
| 90 76 | 
             
            - MIT-LICENSE
         | 
| 91 77 | 
             
            - README.rdoc
         | 
| 92 78 | 
             
            - Rakefile
         | 
| 93 | 
            -
            - app/jobs/billing/issue_fiscal_doc.rb
         | 
| 94 79 | 
             
            - app/models/billing/bill.rb
         | 
| 95 80 | 
             
            - app/models/billing/charge.rb
         | 
| 96 81 | 
             
            - app/models/billing/department.rb
         | 
| @@ -172,8 +157,6 @@ files: | |
| 172 157 | 
             
            - db/migrate/20141229234928_create_billing_resources.rb
         | 
| 173 158 | 
             
            - db/migrate/20150311013019_add_pwd_to_billing_operator_mapping.rb
         | 
| 174 159 | 
             
            - db/migrate/20150510142229_add_object_changes_to_billing_versions.rb
         | 
| 175 | 
            -
            - db/migrate/20150510235441_add_master_to_billing_version.rb
         | 
| 176 | 
            -
            - db/migrate/20150512040421_add_deleted_at_to_billing_report.rb
         | 
| 177 160 | 
             
            - lib/billing.rb
         | 
| 178 161 | 
             
            - lib/billing/billable.rb
         | 
| 179 162 | 
             
            - lib/billing/engine.rb
         | 
| @@ -263,12 +246,12 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 263 246 | 
             
                  version: '0'
         | 
| 264 247 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 265 248 | 
             
              requirements:
         | 
| 266 | 
            -
              - - " | 
| 249 | 
            +
              - - ">="
         | 
| 267 250 | 
             
                - !ruby/object:Gem::Version
         | 
| 268 | 
            -
                  version:  | 
| 251 | 
            +
                  version: '0'
         | 
| 269 252 | 
             
            requirements: []
         | 
| 270 253 | 
             
            rubyforge_project: 
         | 
| 271 | 
            -
            rubygems_version: 2. | 
| 254 | 
            +
            rubygems_version: 2.4.6
         | 
| 272 255 | 
             
            signing_key: 
         | 
| 273 256 | 
             
            specification_version: 4
         | 
| 274 257 | 
             
            summary: Billing for Rails 4 app
         | 
| @@ -1,132 +0,0 @@ | |
| 1 | 
            -
            module Resque
         | 
| 2 | 
            -
              module Plugins
         | 
| 3 | 
            -
                module ExtfaceLonelyDevice
         | 
| 4 | 
            -
                  LOCK_TIMEOUT = 60 * 60 * 24 * 5 # 5 days
         | 
| 5 | 
            -
             | 
| 6 | 
            -
                  def lock_timeout
         | 
| 7 | 
            -
                    Time.now.to_i + LOCK_TIMEOUT + 1
         | 
| 8 | 
            -
                  end
         | 
| 9 | 
            -
             | 
| 10 | 
            -
                  def requeue_interval
         | 
| 11 | 
            -
                    self.instance_variable_get(:@requeue_interval) || 1
         | 
| 12 | 
            -
                  end
         | 
| 13 | 
            -
             | 
| 14 | 
            -
                  # Overwrite this method to uniquely identify which mutex should be used
         | 
| 15 | 
            -
                  # for a resque worker.
         | 
| 16 | 
            -
                  def redis_key(*args)
         | 
| 17 | 
            -
                    "extface_"
         | 
| 18 | 
            -
                  end
         | 
| 19 | 
            -
             | 
| 20 | 
            -
                  def can_lock_queue?(*args)
         | 
| 21 | 
            -
                    now = Time.now.to_i
         | 
| 22 | 
            -
                    key = redis_key(*args)
         | 
| 23 | 
            -
                    timeout = lock_timeout
         | 
| 24 | 
            -
             | 
| 25 | 
            -
                    # Per http://redis.io/commands/setnx
         | 
| 26 | 
            -
                    return true  if Resque.redis.setnx(key, timeout)
         | 
| 27 | 
            -
                    return false if Resque.redis.get(key).to_i > now
         | 
| 28 | 
            -
                    return true  if Resque.redis.getset(key, timeout).to_i <= now
         | 
| 29 | 
            -
                    return false
         | 
| 30 | 
            -
                  rescue ActiveRecord::RecordNotFound #redis_key exception
         | 
| 31 | 
            -
                    p "Not found!!!"
         | 
| 32 | 
            -
                    sleep 1
         | 
| 33 | 
            -
                    reenqueue(*args) #will stop if new redis_key exception
         | 
| 34 | 
            -
                  end
         | 
| 35 | 
            -
             | 
| 36 | 
            -
                  def unlock_queue(*args)
         | 
| 37 | 
            -
                    Resque.redis.del(redis_key(*args))
         | 
| 38 | 
            -
                  end
         | 
| 39 | 
            -
             | 
| 40 | 
            -
                  def reenqueue(*args)
         | 
| 41 | 
            -
                    Resque.enqueue_to(redis_key(*args), self, *args)
         | 
| 42 | 
            -
                  end
         | 
| 43 | 
            -
             | 
| 44 | 
            -
                  def before_perform(*args)
         | 
| 45 | 
            -
                    unless can_lock_queue?(*args)
         | 
| 46 | 
            -
                      # Sleep so the CPU's rest
         | 
| 47 | 
            -
                      sleep(requeue_interval)
         | 
| 48 | 
            -
             | 
| 49 | 
            -
                      # can't get the lock, so re-enqueue the task
         | 
| 50 | 
            -
                      reenqueue(*args)
         | 
| 51 | 
            -
             | 
| 52 | 
            -
                      # and don't perform
         | 
| 53 | 
            -
                      raise Resque::Job::DontPerform
         | 
| 54 | 
            -
                    end
         | 
| 55 | 
            -
                  end
         | 
| 56 | 
            -
             | 
| 57 | 
            -
                  def around_perform(*args)
         | 
| 58 | 
            -
                    begin
         | 
| 59 | 
            -
                      yield
         | 
| 60 | 
            -
                    ensure
         | 
| 61 | 
            -
                      unlock_queue(*args)
         | 
| 62 | 
            -
                    end
         | 
| 63 | 
            -
                  end
         | 
| 64 | 
            -
                end
         | 
| 65 | 
            -
              end
         | 
| 66 | 
            -
            end
         | 
| 67 | 
            -
             | 
| 68 | 
            -
            module Billing
         | 
| 69 | 
            -
              class IssueFiscalDoc
         | 
| 70 | 
            -
                extend Resque::Plugins::ExtfaceLonelyDevice
         | 
| 71 | 
            -
                
         | 
| 72 | 
            -
                def self.redis_key(bill_id)
         | 
| 73 | 
            -
                  "extface_#{Bill.find(bill_id).extface_job.device_id}"
         | 
| 74 | 
            -
                end
         | 
| 75 | 
            -
             | 
| 76 | 
            -
                def self.perform(bill_id)
         | 
| 77 | 
            -
                  bill = Bill.find(bill_id)
         | 
| 78 | 
            -
                  qname = "extface_#{bill.extface_job.device_id}"
         | 
| 79 | 
            -
                  wjs = Resque::Worker.working.find_all{ |w| w.job && w.job['queue'] == qname }
         | 
| 80 | 
            -
                  
         | 
| 81 | 
            -
                  p "############################"
         | 
| 82 | 
            -
                  p "d: #{bill.extface_job.device_id} Issue Fiscal Doc ##{bill_id}, job: #{bill.extface_job_id}, wjs: #{wjs.inspect}"
         | 
| 83 | 
            -
                  p "____________________________"
         | 
| 84 | 
            -
                  p "active jobs: #{bill.extface_job.device.jobs.active.count}"
         | 
| 85 | 
            -
                  
         | 
| 86 | 
            -
             | 
| 87 | 
            -
                    bill.extface_job.runtime do |s|
         | 
| 88 | 
            -
                      return unless bill.fiscalizable?
         | 
| 89 | 
            -
                      operator_mapping = bill.find_operator_mapping_for(s)
         | 
| 90 | 
            -
                      s.notify "Fiscal Doc Start"
         | 
| 91 | 
            -
                      s.autofix_unclosed_doc
         | 
| 92 | 
            -
                      s.open_fiscal_doc(operator_mapping.try(:mapping), operator_mapping.try(:pwd))
         | 
| 93 | 
            -
                      s.notify "Register Sale"
         | 
| 94 | 
            -
                      bill.charges.each do |charge|
         | 
| 95 | 
            -
                        neto, percent_ratio = nil, nil, nil
         | 
| 96 | 
            -
                        if modifier = charge.modifier
         | 
| 97 | 
            -
                          neto = modifier.fixed_value
         | 
| 98 | 
            -
                          percent_ratio = modifier.percent_ratio unless neto.present?
         | 
| 99 | 
            -
                        end
         | 
| 100 | 
            -
                        if charge.price.zero? #printing comments with zero charges (TODO check zero charges allowed?)
         | 
| 101 | 
            -
                          s.add_comment charge.text
         | 
| 102 | 
            -
                        else
         | 
| 103 | 
            -
                          s.add_sale(
         | 
| 104 | 
            -
                            s.class::SaleItem.new(
         | 
| 105 | 
            -
                              price: charge.price.to_f, 
         | 
| 106 | 
            -
                              text1: charge.name,
         | 
| 107 | 
            -
                              text2: charge.description,
         | 
| 108 | 
            -
                              tax_group: charge.find_tax_group_mapping_for(s), #find tax group mapping by ratio , not nice
         | 
| 109 | 
            -
                              qty: charge.qty,
         | 
| 110 | 
            -
                              neto: neto,
         | 
| 111 | 
            -
                              percent_ratio: percent_ratio #TODO check format
         | 
| 112 | 
            -
                            )
         | 
| 113 | 
            -
                          )
         | 
| 114 | 
            -
                        end
         | 
| 115 | 
            -
                      end
         | 
| 116 | 
            -
                      if global_modifier_value = bill.global_modifier_value
         | 
| 117 | 
            -
                        s.notify "Register Global Modifier"
         | 
| 118 | 
            -
                        s.add_total_modifier global_modifier_value.to_f 
         | 
| 119 | 
            -
                      end
         | 
| 120 | 
            -
                      s.notify "Register Payment"
         | 
| 121 | 
            -
                      bill.payments.each do |payment|
         | 
| 122 | 
            -
                        s.add_payment payment.value.to_f, payment.find_payment_type_mapping_for(s)
         | 
| 123 | 
            -
                      end
         | 
| 124 | 
            -
                      s.notify "Close Fiscal Receipt"
         | 
| 125 | 
            -
                      s.close_fiscal_doc
         | 
| 126 | 
            -
                      s.notify "Fiscal Doc End"
         | 
| 127 | 
            -
                    end
         | 
| 128 | 
            -
                rescue Resque::TermException
         | 
| 129 | 
            -
                  reenqueue(bill_id)
         | 
| 130 | 
            -
                end
         | 
| 131 | 
            -
              end
         | 
| 132 | 
            -
            end
         |