b2b_center_api 0.0.17 → 0.1.0

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: 9acc15a03f0c1ea4da348e732750e2809fd698d3
4
- data.tar.gz: edf9c4e5fe23e3bfde0f6f5b97c89b14604601ba
3
+ metadata.gz: 421271391b2fd6ad46692438d753830aa293ff18
4
+ data.tar.gz: f467f255e9a1e2dc880e103fcad550394a998afd
5
5
  SHA512:
6
- metadata.gz: 75ef344b9d8c82c1671905574169f07867935056aa2be26ed245eb1827fbb4e171f37e04ddb531708a226fdab6628a6e3551d8f16e7c922453517ff87fa42cb1
7
- data.tar.gz: 617f3bb3af00d1a57570f2f1095b918bfa913ac61df6ac59cf55fb2a39baf05b9d04a4ec7536d06a7809e36a2b2a44947b4084122f1539e688139a9b8aceeddf
6
+ metadata.gz: 2b42e24f107747891efb69dd0dbb13f561b9f071a93d604aec829003795a4eaf386df2f593a3bbf907cf964f4fe1a7cd1c3d2a872d4eea0f2e71c21b19f4a789
7
+ data.tar.gz: 5a32e5d627667bf8bfe43e36fac7d2f6f43dace9b0dc856e578e20b6034d92abb464d11b41459eef2beb342d9cf4c30ec89c7c2d4e35551e41d982eb5d613eb9
@@ -8,6 +8,15 @@ module B2bCenterApi
8
8
  @client_web = WebService::RemoteAuction.new(client)
9
9
  end
10
10
 
11
+ # Создать новый аукцион
12
+ # @param auction_data [WebService::Types::AuctionData, Hash] Данные для создания аукциона
13
+ # @return [Integer] id созданной процедуры
14
+ def create(auction_data)
15
+ auction_data = auction_data.to_h unless auction_data.is_a? Hash
16
+ response = @client_web.command :create, data: auction_data
17
+ response.result[:value]
18
+ end
19
+
11
20
  # Получить данные аукциона
12
21
  # @param auction_id [Integer] Номер процедуры
13
22
  # @return [WebService::Types::AuctionData]
@@ -1,3 +1,3 @@
1
1
  module B2bCenterApi
2
- VERSION = '0.0.17'
2
+ VERSION = '0.1.0'
3
3
  end
@@ -2,6 +2,8 @@ require 'b2b_center_api/web_service/type_cast'
2
2
  require 'b2b_center_api/remote_auction'
3
3
  require 'b2b_center_api/remote_market'
4
4
  require 'b2b_center_api/remote_tender'
5
+ require 'date'
6
+ require 'time'
5
7
 
6
8
  module B2bCenterApi
7
9
  module WebService
@@ -10,6 +12,8 @@ module B2bCenterApi
10
12
 
11
13
  attr_writer :soap_client
12
14
 
15
+ attr_reader :date_fields
16
+
13
17
  NO_INSPECT_ATTRS = [:@soap_client]
14
18
 
15
19
  def inspect
@@ -26,6 +30,9 @@ module B2bCenterApi
26
30
  NO_INSPECT_ATTRS.each { |a| vars.delete(a) }
27
31
 
28
32
  vars.each { |var| hash[var.to_s.delete('@').to_sym] = instance_variable_get(var) }
33
+
34
+ date_fields.each { |d| hash[d] = parse_date(hash[d]) } if date_fields
35
+
29
36
  hash
30
37
  end
31
38
 
@@ -43,6 +50,15 @@ module B2bCenterApi
43
50
  B2bCenterApi::RemoteTender.new(@soap_client)
44
51
  end
45
52
 
53
+ def parse_date(date)
54
+ if date.is_a? Date
55
+ return date.strftime("%d.%m.%Y")
56
+ elsif date.is_a? Time
57
+ return date.strftime('%d.%m.%Y %H:%M')
58
+ end
59
+ date
60
+ end
61
+
46
62
  def self.to_array(obj)
47
63
  obj.is_a?(Hash) ? [obj] : obj
48
64
  end
@@ -3,9 +3,19 @@ module B2bCenterApi
3
3
  module Types
4
4
  # Конкурс
5
5
  class AuctionData < WebService::BaseType
