invoicing_payments_processing 1.1.31 → 1.1.41
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bufferpaypalnotification.rb +4 -1
- data/lib/invoice.rb +17 -5
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8b262508f5bb5461883af0c385256bc6011ed4aa
|
4
|
+
data.tar.gz: f57520e8d02e50ecdd5638d5392680223bb0e77c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: be69442d3cb147180d5a373f3bf1a71e81221de43957440df516751e954a1cdcd859da86685b8e76ab95fada8f63cd43044fec24dbc469b0c2daf33c866353b4
|
7
|
+
data.tar.gz: 9c6ee401ce0094ba5c08f8476a65e10f3720ac0350dcf43cd627f78e0b326897b2cd9c8c8d1d3f283e0a0ce81c9e3f89edc5199467f5e04ca92982a86f9b6802
|
@@ -236,6 +236,9 @@ module BlackStack
|
|
236
236
|
def self.process(params)
|
237
237
|
DB.transaction do
|
238
238
|
# verifico que no existe ya una notificacion
|
239
|
+
puts
|
240
|
+
puts
|
241
|
+
puts "params2:#{params.to_s}:."
|
239
242
|
b = BlackStack::BufferPayPalNotification.where(:id=>params['id']).first
|
240
243
|
if b.nil?
|
241
244
|
# proceso la notificacion
|
@@ -299,7 +302,7 @@ module BlackStack
|
|
299
302
|
|
300
303
|
# marco la factura como pagada
|
301
304
|
# registro contable - bookkeeping
|
302
|
-
i.
|
305
|
+
i.getPaidb.create_time) if i.canBePaid?
|
303
306
|
|
304
307
|
# crea una factura para el periodo siguiente (dia, semana, mes, anio)
|
305
308
|
j = BlackStack::Invoice.new()
|
data/lib/invoice.rb
CHANGED
@@ -10,10 +10,16 @@ module BlackStack
|
|
10
10
|
|
11
11
|
many_to_one :buffer_paypal_notification, :class=>:'BlackStack::BufferPayPalNotification', :key=>:id_buffer_paypal_notification
|
12
12
|
many_to_one :client, :class=>:'BlackStack::Client', :key=>:id_client
|
13
|
-
many_to_one :paypal_subscription, :class=>:'BlackStack::PayPalSubscription', :key=>:id_paypal_subscription
|
13
|
+
#many_to_one :paypal_subscription, :class=>:'BlackStack::PayPalSubscription', :key=>:id_paypal_subscription
|
14
14
|
many_to_one :previous, :class=>:'BlackStack::Invoice', :key=>:id_previous_invoice
|
15
15
|
one_to_many :items, :class=>:'BlackStack::InvoiceItem', :key=>:id_invoice
|
16
16
|
|
17
|
+
def paypal_subscription
|
18
|
+
return nil if self.subscr_id.nil?
|
19
|
+
return nil if self.subscr_id.to_s.size == 0
|
20
|
+
return BlackStack::PayPalSubscription.where(:subscr_id=>self.subscr_id.to_s).first
|
21
|
+
end
|
22
|
+
|
17
23
|
# compara 2 planes, y retorna TRUE si ambos pueden coexistir en una misma facutra, con un mismo enlace de PayPal
|
18
24
|
def self.compatibility?(h, i)
|
19
25
|
return false if h[:type]!=i[:type]
|
@@ -60,6 +66,7 @@ module BlackStack
|
|
60
66
|
#
|
61
67
|
def set_subscription(s)
|
62
68
|
self.subscr_id = s.subscr_id
|
69
|
+
self.delete_time = nil
|
63
70
|
self.save
|
64
71
|
# aplico la mismam modificacion a todas las factuas que le siguieron a esta
|
65
72
|
BlackStack::Invoice.where(:id_previous_invoice=>self.id).all { |j|
|
@@ -204,7 +211,7 @@ module BlackStack
|
|
204
211
|
trial2 = allow_trials && plan_descriptor[:trial2_fee]!=nil && plan_descriptor[:trial2_period]!=nil && plan_descriptor[:trial2_units]!=nil
|
205
212
|
|
206
213
|
values[:a3] = 0
|
207
|
-
self.items.each { |i|
|
214
|
+
self.items.each { |i|
|
208
215
|
if trial1 && i.units!=i.plan_descriptor[:trial_credits]
|
209
216
|
raise 'Cannot order more than 1 package and trial in the same invoice'
|
210
217
|
elsif trial1
|
@@ -308,6 +315,11 @@ module BlackStack
|
|
308
315
|
# marco la factura como pagada
|
309
316
|
self.status = BlackStack::Invoice::STATUS_PAID
|
310
317
|
self.delete_time = nil
|
318
|
+
if self.previous.nil? # si es la primer factura de una suscripcion, o no es una suscripcion
|
319
|
+
diff = payment_time - self.billing_period_from
|
320
|
+
self.billing_period_from = payment_time
|
321
|
+
self.billing_period_to += diff
|
322
|
+
end
|
311
323
|
self.save
|
312
324
|
# expiracion de creditos de la factura anterior
|
313
325
|
i = self.previous
|
@@ -413,7 +425,7 @@ module BlackStack
|
|
413
425
|
# le seteo la fecha de hoy
|
414
426
|
self.billing_period_from = now()
|
415
427
|
#puts
|
416
|
-
#puts
|
428
|
+
#puts
|
417
429
|
# si el plan tiene un primer trial, y
|
418
430
|
# es la primer factura, entonces:
|
419
431
|
# => se trata del primer pago por trial
|
@@ -422,7 +434,7 @@ module BlackStack
|
|
422
434
|
units = h[:trial_credits].to_i
|
423
435
|
unit_price = h[:trial_fee].to_f / h[:trial_credits].to_f
|
424
436
|
billing_period_to = DB["SELECT DATEADD(#{h[:trial_period].to_s}, +#{h[:trial_units].to_s}, '#{self.billing_period_from.to_s}') AS [now]"].map(:now)[0].to_s
|
425
|
-
|
437
|
+
|
426
438
|
# si el plan tiene un segundo trial, y
|
427
439
|
# es la segunda factura, entonces:
|
428
440
|
# => se trata del segundo pago por segundo trial
|
@@ -431,7 +443,7 @@ module BlackStack
|
|
431
443
|
units = h[:trial2_credits].to_i
|
432
444
|
unit_price = h[:trial2_fee].to_f / h[:trial2_credits].to_f
|
433
445
|
billing_period_to = DB["SELECT DATEADD(#{h[:trial2_period].to_s}, +#{h[:trial2_units].to_s}, '#{self.billing_period_from.to_s}') AS [now]"].map(:now)[0].to_s
|
434
|
-
|
446
|
+
|
435
447
|
# si el plan tiene un fee, y
|
436
448
|
elsif h[:fee].to_f != nil && h[:type] == BlackStack::InvoicingPaymentsProcessing::BasePlan::PAYMENT_SUBSCRIPTION
|
437
449
|
#puts 'c'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: invoicing_payments_processing
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.41
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Leandro Daniel Sardi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-10-
|
11
|
+
date: 2020-10-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: websocket
|