b2b_center_api 0.0.5 → 0.0.6

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
  SHA1:
3
- metadata.gz: aa4e1d50072af46d48f5dc80d0a6cfc0f570df70
4
- data.tar.gz: 3c5bf03d690060ae2ba911fd6886ab60625dce5a
3
+ metadata.gz: 8ae9bb7a5232acda94f3339cbc4e1962e8473953
4
+ data.tar.gz: b496be9f084acf82a191c8a597d173776bf18730
5
5
  SHA512:
6
- metadata.gz: e0e8f60b2a2375de079ab747fb53cbff16b2f33572f049e9615b972cfb36dca9117cb2f06ee9d466fcc4f0445c535099417e2f1e03d0a7c160081f34afd5030b
7
- data.tar.gz: fbecff3304cf23808bfe8686cd160c9ab157b2c3790432fb42bc491361e73d00d03de112025e7cca75ca3abf32c649d7c57007305be4d4ce562e0e607588f887
6
+ metadata.gz: 67aad8cfe3a7e343a3bd420c2a9b1338ba37e2392cbf3388572bca24dfd00a340cc2a481440e6db48752d6a8c0c696ba98efe12aba57623b1e68c87ec21950a9
7
+ data.tar.gz: 82a4c9741c994bdc6c5085c28048a93c299f2d02041bad0ddd48f78836a9df8a44f9adc28c7088db72d857963d96feb5ffe496d1af347af8a6c8427de9e05adf
@@ -25,5 +25,14 @@ module B2bCenterApi
25
25
  response = @client_web.command :get_offer, tender_id: tender_id, firm_id: firm_id, offer_num: offer_num
26
26
  WebService::Types::TenderOffer.from_response(response, @client, tender_id, firm_id, offer_num)
27
27
  end
28
+
29
+ # Получить результаты обработки лота
30
+ # @param tender_id [Integer] Номер конкурса
31
+ # @param lot_id [Integer] Номер лота
32
+ # @return [WebService::Types::TenderLotResults]
33
+ def get_lot_result(tender_id, lot_id)
34
+ response = @client_web.command :get_lot_result, tender_id: tender_id, lot_id: lot_id
35
+ WebService::Types::TenderLotResults.from_response(response, @client, tender_id, lot_id)
36
+ end
28
37
  end
29
38
  end
@@ -1,3 +1,3 @@
1
1
  module B2bCenterApi
2
- VERSION = '0.0.5'
2
+ VERSION = '0.0.6'
3
3
  end
