dolar-bna 1.2.4 → 1.2.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1c18157ed7fb15f024cee512970185b25c8b694136474acb835817af09681d79
4
- data.tar.gz: 641e0e778d0e8e9ee42d46bf1557d863416960b879e021af106afd93e467e917
3
+ metadata.gz: 02242b5a3c76e60de04841f3bacd3d61663df1e4ef46ee2f814cefd9786cbda8
4
+ data.tar.gz: 515ce9858b121266e0e9c4148c550d21e562e5945b386c962e3b6332f64141a9
5
5
  SHA512:
6
- metadata.gz: ee6f485e014d3b8821c3c38b7c3bf9cac396fed9be6df3804a3f544dae7487d1fe43f5848541527b8f9bceb3b230e95385b34a319ab550139e50b90f1ca1f08e
7
- data.tar.gz: 22d78e797e229c11856f2f5e942ad4c999c33159441e8b79026b448fd4e3f6161ef6c7bc191a985db7e53c244d09c77e4c492f93034c9c092f02b9cea5ed3144
6
+ metadata.gz: d2929210f18902108d4003e371c5628785769596c1d5347584b17301103d6f7e803d45d913a1d3b4d4bb529e4918266a5624b2d165d5910d7aeeee7fbf573ce2
7
+ data.tar.gz: 2ba4e95572a52fd78966d5c5e873c996cbee96ab3ae59c8cba1be2ff8900ad2798b32c75e49265c33d4588a11b081ed1cd0499a93184be72c04b885624802455
@@ -9,10 +9,12 @@ module Dolar
9
9
  validates_numericality_of :dolar_buy, greater_than: 0, message: 'La cotizacion debe ser mayor a 0'
10
10
  validates_numericality_of :dolar_sell, greater_than: 0, message: 'La cotizacion debe ser mayor a 0'
11
11
  #validates_uniqueness_of :date, scope: [:dolar_type, :dolar_sell], if: :message: 'Ya existe una cotización de ese tipo para la fecha ingresada'
12
- DOLAR_TYPES = ["Divisa", "Billete", "Blue"]
12
+ DOLAR_TYPES = ["Divisa", "Billete", "Blue", "MEP", "CCL", "Tarjeta", "Agro"]
13
13
 
14
14
  validates_inclusion_of :dolar_type, in: DOLAR_TYPES, message: 'Tipo de cotización inválido'
15
15
 
16
+ after_save :set_dolar_agro, if: :dolar_mep?
17
+
16
18
  def self.search_by_date_range search
17
19
  unless search.blank?
18
20
  # La fecha la pasa un daterangepicker que la envia en este formato '01/01/2023 - 31/12/2023'
@@ -39,7 +41,18 @@ module Dolar
39
41
  end
40
42
  end
41
43
 
42
- end
44
+ def dolar_mep?
45
+ dolar_type == "MEP"
46
+ end
43
47
 
48
+ def set_dolar_agro
49
+ divisa_value = Dolar::Bna::DolarCotization.where(dolar_type: 'Divisa', date: self.date).order(date: :asc, created_at: :asc).last
50
+ if divisa_value
51
+ dolar_buy_average = ((self.dolar_buy.to_f * 0.2) + (divisa_value.dolar_buy.to_f * 0.8)).round(2)
52
+ dolar_sell_average = ((self.dolar_sell.to_f * 0.2) + (divisa_value.dolar_sell.to_f * 0.8)).round(2)
53
+ Dolar::Bna::DolarCotization.create(dolar_type: 'Agro', dolar_buy: dolar_buy_average, dolar_sell: dolar_sell_average, date: self.date)
54
+ end
55
+ end
56
+ end
44
57
  end
45
58
  end
@@ -1,5 +1,5 @@
1
1
  module Dolar
2
2
  module Bna
3
- VERSION = "1.2.4"
3
+ VERSION = "1.2.5"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dolar-bna
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.4
4
+ version: 1.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - LITECODE
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-10-31 00:00:00.000000000 Z
11
+ date: 2024-02-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: factory_bot