Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[IMP] sale_order_line_price_history : add color indication #1834

Closed
Closed
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion sale_order_line_price_history/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"name": "Sale order line price history",
"version": "14.0.1.0.0",
"category": "Sales Management",
"author": "Tecnativa," "Odoo Community Association (OCA)",
"author": "Tecnativa," "Adgensee," "Odoo Community Association (OCA)",
"website": "https://github.com/OCA/sale-workflow",
"license": "AGPL-3",
"depends": ["sale"],
Expand Down
188 changes: 188 additions & 0 deletions sale_order_line_price_history/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_line_price_history
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 14.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-22 17:11+0000\n"
"PO-Revision-Date: 2021-12-22 18:28+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: \n"
"Language: fr\n"
"X-Generator: Poedit 3.0\n"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line__already_sold
msgid "Already Sold"
msgstr "Déjà vendu"

#. module: sale_order_line_price_history
#: model_terms:ir.ui.view,arch_db:sale_order_line_price_history.sale_order_line_price_history_view_form
msgid "Close"
msgstr "Fermer"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__create_uid
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__create_uid
msgid "Created by"
msgstr "Créé par"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__create_date
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__create_date
msgid "Created on"
msgstr "Créé le"

#. module: sale_order_line_price_history
#: model:ir.model.fields,help:sale_order_line_price_history.field_sale_order_line_price_history_line__sale_order_date_order
msgid ""
"Creation date of draft/sent orders,\n"
"Confirmation date of confirmed orders."
msgstr ""

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line__order_partner_id
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__partner_id
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__partner_id
msgid "Customer"
msgstr "Client"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__discount
msgid "Discount (%)"
msgstr "Remise (%)"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line__display_name
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__display_name
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__display_name
msgid "Display Name"
msgstr "Nom affiché"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__history_id
msgid "History"
msgstr "Historique"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__line_ids
msgid "History lines"
msgstr "Historique des lignes de ventes"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line__id
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__id
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__id
msgid "ID"
msgstr ""

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__include_commercial_partner
msgid "Include commercial entity"
msgstr "Inclure les ventes liées aux contacts enfants"

#. module: sale_order_line_price_history
#: model:ir.model.fields,help:sale_order_line_price_history.field_sale_order_line_price_history__include_commercial_partner
msgid "Include commercial entity and its contacts in the sale history"
msgstr "Inclure les contacts enfants dans l’historique des ventes"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__include_quotations
msgid "Include quotations"
msgstr "Inclure les devis"

#. module: sale_order_line_price_history
#: model:ir.model.fields,help:sale_order_line_price_history.field_sale_order_line_price_history__include_quotations
msgid "Include quotations lines in the sale history"
msgstr "Inclure les lignes en devis dans l’historique des ventes"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line____last_update
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history____last_update
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line____last_update
msgid "Last Modified on"
msgstr "Dernière Modification le"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__write_uid
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__write_uid
msgid "Last Updated by"
msgstr "Dernière mise à jour par"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__write_date
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__write_date
msgid "Last Updated on"
msgstr "Dernière mise à jour le"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__sale_order_date_order
msgid "Order Date"
msgstr "Date de commande"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__order_id
msgid "Order Reference"
msgstr "Référence de commande"

#. module: sale_order_line_price_history
#: model:ir.actions.act_window,name:sale_order_line_price_history.sale_order_line_price_history_action
msgid "Price history per customer"
msgstr "Historique des prix par clients"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__product_id
msgid "Product"
msgstr "Article"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__product_uom_qty
msgid "Quantity"
msgstr "Quantité"

#. module: sale_order_line_price_history
#: model_terms:ir.ui.view,arch_db:sale_order_line_price_history.sale_order_line_price_history_view_form
msgid "Sale history"
msgstr "Historique des ventes"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history__sale_order_line_id
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__sale_order_line_id
msgid "Sale order line"
msgstr "Lignes de ventes"

#. module: sale_order_line_price_history
#: model:ir.model,name:sale_order_line_price_history.model_sale_order_line_price_history
msgid "Sale order line price history"
msgstr "Historique des prix de ventes"

#. module: sale_order_line_price_history
#: model:ir.model,name:sale_order_line_price_history.model_sale_order_line_price_history_line
msgid "Sale order line price history line"
msgstr "Historique des prix de ventes"

#. module: sale_order_line_price_history
#: model:ir.model,name:sale_order_line_price_history.model_sale_order_line
msgid "Sales Order Line"
msgstr "Ligne de commandes de vente"

#. module: sale_order_line_price_history
#: model_terms:ir.ui.view,arch_db:sale_order_line_price_history.sale_order_line_price_history_view_form
msgid "Set price"
msgstr "Redéfinir le prix"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__price_unit
msgid "Unit Price"
msgstr "Prix unitaire"

#. module: sale_order_line_price_history
#: model:ir.model.fields,field_description:sale_order_line_price_history.field_sale_order_line_price_history_line__history_sale_order_line_id
msgid "history sale order line"
msgstr "historique des lignes de ventes"
19 changes: 19 additions & 0 deletions sale_order_line_price_history/models/sale_order_line.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Copyright 2021 Tecnativa - David Vidal
# Copyright 2021 Adgensee - Vincent GARCIES
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
from odoo import fields, models

Expand All @@ -9,3 +10,21 @@ class SaleOrderLine(models.Model):
# In core this a related field. We need to trigger its value on view, so we can
# have it even when we're in a NewId
order_partner_id = fields.Many2one(depends=["product_id"])

def _compute_already_sold(self):
for line in self:
order_lines = line.env["sale.order.line"].read_group(
[
("product_id", "=", line.product_id.id),
("state", "in", ["sale", "done"]),
("order_partner_id", "child_of", line.order_id.partner_id.commercial_partner_id.ids),
],
["product_id", "state", "order_partner_id"],
["product_id"],
)
if order_lines:
line.already_sold = True
else:
line.already_sold = False

already_sold = fields.Boolean(compute=_compute_already_sold)
1 change: 1 addition & 0 deletions sale_order_line_price_history/readme/DESCRIPTION.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
This module extends the functionality of Sales to allow you to see the price
history of a product from a sale order line and set one of these old prices in
the sale order line.
The new clock icon located at the last position in the sales order lines is blue if the customer has already purchased the item, otherwise it is black.
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2021 Tecnativa - David Vidal
Copyright 2021 Adgensee - Vincent GARCIES
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html). -->
<templates>
<div t-name="sale_order_line_price_history.price_history_widget">
<div>
<a tabindex="0" class="fa fa-clock-o text-dark price_history" />
<a tabindex="0" t-attf-class="fa fa-clock-o {{ widget.data.already_sold ? 'text-info' : 'text-dark' }} price_history"/>
</div>
</div>
</templates>
2 changes: 2 additions & 0 deletions sale_order_line_price_history/views/sale_views.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2019 Tecnativa - Ernesto Tejeda
Copyright 2021 Adgensee - Vincent GARCIES
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
<odoo>
<record id="view_order_form" model="ir.ui.view">
Expand All @@ -9,6 +10,7 @@
<field name="arch" type="xml">
<xpath expr="//field[@name='order_line']/tree">
<field name="order_partner_id" invisible="1" />
<field name="already_sold" invisible="1" />
<widget name="sale_line_price_history_widget" width="20px" />
</xpath>
</field>
Expand Down