@@ -0,0 +1,63 @@
1
+ module B2bCenterApi
2
+ module WebService
3
+ module Types
4
+ # результаты обработки конкурсных заявок
5
+ class TenderLotResult < WebService::BaseType
6
+ # @return[Integer] ID организации
7
+ attr_accessor :firm_id
8
+ # @return[Integer] Номер альтернативного предложения.
9
+ # = 0 — для основной конкурсной заявки
10
+ attr_accessor :alternate_num
11
+ # @return[String] Конкурсная заявка по лоту:
12
+ # "" — не обработана
13
+ # "none" — не поступила
14
+ # "received" — поступила
15
+ # "reject" — отклонена. Формат значения VARCHAR(10)
16
+ attr_accessor :result
17
+ # @return[String] Причина отклонения заявки по лоту
18
+ attr_accessor :reason
19
+ # @return[Integer] Номер, полученный при ранжировке
20
+ attr_accessor :rank
21
+ # @return[Float] Цена с НДС. Формат значения DECIMAL(15,2)
22
+ attr_accessor :price
23
+ # @return[Float] Цена без НДС. Формат значения DECIMAL(15,2)
24
+ attr_accessor :price_notax
25
+ # @return[String] Предмет конкурсной заявки
26
+ attr_accessor :subject
27
+ # @return[String] Существенные условия конкурсной заявки
28
+ attr_accessor :essential
29
+ # @return[Float] Цена после переторжки с НДС. Формат значения DECIMAL(15,2)
30
+ attr_accessor :haggling_price
31
+ # @return[Float] Цена после переторжки без НДС. Формат значения DECIMAL(15,2)
32
+ attr_accessor :haggling_price_notax
33
+ # @return[Float] Итоговая цена с НДС. Формат значения DECIMAL(15,2)
34
+ attr_accessor :final_price
35
+ # @return[Float] Итоговая цена без НДС. Формат значения DECIMAL(15,2)
36
+ attr_accessor :final_price_notax
37
+
38
+ # @return [TenderLotResult[]]
39
+ def self.from_part_response(response)
40
+ return if response.nil?
41
+ results = to_array(response[:tender_lot_result]).map do |tlr|
42
+ t = TenderLotResult.new
43
+ t.firm_id = convert(tlr[:firm_id], :integer)
44
+ t.alternate_num = convert(tlr[:alternate_num], :integer)
45
+ t.result = convert(tlr[:result], :string)
46
+ t.reason = convert(tlr[:reason], :string)
47
+ t.rank = convert(tlr[:rank], :integer)
48
+ t.price = convert(tlr[:price], :float)
49
+ t.price_notax = convert(tlr[:price_notax], :float)
50
+ t.subject = convert(tlr[:subject], :string)
51
+ t.essential = convert(tlr[:essential], :string)
52
+ t.haggling_price = convert(tlr[:haggling_price], :float)
53
+ t.haggling_price_notax = convert(tlr[:haggling_price_notax], :float)
54
+ t.final_price = convert(tlr[:final_price], :float)
55
+ t.final_price_notax = convert(tlr[:final_price_notax], :float)
56
+ t
57
+ end
58
+ results
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,43 @@
1
+ module B2bCenterApi
2
+ module WebService
3
+ module Types
4
+ # список результатов обработки предложений
5
+ class TenderLotResults < WebService::BaseType
6
+ # @return [Integer] Номер конкурса
7
+ attr_accessor :tender_id
8
+ # @return [Integer] Номер лота
9
+ attr_accessor :lot_id
10
+
11
+ # @return [B2bCenterApi::WebService::Types::TenderLotResult[]]
12
+ # Список результатов обработки конкурсных заявок (массив структур tender_lot_result).
13
+ attr_accessor :results
14
+ # @return [String] Статус завершения торгов по данному лоту. Возможные значения:
15
+ # "" — организатор не вынес никакого решения
16
+ # "rank" — организатор завершил процедуру, проранжировав заявки и выбрав победителя
17
+ # "none" — организатор не определил победителя
18
+ # "sole" — закупка у единственного источника
19
+ # "fail" — организатор признал конкурс несостоявшимся
20
+ # "cancel" — организатор принял решение отказаться от проведения конкурса
21
+ attr_accessor :result_status
22
+ # @return [String] Причина отклонения всех заявок (если result_status == "cancel")
23
+ attr_accessor :reason
24
+
25
+ # @return [TenderLotResults]
26
+ def self.from_response(response, client, tender_id, lot_id)
27
+ r = response.result
28
+ return if r.nil?
29
+
30
+ t = TenderLotResults.new
31
+ t.soap_client = client
32
+ t.tender_id = tender_id
33
+ t.lot_id = lot_id
34
+
35
+ t.results = TenderLotResult.from_part_response(r[:results])
36
+ t.result_status = convert(r[:result_status], :string)
37
+ t.reason = convert(r[:reason], :string)
38
+ t
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: b2b_center_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Archakov Aleksandr
@@ -101,6 +101,8 @@ files:
101
101
  - lib/b2b_center_api/web_service/types/auction_participant.rb
102
102
  - lib/b2b_center_api/web_service/types/b2b_file.rb
103
103
  - lib/b2b_center_api/web_service/types/firm_info.rb
104
+ - lib/b2b_center_api/web_service/types/tender_lot_result.rb
105
+ - lib/b2b_center_api/web_service/types/tender_lot_results.rb
104
106
  - lib/b2b_center_api/web_service/types/tender_offer.rb
105
107
  - lib/b2b_center_api/web_service/types/tender_participant.rb
106
108
  - spec/b2b_center_api_spec.rb