6
+
7
+ def initialize
8
+ @date_fields = [
9
+ :date_job_begin, :date_job_end, :date_end, :date_end_unsealing,
10
+ :date_start, :date_unsealing, :consideration_date, :results_date,
11
+ :date_qualified
12
+ ]
13
+ end
14
+
6
15
  # @return [Integer] id аукциона/объявления
7
16
  # При создании нового аукциона это поле можно опустить, либо =0
8
17
  attr_accessor :id
18
+
9
19
  # @return [Integer] Тип процедуры
10
20
  # Возможные значения
11
21
  # 1 — аукцион продавца
@@ -14,60 +24,87 @@ module B2bCenterApi
14
24
  # 4 — запрос предложений (объявление о покупке)
15
25
  # 14 — простая процедура закупки
16
26
  attr_accessor :type
27
+
17
28
  # @return [Integer] Способ закупки (только если тип процедуры 4)
18
29
  # Возможные значения
19
30
  # 0 — запрос предложений
20
31
  # 1 — запрос цен
21
32
  attr_accessor :board_extended_type
33
+
22
34
  # @return [Integer] Поле, необходимое для создания многолотовых запросов предложений
23
35
  # Возможные значения
24
36
  # 0 — при однолотовом запросе или первом лоте многолотового
25
37
  # id — Номер многолотового запроса предложений в который необходимо добавить лот
26
38
  attr_accessor :auction_id
27
- # @return[Integer] Номер лота в многолотовом запросе предложений
39
+
40
+ # @return [Integer] Номер лота в многолотовом запросе предложений
28
41
  # Возможные значения
29
42
  # 0 — для создания однолотового запроса предложений
30
43
  # N — для многолотового, где N - порядковый номер лота в многолотовом запросе предложений
31
44
  # (1 для первого в сочетании с auction_id = 0 и больше 1 в сочетании с auction_id = id)
32
45
  attr_accessor :number_in_group
46
+
33
47
  # @return [String]
48
+ # ID подразделения
34
49
  attr_accessor :department_id
50
+
35
51
  # @return [String] Категории классификоторов
36
52
  # Перечисление категорий классификатора через ,
37
53
  attr_accessor :classifier_ids
54
+
38
55
  # @return [String] Код ОКВЭД
39
56
  attr_accessor :okved_code
57
+
58
+ # @return [String] Код категории ОКПД2. Для процедур по 223-ФЗ, созданных/редактируемых после 01.01.2016 г
59
+ attr_accessor :okpd_code
60
+
40
61
  # @return [String] Наименование продукции
41
62
  attr_accessor :name
63
+
42
64
  # @return [String] Краткое описание лота
43
65
  attr_accessor :comments
66
+
44
67
  # @return [Integer] Услуга
45
68
  # ID услуги - список можно получить вызвав RemoteMarket.getServices()
46
69
  # Пустая строка - нет описания
47
70
  attr_accessor :service
71
+
72
+ # @return [String] Файл с описанием. ID файла с описанием, загруженного в Личном кабинете в разделе "Описания
73
+ # предлагаемой продукции и услуг". Если пустая строка — то нет описания.
74
+ # Формат значения: VARCHAR(16)
75
+ attr_accessor :product
76
+
48
77
  # @return [String] Ссылка на подробное описание продукции
49
78
  attr_accessor :link_url
79
+
50
80
  # @return [Double] Количество продукции
51
81
  attr_accessor :quantity
82
+
52
83
  # @return [String] Ед. измерения продукции
53
84
  attr_accessor :units
85
+
54
86
  # @return [String] Цена за ед. продукции
55
87
  # Формат значения Decimal(15, 2)
56
88
  attr_accessor :price_unit
89
+
57
90
  # @return [String] Цена за ед. продукции без НДС
58
91
  # Формат значения Decimal(15, 2)
59
92
  attr_accessor :price_unit_notax
93
+
60
94
  # @return [String] Цена за весь лот
61
95
  # Формат значения Decimal(15, 2)
62
96
  attr_accessor :price_lot
97
+
63
98
  # @return [String] Цена за весь лот без НДС
64
99
  # Формат значения Decimal(15, 2)
65
100
  attr_accessor :price_lot_notax
101
+
66
102
  # @return [Integer] Тип цены, который будет использоваться при выборе победителя
67
103
  # Возможные значения
68
104
  # 0 — цена с НДС
69
105
  # 1 — цена без НДС
70
106
  attr_accessor :price_main
