diff --git a/integrated_trade_product/model/product_integrated_trade_catalog.py b/integrated_trade_product/model/product_integrated_trade_catalog.py index 56133a9..c8c19b1 100644 --- a/integrated_trade_product/model/product_integrated_trade_catalog.py +++ b/integrated_trade_product/model/product_integrated_trade_catalog.py @@ -33,8 +33,6 @@ class product_integrated_trade_catalog(Model): _auto = False _table = 'product_integrated_trade_catalog' - - # Overloadable Section def prepare_product_supplierinfo( self, cr, uid, supplier_partner_id, supplier_product_id, @@ -74,9 +72,11 @@ def update_product( psi_obj = self.pool['product.supplierinfo'] for pitc in self.browse(cr, uid, ids, context=context): if pitc.hidden_product_tmpl_id.id: - psi_ids = psi_obj.search(cr, uid, [ - ('supplier_product_id', '=', pitc.supplier_product_id), - ], context=context) + psi_ids = psi_obj.search( + cr, uid, [ + ('supplier_product_id', '=', pitc.supplier_product_id), + ], context=context) + psi_ids = psi_ids # psi_obj.unlink( # cr, uid, [pitc.hidden_supplierinfo_id.id], # context=context) @@ -98,8 +98,9 @@ def _link_product( def _unlink_supplier_product( self, cr, uid, supplier_product_ids, context=None): psi_obj = self.pool['product.supplierinfo'] - res = psi_obj.search(cr, uid, [ - ('supplier_product_id', 'in', supplier_product_ids), + res = psi_obj.search( + cr, uid, [ + ('supplier_product_id', 'in', supplier_product_ids), ], context=context) psi_lst = psi_obj.browse(cr, uid, res, context=context) product_tmpl_ids = [x.product_id.id for x in psi_lst] @@ -159,9 +160,9 @@ def _set_product_tmpl_id( 'Supplier Partner Name', readonly=True), 'hidden_product_tmpl_id': fields.many2one( 'product.template', 'Product (Technical Field)', readonly=True), -# 'hidden_supplierinfo_id': fields.many2one( -# 'product.suppplierinfo', 'SupplierInfo (Technical Field)', -# readonly=True), + # 'hidden_supplierinfo_id': fields.many2one( + # 'product.suppplierinfo', 'SupplierInfo (Technical Field)', + # readonly=True), 'supplier_product_id': fields.many2one( 'product.product', 'Supplier Product', readonly=True), 'supplier_company_id': fields.many2one( diff --git a/integrated_trade_product/model/product_pricelist.py b/integrated_trade_product/model/product_pricelist.py index 3106742..eb345a0 100644 --- a/integrated_trade_product/model/product_pricelist.py +++ b/integrated_trade_product/model/product_pricelist.py @@ -24,6 +24,7 @@ from openerp.osv.orm import Model from openerp.addons import decimal_precision as dp + class product_supplierinfo(Model): _inherit = 'product.supplierinfo' @@ -37,19 +38,17 @@ def _get_integrated_price( res[psi.id] = 0 return res - _columns = { 'integrated_price': fields.function( _get_integrated_price, string='Unit Price', digits_compute=dp.get_precision('Integrated Product Price'), - store={ - 'product.supplierinfo': ( - lambda self, cr, uid, ids, context=None: ids, - [ - 'supplier_product_id', - 'pricelist_ids', - ], 10)}), + store={'product.supplierinfo': ( + lambda self, cr, uid, ids, context=None: ids, + [ + 'supplier_product_id', + 'pricelist_ids', + ], 10)}), 'supplier_product_id': fields.many2one( 'product.product', 'Product in the Supplier Catalog', selected=True), - } + } diff --git a/integrated_trade_product/model/product_product.py b/integrated_trade_product/model/product_product.py index 52caf76..4b9089d 100644 --- a/integrated_trade_product/model/product_product.py +++ b/integrated_trade_product/model/product_product.py @@ -20,8 +20,6 @@ # ############################################################################## -from openerp import SUPERUSER_ID -from openerp.osv import fields from openerp.osv.orm import Model @@ -30,8 +28,8 @@ class product_product(Model): _INTEGRATED_FIELDS = [ 'name', 'default_code', 'lst_price', 'price', 'price_extra', - 'pricelist_id', # ? - 'price_margin', # ? + # 'pricelist_id', # ? + # 'price_margin', # ? 'taxes_id', 'list_price', ] @@ -42,8 +40,9 @@ def write(self, cr, uid, ids, vals, context=None): # Update product in customer database if required if list(set(vals.keys()) & set(self._INTEGRATED_FIELDS)): pitc_obj = self.pool['product.integrated.trade.catalog'] - pitc_ids = pitc_obj.search(cr, uid, + pitc_ids = pitc_obj.search( + cr, uid, [('supplier_product_id', 'in', ids)], context=context) - + pitc_obj.update_product(cr, uid, pitc_ids, context=context) return res diff --git a/integrated_trade_product/model/product_supplierinfo.py b/integrated_trade_product/model/product_supplierinfo.py index 3106742..eb345a0 100644 --- a/integrated_trade_product/model/product_supplierinfo.py +++ b/integrated_trade_product/model/product_supplierinfo.py @@ -24,6 +24,7 @@ from openerp.osv.orm import Model from openerp.addons import decimal_precision as dp + class product_supplierinfo(Model): _inherit = 'product.supplierinfo' @@ -37,19 +38,17 @@ def _get_integrated_price( res[psi.id] = 0 return res - _columns = { 'integrated_price': fields.function( _get_integrated_price, string='Unit Price', digits_compute=dp.get_precision('Integrated Product Price'), - store={ - 'product.supplierinfo': ( - lambda self, cr, uid, ids, context=None: ids, - [ - 'supplier_product_id', - 'pricelist_ids', - ], 10)}), + store={'product.supplierinfo': ( + lambda self, cr, uid, ids, context=None: ids, + [ + 'supplier_product_id', + 'pricelist_ids', + ], 10)}), 'supplier_product_id': fields.many2one( 'product.product', 'Product in the Supplier Catalog', selected=True), - } + } diff --git a/integrated_trade_product/model/res_partner.py b/integrated_trade_product/model/res_partner.py index 387ab6e..2383dc1 100644 --- a/integrated_trade_product/model/res_partner.py +++ b/integrated_trade_product/model/res_partner.py @@ -21,15 +21,15 @@ ############################################################################## from openerp import SUPERUSER_ID -from openerp.osv import fields from openerp.osv.orm import Model + class res_partner(Model): _inherit = 'res.partner' # Public Function def update_all_products_as_customer(self, cr, uid, ids, context=None): - """ Update all product.pricelistinfo of products template that are + """ Update all product.pricelistinfo of products template that are linked to external products for defined customers""" pitc_obj = self.pool['product.integrated.trade.catalog'] pitc_ids = pitc_obj.search(cr, SUPERUSER_ID, [ diff --git a/integrated_trade_product/tests/test.py b/integrated_trade_product/tests/test.py index 6903d6c..25c65c2 100644 --- a/integrated_trade_product/tests/test.py +++ b/integrated_trade_product/tests/test.py @@ -93,8 +93,8 @@ def test_02_product_update(self): # Change name in the supplier product new_name = 'Supplier New Name' self.pp_obj.write(cr, uid, [self.supplier_apple_id], { - 'name': new_name,}) - + 'name': new_name}) + pp_c_apple = self.pp_obj.browse(cr, uid, self.customer_apple_id) self.assertEqual( pp_c_apple.seller_ids[0].product_name, @@ -106,7 +106,7 @@ def test_02_product_update(self): # new_code = '[SUPPLIER-NEW-CODE]' # self.pp_obj.write(cr, uid, [self.supplier_apple_id], { # 'default_code': new_code,}) -# +# # pp_c_apple = self.pp_obj.browse(cr, uid, self.customer_apple_id) # self.assertEqual( # pp_c_apple.seller_ids[0].product_code, diff --git a/integrated_trade_product/view/view.xml b/integrated_trade_product/view/view.xml index 198c980..de688c1 100644 --- a/integrated_trade_product/view/view.xml +++ b/integrated_trade_product/view/view.xml @@ -24,7 +24,7 @@ product.integrated.trade.catalog - +