Fixed issue #894 - Articles without a body fail import.
This commit is contained in:
parent
762f52d52a
commit
943d917139
3 changed files with 134 additions and 0 deletions
|
@ -70,6 +70,8 @@ module Import
|
||||||
def map(article)
|
def map(article)
|
||||||
mapped = map_default(article)
|
mapped = map_default(article)
|
||||||
map_content_type(mapped)
|
map_content_type(mapped)
|
||||||
|
mapped[:body] ||= ''
|
||||||
|
mapped
|
||||||
end
|
end
|
||||||
|
|
||||||
def map_default(article)
|
def map_default(article)
|
||||||
|
|
97
spec/fixtures/import/otrs/article/customer_phone_no_body.json
vendored
Normal file
97
spec/fixtures/import/otrs/article/customer_phone_no_body.json
vendored
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
{
|
||||||
|
"Age": 63188310,
|
||||||
|
"PriorityID": "3",
|
||||||
|
"ContentType": "text/plain; charset=utf-8",
|
||||||
|
"AttachmentIDOfHTMLBody": "1",
|
||||||
|
"DynamicField_SugarCRMCompanySelection": null,
|
||||||
|
"ServiceID": null,
|
||||||
|
"TicketFreeText11": null,
|
||||||
|
"DynamicField_ITSMDueDate": "2014-11-24 00:15:00",
|
||||||
|
"DynamicField_Topic": null,
|
||||||
|
"StateID": "2",
|
||||||
|
"DynamicField_Hostname": null,
|
||||||
|
"Body": null,
|
||||||
|
"DynamicField_ZammadMigratorChanged": null,
|
||||||
|
"EscalationTime": "0",
|
||||||
|
"Changed": "2014-11-21 00:21:08",
|
||||||
|
"OwnerID": "3",
|
||||||
|
"DynamicField_ZarafaTN": null,
|
||||||
|
"DynamicField_ProcessManagementActivityID": null,
|
||||||
|
"DynamicField_TopicID": null,
|
||||||
|
"DynamicField_ScomHostname": null,
|
||||||
|
"Owner": "agent-2",
|
||||||
|
"AgeTimeUnix": 63188309,
|
||||||
|
"TicketFreeKey11": null,
|
||||||
|
"ArticleID": "3970",
|
||||||
|
"Created": "2014-11-21 00:17:41",
|
||||||
|
"DynamicField_ScomUUID": null,
|
||||||
|
"DynamicField_TicketFreeText11": null,
|
||||||
|
"DynamicField_TicketFreeKey11": null,
|
||||||
|
"DynamicField_ITSMReviewRequired": "No",
|
||||||
|
"DynamicField_OpenExchangeTicketNumber": null,
|
||||||
|
"DynamicField_ITSMDecisionDate": null,
|
||||||
|
"ArticleTypeID": "5",
|
||||||
|
"QueueID": "1",
|
||||||
|
"ReplyTo": "",
|
||||||
|
"DynamicField_ITSMImpact": null,
|
||||||
|
"TicketID": "730",
|
||||||
|
"DynamicField_ITSMRecoveryStartTime": null,
|
||||||
|
"Cc": "",
|
||||||
|
"EscalationResponseTime": "0",
|
||||||
|
"DynamicField_ProcessManagementProcessID": null,
|
||||||
|
"IncomingTime": "1416525461",
|
||||||
|
"Charset": "utf-8",
|
||||||
|
"DynamicField_CheckboxExample": null,
|
||||||
|
"DynamicField_Location": null,
|
||||||
|
"CustomerUserID": "BetreuterKunde2",
|
||||||
|
"DynamicField_Vertriebsweg": null,
|
||||||
|
"Attachments": [],
|
||||||
|
"DynamicField_CustomerLocation": null,
|
||||||
|
"DynamicField_SugarCRMRemoteID": null,
|
||||||
|
"DynamicField_OpenExchangeTN": null,
|
||||||
|
"Service": "",
|
||||||
|
"Type": "Incident",
|
||||||
|
"ContentCharset": "utf-8",
|
||||||
|
"DynamicField_TETest": null,
|
||||||
|
"Responsible": "root@localhost",
|
||||||
|
"SenderType": "customer",
|
||||||
|
"ResponsibleID": "1",
|
||||||
|
"SLA": "",
|
||||||
|
"MimeType": "text/plain",
|
||||||
|
"DynamicField_Combine": null,
|
||||||
|
"Subject": "test #3",
|
||||||
|
"InReplyTo": "",
|
||||||
|
"RealTillTimeNotUsed": "0",
|
||||||
|
"DynamicField_ScomService": null,
|
||||||
|
"CustomerID": "3333333333",
|
||||||
|
"TypeID": "1",
|
||||||
|
"MessageID": "",
|
||||||
|
"Priority": "3 normal",
|
||||||
|
"To": "Postmaster",
|
||||||
|
"DynamicField_SugarCRMCompanySelectedID": null,
|
||||||
|
"UntilTime": 0,
|
||||||
|
"EscalationUpdateTime": "0",
|
||||||
|
"CreatedBy": "3",
|
||||||
|
"Queue": "Postmaster",
|
||||||
|
"DynamicField_ITSMRepairStartTime": null,
|
||||||
|
"ToRealname": "Postmaster",
|
||||||
|
"State": "closed successful",
|
||||||
|
"SenderTypeID": "3",
|
||||||
|
"DynamicField_ZammadMigratorChangedOld": "1",
|
||||||
|
"Title": "test #3",
|
||||||
|
"DynamicField_ScomState": null,
|
||||||
|
"References": "",
|
||||||
|
"DynamicField_Department": null,
|
||||||
|
"ArticleType": "phone",
|
||||||
|
"StateType": "closed",
|
||||||
|
"FromRealname": "Betreuter Kunde",
|
||||||
|
"EscalationSolutionTime": "0",
|
||||||
|
"LockID": "1",
|
||||||
|
"TicketNumber": "20141121305000012",
|
||||||
|
"DynamicField_ITSMDecisionResult": null,
|
||||||
|
"Lock": "unlock",
|
||||||
|
"CreateTimeUnix": "1416525460",
|
||||||
|
"SLAID": null,
|
||||||
|
"DynamicField_ITSMCriticality": null,
|
||||||
|
"From": "\"Betreuter Kunde\" <kunde2@kunde.de>,"
|
||||||
|
}
|
|
@ -131,4 +131,39 @@ RSpec.describe Import::OTRS::Article do
|
||||||
updates_with(zammad_structure)
|
updates_with(zammad_structure)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context 'no article body' do
|
||||||
|
|
||||||
|
let(:object_structure) { load_article_json('customer_phone_no_body') }
|
||||||
|
let(:zammad_structure) {
|
||||||
|
{
|
||||||
|
created_by_id: '3',
|
||||||
|
updated_by_id: 1,
|
||||||
|
ticket_id: '730',
|
||||||
|
id: '3970',
|
||||||
|
body: '',
|
||||||
|
from: '"Betreuter Kunde" <kunde2@kunde.de>,',
|
||||||
|
to: 'Postmaster',
|
||||||
|
cc: '',
|
||||||
|
content_type: 'text/plain',
|
||||||
|
subject: 'test #3',
|
||||||
|
in_reply_to: '',
|
||||||
|
message_id: '',
|
||||||
|
references: '',
|
||||||
|
updated_at: '2014-11-21 00:21:08',
|
||||||
|
created_at: '2014-11-21 00:17:41',
|
||||||
|
type_id: 5,
|
||||||
|
internal: false,
|
||||||
|
sender_id: 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
it 'creates' do
|
||||||
|
creates_with(zammad_structure)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'updates' do
|
||||||
|
updates_with(zammad_structure)
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue