47 lines
1.9 KiB
Lua
47 lines
1.9 KiB
Lua
local json = require('cjson')
|
|
local crm = require('bitrix.crm')
|
|
local log = require('utils.log')
|
|
log.outfile = 'logs/tests_'..os.date('%Y-%m-%d')..'.log'
|
|
log.level = 'trace'
|
|
|
|
local deal_id = 158811
|
|
local test_date = '2025-01-05'
|
|
|
|
local function get_statuses()
|
|
log.info('Поля статусов CRM: '..json.encode(crm.status.fields()))
|
|
log.info('Статусы сделок : '..json.encode(crm.status.list(nil,{['ENTITY_ID']='DEAL_TYPE'})))
|
|
end
|
|
|
|
local function test_deal_get(id)
|
|
local result = crm.deal.get(id)
|
|
if result.BEGINDATE then log.info('Тест получения сделок: успешно')
|
|
else log.error('Тест получения сделок: провален '..json.encode(result)) end
|
|
result = crm.deal.productrows.get(id)
|
|
if result[1].PRODUCT_ID then log.info('Тест получения продукта сделки: успешно')
|
|
else log.error('Тест получения продукта сделки: провален '..json.encode(result)) end
|
|
end
|
|
|
|
local function test_deal_add_update_delete()
|
|
local result = crm.deal.add(id)
|
|
if result.BEGINDATE then log.info('Тест получения сделок: успешно')
|
|
else log.error('Тест получения сделок: провален '..json.encode(result)) end
|
|
result = crm.deal.productrows.get(id)
|
|
if result[1].PRODUCT_ID then log.info('Тест получения продукта сделки: успешно')
|
|
else log.error('Тест получения продукта сделки: провален '..json.encode(result)) end
|
|
end
|
|
|
|
local function test_deal_list()
|
|
local result = crm.deal.list({'*'},{['STAGE_ID']='NEW',['>DATE_CREATE']=test_date})
|
|
if #result ~= tonumber(crm.res.total) then
|
|
log.error('Ошибка обработки листинга сделок '..json.encode(crm.res))
|
|
else
|
|
log.info('Тест листинга сделок: успешно')
|
|
end
|
|
end
|
|
|
|
get_statuses()
|
|
test_deal_get(deal_id)
|
|
test_deal_list()
|
|
|
|
|