107
+
71
108
  # @return [Integer] Победитель конкурса
72
109
  # Валюта:
73
110
  # 0 — руб,
@@ -75,69 +112,104 @@ module B2bCenterApi
75
112
  # 2 — EUR,
76
113
  # 4 — UAH
77
114
  attr_accessor :currency
115
+
78
116
  # @return [String] Шаг аукциона
79
117
  # Шаг аукциона не может быть меньше 0,01% и больше 1% от начальной цены всего лота.
80
118
  # Формат значения DECIMAL(15,2)
81
119
  attr_accessor :bet_step
120
+
82
121
  # @return [String] Условия оплаты
83
122
  attr_accessor :conditions
123
+
84
124
  # @return [String] Местонахождение и условия поставки
85
125
  attr_accessor :place
126
+
86
127
  # @return [array_of_ids] @deprecated
87
128
  # Дополнительная информация.
88
129
  # ID файлов, размещенных в папке "Предложение" Личного кабинета в разделе "Дополнительная информация".
89
130
  attr_accessor :files
131
+
90
132
  # @return [String] Комментарии
91
133
  attr_accessor :description
134
+
92
135
  # @return [String] Список ID файлов с информацией о процедуре, через запятую.
93
136
  # Формат значения VARCHAR(255)
94
137
  attr_accessor :info_files
138
+
95
139
  # @return [String] Действительно до
96
140
  # Срок действия объявления
97
141
  # Формат значения dd.mm.YYYY HH:ii:ss
98
142
  attr_accessor :date_end
143
+
99
144
  # @return [String] Дата вскрытия конвертов с предложениями.
100
145
  # Формат значения dd.mm.YYYY HH:ii:ss
101
146
  attr_accessor :date_end_unsealing
147
+
102
148
  # @return [String] Дата начала торгов
103
149
  # Поле заполняется для объявления двухэтапных объявлений о продаже или запросах предложений
104
150
  # Поле является обязательным при объявлении аукциона.
105
151
  # Формат значения dd.mm.YYYY HH:ii:ss
106
152
  attr_accessor :date_start
153
+
107
154
  # @return [String] Дата вскрытия конвертов с предварительной документацией
108
155
  # Поле заполняется для объявления двухэтапных объявлений о продаже или запросах предложений.
109
156
  # Формат значения dd.mm.YYYY HH:ii:ss
110
157
  attr_accessor :date_unsealing
158
+
111
159
  # @return [Integer] Ответственный пользователь.
112
160
  # По умолчанию — устанавливается текущий пользователь
113
161
  attr_accessor :responsible_user_id
162
+
114
163
  # @return [ArrayOfIds] Место поставки товара или оказания услуги.
115
164
  # Список адресов организации возвращает метод RemoteMarket.getAddressesIds.
116
165
  attr_accessor :addresses_ids
117
- # @return [Integer]
118
- # =1 Альтернативные предложения разрешены
166
+
167
+ # @return [Integer] Единый адрес поставки. Можно указывать в совместных закупках.
168
+ # Возможные значения
169
+ # "0" — Не включать признак. Адреса поставки будут указаны при добавлении заказчиков по лотам процедуры;
170
+ # "1" — Включить признак. Адреса поставки будут указаны в извещении
171
+ attr_accessor :is_common_delivery
172
+
173
+ # @return [Integer] Совместная закупка. Для создания совместной закупки необходимо также включить признаки
174
+ # "multiposition", "allow_positions_groups" и "allow_positions_no_price".
175
+ # Возможные значения
176
+ # "0" — Не включать признак;
177
+ # "1" — Включить признак. Будет создана совместная закупка.
178
+ attr_accessor :is_joint_purchase
179
+
180
+ # @return [Integer] Разрешена ли подача альтернативных заявок.
181
+ # Возможные значения
182
+ # 0 — не разрешена;
183
+ # 1 — разрешена
119
184
  attr_accessor :alternative_offers
185
+
120
186
  # @return [String] URL торговой процедуры на площадке B2B
121
187
  # Поле возвращается при вызове метода RemoteAuction.getData
122
188
  # В других случаях значение этого поля игнорируется
123
189
  # Формат значения VARCHAR(255)
124
190
  attr_accessor :url
191
+
125
192
  # @return [Integer]
126
193
  # ID организации заказчика (указывается в случае, когда организатор торговой процедуры не является заказчиком)
