From ea6768036015fdbfbc09e3b837735e8d21b9e7ae Mon Sep 17 00:00:00 2001 From: gregoire Date: Sun, 31 Jan 2016 20:18:42 +0100 Subject: [PATCH 01/42] [ADD] Remove invoice policy field from product view --- beesdoo_simplified_view/__init__.py | 1 + beesdoo_simplified_view/__openerp__.py | 24 ++++++++++++++++++++++++ beesdoo_simplified_view/views/views.xml | 16 ++++++++++++++++ 3 files changed, 41 insertions(+) create mode 100644 beesdoo_simplified_view/__init__.py create mode 100644 beesdoo_simplified_view/__openerp__.py create mode 100644 beesdoo_simplified_view/views/views.xml diff --git a/beesdoo_simplified_view/__init__.py b/beesdoo_simplified_view/__init__.py new file mode 100644 index 0000000..40a96af --- /dev/null +++ b/beesdoo_simplified_view/__init__.py @@ -0,0 +1 @@ +# -*- coding: utf-8 -*- diff --git a/beesdoo_simplified_view/__openerp__.py b/beesdoo_simplified_view/__openerp__.py new file mode 100644 index 0000000..59fdda8 --- /dev/null +++ b/beesdoo_simplified_view/__openerp__.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +{ + 'name': "beesdoo_simplified_view", + + 'description': """ + Long description of module's purpose + """, + + # Categories can be used to filter modules in modules listing + # Check https://github.com/odoo/odoo/blob/master/openerp/addons/base/module/module_data.xml + # for the full list + 'category': 'Sales', + 'version': '0.1', + + # any module necessary for this one to work correctly + 'depends': ['base','sale'], + + # always loaded + 'data': [ + # 'security/ir.model.access.csv', + 'views/views.xml', + ], + +} diff --git a/beesdoo_simplified_view/views/views.xml b/beesdoo_simplified_view/views/views.xml new file mode 100644 index 0000000..e629dc2 --- /dev/null +++ b/beesdoo_simplified_view/views/views.xml @@ -0,0 +1,16 @@ + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + + \ No newline at end of file From c707720e01c299c62d4a2f6711011a392b0ba134 Mon Sep 17 00:00:00 2001 From: gregoire Date: Sat, 13 Feb 2016 14:25:23 +0100 Subject: [PATCH 02/42] [ADD] Remove fields of product --- beesdoo_simplified_view/__openerp__.py | 2 +- beesdoo_simplified_view/views/views.xml | 92 +++++++++++++++++++++++-- 2 files changed, 89 insertions(+), 5 deletions(-) diff --git a/beesdoo_simplified_view/__openerp__.py b/beesdoo_simplified_view/__openerp__.py index 59fdda8..0806f00 100644 --- a/beesdoo_simplified_view/__openerp__.py +++ b/beesdoo_simplified_view/__openerp__.py @@ -13,7 +13,7 @@ 'version': '0.1', # any module necessary for this one to work correctly - 'depends': ['base','sale'], + 'depends': ['base', 'sale', 'purchase', ], # always loaded 'data': [ diff --git a/beesdoo_simplified_view/views/views.xml b/beesdoo_simplified_view/views/views.xml index e629dc2..0ca14c4 100644 --- a/beesdoo_simplified_view/views/views.xml +++ b/beesdoo_simplified_view/views/views.xml @@ -1,16 +1,100 @@ - - + beesdoo_simplified_view list product.template - + + + + + + beesdoo_simplified_view list + product.template + + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + beesdoo_simplified_view list + product.template + + + + + + + + + + + + + + + + - \ No newline at end of file + From 977cfe0a0ae0265418fc1608c43ce9b36d89aacf Mon Sep 17 00:00:00 2001 From: Thibault Francois Date: Tue, 8 Mar 2016 21:44:22 +0100 Subject: [PATCH 03/42] [MERGE][TACHE 10] 0010 - Gestion de foyer de mangeurs --- beesdoo_pos/__openerp__.py | 2 +- beesdoo_pos/models/beesdoo_pos.py | 23 ++++++++- beesdoo_pos/static/src/css/beesdoo.css | 24 +++++++++ beesdoo_pos/static/src/js/beesdoo.js | 63 +++++++++++++++++++++++- beesdoo_pos/static/src/xml/templates.xml | 26 +++++++++- beesdoo_pos/views/beesdoo_pos.xml | 2 +- 6 files changed, 135 insertions(+), 5 deletions(-) diff --git a/beesdoo_pos/__openerp__.py b/beesdoo_pos/__openerp__.py index 3753249..384275e 100644 --- a/beesdoo_pos/__openerp__.py +++ b/beesdoo_pos/__openerp__.py @@ -4,7 +4,7 @@ 'summary': """ Module that extends the pos for the beescoop - """, + """, 'description': """ Long description of module's purpose diff --git a/beesdoo_pos/models/beesdoo_pos.py b/beesdoo_pos/models/beesdoo_pos.py index 75de9e6..319bf3a 100644 --- a/beesdoo_pos/models/beesdoo_pos.py +++ b/beesdoo_pos/models/beesdoo_pos.py @@ -38,4 +38,25 @@ class BeescoopPosOrder(models.Model): return _('Cannot send the ticket, no email address found on the client') mail_template = self.env.ref("beescoop_pos.email_send_ticket") mail_template.send_mail(order.id) - return _("Ticket sent") \ No newline at end of file + return _("Ticket sent") + +class BeescoopPosPartner(models.Model): + _inherit = 'res.partner' + + def _get_eater(self): + eater1, eater2 = False, False + if self.child_eater_ids: + eater1 = self.child_eater_ids[0].name + if len(self.child_eater_ids) > 1: + eater2 = self.child_eater_ids[1].name + return eater1, eater2 + + @api.multi + def get_balance_and_eater(self): + self.ensure_one() + account_id = self.property_account_receivable_id.id + move_lines = self.env['account.move.line'].search([('account_id', '=', account_id), ('partner_id', '=', self.id)]) + credit = sum([m.credit for m in move_lines]) + debit = sum([m.debit for m in move_lines]) + eater1, eater2 = self._get_eater() + return str(round(credit - debit, 2)), eater1, eater2 diff --git a/beesdoo_pos/static/src/css/beesdoo.css b/beesdoo_pos/static/src/css/beesdoo.css index a68e1ed..4a794e4 100644 --- a/beesdoo_pos/static/src/css/beesdoo.css +++ b/beesdoo_pos/static/src/css/beesdoo.css @@ -1,4 +1,28 @@ .message-send { margin: 16px; text-align: center; +} + +.customer-information { + margin: 16px 24px 16px 24px; + font-weight: bold; + font-size: 16px; +} + +.customer-name { + font-size: 18px; +} + +.button.set-customer.decentered { + height: 108px; +} + +.customer-information-pay { + font-weight: normal; + font-size: 12px; + text-align: left; +} + +.pos .actionpad .button.pay { + height: 108px; } \ No newline at end of file diff --git a/beesdoo_pos/static/src/js/beesdoo.js b/beesdoo_pos/static/src/js/beesdoo.js index 79b6161..7d483c9 100644 --- a/beesdoo_pos/static/src/js/beesdoo.js +++ b/beesdoo_pos/static/src/js/beesdoo.js @@ -2,12 +2,23 @@ odoo.define('beescoop.pos', function (require) { "use strict"; var module = require("point_of_sale.screens"); var Model = require('web.DataModel'); + var set_customer_info = function(el_class, value, prefix) { + var el = this.$(el_class); + el.empty(); + if (prefix && value) { + value = prefix + value + } + if (value) { + el.append(value); + } + } module.ReceiptScreenWidget = module.ReceiptScreenWidget.include({ send : function() { var self = this; + var loaded = new $.Deferred(); var order = this.pos.get_order().name; - var records = new Model('pos.order').call('send_order', [order], {}); + var records = new Model('pos.order').call('send_order', [order], {}, { shadow: false, timeout: 10000}); records.then(function(result){ var el = self.$('.message-send') el.empty(); @@ -31,4 +42,54 @@ odoo.define('beescoop.pos', function (require) { this.$('.message-send').empty(); }, }) + + module.ActionpadWidget = module.ActionpadWidget.include({ + renderElement : function() { + var self = this; + var loaded = new $.Deferred(); + this._super(); + if (!this.pos.get_client()) { + return + + } + var customer_id = this.pos.get_client().id; + var res = new Model('res.partner').call('get_balance_and_eater', + [ customer_id ], undefined, { shadow: true, timeout: 1000}); + res.then(function(result) { + set_customer_info.call(self, '.customer-balance', result[0]) + set_customer_info.call(self, '.customer-delegate1', result[1], 'Eater 1: '); + set_customer_info.call(self, '.customer-delegate2', result[2], 'Eater 2: '); + }, function(err) { + loaded.reject(err); + }); + }, + }); + + module.PaymentScreenWidget.include({ + render_customer_info : function() { + var self = this; + var loaded = new $.Deferred(); + if (!this.pos.get_client()) { + return + } + var customer_id = this.pos.get_client().id; + var res = new Model('res.partner').call('get_balance_and_eater', [ customer_id ], undefined, { shadow: true, timeout: 1000}); + res.then(function(result) { + set_customer_info.call(self, '.customer-name', self.pos.get_client().name); + set_customer_info.call(self, '.customer-balance', result[0]); + set_customer_info.call(self, '.customer-delegate1', result[1], 'Eater 1: '); + set_customer_info.call(self, '.customer-delegate2', result[2], 'Eater 2: '); + }, function(err) { + loaded.reject(err); + }); + }, + renderElement : function() { + this._super(); + this.render_customer_info(); + }, + customer_changed : function() { + this._super(); + this.render_customer_info(); + }, + }); }); \ No newline at end of file diff --git a/beesdoo_pos/static/src/xml/templates.xml b/beesdoo_pos/static/src/xml/templates.xml index e9b3391..2eda871 100644 --- a/beesdoo_pos/static/src/xml/templates.xml +++ b/beesdoo_pos/static/src/xml/templates.xml @@ -6,8 +6,32 @@ Send Receipt By Mail
-
+ + + + +
+ Balance: € +
+
+
+
+
+
+ + + + +
+
+ Balance:
+
+
+
+
+
+
\ No newline at end of file diff --git a/beesdoo_pos/views/beesdoo_pos.xml b/beesdoo_pos/views/beesdoo_pos.xml index 2f8397e..0069bb9 100644 --- a/beesdoo_pos/views/beesdoo_pos.xml +++ b/beesdoo_pos/views/beesdoo_pos.xml @@ -23,4 +23,4 @@ - \ No newline at end of file + From eadee14bd273bb55e963819a9bd9985085869424 Mon Sep 17 00:00:00 2001 From: gregoire Date: Tue, 8 Mar 2016 21:51:32 +0100 Subject: [PATCH 04/42] Add total and total_with_vat fields --- beesdoo_product/models/beesdoo_product.py | 54 +++++++++-- beesdoo_product/views/beesdoo_product.xml | 110 ++++++++++++++++------ 2 files changed, 128 insertions(+), 36 deletions(-) diff --git a/beesdoo_product/models/beesdoo_product.py b/beesdoo_product/models/beesdoo_product.py index ad95630..b0fd8be 100644 --- a/beesdoo_product/models/beesdoo_product.py +++ b/beesdoo_product/models/beesdoo_product.py @@ -1,18 +1,54 @@ - # -*- coding: utf-8 -*- +# -*- coding: utf-8 -*- from openerp import models, fields, api + class BeesdooProduct(models.Model): - _inherit = "product.template" + _inherit = 'product.template' + + eco_label = fields.Many2one('beesdoo.product.label', domain=[('type', '=', 'eco')]) + local_label = fields.Many2one('beesdoo.product.label', domain=[('type', '=', 'local')]) + fair_label = fields.Many2one('beesdoo.product.label', domain=[('type', '=', 'fair')]) + origin_label = fields.Many2one('beesdoo.product.label', domain=[('type', '=', 'delivery')]) + + display_unit = fields.Char() + default_reference_unit = fields.Char() + display_weight = fields.Integer(compute='get_display_weight') + + total = fields.Float(compute='get_total') + total_with_vat = fields.Float(compute='get_total_with_vat') + + def get_display_weight(self): + pass + + + + def get_total(self): + price_ht = self.env['product.pricelist'].search([])[0].price_get(self.id, 1)[1] + self.total = price_ht + + # grand_total_by_unit = fields.Float(compute='get_grand_total_by_unit') + # + # grand_total = fields.Float(compute='get_grand_total') + # + # def get_grand_total(self): + # self.grand_total = self.env['sale.order.line'] * self.price + # + # def get_grand_total_by_unit(self): + # self.grand_total_by_unit = self.grand_total * self.unit_price + # product.supplierinfo + + def get_total_with_vat(self): + tax_amount_sum = 0.0 + for tax in self.taxes_id: + tax_amount_sum = tax_amount_sum + tax.amount + self.total_with_vat = self.total * (100.0 + tax_amount_sum) / 100 + - eco_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'eco')]) - local_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'local')]) - fair_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'fair')]) - origin_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'delivery')]) class BeesdooProductLabel(models.Model): - _name = "beesdoo.product.label" + _name = 'beesdoo.product.label' name = fields.Char() - type = fields.Selection([('eco', 'Écologique'), ('local', 'Local'), ('fair', 'Équitable'), ('delivery', 'Distribution')]) + type = fields.Selection( + [('eco', 'Écologique'), ('local', 'Local'), ('fair', 'Équitable'), ('delivery', 'Distribution')]) color_code = fields.Char() - diff --git a/beesdoo_product/views/beesdoo_product.xml b/beesdoo_product/views/beesdoo_product.xml index 21b329b..a740a2f 100644 --- a/beesdoo_product/views/beesdoo_product.xml +++ b/beesdoo_product/views/beesdoo_product.xml @@ -1,30 +1,86 @@ - - bees.product.template.form - product.template - - - - - - - - - - - - - bees.product.label.form - beesdoo.product.label - -
- - - - - -
-
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bees.product + product.template + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
\ No newline at end of file From fa68710b3b21a535a50c9b2c95503107cb5360f4 Mon Sep 17 00:00:00 2001 From: EliseDup Date: Wed, 9 Mar 2016 15:44:50 +0100 Subject: [PATCH 05/42] S001 --- beesdoo_product/__openerp__.py | 2 +- beesdoo_product/models/beesdoo_product.py | 13 +++++++- beesdoo_product/views/beesdoo_product.xml | 5 ++- beesdoo_purchase/__init__.py | 2 ++ beesdoo_purchase/__openerp__.py | 31 +++++++++++++++++++ beesdoo_purchase/models/__init__.py | 3 ++ beesdoo_purchase/models/purchase_order.py | 17 ++++++++++ beesdoo_purchase/security/ir.model.access.csv | 1 + beesdoo_purchase/views/purchase_order.xml | 14 +++++++++ 9 files changed, 85 insertions(+), 3 deletions(-) create mode 100644 beesdoo_purchase/__init__.py create mode 100644 beesdoo_purchase/__openerp__.py create mode 100644 beesdoo_purchase/models/__init__.py create mode 100644 beesdoo_purchase/models/purchase_order.py create mode 100644 beesdoo_purchase/security/ir.model.access.csv create mode 100644 beesdoo_purchase/views/purchase_order.xml diff --git a/beesdoo_product/__openerp__.py b/beesdoo_product/__openerp__.py index bc1c3ea..cdf8dd5 100644 --- a/beesdoo_product/__openerp__.py +++ b/beesdoo_product/__openerp__.py @@ -20,7 +20,7 @@ 'version': '0.1', # any module necessary for this one to work correctly - 'depends': ['beesdoo_base', 'product'], + 'depends': ['beesdoo_base', 'product', 'point_of_sale'], # always loaded 'data': [ diff --git a/beesdoo_product/models/beesdoo_product.py b/beesdoo_product/models/beesdoo_product.py index ad95630..9195044 100644 --- a/beesdoo_product/models/beesdoo_product.py +++ b/beesdoo_product/models/beesdoo_product.py @@ -8,7 +8,18 @@ class BeesdooProduct(models.Model): local_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'local')]) fair_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'fair')]) origin_label = fields.Many2one('beesdoo.product.label', domain = [('type', '=', 'delivery')]) - + + main_seller_id = fields.Many2one('res.partner', compute='_compute_main_seller_id', store=True) + + @api.one + @api.depends('seller_ids') + def _compute_main_seller_id(self): + # Ce champs doit être champs calculé qui va chercher + # le vendeur associé qui a la date de début la plus récente et plus petite qu’aujourd’hui + self.main_seller_id = sorted(self.seller_ids, key=lambda seller: seller.date_start, reverse=True)[0].name + + + class BeesdooProductLabel(models.Model): _name = "beesdoo.product.label" diff --git a/beesdoo_product/views/beesdoo_product.xml b/beesdoo_product/views/beesdoo_product.xml index 21b329b..a59a145 100644 --- a/beesdoo_product/views/beesdoo_product.xml +++ b/beesdoo_product/views/beesdoo_product.xml @@ -1,6 +1,8 @@ - + + + bees.product.template.form product.template @@ -10,6 +12,7 @@ + diff --git a/beesdoo_purchase/__init__.py b/beesdoo_purchase/__init__.py new file mode 100644 index 0000000..0f7cb6b --- /dev/null +++ b/beesdoo_purchase/__init__.py @@ -0,0 +1,2 @@ +# -*- coding: utf-8 -*- +import models \ No newline at end of file diff --git a/beesdoo_purchase/__openerp__.py b/beesdoo_purchase/__openerp__.py new file mode 100644 index 0000000..283d686 --- /dev/null +++ b/beesdoo_purchase/__openerp__.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +{ + 'name': "Bees Purchase", + + 'summary': """ + Extension du module Purchase""", + + 'description': """ + Long description of module's purpose + """, + + 'author': "Beescoop - Cellule IT", + 'website': "https://github.com/beescoop/Obeesdoo", + + # Categories can be used to filter modules in modules listing + # Check https://github.com/odoo/odoo/blob/master/openerp/addons/base/module/module_data.xml + # for the full list + 'category': 'Purchase', + 'version': '0.1', + + # any module necessary for this one to work correctly + 'depends': ['base','purchase','beesdoo_product'], + + # always loaded + 'data': [ + 'views/purchase_order.xml', + 'security/ir.model.access.csv', + ], + # only loaded in demonstration mode + 'demo': [], +} \ No newline at end of file diff --git a/beesdoo_purchase/models/__init__.py b/beesdoo_purchase/models/__init__.py new file mode 100644 index 0000000..667b7e3 --- /dev/null +++ b/beesdoo_purchase/models/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +import purchase_order \ No newline at end of file diff --git a/beesdoo_purchase/models/purchase_order.py b/beesdoo_purchase/models/purchase_order.py new file mode 100644 index 0000000..d9d41a5 --- /dev/null +++ b/beesdoo_purchase/models/purchase_order.py @@ -0,0 +1,17 @@ +# -*- coding: utf-8 -*- +from openerp import models, fields, api + +class PurchaseOrder(models.Model): + + _inherit = 'purchase.order' + +class PurchaseOrderLine(models.Model): + + _inherit = 'purchase.order.line' + + product_id = fields.Many2one('product.product', string='Product', + domain=['&',('purchase_ok', '=', True),('template.main_seller_id','=','order_id.partner_id')], change_default=True, required=True) + + @api.onchange('order_id') + def _onchange_order_id(self): + print "changed", self.order_id, self.order_id.partner_id \ No newline at end of file diff --git a/beesdoo_purchase/security/ir.model.access.csv b/beesdoo_purchase/security/ir.model.access.csv new file mode 100644 index 0000000..58262d4 --- /dev/null +++ b/beesdoo_purchase/security/ir.model.access.csv @@ -0,0 +1 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink \ No newline at end of file diff --git a/beesdoo_purchase/views/purchase_order.xml b/beesdoo_purchase/views/purchase_order.xml new file mode 100644 index 0000000..7db8df9 --- /dev/null +++ b/beesdoo_purchase/views/purchase_order.xml @@ -0,0 +1,14 @@ + + + + + \ No newline at end of file From 0a17e62595826fdbf03116171ed1463840e8bd4f Mon Sep 17 00:00:00 2001 From: EliseDup Date: Wed, 9 Mar 2016 23:03:32 +0100 Subject: [PATCH 06/42] last changes --- beesdoo_purchase/models/purchase_order.py | 7 ------- beesdoo_purchase/views/purchase_order.xml | 8 ++++---- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/beesdoo_purchase/models/purchase_order.py b/beesdoo_purchase/models/purchase_order.py index d9d41a5..3731456 100644 --- a/beesdoo_purchase/models/purchase_order.py +++ b/beesdoo_purchase/models/purchase_order.py @@ -8,10 +8,3 @@ class PurchaseOrder(models.Model): class PurchaseOrderLine(models.Model): _inherit = 'purchase.order.line' - - product_id = fields.Many2one('product.product', string='Product', - domain=['&',('purchase_ok', '=', True),('template.main_seller_id','=','order_id.partner_id')], change_default=True, required=True) - - @api.onchange('order_id') - def _onchange_order_id(self): - print "changed", self.order_id, self.order_id.partner_id \ No newline at end of file diff --git a/beesdoo_purchase/views/purchase_order.xml b/beesdoo_purchase/views/purchase_order.xml index 7db8df9..e3e255a 100644 --- a/beesdoo_purchase/views/purchase_order.xml +++ b/beesdoo_purchase/views/purchase_order.xml @@ -1,14 +1,14 @@ - \ No newline at end of file From 9f618377e8953da49921fb272c5169b872886f1e Mon Sep 17 00:00:00 2001 From: EliseDup Date: Thu, 10 Mar 2016 09:23:53 +0100 Subject: [PATCH 07/42] SOO1 : placer le fournisseur principal au bon endroit dans la vue --- beesdoo_product/models/beesdoo_product.py | 3 ++- beesdoo_product/views/beesdoo_product.xml | 14 ++++++++++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/beesdoo_product/models/beesdoo_product.py b/beesdoo_product/models/beesdoo_product.py index 9195044..7e2fe7e 100644 --- a/beesdoo_product/models/beesdoo_product.py +++ b/beesdoo_product/models/beesdoo_product.py @@ -16,7 +16,8 @@ class BeesdooProduct(models.Model): def _compute_main_seller_id(self): # Ce champs doit être champs calculé qui va chercher # le vendeur associé qui a la date de début la plus récente et plus petite qu’aujourd’hui - self.main_seller_id = sorted(self.seller_ids, key=lambda seller: seller.date_start, reverse=True)[0].name + if self.seller_ids: + self.main_seller_id = sorted(self.seller_ids, key=lambda seller: seller.date_start, reverse=True)[0].name diff --git a/beesdoo_product/views/beesdoo_product.xml b/beesdoo_product/views/beesdoo_product.xml index a59a145..b829117 100644 --- a/beesdoo_product/views/beesdoo_product.xml +++ b/beesdoo_product/views/beesdoo_product.xml @@ -2,7 +2,7 @@ - + bees.product.template.form product.template @@ -12,11 +12,21 @@ - + + bees.product.template.form2 + product.template + + +
+ +
+
+
+ bees.product.label.form beesdoo.product.label From d9c8ad9f76a79624a4cb0fa8a5a64fcd31981f8d Mon Sep 17 00:00:00 2001 From: EliseDup Date: Tue, 15 Mar 2016 21:49:49 +0100 Subject: [PATCH 08/42] S0022 --- beesdoo_base/views/partner.xml | 89 +++++++++++++++++++--------------- 1 file changed, 50 insertions(+), 39 deletions(-) diff --git a/beesdoo_base/views/partner.xml b/beesdoo_base/views/partner.xml index ff211a2..067bf1e 100644 --- a/beesdoo_base/views/partner.xml +++ b/beesdoo_base/views/partner.xml @@ -1,43 +1,54 @@ - - beesdoo.partner.form.view - res.partner - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {'invisible' : [('eater', '!=', 'worker_eater')]} - - - - - - + + beesdoo.partner.form.view + res.partner + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {'invisible' : [('eater', '!=', + 'worker_eater')]} + + + + + + + + + + {'search_default_supplier': 1,'default_customer': + 0,'default_supplier': 1, 'default_is_company' : True, + 'default_company_type' : 'company'} + \ No newline at end of file From 4809e8a0bd399392319b6e35099ecded6a47be7e Mon Sep 17 00:00:00 2001 From: gregoire Date: Mon, 21 Mar 2016 22:19:49 +0100 Subject: [PATCH 09/42] add display_weight with an if on the compute method --- beesdoo_product/models/beesdoo_product.py | 26 +++++++---------------- beesdoo_product/views/beesdoo_product.xml | 8 +++---- 2 files changed, 12 insertions(+), 22 deletions(-) diff --git a/beesdoo_product/models/beesdoo_product.py b/beesdoo_product/models/beesdoo_product.py index b0fd8be..c613da4 100644 --- a/beesdoo_product/models/beesdoo_product.py +++ b/beesdoo_product/models/beesdoo_product.py @@ -10,33 +10,24 @@ class BeesdooProduct(models.Model): fair_label = fields.Many2one('beesdoo.product.label', domain=[('type', '=', 'fair')]) origin_label = fields.Many2one('beesdoo.product.label', domain=[('type', '=', 'delivery')]) - display_unit = fields.Char() - default_reference_unit = fields.Char() - display_weight = fields.Integer(compute='get_display_weight') + display_unit = fields.Many2one('product.uom', required=True) + default_reference_unit = fields.Many2one('product.uom', required=True) + + display_weight = fields.Float(compute='get_display_weight') total = fields.Float(compute='get_total') total_with_vat = fields.Float(compute='get_total_with_vat') + @api.one + @api.depends('weight', 'display_unit') def get_display_weight(self): - pass - - + if self.display_unit: + self.display_weight = self.weight / self.display_unit.factor def get_total(self): price_ht = self.env['product.pricelist'].search([])[0].price_get(self.id, 1)[1] self.total = price_ht - # grand_total_by_unit = fields.Float(compute='get_grand_total_by_unit') - # - # grand_total = fields.Float(compute='get_grand_total') - # - # def get_grand_total(self): - # self.grand_total = self.env['sale.order.line'] * self.price - # - # def get_grand_total_by_unit(self): - # self.grand_total_by_unit = self.grand_total * self.unit_price - # product.supplierinfo - def get_total_with_vat(self): tax_amount_sum = 0.0 for tax in self.taxes_id: @@ -44,7 +35,6 @@ class BeesdooProduct(models.Model): self.total_with_vat = self.total * (100.0 + tax_amount_sum) / 100 - class BeesdooProductLabel(models.Model): _name = 'beesdoo.product.label' diff --git a/beesdoo_product/views/beesdoo_product.xml b/beesdoo_product/views/beesdoo_product.xml index a740a2f..a99c512 100644 --- a/beesdoo_product/views/beesdoo_product.xml +++ b/beesdoo_product/views/beesdoo_product.xml @@ -52,17 +52,17 @@ - + + + + - - - From c35de0f3b362424ecefa41c4dbc560b71af4ab7d Mon Sep 17 00:00:00 2001 From: gregoire Date: Sun, 3 Apr 2016 17:08:28 +0200 Subject: [PATCH 10/42] feat: make coin_value field of account.bnk_stmt_cashbox.form read-only --- beesdoo_pos/views/beesdoo_pos.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/beesdoo_pos/views/beesdoo_pos.xml b/beesdoo_pos/views/beesdoo_pos.xml index 0069bb9..25e6e47 100644 --- a/beesdoo_pos/views/beesdoo_pos.xml +++ b/beesdoo_pos/views/beesdoo_pos.xml @@ -16,6 +16,17 @@ + + account.bnk_stmt_cashbox.form + account.bank.statement.cashbox + + + + + + + +