Not create a package when that already use the product without packages

#038038
This commit is contained in:
Raimon Esteve 2019-06-21 14:34:00 +02:00
parent a4fbf22dd9
commit eb7b09a051
5 changed files with 41 additions and 18 deletions

View file

@ -2,14 +2,6 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:purchase.line:"
msgid ""
"The quantity \"%(qty)s\" of product \"%(product)s\" is not a multiple of it's package "
"\"%(package)s\" quantity \"%(package_qty)s\"."
msgstr ""
"La quantitat \"%(qty)s\" del producte \"%(product)s\" no és un múltiple de la quantitat "
"del seu paquet \"%(package)s\" (\"%(package_qty)s\")."
msgctxt "field:purchase.line,package_quantity:"
msgid "Package Quantity"
msgstr "Quantitat paquets"
@ -21,3 +13,17 @@ msgstr "El producto tiene paquetes"
msgctxt "field:purchase.line,product_package:"
msgid "Package"
msgstr "Empaquetament"
msgctxt "model:ir.message,text:msg_product_package_null"
msgid "You can not create a package because there are sale lines that already "
"use the product without packages."
msgstr "No pot crear paquets perque ja hi han línies de venta que ja utilitzen "
"aquest producte sense paquets."
msgctxt "model:ir.message,text:msg_package_quantity"
msgid ""
"The quantity \"%(qty)s\" of product \"%(product)s\" is not a multiple of it's package "
"\"%(package)s\" quantity \"%(package_qty)s\"."
msgstr ""
"La quantitat \"%(qty)s\" del producte \"%(product)s\" no és un múltiple de la quantitat "
"del seu paquet \"%(package)s\" (\"%(package_qty)s\")."

View file

@ -2,14 +2,6 @@
msgid ""
msgstr "Content-Type: text/plain; charset=utf-8\n"
msgctxt "error:purchase.line:"
msgid ""
"The quantity \"%(qty)s\" of product \"%(product)s\" is not a multiple of it's package "
"\"%(package)s\" quantity \"%(package_qty)s\"."
msgstr ""
"La cantidad \"%(qty)s\" del producto \"%(product)s\" no es un multiple de la cantidad del "
"paquete \"%(package)s\" (\"%(package_qty)s\")."
msgctxt "field:purchase.line,package_quantity:"
msgid "Package Quantity"
msgstr "Cantidad paquetes"
@ -21,3 +13,17 @@ msgstr "El producte tiene paquetes"
msgctxt "field:purchase.line,product_package:"
msgid "Package"
msgstr "Empaquetado"
msgctxt "model:ir.message,text:msg_product_package_null"
msgid "You can not create a package because there are sale lines that already "
"use the product without packages."
msgstr "No puede crear paquetes porque hay líneas de venta que ya usan este "
"producto sin paquetes."
msgctxt "model:ir.message,text:msg_package_quantity"
msgid ""
"The quantity \"%(qty)s\" of product \"%(product)s\" is not a multiple of it's package "
"\"%(package)s\" quantity \"%(package_qty)s\"."
msgstr ""
"La cantidad \"%(qty)s\" del producto \"%(product)s\" no es un multiple de la cantidad del "
"paquete \"%(package)s\" (\"%(package_qty)s\")."

View file

@ -3,8 +3,11 @@
this repository contains the full copyright notices and license terms. -->
<tryton>
<data group="1">
<record model="ir.message" id="package_quantity">
<record model="ir.message" id="msg_package_quantity">
<field name="text">The quantity "%(qty)s" of product "%(product)s" is not a multiple of it\'s package "%(package)s" quantity "%(package_qty)s".</field>
</record>
<record model="ir.message" id="msg_product_package_null">
<field name="text">You can not create a package because there are purchase lines that already use the product without packages.</field>
</record>
</data>
</tryton>

View file

@ -9,6 +9,13 @@ __all__ = ['Package']
class Package(metaclass=PoolMeta):
__name__ = 'product.package'
@classmethod
def __setup__(cls):
super(Package, cls).__setup__()
cls._create_package.append(
('purchase.line', 'purchase_product_package.msg_product_package_null'),
)
@classmethod
def find_packages(cls, records):
find_packages = super(Package, cls).find_packages(records)

View file

@ -46,7 +46,8 @@ class PurchaseLine(metaclass=PoolMeta):
and Transaction().context.get('validate_package', True)):
package_quantity = self.quantity / self.product_package.quantity
if float(int(package_quantity)) != package_quantity:
raise UserError(gettext('purchase_product_package.package_quantity',
raise UserError(gettext(
'purchase_product_package.msg_package_quantity',
qty=self.quantity,
product=self.product.rec_name,
package=self.product_package.rec_name,