127
194
  attr_accessor :customer_firm_id
195
+
128
196
  # @return [String] Телефон ответственного пользователя.
129
197
  # Например — +7(495)1234567.
130
198
  # Формат значения код_страны(код_города)телефон
131
199
  attr_accessor :organizer_phone
200
+
132
201
  # @return [String] E-mail ответственного пользователя (только для организаций, работающих по 223-ФЗ)
133
202
  # Формат значения VARCHAR(255)
134
203
  attr_accessor :organizer_email
204
+
135
205
  # @return [String] Фактический адрес заказчика (только для организаций, работающих по 223-ФЗ)
136
206
  # Формат значения VARCHAR(255)
137
207
  attr_accessor :organizer_fact_address
208
+
138
209
  # @return [String] Почтовый адрес заказчика (только для организаций, работающих по 223-ФЗ)
139
210
  # Формат значения VARCHAR(255)
140
211
  attr_accessor :organizer_post_address
212
+
141
213
  # @return [Integer] Признак того, требуется ли обязательная подгрузка документации к предложению
142
214
  # (для запросов предложений)
143
215
  # Возможные значения
@@ -145,12 +217,14 @@ module B2bCenterApi
145
217
  # 1 — обязательна.
146
218
  # При отсутствии данного поля загрузка документации к предложению обязательна.
147
219
  attr_accessor :require_offer_doc
220
+
148
221
  # @return [Integer] Признак того, что торги являются попозиционными.
149
222
  # Возможные значения
150
223
  # 0 — обычные
151
224
  # 1 — попозиционные (Тип процедуры — Запрос предложений)
152
225
  # Возвращается методом getData только если «1».
153
226
  attr_accessor :multiposition
227
+
154
228
  # @return [Integer] Признак того, что позиции попозиционных торгов объединяются в лоты.
155
229
  # Возможные значения
156
230
  # 0 — обычные торги
@@ -163,6 +237,7 @@ module B2bCenterApi
163
237
  # Подведение итогов попозиционной процедуры с объединением позиций в лоты происходит единовременно для всех
164
238
  # лотов — так же, как и в случае обычной попозиционной процедуры.
165
239
  attr_accessor :allow_positions_groups
240
+
166
241
  # @return [Integer] Признак возможности добавлять закупочные позиции без указания цены
167
242
  # (в попозиционных запросах предложений)
168
243
  # Возможные значения
@@ -170,49 +245,71 @@ module B2bCenterApi
170
245
  # 1 — разрешено
171
246
  # Возвращается методом getData только если «1».
172
247
  attr_accessor :allow_positions_no_price
248
+
173
249
  # @return [String] Дата и время рассмотрения заявок
174
250
  # Обязательно для заполнения для организаций, которые работают по 223-ФЗ
175
251
  # Формат значения dd.mm.YYYY HH:ii:ss
176
252
  attr_accessor :consideration_date
253
+
177
254
  # @return [String] Место рассмотрения заявок
178
255
  # Обязательно для заполнения для организаций, которые работают по 223-ФЗ.
179
256
  # Формат значения VARCHAR(255)
180
257
  attr_accessor :consideration_place
258
+
181
259
  # @return [String] Дата и время подведения итогов
182
260
  # Обязательно для заполнения для организаций, которые работают по 223-ФЗ
183
261
  # Формат значения dd.mm.YYYY HH:ii:ss
184
262
  attr_accessor :results_date
263
+
185
264
  # @return [Integer] Выгружать на ООС
186
265
  # Возможные значения:
187
266
  # 0 — не выгружать
188
267
  # 1 — выгружать
189
268
  attr_accessor :zgr_export
269
+
190
270
  # @return [String] Является ли торговая процедура двухэтапной
191
271
  # Возможные значения
192
272
  # 0 — является одноэтапной
193
273
  # 1 — является двухэтапной
194
274
  attr_accessor :multi_stages
275
+
276
+ # @return [Integer] Является ли торговая процедура аукционом с предварительным рассмотрением аукционных заявок. Несовместимо с полем multi_stages.
277
+ # Возможные значения:
278
+ # "0" — признак выключен;
279
+ # "1" — признак включен
280
+ attr_accessor :with_consideration_stage
281
+
282
+ # @return [String] Дата рассмотрения аукционных заявок. Указывается только в аукционах с предварительным
283
+ # рассмотрением аукционных заявок.
284
+ # Формат значения dd.mm.YYYY HH:ii:ss
285
+ attr_accessor :date_qualified
286
+
195
287
  # @return [Integer] Является ли торговая процедура закрытой.
196
288
  # Возможные значения:
197
289
  # 0 — является открытой
198
290
  # 1 — является закрытой
199
291
  attr_accessor :is_private
292
+
200
293
  # @return [Integer] Разрешена ли подача аналогов позиций (для попозиционных процедур)
201
294
  # Возможные значения:
202
295
  # 0 — не разрешена
203
296
  # 1 — разрешена
204
297
  attr_accessor :allow_positions_analog
298
+
205
299
  # @return [Integer] Атрибут малой закупки
206
300
  # Возможные значения:
207
301
  # 0 — не устанавливать атрибут малой закупки
208
302
  # 1 — установить атрибут малой закупки
209
303
  attr_accessor :small_purchase
304
+
210
305
  # @return [Integer] Номер конкурса на заключение рамочного соглашения,
211
306
  # победители которого допускаются к участию в данной торговой процедуре
212
307
  attr_accessor :tender_id
308
+
213
309
  # @return [Integer] Номер лота конкурса на заключение рамочного соглашения,
214
310
  # победители которого допускаются к участию в данной торговой процедуре
215
311
  attr_accessor :tender_lot_id
312
+
216
313
  # @return [Integer] подтип унивесальной многолотовой закупки
217
314
  # Возможные значения:
218
315
  # 1 — Конкурс
@@ -222,37 +319,45 @@ module B2bCenterApi
222
319
  # 5 — Аукционы
223
320
  # 6 — Редукционы
224
321
  attr_accessor :trade_type_code
322
+
225
323
  # @return [Integer] Контейнер многолотовой процедуры
226
324
  # Возможные значения:
227
325
  # 0 — не контейнер
228
326
  # 1 — контейнер
229
327
  attr_accessor :root
328
+
230
329
  # @return [Integer] номер контейнера многолотовой процедуры
231
330
  attr_accessor :root_id
331
+
232
332
  # @return [Integer] номер лота многолотовой процедуры
233
333
  attr_accessor :lot_id
334
+
234
335
  # @return [Integer] Использовать ли попозиционное задание торгов
235
336
  # Возможные значения:
236
337
  # 0 — не использовать
237
338
  # 1 — использовать
238
339
  attr_accessor :use_positions
340
+
239
341
  # @return [Integer] Использовать ли закрытую подачу предложений
240
342
  # Возможные значения:
241
343
  # 0 — не использовать
242
344
  # 1 — использовать
243
345
  attr_accessor :private_offers
346
+
244
347
  # @return [Integer] Требование к отсутствию участников закупки в реестре недобросовестных поставщиков
245
348
  # Только для процедур по 223-ФЗ
246
349
  # Возможные значения:
247
350
  # 0 — не использовать
248
351
  # 1 — использовать
249
352
  attr_accessor :zgr_not_dishonest_firm
353
+
250
354
  # @return [Integer] Разрешить участие в закупке только субъектам малого и среднего предпринимательства
251
355
  # Только для процедур по 223-ФЗ
252
356
  # Возможные значения:
253
357
  # 0 — не разрешать
254
358
  # 1 — разрешить
255
359
  attr_accessor :only_for_smb
360
+
256
361
  # @return [Integer] В отношении участников закупки установлено требование о привлечении к исполнению договора субподрядчиков из числа МСП
257
362
  # Только для процедур по 223-ФЗ
258
363
  # Возможные значения:
@@ -260,6 +365,101 @@ module B2bCenterApi
260
365
  # 1 — установлено
261
366
  attr_accessor :attract_subcontractors_smb
262
367
 
368
+ # @return [Integer]
369
+ # Разрешить ли торги за единицу.
370
+ # Возможные значения:
371
+ # "0" — не разрешать;
372
+ # "1" — разрешить
373
+ attr_accessor :trading_per_unit
374
+
375
+ # @return [Integer]
376
+ # Включить рангирование заявок.
377
+ # Возможные значения:
378
+ # "0" — не включать;
379
+ # "1" — включить
380
+ attr_accessor :rating_offers_mode
381
+
382
+ # @return [RangeFloat]
383
+ # Диапазон ставок участников в процентах от начальной стоимости лота.
384
+ # Возможность использования предоставляется оператором, при ее наличии поле обязательно
385
+ attr_accessor :variable_bet_step
386
+
387
+ # @return [BoardProcMinStep] Минимальный шаг.
388
+ # Указывается в запросах цен/предложений. Возможность указания предоставляется оператором
389
+ attr_accessor :min_step
390
+
391
+ # @return [ProcGkpzData]
392
+ # Год и номер строки плана, которой соответствует торговая процедура.
393
+ # Только для процедур по 223-ФЗ
394
+ attr_accessor :gkpz_fields
395
+
396
+ # @return [ArrayOfIds]
397
+ # Номера ПКО, если требуется провести процедуру по результатам предварительного квалификационного отбора (отборов)
398
+ attr_accessor :src_qualification_ids
399
+
400
+ # @return [AuctionAdditionalTradingField]
401
+ # Дополнительные поля извещения торговой процедуры.
402
+ # Возможность их использования предоставляется оператором
403
+ attr_accessor :additional_trading_fields
404
+
405
+ # @return [AuctionLotFieldValue]
406
+ # Дополнительные поля торговой процедуры (дополнительные поля лотов).
407
+ # Устанавливаются в личном кабинете или методом RemoteMarket.addLotFields.
408
+ # Возможность их использования предоставляется оператором
409
+ attr_accessor :lot_fields
410
+
411
+ # @return [String]
412
+ # Место вскрытия конвертов.
413
+ # Адрес места, где состоится вскрытие конвертов с конкурсными заявками.
414
+ # Формат значения: VARCHAR(2048)
415
+ attr_accessor :unsealing_place
416
+
417
+ # @return [String]
418
+ # Конкурсная комиссия.
419
+ # Информация о Конкурсной комиссии: порядок ее формирования, ФИО и контактную информацию ответственного секретаря (телефон, факс, адрес электронной почты), ее адрес.
420
+ # Формат значения: VARCHAR(2048)
421
+ attr_accessor :committee_info
422
+
423
+ # @return [String]
424
+ # Конкурсная комиссия.
425
+ # Требования к участникам конкурса, в том числе
426
+ # тип и деятельность приглашаемой организации (например, специализированные организации, которые самостоятельно или с привлечением субподрядчиков могут обеспечить выполнение всего объема требуемых работ);
427
+ # наличие лицензий, квалификацию персонала, производственно-техническую мощность и имущество участника;
428
+ # финансовое положение участника (не должен быть неплатежеспособным, банкротом, не должен находиться в процессе ликвидации, имущество не должно быть под арестом, в залоге и пр.).
429
+ # Формат значения: VARCHAR(2048)
430
+ attr_accessor :participants_requirements
431
+
432
+ # @return [String] Комплект конкурсной документации.
433
+ # Место, время и условия получения конкурсной документации.
434
+ # Формат значения: VARCHAR(2048)
435
+ attr_accessor :documents_info
436
+
437
+ # @return [String] Обеспечение обязательств по договору
438
+ # Дополнительная информация об обеспечении. Например, правила учета обеспечения, условия и сроки его возврата и пр.
439
+ # Формат значения: VARCHAR(2048)
440
+ attr_accessor :applications_deposit
441
+
442
+ # @return [String]
443
+ # Конкурсные заявки
444
+ # Требования к оформлению конкурсных заявок (на каком языке должна составляться заявка, учитывается ли НДС в ценовом предложении и т.п.).
445
+ # Формат значения: VARCHAR(2048)
446
+ attr_accessor :competitive_offers_requirements
447
+
448
+ # @return [String]
449
+ # Дата начала поставки товаров, проведения работ, оказания услуг.
450
+ # Формат значения: dd.mm.yyyy
451
+ attr_accessor :date_job_begin
452
+
453
+ # @return [String]
454
+ # Дата окончания поставки товаров, проведения работ, оказания услуг.
455
+ # Формат значения: dd.mm.yyyy
456
+ attr_accessor :date_job_end
457
+
458
+ # @return [String]
459
+ # Место подведения итогов.
460
+ # Формат значения: VARCHAR(2048)
461
+ attr_accessor :place_summarizing
462
+
263
463
  # @return [AuctionData]
264
464
  def self.from_response(response, client, tender_id)
265
465
  r = response.result[:data]
