Skip to content

Commit 3679f80

Browse files
[REF] engenere_partner_sales_info: refactor fields
1 parent 67044c0 commit 3679f80

File tree

3 files changed

+36
-35
lines changed

3 files changed

+36
-35
lines changed

engenere_partner_sales_info/i18n/pt_BR.po

+23-19
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,6 @@ msgstr "Período de Análise (Meses)"
3232
msgid "Analysis Settings"
3333
msgstr "Configurações de Análise"
3434

35-
#. module: engenere_partner_sales_info
36-
#: code:addons/engenere_partner_sales_info/models/res_partner.py:0
37-
#, python-format
38-
msgid ""
39-
"Analysis period: %(months)d months. Note: bonus amounts are not excluded."
40-
msgstr ""
41-
"Período de análise: %(months)d meses. Nota: os valores bonificados não são "
42-
"excluídos."
43-
4435
#. module: engenere_partner_sales_info
4536
#: model:ir.model.fields,field_description:engenere_partner_sales_info.field_res_partner__average_invoiced
4637
#: model:ir.model.fields,field_description:engenere_partner_sales_info.field_res_users__average_invoiced
@@ -113,6 +104,11 @@ msgstr "Valor médio do pedido excluindo valores atípicos"
113104
msgid "Average sale order amount for this customer"
114105
msgstr "Valor médio do pedido de venda para este cliente"
115106

107+
#. module: engenere_partner_sales_info
108+
#: model:ir.model.fields.selection,name:engenere_partner_sales_info.selection__res_partner__last_order_status__cancel
109+
msgid "Cancelled"
110+
msgstr "Cancelado"
111+
116112
#. module: engenere_partner_sales_info
117113
#: model:ir.model,name:engenere_partner_sales_info.model_res_config_settings
118114
msgid "Config Settings"
@@ -177,12 +173,6 @@ msgstr "Nome Exibido"
177173
msgid "ID"
178174
msgstr "ID"
179175

180-
#. module: engenere_partner_sales_info
181-
#: model:ir.model.fields,help:engenere_partner_sales_info.field_res_partner__has_open_quotation
182-
#: model:ir.model.fields,help:engenere_partner_sales_info.field_res_users__has_open_quotation
183-
msgid "Indicates if there are any draft/sent quotations for this customer"
184-
msgstr "Indica se há rascunhos ou cotações enviadas para este cliente"
185-
186176
#. module: engenere_partner_sales_info
187177
#: model_terms:ir.ui.view,arch_db:engenere_partner_sales_info.view_partner_form_sales_info
188178
msgid "Invoice Information"
@@ -242,6 +232,11 @@ msgstr "Data da Última Cotação Aberta"
242232
msgid "Last sale order of this customer"
243233
msgstr "Último pedido de venda deste cliente"
244234

235+
#. module: engenere_partner_sales_info
236+
#: model:ir.model.fields.selection,name:engenere_partner_sales_info.selection__res_partner__last_order_status__done
237+
msgid "Locked"
238+
msgstr "Trancado"
239+
245240
#. module: engenere_partner_sales_info
246241
#: model:ir.model.fields,help:engenere_partner_sales_info.field_res_partner__last_invoice_id
247242
#: model:ir.model.fields,help:engenere_partner_sales_info.field_res_users__last_invoice_id
@@ -298,6 +293,16 @@ msgstr "Análise de Vendas do Parceiro"
298293
msgid "Pending Quotation?"
299294
msgstr "Cotação Pendente?"
300295

296+
#. module: engenere_partner_sales_info
297+
#: model:ir.model.fields.selection,name:engenere_partner_sales_info.selection__res_partner__last_order_status__draft
298+
msgid "Quotation"
299+
msgstr "Cotação"
300+
301+
#. module: engenere_partner_sales_info
302+
#: model:ir.model.fields.selection,name:engenere_partner_sales_info.selection__res_partner__last_order_status__sent
303+
msgid "Quotation Sent"
304+
msgstr "Cotação Enviada"
305+
301306
#. module: engenere_partner_sales_info
302307
#: model_terms:ir.ui.view,arch_db:engenere_partner_sales_info.view_partner_form_sales_info
303308
msgid "Quotation Status"
@@ -316,10 +321,9 @@ msgid "Sales Analysis"
316321
msgstr "Análise de Vendas"
317322

318323
#. module: engenere_partner_sales_info
319-
#: model:ir.model.fields,field_description:engenere_partner_sales_info.field_res_config_settings__smart_search
320-
#: model:ir.model.fields,field_description:engenere_partner_sales_info.field_res_partner__smart_search
321-
msgid "Smart Search"
322-
msgstr "Busca Inteligente"
324+
#: model:ir.model.fields.selection,name:engenere_partner_sales_info.selection__res_partner__last_order_status__sale
325+
msgid "Sales Order"
326+
msgstr "Pedido de Venda"
323327

