odoo-addon-account-credit-control 18.0.1.0.1__py3-none-any.whl → 18.0.2.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- odoo/addons/account_credit_control/README.rst +1 -1
- odoo/addons/account_credit_control/__manifest__.py +1 -1
- odoo/addons/account_credit_control/i18n/account_credit_control.pot +0 -12
- odoo/addons/account_credit_control/models/credit_control_communication.py +7 -24
- odoo/addons/account_credit_control/models/credit_control_run.py +0 -10
- odoo/addons/account_credit_control/models/mail_mail.py +31 -4
- odoo/addons/account_credit_control/static/description/index.html +1 -1
- odoo/addons/account_credit_control/tests/test_credit_control_run.py +33 -19
- {odoo_addon_account_credit_control-18.0.1.0.1.dist-info → odoo_addon_account_credit_control-18.0.2.0.0.dist-info}/METADATA +2 -2
- {odoo_addon_account_credit_control-18.0.1.0.1.dist-info → odoo_addon_account_credit_control-18.0.2.0.0.dist-info}/RECORD +12 -12
- {odoo_addon_account_credit_control-18.0.1.0.1.dist-info → odoo_addon_account_credit_control-18.0.2.0.0.dist-info}/WHEEL +1 -1
- {odoo_addon_account_credit_control-18.0.1.0.1.dist-info → odoo_addon_account_credit_control-18.0.2.0.0.dist-info}/top_level.txt +0 -0
|
@@ -11,7 +11,7 @@ Account Credit Control
|
|
|
11
11
|
!! This file is generated by oca-gen-addon-readme !!
|
|
12
12
|
!! changes will be overwritten. !!
|
|
13
13
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
14
|
-
!! source digest: sha256:
|
|
14
|
+
!! source digest: sha256:297f0af9d06a9cd18365b2648f65cfa06ecdd30d498d1d75b4012e93402031f6
|
|
15
15
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
16
16
|
|
|
17
17
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -1177,12 +1177,6 @@ msgstr ""
|
|
|
1177
1177
|
msgid "No lines will be changed. All the selected lines are already done."
|
|
1178
1178
|
msgstr ""
|
|
1179
1179
|
|
|
1180
|
-
#. module: account_credit_control
|
|
1181
|
-
#. odoo-python
|
|
1182
|
-
#: code:addons/account_credit_control/models/credit_control_run.py:0
|
|
1183
|
-
msgid "Notifications"
|
|
1184
|
-
msgstr ""
|
|
1185
|
-
|
|
1186
1180
|
#. module: account_credit_control
|
|
1187
1181
|
#: model:ir.model.fields,field_description:account_credit_control.field_credit_control_communication__message_needaction_counter
|
|
1188
1182
|
#: model:ir.model.fields,field_description:account_credit_control.field_credit_control_line__message_needaction_counter
|
|
@@ -1621,12 +1615,6 @@ msgid ""
|
|
|
1621
1615
|
"overridden on partners or invoices."
|
|
1622
1616
|
msgstr ""
|
|
1623
1617
|
|
|
1624
|
-
#. module: account_credit_control
|
|
1625
|
-
#. odoo-python
|
|
1626
|
-
#: code:addons/account_credit_control/models/credit_control_run.py:0
|
|
1627
|
-
msgid "The emails will be sent in the background"
|
|
1628
|
-
msgstr ""
|
|
1629
|
-
|
|
1630
1618
|
#. module: account_credit_control
|
|
1631
1619
|
#: model_terms:ir.ui.view,arch_db:account_credit_control.credit_control_line_search
|
|
1632
1620
|
msgid "The line was deprecated by a manual change of policy on invoice."
|
|
@@ -4,9 +4,8 @@
|
|
|
4
4
|
# Copyright 2020 Manuel Calero - Tecnativa
|
|
5
5
|
# Copyright 2023 Tecnativa - Víctor Martínez
|
|
6
6
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
|
7
|
-
import threading
|
|
8
7
|
|
|
9
|
-
from odoo import _, api, fields, models
|
|
8
|
+
from odoo import _, api, fields, models
|
|
10
9
|
from odoo.tools.misc import format_amount, format_date
|
|
11
10
|
|
|
12
11
|
|
|
@@ -233,36 +232,20 @@ class CreditControlCommunication(models.Model):
|
|
|
233
232
|
comm._send_mails()
|
|
234
233
|
|
|
235
234
|
def _send_mails(self):
|
|
236
|
-
#
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
@self.env.cr.postcommit.add
|
|
240
|
-
def _launch_print_thread():
|
|
241
|
-
threaded_calculation = threading.Thread(
|
|
242
|
-
target=self.send_mails_threaded,
|
|
243
|
-
args=self.ids,
|
|
244
|
-
)
|
|
245
|
-
threaded_calculation.start()
|
|
246
|
-
else:
|
|
247
|
-
self._send_communications_by_email()
|
|
248
|
-
|
|
249
|
-
def send_mails_threaded(self, record_ids):
|
|
250
|
-
with registry(self._cr.dbname).cursor() as cr:
|
|
251
|
-
self = self.with_env(self.env(cr=cr))
|
|
252
|
-
communications = self.browse(record_ids)
|
|
253
|
-
communications._send_communications_by_email()
|
|
235
|
+
# in account_credit_control_queue_job, override this method
|
|
236
|
+
# to loop over self and call _send_communications_by_email with delay
|
|
237
|
+
self._send_communications_by_email()
|
|
254
238
|
|
|
255
239
|
def _send_communications_by_email(self):
|
|
256
240
|
for comm in self:
|
|
257
|
-
|
|
241
|
+
# in mass_mail mode, the subtype is dropped, which is used by the
|
|
242
|
+
# postprocessing that marks control lines as sent.lines
|
|
243
|
+
comm.message_post_with_source(
|
|
258
244
|
comm.policy_level_id.email_template_id,
|
|
259
245
|
subtype_id=self.env["ir.model.data"]._xmlid_to_res_id(
|
|
260
246
|
"account_credit_control.mt_request"
|
|
261
247
|
),
|
|
262
248
|
)
|
|
263
|
-
comm.credit_control_line_ids.filtered(
|
|
264
|
-
lambda line: line.state == "queued"
|
|
265
|
-
).state = "sent"
|
|
266
249
|
|
|
267
250
|
def _mark_credit_line_as_sent(self):
|
|
268
251
|
lines = self.mapped("credit_control_line_ids")
|
|
@@ -208,16 +208,6 @@ class CreditControlRun(models.Model):
|
|
|
208
208
|
comm_obj = self.env["credit.control.communication"]
|
|
209
209
|
comms = comm_obj._generate_comm_from_credit_lines(email_lines)
|
|
210
210
|
comms._generate_emails()
|
|
211
|
-
# Notify user that the emails will be sent in background
|
|
212
|
-
self.env["bus.bus"]._sendone(
|
|
213
|
-
self.env.user.partner_id,
|
|
214
|
-
"simple_notification",
|
|
215
|
-
{
|
|
216
|
-
"type": "info",
|
|
217
|
-
"title": _("Notifications"),
|
|
218
|
-
"message": _("The emails will be sent in the background"),
|
|
219
|
-
},
|
|
220
|
-
)
|
|
221
211
|
if letter_lines:
|
|
222
212
|
wiz = self.env["credit.control.printer"].create(
|
|
223
213
|
{"line_ids": letter_lines.ids}
|
|
@@ -8,10 +8,7 @@ from odoo import models
|
|
|
8
8
|
class Mail(models.Model):
|
|
9
9
|
_inherit = "mail.mail"
|
|
10
10
|
|
|
11
|
-
def
|
|
12
|
-
self, success_pids, failure_reason=False, failure_type=None
|
|
13
|
-
):
|
|
14
|
-
"""Mark credit control lines states."""
|
|
11
|
+
def _update_control_line_status(self):
|
|
15
12
|
for mail in self:
|
|
16
13
|
msg = mail.mail_message_id
|
|
17
14
|
if msg.model != "credit.control.communication":
|
|
@@ -23,8 +20,38 @@ class Mail(models.Model):
|
|
|
23
20
|
)
|
|
24
21
|
new_state = "sent" if mail.state == "sent" else "email_error"
|
|
25
22
|
lines.write({"state": new_state})
|
|
23
|
+
|
|
24
|
+
def _postprocess_sent_message(
|
|
25
|
+
self, success_pids, failure_reason=False, failure_type=None
|
|
26
|
+
):
|
|
27
|
+
"""Mark credit control lines states."""
|
|
28
|
+
self._update_control_line_status()
|
|
26
29
|
return super()._postprocess_sent_message(
|
|
27
30
|
success_pids=success_pids,
|
|
28
31
|
failure_reason=failure_reason,
|
|
29
32
|
failure_type=failure_type,
|
|
30
33
|
)
|
|
34
|
+
|
|
35
|
+
def _send(
|
|
36
|
+
self,
|
|
37
|
+
auto_commit=False,
|
|
38
|
+
raise_exception=False,
|
|
39
|
+
smtp_session=None,
|
|
40
|
+
alias_domain_id=False,
|
|
41
|
+
mail_server=False,
|
|
42
|
+
post_send_callback=None,
|
|
43
|
+
):
|
|
44
|
+
# because of
|
|
45
|
+
# https://github.com/odoo/odoo/blob/bcba6c0dda4818e67a9023beb26593a7d74ff6a6/
|
|
46
|
+
# addons/mail/models/mail_mail.py#L606-L607
|
|
47
|
+
# we don't go through _postprocess_sent_message if the address is blacklisted
|
|
48
|
+
no_postprocess = self.filtered(lambda m: m.state != "outgoing")
|
|
49
|
+
no_postprocess._update_control_line_status()
|
|
50
|
+
return super()._send(
|
|
51
|
+
auto_commit=auto_commit,
|
|
52
|
+
raise_exception=raise_exception,
|
|
53
|
+
smtp_session=smtp_session,
|
|
54
|
+
alias_domain_id=alias_domain_id,
|
|
55
|
+
mail_server=mail_server,
|
|
56
|
+
post_send_callback=post_send_callback,
|
|
57
|
+
)
|
|
@@ -372,7 +372,7 @@ ul.auto-toc {
|
|
|
372
372
|
!! This file is generated by oca-gen-addon-readme !!
|
|
373
373
|
!! changes will be overwritten. !!
|
|
374
374
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
375
|
-
!! source digest: sha256:
|
|
375
|
+
!! source digest: sha256:297f0af9d06a9cd18365b2648f65cfa06ecdd30d498d1d75b4012e93402031f6
|
|
376
376
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
|
377
377
|
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/license-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/credit-control/tree/18.0/account_credit_control"><img alt="OCA/credit-control" src="https://img.shields.io/badge/github-OCA%2Fcredit--control-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/credit-control-18-0/credit-control-18-0-account_credit_control"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/credit-control&target_branch=18.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
|
|
378
378
|
<p>Account Credit Control module is a part of Financial Tools used in
|
|
@@ -14,8 +14,7 @@ from odoo.tests import Form, RecordCapturer, tagged
|
|
|
14
14
|
from odoo.addons.account.tests.common import AccountTestInvoicingCommon
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
class TestCreditControlRun(AccountTestInvoicingCommon):
|
|
17
|
+
class TestCreditControlRunCase(AccountTestInvoicingCommon):
|
|
19
18
|
@classmethod
|
|
20
19
|
def setUpClass(cls):
|
|
21
20
|
super().setUpClass()
|
|
@@ -79,6 +78,9 @@ class TestCreditControlRun(AccountTestInvoicingCommon):
|
|
|
79
78
|
cls.invoice = invoice_form.save()
|
|
80
79
|
cls.invoice.action_post()
|
|
81
80
|
|
|
81
|
+
|
|
82
|
+
@tagged("post_install", "-at_install")
|
|
83
|
+
class TestCreditControlRun(TestCreditControlRunCase):
|
|
82
84
|
def test_check_run_date(self):
|
|
83
85
|
"""
|
|
84
86
|
Create a control run older than the last control run
|
|
@@ -127,10 +129,10 @@ class TestCreditControlRun(AccountTestInvoicingCommon):
|
|
|
127
129
|
)
|
|
128
130
|
|
|
129
131
|
report_regex = (
|
|
130
|
-
rf'
|
|
131
|
-
r"\d+ Credit Control Lines.</b><br
|
|
132
|
+
rf'Policy "<b>{self.policy.name}</b>" has generated <b>'
|
|
133
|
+
r"\d+ Credit Control Lines.</b><br>"
|
|
132
134
|
)
|
|
133
|
-
regex_result = re.
|
|
135
|
+
regex_result = re.search(report_regex, control_run.report)
|
|
134
136
|
self.assertIsNotNone(regex_result)
|
|
135
137
|
|
|
136
138
|
def test_generate_credit_lines_with_max_level(self):
|
|
@@ -213,10 +215,10 @@ class TestCreditControlRun(AccountTestInvoicingCommon):
|
|
|
213
215
|
self.assertEqual(control_run.state, "done")
|
|
214
216
|
|
|
215
217
|
report_regex = (
|
|
216
|
-
rf'
|
|
217
|
-
r"\d+ Credit Control Lines.</b><br
|
|
218
|
+
rf'Policy "<b>{self.policy.name}</b>" has generated <b>'
|
|
219
|
+
r"\d+ Credit Control Lines.</b><br>"
|
|
218
220
|
)
|
|
219
|
-
regex_result = re.
|
|
221
|
+
regex_result = re.search(report_regex, control_run.report)
|
|
220
222
|
self.assertIsNotNone(regex_result)
|
|
221
223
|
|
|
222
224
|
# Mark lines to be send
|
|
@@ -248,10 +250,10 @@ class TestCreditControlRun(AccountTestInvoicingCommon):
|
|
|
248
250
|
self.assertEqual(control_run.state, "done")
|
|
249
251
|
|
|
250
252
|
report_regex = (
|
|
251
|
-
rf'
|
|
252
|
-
r"\d+ Credit Control Lines.</b><br
|
|
253
|
+
rf'Policy "<b>{self.policy.name}</b>" has generated <b>'
|
|
254
|
+
r"\d+ Credit Control Lines.</b><br>"
|
|
253
255
|
)
|
|
254
|
-
regex_result = re.
|
|
256
|
+
regex_result = re.search(report_regex, control_run.report)
|
|
255
257
|
self.assertIsNotNone(regex_result)
|
|
256
258
|
|
|
257
259
|
# Mark lines to be send
|
|
@@ -288,30 +290,42 @@ class TestCreditControlRun(AccountTestInvoicingCommon):
|
|
|
288
290
|
{"name": "to_be_sent", "line_ids": [(6, 0, control_lines.ids)]}
|
|
289
291
|
)
|
|
290
292
|
marker.mark_lines()
|
|
291
|
-
|
|
292
|
-
domain_notifications_email="test@example.com"
|
|
293
|
-
)
|
|
294
|
-
wiz_emailer = emailer_obj.create({})
|
|
293
|
+
wiz_emailer = self.env["credit.control.emailer"].create({})
|
|
295
294
|
wiz_emailer.line_ids = control_lines
|
|
295
|
+
self.env.user.company_id.email = "test@example.com"
|
|
296
296
|
with RecordCapturer(self.env["credit.control.communication"], []) as capture:
|
|
297
|
-
wiz_emailer.email_lines()
|
|
297
|
+
wiz_emailer.with_context(queue_job__no_delay=True).email_lines()
|
|
298
298
|
new_communication = capture.records
|
|
299
299
|
self.assertEqual(len(new_communication), 1)
|
|
300
300
|
self.assertEqual(len(new_communication.message_ids), 1)
|
|
301
301
|
# Verify that the email include the invoice details.
|
|
302
302
|
self.assertIn("Invoices summary", new_communication.message_ids.body)
|
|
303
303
|
self.assertIn(self.invoice.name, new_communication.message_ids.body)
|
|
304
|
+
|
|
305
|
+
def test_sent_email_no_invoice_detail(self):
|
|
306
|
+
"""
|
|
307
|
+
Verify that the email is sent and does not include the invoice details
|
|
308
|
+
"""
|
|
309
|
+
policy_level_expected = self.env.ref("account_credit_control.3_time_1")
|
|
310
|
+
self.invoice.partner_id.email = "test@test.com"
|
|
311
|
+
self.env.user.company_id.email = "test@example.com"
|
|
312
|
+
control_run = self.env["credit.control.run"].create(
|
|
313
|
+
{"date": fields.Date.today(), "policy_ids": [(6, 0, [self.policy.id])]}
|
|
314
|
+
)
|
|
315
|
+
control_run.with_context(lang="en_US").generate_credit_lines()
|
|
316
|
+
self.assertTrue(len(self.invoice.credit_control_line_ids), 1)
|
|
317
|
+
control_lines = self.invoice.credit_control_line_ids
|
|
318
|
+
self.assertEqual(control_lines.policy_level_id, policy_level_expected)
|
|
304
319
|
# CASE 2: set the policy level to show invoice details = False
|
|
305
320
|
control_lines.policy_level_id.mail_show_invoice_detail = False
|
|
306
|
-
control_lines.state = "to_be_sent"
|
|
307
321
|
marker = self.env["credit.control.marker"].create(
|
|
308
322
|
{"name": "to_be_sent", "line_ids": [(6, 0, control_lines.ids)]}
|
|
309
323
|
)
|
|
310
324
|
marker.mark_lines()
|
|
311
|
-
wiz_emailer =
|
|
325
|
+
wiz_emailer = self.env["credit.control.emailer"].create({})
|
|
312
326
|
wiz_emailer.line_ids = control_lines
|
|
313
327
|
with RecordCapturer(self.env["credit.control.communication"], []) as capture:
|
|
314
|
-
wiz_emailer.email_lines()
|
|
328
|
+
wiz_emailer.with_context(queue_job__no_delay=True).email_lines()
|
|
315
329
|
new_communication = capture.records
|
|
316
330
|
self.assertEqual(len(new_communication), 1)
|
|
317
331
|
self.assertEqual(len(new_communication.message_ids), 1)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: odoo-addon-account_credit_control
|
|
3
|
-
Version: 18.0.
|
|
3
|
+
Version: 18.0.2.0.0
|
|
4
4
|
Requires-Python: >=3.10
|
|
5
5
|
Requires-Dist: odoo==18.0.*
|
|
6
6
|
Summary: Account Credit Control
|
|
@@ -27,7 +27,7 @@ Account Credit Control
|
|
|
27
27
|
!! This file is generated by oca-gen-addon-readme !!
|
|
28
28
|
!! changes will be overwritten. !!
|
|
29
29
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
30
|
-
!! source digest: sha256:
|
|
30
|
+
!! source digest: sha256:297f0af9d06a9cd18365b2648f65cfa06ecdd30d498d1d75b4012e93402031f6
|
|
31
31
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
32
32
|
|
|
33
33
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
odoo/addons/account_credit_control/README.rst,sha256=
|
|
1
|
+
odoo/addons/account_credit_control/README.rst,sha256=cL8Rls_g-2WRY10-pDYbA8d6bmQOTWZoSESVTjp1boA,5594
|
|
2
2
|
odoo/addons/account_credit_control/__init__.py,sha256=8MjrwJNjAjKy6j77I1529EUbQMh7TZ867lnz-KzifyI,127
|
|
3
|
-
odoo/addons/account_credit_control/__manifest__.py,sha256=
|
|
3
|
+
odoo/addons/account_credit_control/__manifest__.py,sha256=7BynWNLGDj5EwsQZKwyKltxKoFM6IU87oW-GiESn33M,1598
|
|
4
4
|
odoo/addons/account_credit_control/data/data.xml,sha256=UtnBMYU2HOtLYgmxSlU1cEK-XB40enAV90QfkamdgMc,11306
|
|
5
5
|
odoo/addons/account_credit_control/demo/res_users.xml,sha256=KWDhrbbE4VTCHpkvFMu49yeLkGdwIson7hOkboR-0dE,372
|
|
6
|
-
odoo/addons/account_credit_control/i18n/account_credit_control.pot,sha256=
|
|
6
|
+
odoo/addons/account_credit_control/i18n/account_credit_control.pot,sha256=koP3Wb2bJdQBiT-R_gkEEz_4cUJl5VGAw1KRiHJt68c,75038
|
|
7
7
|
odoo/addons/account_credit_control/i18n/am.po,sha256=Y40kLJDr3b3D2CZM1G8FQ9JlhFVI-ahn8AtiUwEwKf0,75818
|
|
8
8
|
odoo/addons/account_credit_control/i18n/ar.po,sha256=Fp_eZGxAUX9yMD8b6mqcDqB25dWNVQtGOwSsFxWzTOI,76113
|
|
9
9
|
odoo/addons/account_credit_control/i18n/bg.po,sha256=6WhMLmiAvQcX6Yb32sKhFNnMcBR7qvi-svimQi96XiE,76011
|
|
@@ -85,11 +85,11 @@ odoo/addons/account_credit_control/migrations/18.0.1.0.0/post-migration.py,sha25
|
|
|
85
85
|
odoo/addons/account_credit_control/models/__init__.py,sha256=PVYm8xVMpPr6s8W-gB9B_TYghqT_O467UM-I3dqnOOA,377
|
|
86
86
|
odoo/addons/account_credit_control/models/account_account.py,sha256=k7A1hrH2xi-em9uvuBsYuAj-UviL1s_X7wK0GprbZI4,503
|
|
87
87
|
odoo/addons/account_credit_control/models/account_move.py,sha256=MzN_JSc7GcuDq3YsXOWs7pgk3e8Wt2QtFRlxifoUe24,2128
|
|
88
|
-
odoo/addons/account_credit_control/models/credit_control_communication.py,sha256=
|
|
88
|
+
odoo/addons/account_credit_control/models/credit_control_communication.py,sha256=nb9EqhCRp9SNuahoIrECu-GGryy3DYE6OB9pAJH3CkA,9994
|
|
89
89
|
odoo/addons/account_credit_control/models/credit_control_line.py,sha256=vSQ3e-ROhBWSNvbvNwPlas_XGLgodzza1NIIb-9AMWs,10398
|
|
90
90
|
odoo/addons/account_credit_control/models/credit_control_policy.py,sha256=Q-nvyblkFOvxZMyyLAutYvxNVI0hTjOKSt4p17Pa4tA,18165
|
|
91
|
-
odoo/addons/account_credit_control/models/credit_control_run.py,sha256=
|
|
92
|
-
odoo/addons/account_credit_control/models/mail_mail.py,sha256=
|
|
91
|
+
odoo/addons/account_credit_control/models/credit_control_run.py,sha256=6kCfWhfD3PiXjRIVmEko_wpArisbTFPTABhfCtdxb3s,7433
|
|
92
|
+
odoo/addons/account_credit_control/models/mail_mail.py,sha256=SHdmAlWkx9Dt0sSk1QP8T8D1d31VXN8ZEgYGgEo9MpE,2137
|
|
93
93
|
odoo/addons/account_credit_control/models/res_company.py,sha256=vmoBLc6EmvuwRgUeISjkrDKjwcxv_y94ejVDOA5FDmE,793
|
|
94
94
|
odoo/addons/account_credit_control/models/res_config_settings.py,sha256=JSYMvFivdXWyDusoKY-dhuCfLotOlqA1RrbIYN7HxgQ,1124
|
|
95
95
|
odoo/addons/account_credit_control/models/res_partner.py,sha256=1KbpDRbm_UZvdAc-2VRQodI9ywEFmrNHt_7r4VS7nbI,3934
|
|
@@ -105,11 +105,11 @@ odoo/addons/account_credit_control/report/report_credit_control_summary.xml,sha2
|
|
|
105
105
|
odoo/addons/account_credit_control/security/account_security.xml,sha256=wDtL9khr0tYG_TgbHuVz7j2yHyYIb1ILNPT-rvJaoIo,3918
|
|
106
106
|
odoo/addons/account_credit_control/security/ir.model.access.csv,sha256=FgKzKdftXknPsreudq4NdvaGqxuUaVWWxGgmrfjHqRA,5531
|
|
107
107
|
odoo/addons/account_credit_control/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
|
|
108
|
-
odoo/addons/account_credit_control/static/description/index.html,sha256=
|
|
108
|
+
odoo/addons/account_credit_control/static/description/index.html,sha256=lqMGAA2M0hsp0sYgk9mtH53X39WNn9oRSvlzZ3Qirf4,16272
|
|
109
109
|
odoo/addons/account_credit_control/tests/__init__.py,sha256=ytdwXdWp6qfFDhN08R3rfI-w_AriEuONj3VSBV3Ztb0,206
|
|
110
110
|
odoo/addons/account_credit_control/tests/test_account_move.py,sha256=Sjf-JpbZ7ZdoOrRGiW4B_bJVshlZ8Wpvyi2z2z0Ym0w,10941
|
|
111
111
|
odoo/addons/account_credit_control/tests/test_credit_control_policy.py,sha256=lF8M-TPSoExu_0fySECLyMUJGkcTcoU7bnahoY1cXvk,2994
|
|
112
|
-
odoo/addons/account_credit_control/tests/test_credit_control_run.py,sha256=
|
|
112
|
+
odoo/addons/account_credit_control/tests/test_credit_control_run.py,sha256=BP_n_b-wTYjX_9eQwcVbaTlWMxwFuYtCakGtDTVb9dY,16505
|
|
113
113
|
odoo/addons/account_credit_control/tests/test_res_partner.py,sha256=xoH3tW1IXLroIRe4c0lj7j06WVQ8-7kv4iTBSx8cTVU,2487
|
|
114
114
|
odoo/addons/account_credit_control/views/account_move.xml,sha256=o_GJfurKwr9w8bDZ2VV0X7ndrQcU3iywjRxVgkuDb1E,2145
|
|
115
115
|
odoo/addons/account_credit_control/views/credit_control_communication.xml,sha256=UgApmNe4iyaatMfH9607Ra7U5gb4saKa-tZofxy9R0w,6389
|
|
@@ -129,7 +129,7 @@ odoo/addons/account_credit_control/wizard/credit_control_policy_changer_view.xml
|
|
|
129
129
|
odoo/addons/account_credit_control/wizard/credit_control_printer.py,sha256=1UhTbmiZW6Do2x-2D-K-Lrv003P3P9VlhstVjfJBzZo,1816
|
|
130
130
|
odoo/addons/account_credit_control/wizard/credit_control_printer_view.xml,sha256=HH2mAjJRQwqGUv9YQeCUlYrObbR_fHHXFRyO5MjNkEI,2100
|
|
131
131
|
odoo/addons/account_credit_control/wizard/mail_compose_message.py,sha256=JCnfhE338Z9ebZliiGKlJaCpZOjit5AQwRPKqwUAB_8,1063
|
|
132
|
-
odoo_addon_account_credit_control-18.0.
|
|
133
|
-
odoo_addon_account_credit_control-18.0.
|
|
134
|
-
odoo_addon_account_credit_control-18.0.
|
|
135
|
-
odoo_addon_account_credit_control-18.0.
|
|
132
|
+
odoo_addon_account_credit_control-18.0.2.0.0.dist-info/METADATA,sha256=mA6y49AH7B-kPgKQmbSaFOKPpX1RTPUS2kMlNTV7k-M,6187
|
|
133
|
+
odoo_addon_account_credit_control-18.0.2.0.0.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
|
|
134
|
+
odoo_addon_account_credit_control-18.0.2.0.0.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
|
|
135
|
+
odoo_addon_account_credit_control-18.0.2.0.0.dist-info/RECORD,,
|