@@ -268,18 +468,20 @@ module B2bCenterApi
268
468
  t = AuctionData.new
269
469
  t.soap_client = client
270
470
  t.id = convert(r[:id], :integer)
271
- t.type = r[:type]
272
- t.board_extended_type = r[:board_extended_type]
273
- t.auction_id = r[:auction_id]
274
- t.number_in_group = r[:number_in_group]
471
+ t.type = convert r[:type], :integer
472
+ t.board_extended_type = convert r[:board_extended_type], :integer
473
+ t.auction_id = convert r[:auction_id], :integer
474
+ t.number_in_group = convert r[:number_in_group], :integer
275
475
  t.department_id = r[:department_id]
276
476
  t.classifier_ids = r[:classifier_ids]
277
477
  t.okved_code = r[:okved_code]
478
+ t.okpd_code = r[:okpd_code]
278
479
  t.name = r[:name]
279
480
  t.comments = r[:comments]
280
- t.service = r[:service]
481
+ t.service = convert r[:service], :integer
482
+ t.product = r[:product]
281
483
  t.link_url = r[:link_url]
282
- t.quantity = r[:quantity]
484
+ t.quantity = convert r[:quantity], :float
283
485
  t.units = r[:units]
284
486
  t.price_unit = r[:price_unit]
285
487
  t.price_unit_notax = r[:price_unit_notax]
@@ -300,6 +502,8 @@ module B2bCenterApi
300
502
  t.responsible_user_id = r[:responsible_user_id]
301
503
  t.addresses_ids = r[:addresses_ids]
302
504
  t.alternative_offers = r[:alternative_offers]
505
+ t.is_common_delivery = r[:is_common_delivery]
506
+ t.is_joint_purchase = r[:is_joint_purchase]
303
507
  t.url = r[:url]
304
508
  t.customer_firm_id = r[:customer_firm_id]
305
509
  t.organizer_phone = r[:organizer_phone]
@@ -315,6 +519,8 @@ module B2bCenterApi
315
519
  t.results_date = r[:results_date]
316
520
  t.zgr_export = r[:zgr_export]
317
521
  t.multi_stages = r[:multi_stages]
522
+ t.with_consideration_stage = r[:with_consideration_stage]
523
+ t.date_qualified = r[:date_qualified]
318
524
  t.is_private = r[:is_private]
319
525
  t.allow_positions_analog = r[:allow_positions_analog]
320
526
  t.small_purchase = r[:small_purchase]
@@ -329,6 +535,23 @@ module B2bCenterApi
329
535
  t.zgr_not_dishonest_firm = r[:zgr_not_dishonest_firm]
330
536
  t.only_for_smb = r[:only_for_smb]
331
537
  t.attract_subcontractors_smb = r[:attract_subcontractors_smb]
538
+ t.trading_per_unit = r[:trading_per_unit]
539
+ t.rating_offers_mode = r[:rating_offers_mode]
540
+ t.variable_bet_step = r[:variable_bet_step]
541
+ t.min_step = r[:min_step]
542
+ t.gkpz_fields = r[:gkpz_fields]
543
+ t.src_qualification_ids = ArrayOfIds.from_part_response(r[:src_qualification_ids]).flatten
544
+ t.additional_trading_fields = r[:additional_trading_fields]
545
+ t.lot_fields = r[:lot_fields]
546
+ t.unsealing_place = r[:unsealing_place]
547
+ t.committee_info = r[:committee_info]
548
+ t.participants_requirements = r[:participants_requirements]
549
+ t.documents_info = r[:documents_info]
550
+ t.applications_deposit = r[:applications_deposit]
551
+ t.competitive_offers_requirements = r[:competitive_offers_requirements]
552
+ t.date_job_begin = convert(r[:date_job_begin], :date)
553
+ t.date_job_end = convert r[:date_job_end], :date
554
+ t.place_summarizing = convert r[:place_summarizing], :string
332
555
  t
333
556
  end
334
557
 
@@ -336,6 +559,12 @@ module B2bCenterApi
336
559
  def participants
337
560
  remote_auction.get_participants(id)
338
561
  end
562
+
563
+ # Создать новый аукцион на b2b-center
564
+ # @return [Integer] id созданной процедуры
565
+ def create
566
+ remote_auction.create(self)
567
+ end
339
568
  end
340
569
  end
341
570
  end