324328
#. module: engenere_partner_sales_info
325329
#: model:ir.model.fields,help:engenere_partner_sales_info.field_res_partner__last_order_status

engenere_partner_sales_info/models/res_partner.py

+8-11
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,17 @@ class ResPartner(models.Model):
1616
help="Last sale order of this customer",
1717
)
1818
last_order_date = fields.Date(
19-
string="Last Order Date",
2019
compute="_compute_sales_info",
2120
help="Date of the customer's most recent sale order",
2221
)
23-
last_order_status = fields.Char(
24-
string="Last Order Status",
22+
last_order_status = fields.Selection(
23+
[
24+
("draft", "Quotation"),
25+
("sent", "Quotation Sent"),
26+
("sale", "Sales Order"),
27+
("done", "Locked"),
28+
("cancel", "Cancelled"),
29+
],
2530
compute="_compute_sales_info",
2631
help="Status of the customer's most recent sale order",
2732
)
@@ -31,12 +36,10 @@ class ResPartner(models.Model):
3136
help="Total number of sale orders for this customer",
3237
)
3338
total_ordered = fields.Monetary(
34-
string="Total Ordered",
3539
compute="_compute_sales_info",
3640
help="Sum of all sale order amounts for this customer",
3741
)
3842
average_ordered = fields.Monetary(
39-
string="Average Ordered",
4043
compute="_compute_sales_info",
4144
help="Average sale order amount for this customer",
4245
)
@@ -51,12 +54,10 @@ class ResPartner(models.Model):
5154
help="Average number of days between sale orders",
5255
)
5356
days_since_last_order = fields.Integer(
54-
string="Days Since Last Order",
5557
compute="_compute_sales_info",
5658
help="Number of days since the most recent sale order",
5759
)
5860
last_invoice_date = fields.Date(
59-
string="Last Invoice Date",
6061
compute="_compute_sales_info",
6162
help="Date of the customer's most recent invoice",
6263
)
@@ -66,12 +67,10 @@ class ResPartner(models.Model):
6667
help="Total number of invoices for this customer",
6768
)
6869
total_invoiced = fields.Monetary(
69-
string="Total Invoiced",
7070
compute="_compute_sales_info",
7171
help="Sum of all invoice amounts for this customer",
7272
)
7373
average_invoiced = fields.Monetary(
74-
string="Average Invoiced",
7574
compute="_compute_sales_info",
7675
help="Average invoice amount for this customer",
7776
)
@@ -92,12 +91,10 @@ class ResPartner(models.Model):
9291
help="Most recent invoice of this customer",
9392
)
9493
days_since_last_invoice = fields.Integer(
95-
string="Days Since Last Invoice",
9694
compute="_compute_sales_info",
9795
help="Number of days since the most recent invoice",
9896
)
9997
analysis_message = fields.Text(
100-
string="Analysis Message",
10198
compute="_compute_analysis_message",
10299
translate=True,
103100
)

engenere_partner_sales_info/tests/test_partner_sales_info.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@ def test_with_invoices(self):
6060
inv = self._create_invoice(self.customer_partner, 200, days_diff=5)
6161
self.customer_partner._compute_sales_info()
6262
self.assertEqual(self.customer_partner.invoice_count, 2)
63-
self.assertAlmostEqual(self.customer_partner.total_invoiced, 300)
64-
self.assertAlmostEqual(self.customer_partner.average_invoiced, 150)
63+
self.assertAlmostEqual(self.customer_partner.total_invoiced, 345)
64+
self.assertAlmostEqual(self.customer_partner.average_invoiced, 172.5)
6565
self.assertEqual(self.customer_partner.last_invoice_id, inv)
6666
self.assertEqual(self.customer_partner.last_invoice_date, inv.invoice_date)
6767

@@ -72,9 +72,9 @@ def test_with_invoices_and_outliers(self):
7272
self._create_invoice(self.customer_partner, 10000, days_diff=1)
7373
self.customer_partner._compute_sales_info()
7474
self.assertEqual(self.customer_partner.invoice_count, 4)
75-
self.assertAlmostEqual(self.customer_partner.total_invoiced, 10330)
76-
self.assertTrue(100 < self.customer_partner.average_invoiced < 10330)
77-
self.assertTrue(self.customer_partner.average_invoiced_no_discrepancies < 1000)
75+
self.assertEqual(self.customer_partner.total_invoiced, 11879.5)
76+
self.assertEqual(self.customer_partner.average_invoiced, 2969.88)
77+
self.assertEqual(self.customer_partner.average_invoiced_no_discrepancies, 126.5)
7878

7979
def test_days_since_last_invoice(self):
8080
self._create_invoice(self.customer_partner, 150, days_diff=10)

0 commit comments

Comments
 (0)