[FIX] sms: don't get error when sending an sms on sale order
steps: - Go to Rental app - Open a rental Order - Click on Action - Send an SMS text message - Fill phone number and message - Sens SMS Issue: Traceback Cause: Sale order doesn't have a phone or mobile field so the sms.composer tries to write on it use "False" Solution ensure the field name isn't false before writing opw-3103232 closes odoo/odoo#110038 X-original-commit: 70a9995c9e02f36dc15d2723151ef0a205ebc12b Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com> Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit is contained in:
@@ -210,7 +210,9 @@ class SendSMS(models.TransientModel):
|
||||
# on the numbers in the database.
|
||||
records = records if records is not None else self._get_records()
|
||||
records.ensure_one()
|
||||
if self.recipient_single_number_itf and self.recipient_single_number_itf != self.recipient_single_number:
|
||||
if not self.number_field_name:
|
||||
self.numbers = self.recipient_single_number_itf or self.recipient_single_number
|
||||
elif self.recipient_single_number_itf and self.recipient_single_number_itf != self.recipient_single_number:
|
||||
records.write({self.number_field_name: self.recipient_single_number_itf})
|
||||
return self._action_send_sms_comment(records=records)
|
||||
|
||||
|
||||
@@ -220,6 +220,23 @@ class TestSMSComposerComment(TestSMSCommon, TestSMSRecipients):
|
||||
self.assertNoSMS()
|
||||
self.assertSMSIapSent(self.random_numbers_san, self._test_body)
|
||||
|
||||
def test_composer_sending_with_no_number_field(self):
|
||||
test_record = self.env['mail.test.sms.partner'].create({'name': 'Test'})
|
||||
sms_composer = self.env['sms.composer'].create({
|
||||
'body': self._test_body,
|
||||
'composition_mode': 'comment',
|
||||
'mass_force_send': False,
|
||||
'mass_keep_log': True,
|
||||
'number_field_name': False,
|
||||
'numbers': False,
|
||||
'recipient_single_number_itf': self.random_numbers_san[0],
|
||||
'res_id': test_record.id,
|
||||
'res_model': 'mail.test.sms.partner'
|
||||
})
|
||||
with self.mockSMSGateway():
|
||||
sms_composer._action_send_sms()
|
||||
self.assertSMSNotification([{'number': self.random_numbers_san[0]}], self._test_body)
|
||||
|
||||
|
||||
class TestSMSComposerBatch(TestSMSCommon):
|
||||
@classmethod
|
||||
|
||||
Reference in New Issue
Block a user