b2b_center_api 0.0.17 → 0.1.0

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 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