diff --git a/odex25_transactions/exp_transation_letters/__manifest__.py b/odex25_transactions/exp_transation_letters/__manifest__.py index 11ad9653b..10d9125b0 100644 --- a/odex25_transactions/exp_transation_letters/__manifest__.py +++ b/odex25_transactions/exp_transation_letters/__manifest__.py @@ -21,11 +21,11 @@ Letters Managment 'data': [ 'security/groups.xml', 'security/ir.model.access.csv', + 'views/transaction_views.xml', 'views/letters_view.xml', 'reports/letter_template.xml', 'reports/formal_letter.xml', 'views/editor.xml', - 'views/transaction_views.xml' ], 'qweb' : [ ], diff --git a/odex25_transactions/exp_transation_letters/models/letter.py b/odex25_transactions/exp_transation_letters/models/letter.py index d404ceb86..0e11547c3 100644 --- a/odex25_transactions/exp_transation_letters/models/letter.py +++ b/odex25_transactions/exp_transation_letters/models/letter.py @@ -98,14 +98,8 @@ class Letters(models.Model): final_content = final_content.replace('line-height', '') rec.content = final_content - def action_generate_attachment(self): - """ this method called from button action in view xml """ - # generate pdf from report, use report's id as reference - REPORT_ID = 'exp_transation_letters.report_letter_action_report' - pdf = self.env.ref(REPORT_ID)._render_qweb_pdf(self.ids) - # pdf result is a list - b64_pdf = base64.b64encode(pdf[0]) - res_id = '' + def _get_transaction_values(self): + self.ensure_one() field_name = 'internal_transaction_id' if self.transaction_type == 'internal': res_id = self.internal_transaction_id.id @@ -116,6 +110,18 @@ class Letters(models.Model): elif self.transaction_type == "incoming": res_id = self.incoming_transaction_id.id field_name = 'incoming_transaction_id' + + return field_name, res_id + + def action_generate_attachment(self): + """ this method called from button action in view xml """ + # generate pdf from report, use report's id as reference + REPORT_ID = 'exp_transation_letters.report_letter_action_report' + pdf = self.env.ref(REPORT_ID)._render_qweb_pdf(self.ids) + # pdf result is a list + b64_pdf = base64.b64encode(pdf[0]) + res_id = '' + field_name, res_id = self._get_transaction_values() file_exists = self.env['cm.attachment.rule'].search([(field_name, '=', res_id),('created_from_system','=',True)]) if file_exists: file_exists.unlink() @@ -156,6 +162,10 @@ class Letters(models.Model): def action_draft(self): self.ensure_one() + field_name, res_id = self._get_transaction_values() + letter_attachment = self.env['cm.attachment.rule'].search([(field_name, '=', res_id), ('created_from_system', '=', True)]) + if letter_attachment: + letter_attachment.unlink() self.state = 'draft' diff --git a/odex25_transactions/exp_transation_letters/views/letters_view.xml b/odex25_transactions/exp_transation_letters/views/letters_view.xml index 667056633..e0fa67694 100644 --- a/odex25_transactions/exp_transation_letters/views/letters_view.xml +++ b/odex25_transactions/exp_transation_letters/views/letters_view.xml @@ -46,9 +46,15 @@ - - - + + + diff --git a/odex25_transactions/exp_transation_letters/views/transaction_views.xml b/odex25_transactions/exp_transation_letters/views/transaction_views.xml index 9900abc0a..d599ab453 100644 --- a/odex25_transactions/exp_transation_letters/views/transaction_views.xml +++ b/odex25_transactions/exp_transation_letters/views/transaction_views.xml @@ -5,6 +5,8 @@ incoming.transaction.view.form.inherit incoming.transaction + primary + 99 exp_transaction_documents.group_transaction_manager @@ -15,6 +17,8 @@ incoming.transaction.view.form.inherit incoming.transaction + primary + 99 exp_transaction_documents.group_transaction_manager @@ -26,6 +30,8 @@ internal.transaction.view.form.inherit internal.transaction + primary + 99 exp_transaction_documents.group_transaction_manager @@ -36,6 +42,8 @@ internal.transaction.view.form.inherit internal.transaction + primary + 99 exp_transaction_documents.group_transaction_manager @@ -47,6 +55,8 @@ outgoing.transaction.view.form.inherit outgoing.transaction + primary + 99 exp_transaction_documents.group_transaction_manager @@ -57,6 +67,8 @@ outgoing.transaction.view.form.inherit outgoing.transaction + primary + 99 exp_transaction_documents.group_transaction_manager