Commit a84129fa4f4b933aa40d08b0a0a7f6a4bdc3e584
1 parent
a0f412c6
esco provider value, filling plan budget period dates, getting plan.procuringEnt…
…ity.identifier.legalName + python lib: procuring_entity_name func
Showing
2 changed files
with
60 additions
and
129 deletions
... | ... | @@ -954,6 +954,7 @@ Load Sign Data |
954 | 954 | |
955 | 955 | Recursion |
956 | 956 | Reload Page |
957 | + Click Button xpath=//*[text()='Накласти ЕЦП'] | |
957 | 958 | Load Sign Data |
958 | 959 | |
959 | 960 | Wait user action |
... | ... | @@ -1367,16 +1368,18 @@ Save Tender |
1367 | 1368 | ${proposal_id} = Set Variable If '-1' == '${proposal_id}' 1 ${proposal_id} |
1368 | 1369 | ${proposal_id} = Set Variable If '-2' == '${proposal_id}' 2 ${proposal_id} |
1369 | 1370 | |
1370 | - Відкрити форму прекваліфікації і потрібну кваліфікацію ${proposal_id} | |
1371 | - Click Element id=prequalificationform-decision | |
1372 | - Click Element jquery=#prequalificationform-decision option[value='decline'] | |
1373 | - Wait Until Page Contains Element id=prequalificationform-description | |
1374 | - Click Element jquery=#prequalificationform-title option.js-decline:first | |
1375 | - Input text id=prequalificationform-description GenerateFakeText | |
1376 | - ${doc_name}= Завантажити збережений документ у форму кваліфікації ${proposal_id} | |
1377 | - Завантажити рішення кваліфікації і накласти ЕЦП і повернутися на перегляд закупівлі | |
1378 | - Remove File ${doc_name} | |
1379 | - | |
1371 | + # handle sign not loaded | |
1372 | + : FOR ${INDEX} IN RANGE 0 3 | |
1373 | + \ Відкрити форму прекваліфікації і потрібну кваліфікацію ${proposal_id} | |
1374 | + \ Select From List By Label xpath=//select[@id='prequalificationform-decision'] Підтвердити | |
1375 | + \ ${doc_name}= Завантажити збережений документ у форму кваліфікації ${proposal_id} | |
1376 | + \ Click Element id=prequalificationform-eligible | |
1377 | + \ Click Element id=prequalificationform-qualified | |
1378 | + \ ${passed}= run keyword and return status Завантажити рішення кваліфікації і накласти ЕЦП і повернутися на перегляд закупівлі | |
1379 | + \ run keyword if ${passed} == True Remove File ${doc_name} | |
1380 | + \ run keyword if ${passed} == False sleep 10 | |
1381 | + \ exit for loop if ${passed} == True | |
1382 | + | |
1380 | 1383 | Скасувати кваліфікацію |
1381 | 1384 | [Arguments] ${username} ${tender_uaid} ${proposal_id} |
1382 | 1385 | Switch browser ${username} |
... | ... | @@ -1410,7 +1413,7 @@ Save Tender |
1410 | 1413 | |
1411 | 1414 | Open Tender |
1412 | 1415 | Click Element xpath=//div[contains(@class, 'aside-menu ')]//a[contains(@href, '/tender/prequalification?id=')] |
1413 | - Wait Until Page Contains Прекваліфікація 10 | |
1416 | + Wait Until Page Contains Element id=tender-prequalification-form 10 | |
1414 | 1417 | |
1415 | 1418 | Click Element id=prequalificationform-qualification |
1416 | 1419 | Click Element jquery=select#prequalificationform-qualification option:eq(${proposal_index}) |
... | ... | @@ -1716,9 +1719,8 @@ Wait For Complaints Sync |
1716 | 1719 | |
1717 | 1720 | ${bid_data_keys}= Get Dictionary Keys ${bid.data} |
1718 | 1721 | |
1719 | - Run Keyword If 'lotValues' in ${bid_data_keys} and '${mode}' != 'open_esco' Подати цінову пропозицію Lots ${username} ${tender_uaid} ${bid} ${lots_ids} ${features_ids} | |
1722 | + Run Keyword If 'lotValues' in ${bid_data_keys} Подати цінову пропозицію Lots ${username} ${tender_uaid} ${bid} ${lots_ids} ${features_ids} | |
1720 | 1723 | Run Keyword If 'lotValues' not in ${bid_data_keys} Подати цінову пропозицію No Lots ${username} ${tender_uaid} ${bid} ${lots_ids} ${features_ids} |
1721 | - Run Keyword If '${mode}' == 'open_esco' Подати цінову пропозицію esco ${username} ${tender_uaid} ${bid} ${lots_ids} ${features_ids} | |
1722 | 1724 | |
1723 | 1725 | Click Element xpath=//button[contains(text(), 'Подати пропозицію')] |
1724 | 1726 | Sleep 1 |
... | ... | @@ -1744,46 +1746,26 @@ Wait For Complaints Sync |
1744 | 1746 | reload page |
1745 | 1747 | sleep 2 |
1746 | 1748 | |
1747 | -Подати цінову пропозицію esco | |
1748 | - [Arguments] ${username} ${tender_uaid} ${bid} ${lots_ids} ${features_ids} | |
1749 | - Switch browser ${username} | |
1750 | - | |
1751 | - ${tender_id}= Get From Dictionary ${USERS.users['${playtender_LOGIN_USER}']} TENDER_ID | |
1752 | - ${bid_data_keys}= Get Dictionary Keys ${bid.data} | |
1753 | - ${lots}= Get From Dictionary ${bid.data} lotValues | |
1754 | - ${lots_length}= Get Length ${lots} | |
1755 | - | |
1756 | - Open Tender | |
1757 | - ${procurementMethodType}= Отримати інформацію із тендера procurementMethodType | |
1758 | - | |
1759 | - : FOR ${INDEX} IN RANGE 0 ${lots_length} | |
1760 | - \ Set To Dictionary ${USERS.users['${playtender_LOGIN_USER}']} last_proposal_lotid=${lots[${INDEX}].relatedLot} | |
1761 | - \ Go To ${BROKERS['playtender'].basepage}/tender/bid?id=${tender_id}\#showlotbykey:${lots[${INDEX}].relatedLot} | |
1762 | - \ Sleep 2 | |
1763 | - \ Run Keyword And Ignore Error Подати цінову пропозицію Amount_esco ${lots[${INDEX}].value} | |
1764 | - \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Input text xpath=//div[contains(@class, 'active')]//textarea[contains(@id, '-subcontracting_details')] ${bid.data.tenderers[0].name} | |
1765 | - \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Click Element xpath=//div[contains(@class, 'active')]//input[contains(@id, '-self_eligible')] | |
1766 | - \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Click Element xpath=//div[contains(@class, 'active')]//input[contains(@id, '-self_qualified')] | |
1767 | - \ Run Keyword If 'parameters' in ${bid_data_keys} Подати цінову пропозицію Features ${bid.data.parameters} | |
1768 | - \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Run Keyword If '${procurementMethodType}' != 'aboveThresholdUA' Подати цінову пропозицію FakeDocs | |
1769 | - | |
1770 | 1749 | Подати цінову пропозицію Lots |
1771 | 1750 | [Arguments] ${username} ${tender_uaid} ${bid} ${lots_ids} ${features_ids} |
1772 | 1751 | Switch browser ${username} |
1773 | 1752 | |
1774 | - ${tender_id}= Get From Dictionary ${USERS.users['${playtender_LOGIN_USER}']} TENDER_ID | |
1753 | + ${tender_id}= Get From Dictionary ${USERS.users['${PZO_LOGIN_USER}']} TENDER_ID | |
1775 | 1754 | ${bid_data_keys}= Get Dictionary Keys ${bid.data} |
1776 | 1755 | ${lots}= Get From Dictionary ${bid.data} lotValues |
1777 | 1756 | ${lots_length}= Get Length ${lots} |
1778 | 1757 | |
1779 | 1758 | Open Tender |
1780 | 1759 | ${procurementMethodType}= Отримати інформацію із тендера procurementMethodType |
1760 | + Go To ${BROKERS['playtender'].basepage}/tender/bid?id=${tender_id} | |
1761 | + sleep 1 | |
1781 | 1762 | |
1782 | 1763 | : FOR ${INDEX} IN RANGE 0 ${lots_length} |
1783 | - \ Set To Dictionary ${USERS.users['${playtender_LOGIN_USER}']} last_proposal_lotid=${lots[${INDEX}].relatedLot} | |
1784 | - \ Go To ${BROKERS['playtender'].basepage}/tender/bid?id=${tender_id}\#showlotbykey:${lots[${INDEX}].relatedLot} | |
1785 | - \ Sleep 2 | |
1764 | + \ Set To Dictionary ${USERS.users['${PZO_LOGIN_USER}']} last_proposal_lotid=${lots[${INDEX}].relatedLot} | |
1765 | + \ execute javascript robottesthelpfunctions.showlotbykey("${lots[${INDEX}].relatedLot}") | |
1766 | + \ Sleep 1 | |
1786 | 1767 | \ Run Keyword And Ignore Error Подати цінову пропозицію Amount ${lots[${INDEX}].value.amount} |
1768 | + \ Run Keyword If '${procurementMethodType}' == 'esco' Подати цінову пропозицію Esco ${lots[${INDEX}].value} | |
1787 | 1769 | \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Input text xpath=//div[contains(@class, 'active')]//textarea[contains(@id, '-subcontracting_details')] ${bid.data.tenderers[0].name} |
1788 | 1770 | \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Click Element xpath=//div[contains(@class, 'active')]//input[contains(@id, '-self_eligible')] |
1789 | 1771 | \ Run Keyword If '${procurementMethodType}' != 'belowThreshold' Click Element xpath=//div[contains(@class, 'active')]//input[contains(@id, '-self_qualified')] |
... | ... | @@ -1807,83 +1789,23 @@ Wait For Complaints Sync |
1807 | 1789 | ${amount}= convert_float_to_string ${amount} |
1808 | 1790 | Input text xpath=//div[contains(@class, 'active')]//input[contains(@id, '-value_amount')] ${amount} |
1809 | 1791 | |
1810 | -Подати цінову пропозицію Amount_esco | |
1811 | - [Arguments] ${bid} | |
1812 | - Log Many CAT777 ${bid} | |
1813 | -# ${amount}= convert_float_to_string ${amount} | |
1814 | -# Input text xpath=//div[contains(@class, 'active')]//input[contains(@id, '-value_amount')] ${amount} | |
1815 | - | |
1816 | - ${yearlyPaymentsPercentage}= convert_float_to_string ${bid.yearlyPaymentsPercentage} | |
1817 | - Sleep 1 | |
1818 | - Input Text xpath=//input[contains(@name,'percentage]')] ${yearlyPaymentsPercentage} | |
1819 | - Input Text xpath=//input[contains(@name,'years]')] ${bid.contractDuration.years} | |
1820 | - Input Text xpath=//input[contains(@name,'days]')] ${bid.contractDuration.days} | |
1821 | - | |
1822 | - ${reduction][0]}= multiply_hundred ${bid.annualCostsReduction[0]} | |
1823 | - ${reduction][0]}= Convert To Integer ${reduction][0]} | |
1824 | -# ${reduction][0]}= convert_float_to_string ${reduction][0]} | |
1825 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-1'] ${reduction][0]} | |
1826 | - ${reduction][1]}= multiply_hundred ${bid.annualCostsReduction[1]} | |
1827 | - ${reduction][1]}= Convert To Integer ${reduction][1]} | |
1828 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-2'] ${reduction][1]} | |
1829 | - ${reduction][2]}= multiply_hundred ${bid.annualCostsReduction[2]} | |
1830 | - ${reduction][2]}= Convert To Integer ${reduction][2]} | |
1831 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-3'] ${reduction][2]} | |
1832 | - ${reduction][3]}= multiply_hundred ${bid.annualCostsReduction[3]} | |
1833 | - ${reduction][3]}= Convert To Integer ${reduction][3]} | |
1834 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-4'] ${reduction][3]} | |
1835 | - ${reduction][4]}= multiply_hundred ${bid.annualCostsReduction[4]} | |
1836 | - ${reduction][4]}= Convert To Integer ${reduction][4]} | |
1837 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-5'] ${reduction][4]} | |
1838 | - ${reduction][5]}= multiply_hundred ${bid.annualCostsReduction[5]} | |
1839 | - ${reduction][5]}= Convert To Integer ${reduction][5]} | |
1840 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-6'] ${reduction][5]} | |
1841 | - ${reduction][6]}= multiply_hundred ${bid.annualCostsReduction[6]} | |
1842 | - ${reduction][6]}= Convert To Integer ${reduction][6]} | |
1843 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-7'] ${reduction][6]} | |
1844 | - ${reduction][7]}= multiply_hundred ${bid.annualCostsReduction[7]} | |
1845 | - ${reduction][7]}= Convert To Integer ${reduction][7]} | |
1846 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-8'] ${reduction][7]} | |
1847 | - ${reduction][8]}= multiply_hundred ${bid.annualCostsReduction[8]} | |
1848 | - ${reduction][8]}= Convert To Integer ${reduction][8]} | |
1849 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-9'] ${reduction][8]} | |
1850 | - ${reduction][9]}= multiply_hundred ${bid.annualCostsReduction[9]} | |
1851 | - ${reduction][9]}= Convert To Integer ${reduction][9]} | |
1852 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-10'] ${reduction][9]} | |
1853 | - ${reduction][10]}= multiply_hundred ${bid.annualCostsReduction[10]} | |
1854 | - ${reduction][10]}= Convert To Integer ${reduction][10]} | |
1855 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-11'] ${reduction][10]} | |
1856 | - ${reduction][11]}= multiply_hundred ${bid.annualCostsReduction[11]} | |
1857 | - ${reduction][11]}= Convert To Integer ${reduction][11]} | |
1858 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-12'] ${reduction][11]} | |
1859 | - ${reduction][12]}= multiply_hundred ${bid.annualCostsReduction[12]} | |
1860 | - ${reduction][12]}= Convert To Integer ${reduction][12]} | |
1861 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-13'] ${reduction][12]} | |
1862 | - ${reduction][13]}= multiply_hundred ${bid.annualCostsReduction[13]} | |
1863 | - ${reduction][13]}= Convert To Integer ${reduction][13]} | |
1864 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-14'] ${reduction][13]} | |
1865 | - ${reduction][14]}= multiply_hundred ${bid.annualCostsReduction[14]} | |
1866 | - ${reduction][14]}= Convert To Integer ${reduction][14]} | |
1867 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-15'] ${reduction][14]} | |
1868 | - ${reduction][15]}= multiply_hundred ${bid.annualCostsReduction[15]} | |
1869 | - ${reduction][15]}= Convert To Integer ${reduction][15]} | |
1870 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-16'] ${reduction][15]} | |
1871 | - ${reduction][16]}= multiply_hundred ${bid.annualCostsReduction[16]} | |
1872 | - ${reduction][16]}= Convert To Integer ${reduction][16]} | |
1873 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-17'] ${reduction][16]} | |
1874 | - ${reduction][17]}= multiply_hundred ${bid.annualCostsReduction[17]} | |
1875 | - ${reduction][17]}= Convert To Integer ${reduction][17]} | |
1876 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-18'] ${reduction][17]} | |
1877 | - ${reduction][18]}= multiply_hundred ${bid.annualCostsReduction[18]} | |
1878 | - ${reduction][18]}= Convert To Integer ${reduction][18]} | |
1879 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-19'] ${reduction][18]} | |
1880 | - ${reduction][19]}= multiply_hundred ${bid.annualCostsReduction[19]} | |
1881 | - ${reduction][19]}= Convert To Integer ${reduction][19]} | |
1882 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-20'] ${reduction][19]} | |
1883 | - ${reduction][20]}= multiply_hundred ${bid.annualCostsReduction[20]} | |
1884 | - ${reduction][20]}= Convert To Integer ${reduction][20]} | |
1885 | - Input Text xpath=//input[@class='form-control js-annual-costs-reduction-input js-period-21'] ${reduction][20]} | |
1886 | - | |
1792 | +Подати цінову пропозицію Esco | |
1793 | + [Arguments] ${value} | |
1794 | + ${value_keys}= Get Dictionary Keys ${value} | |
1795 | + | |
1796 | + run keyword and ignore error input text jquery=.tab-pane.js-lot-tab.active [id$='-contract_duration_years'] ${value.contractDuration.years} | |
1797 | + run keyword and ignore error input text jquery=.tab-pane.js-lot-tab.active [id$='-contract_duration_days'] ${value.contractDuration.days} | |
1798 | + run keyword if 'yearlyPaymentsPercentage' in ${value_keys} input float multiply100 .tab-pane.js-lot-tab.active [id$='-yearly_payments_percentage'] ${value.yearlyPaymentsPercentage} | |
1799 | + run keyword if 'annualCostsReduction' in ${value_keys} Подати цінову пропозицію Esco AnnualCostsReduction ${value.annualCostsReduction} | |
1800 | + | |
1801 | + Подати цінову пропозицію Esco AnnualCostsReduction | |
1802 | + [Arguments] ${values} | |
1803 | + | |
1804 | + ${input_index}= set variable 1 | |
1805 | + : FOR ${value} IN @{values} | |
1806 | + \ input float .tab-pane.js-lot-tab.active [id$='-annual_costs_reduction_${input_index}'] ${value} | |
1807 | + \ ${input_index}= evaluate ${input_index} + 1 | |
1808 | + | |
1887 | 1809 | Подати цінову пропозицію Features |
1888 | 1810 | [Arguments] ${features} |
1889 | 1811 | ${tender_id}= Get From Dictionary ${USERS.users['${playtender_LOGIN_USER}']} TENDER_ID |
... | ... | @@ -3239,6 +3161,7 @@ Switch To Complaints |
3239 | 3161 | ${data}= Get From Dictionary ${plan_data} data |
3240 | 3162 | ${data_keys}= Get Dictionary Keys ${data} |
3241 | 3163 | ${start_date}= convert_isodate_to_site_date ${data.tender.tenderPeriod.startDate} |
3164 | + ${budget_keys}= Get Dictionary Keys ${data.budget} | |
3242 | 3165 | ${budget_amount}= Convert To String ${data.budget.amount} |
3243 | 3166 | ${classificationWrapper}= Set Variable \#collapseGeneral |
3244 | 3167 | ${itemsWrapper}= Set Variable a[href='#collapseItems'] |
... | ... | @@ -3253,6 +3176,8 @@ Switch To Complaints |
3253 | 3176 | |
3254 | 3177 | ## filling form |
3255 | 3178 | Select From List By Value id=planform-procurement_method_type ${data.tender.procurementMethodType} |
3179 | + Run Keyword If 'period' in ${budget_keys} input datetime \#planform-period_start_date ${data.budget.period.startDate} | |
3180 | + Run Keyword If 'period' in ${budget_keys} input datetime \#planform-period_end_date ${data.budget.period.endDate} | |
3256 | 3181 | JsInputHiddenText \#planform-budget_id ${data.budget.id} |
3257 | 3182 | Input text id=planform-title ${data.budget.description} |
3258 | 3183 | Input text id=planform-value_amount ${budget_amount} |
... | ... | @@ -3343,6 +3268,7 @@ Switch To Complaints |
3343 | 3268 | ${budget}= get_invisible_text jquery=#general-info .budget-amount |
3344 | 3269 | |
3345 | 3270 | PlanOpenByUAID ${uaid} |
3271 | + JsSetScrollToElementBySelector \#general-info | |
3346 | 3272 | Run Keyword And Return If '${key}' == 'tender.procurementMethodType' get_invisible_text jquery=#general-info .procurement-method-type |
3347 | 3273 | Run Keyword And Return If '${key}' == 'budget.amount' Convert To Number ${budget} |
3348 | 3274 | Run Keyword And Return If '${key}' == 'budget.description' get_text jquery=#general-info .budget-description .value |
... | ... | @@ -3350,13 +3276,16 @@ Switch To Complaints |
3350 | 3276 | Run Keyword And Return If '${key}' == 'budget.id' get_text jquery=#general-info .budget-id .value |
3351 | 3277 | Run Keyword And Return If '${key}' == 'budget.project.id' get_invisible_text jquery=#general-info .budget-project-id |
3352 | 3278 | Run Keyword And Return If '${key}' == 'budget.project.name' get_invisible_text jquery=#general-info .budget-project-name |
3353 | - Run Keyword And Return If '${key}' == 'procuringEntity.name' get_invisible_text jquery=#procuring-entity-info .name | |
3354 | - Run Keyword And Return If '${key}' == 'procuringEntity.identifier.scheme' get_invisible_text jquery=#procuring-entity-info .identifier-scheme | |
3355 | - Run Keyword And Return If '${key}' == 'procuringEntity.identifier.id' get_invisible_text jquery=#procuring-entity-info .identifier-code | |
3356 | 3279 | Run Keyword And Return If '${key}' == 'classification.description' get_invisible_text jquery=#general-info .main-classification-description |
3357 | 3280 | Run Keyword And Return If '${key}' == 'classification.scheme' get_invisible_text jquery=#general-info .main-classification-scheme |
3358 | 3281 | Run Keyword And Return If '${key}' == 'classification.id' get_invisible_text jquery=#general-info .main-classification-code |
3359 | 3282 | Run Keyword And Return If '${key}' == 'tender.tenderPeriod.startDate' get_invisible_text jquery=#general-info .tender-start-date-source |
3283 | + ${procuringEntityNeedToBeVisible}= Run Keyword And Return Status Should Start With ${key} procuringEntity | |
3284 | + Run Keyword If ${procuringEntityNeedToBeVisible} JsSetScrollToElementBySelector \#procuring-entity-info | |
3285 | + Run Keyword And Return If '${key}' == 'procuringEntity.name' get_invisible_text jquery=#procuring-entity-info .name | |
3286 | + Run Keyword And Return If '${key}' == 'procuringEntity.identifier.scheme' get_invisible_text jquery=#procuring-entity-info .identifier-scheme | |
3287 | + Run Keyword And Return If '${key}' == 'procuringEntity.identifier.id' get_invisible_text jquery=#procuring-entity-info .identifier-code | |
3288 | + Run Keyword And Return If '${key}' == 'procuringEntity.identifier.legalName' get_invisible_text jquery=#procuring-entity-info .identifier-code | |
3360 | 3289 | ${item0NeedToBeVisible}= Run Keyword And Return Status Should Start With ${key} items[0] |
3361 | 3290 | Run Keyword If ${item0NeedToBeVisible} JsCollapseShowAndScroll ${item0Wrapper} |
3362 | 3291 | Run Keyword And Return If '${key}' == 'items[0].description' get_text jquery=${item0Wrapper} .item-info-wrapper .title .value | ... | ... |
playtender_service.py
100755 → 100644
... | ... | @@ -39,15 +39,17 @@ def procuring_entity_name(tender_data): |
39 | 39 | tender_data.data.procuringEntity.identifier['id'] = u"1234567890" |
40 | 40 | tender_data.data.procuringEntity.identifier['legalName'] = u"ТОВ \"ПлейТендер\"" |
41 | 41 | tender_data.data.procuringEntity.identifier['legalName_en'] = u"TOV \"playtender\"" |
42 | - tender_data.data.procuringEntity.address['region'] = u"Житомирська область" | |
43 | - tender_data.data.procuringEntity.address['postalCode'] = u"123123" | |
44 | - tender_data.data.procuringEntity.address['locality'] = u"населений пункт" | |
45 | - tender_data.data.procuringEntity.address['streetAddress'] = u"адреса" | |
46 | - tender_data.data.procuringEntity.contactPoint['name'] = u"Замовник Тест" | |
47 | - tender_data.data.procuringEntity.contactPoint['name_en'] = u"Test" | |
48 | - tender_data.data.procuringEntity.contactPoint['email'] = u"zamovnuk@rambler.ru" | |
49 | - tender_data.data.procuringEntity.contactPoint['telephone'] = u"+3801111111111" | |
50 | - tender_data.data.procuringEntity.contactPoint['url'] = u"http://playtender.com.ua" | |
42 | + if 'address' in tender_data.data.procuringEntity: | |
43 | + tender_data.data.procuringEntity.address['region'] = u"Житомирська область" | |
44 | + tender_data.data.procuringEntity.address['postalCode'] = u"123123" | |
45 | + tender_data.data.procuringEntity.address['locality'] = u"населений пункт" | |
46 | + tender_data.data.procuringEntity.address['streetAddress'] = u"адреса" | |
47 | + if 'contactPoint' in tender_data.data.procuringEntity: | |
48 | + tender_data.data.procuringEntity.contactPoint['name'] = u"Замовник Тест" | |
49 | + tender_data.data.procuringEntity.contactPoint['name_en'] = u"Test" | |
50 | + tender_data.data.procuringEntity.contactPoint['email'] = u"zamovnuk@rambler.ru" | |
51 | + tender_data.data.procuringEntity.contactPoint['telephone'] = u"+3801111111111" | |
52 | + tender_data.data.procuringEntity.contactPoint['url'] = u"http://playtender.com.ua" | |
51 | 53 | return tender_data |
52 | 54 | |
53 | 55 | def split_take_item(value, separator, index): | ... | ... |
Please
register
or
login
to post a comment