Review: Needs Fixing code review Algunas cosillas más.
Un saludo. Diff comments: > === added file 'phonelift_sales_extension/__init__.py' > --- phonelift_sales_extension/__init__.py 1970-01-01 00:00:00 +0000 > +++ phonelift_sales_extension/__init__.py 2014-06-30 13:16:06 +0000 > @@ -0,0 +1,22 @@ > +# -*- encoding: utf-8 -*- > +############################################################################## > +# > +# OpenERP, Open Source Management Solution > +# Copyright (C) 2008-2014 AvanzOSC S.L. (Oihane) All Rights Reserved > +# > +# This program is free software: you can redistribute it and/or modify > +# it under the terms of the GNU Affero General Public License as published > +# by the Free Software Foundation, either version 3 of the License, or > +# (at your option) any later version. > +# > +# This program is distributed in the hope that it will be useful, > +# but WITHOUT ANY WARRANTY; without even the implied warranty of > +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > +# GNU General Public License for more details. > +# > +# You should have received a copy of the GNU Affero General Public License > +# along with this program. If not, see http://www.gnu.org/licenses/. > +# > +############################################################################## > + > +from . import models > > === modified file 'phonelift_sales_extension/__openerp__.py' > --- phonelift_sales_extension/__openerp__.py 2014-06-11 10:23:47 +0000 > +++ phonelift_sales_extension/__openerp__.py 2014-06-30 13:16:06 +0000 > @@ -24,7 +24,8 @@ > "version": "1.3", > "author": "Nayar Systems", > "category": "Enterprise Specific Modules", > - "description": "Proporciona funcionalidad extra para la web de pedidos > de Phonelift", > + "description": "Proporciona funcionalidad extra para la web de pedidos > de " > + "Phonelift", > "depends": [ > 'base', > 'nayar_sales_extension', > @@ -36,5 +37,3 @@ > "active": False, > "installable": True > } > - > -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: > > === added directory 'phonelift_sales_extension/models' > === renamed file 'phonelift_sales_extension/__init__.py' => > 'phonelift_sales_extension/models/__init__.py' > --- phonelift_sales_extension/__init__.py 2014-06-11 10:23:47 +0000 > +++ phonelift_sales_extension/models/__init__.py 2014-06-30 13:16:06 > +0000 > @@ -22,6 +22,3 @@ > import partner > import sale > import stock > - > -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: > - > > === renamed file 'phonelift_sales_extension/partner.py' => > 'phonelift_sales_extension/models/partner.py' > --- phonelift_sales_extension/partner.py 2014-06-11 10:23:47 +0000 > +++ phonelift_sales_extension/models/partner.py 2014-06-30 13:16:06 > +0000 > @@ -19,40 +19,47 @@ > # > > ############################################################################## > > -import logging > -from osv import osv > - > -class res_partner(osv.osv): > +from openerp import logging > +from openerp.osv import orm > + > + > +class ResPartner(orm.Model): > _inherit = 'res.partner' > > - def create_administrator(self, cr, uid, data): > + def create_administrator(self, cr, uid, data, context=None): > logging.getLogger("New administrator").info(data) > > administrator_d = { > - 'name': data['nombre'], > - 'ref': data['colegiado'], > - 'active': True, > - 'note': data['sociedad'], > - 'customer': False, > - } > - address = { > - 'street': data['direccion'], > - 'zip': data['cp'], > - 'city': data['poblacion'], > - 'state_id': self.pool.get('res.country.state').search_by_name(cr, > uid, data['provincia']), > - 'email': data['email'], > - 'phone': data['telefono'], > - } > - > - administrator_ids = self.search(cr, uid, [('ref', '=', > data.get('colegiado'))]) > - if not administrator_ids: > - administrator_id = self.create(cr, uid, administrator_d) > - address['partner_id'] = administrator_id > - address_id = self.pool.get('res.partner.address').create(cr, > uid, address) > - > - def deactivate_administrator(self, cr, uid, data): > - administrator_ids = self.search(cr, uid, [('ref', '=', > data.get('colegiado'))]) > + 'name': data['nombre'], > + 'ref': data['colegiado'], > + 'active': True, > + 'note': data['sociedad'], > + 'customer': False, > + } > + partner = { > + 'name': data['nombre'], > + 'street': data['direccion'], > + 'zip': data['cp'], > + 'city': data['poblacion'], > + 'state_id': self.pool['res.country.state'].search_by_name( > + cr, uid, data['provincia']), > + 'email': data['email'], > + 'phone': data['telefono'], > + } > + > + administrator_ids = self.search(cr, uid, > + [('ref', '=', data['colegiado'])], > + context=context) > + if not administrator_ids: > + administrator_id = self.create(cr, uid, administrator_d, > + context=context) > + partner['partner_id'] = administrator_id > + self.pool['res.partner'].create(cr, uid, partner, > context=context) > + > + def deactivate_administrator(self, cr, uid, data, context=None): > + administrator_ids = self.search(cr, uid, > + [('ref', '=', data['colegiado'])], > + context=context) > if administrator_ids: > - self.write(cr, uid, administrator_ids, {'active': False}) > - > -res_partner() > + self.write(cr, uid, administrator_ids, {'active': False}, > + context=context) > > === renamed file 'phonelift_sales_extension/sale.py' => > 'phonelift_sales_extension/models/sale.py' > --- phonelift_sales_extension/sale.py 2014-06-11 10:23:47 +0000 > +++ phonelift_sales_extension/models/sale.py 2014-06-30 13:16:06 +0000 > @@ -19,16 +19,17 @@ > # > > ############################################################################## > > -from osv import osv > -from tools.translate import _ > -import netsvc > -import logging > - > -class sale_order(osv.osv): > +from openerp.osv import orm > +from openerp.tools.translate import _ > +from openerp import netsvc, logging No se utiliza logging, pero de todas formas, en v7/v6.1 ya se utiliza directamente el logging genérico de python. > + > + > +class SaleOrder(orm.Model): > _inherit = 'sale.order' > > - def create_basic_order(self, cr, uid, data): > - """Make a new sale order for a neighboring community or particular > customer: > + def create_basic_order(self, cr, uid, data, context=None): > + """Make a new sale order for a neighboring community or > + particular customer: > order_id_72horas: Order id at 72horas system. > administrator: Property Administrator Reference. > name: Community name. > @@ -47,7 +48,10 @@ > mandate_date: SEPA Mandate signature date. > act: Act (attachment). > notes: Order notes and observations (optional). > - lines: Order lines list with format {'sale_type', 'sale_group' > (optional), 'ref' (optional), 'cabins' (list of strings with references), > 'line_id_72horas' (optional)}.""" > + lines: Order lines list with format {'sale_type', > + 'sale_group' (optional), 'ref' (optional), > + 'cabins' (list of strings with references), > + 'line_id_72horas' (optional)}.""" > > # Create basic order using Nayar logics > if 'customer_id' in data: > @@ -55,138 +59,180 @@ > if 'customer_id_72horas' in data: > del data['customer_id_72horas'] > > - company_obj = self.pool.get('res.company') > - company_ids = company_obj.search(cr, uid, []) > - company = company_obj.browse(cr, uid, company_ids[0]) > + company_obj = self.pool['res.company'] > + company_ids = company_obj.search(cr, uid, [], context=context) > + company = company_obj.browse(cr, uid, company_ids[0], > context=context) > data['customer_id'] = company.partner_id.ref > > - order_refs = super(sale_order, self).create_basic_order(cr, uid, > data) > + order_refs = super(SaleOrder, > + self).create_basic_order(cr, uid, data, > + context=context) > > - order_obj = self.pool.get('sale.order') > - order_ids = order_obj.search(cr, uid, [('name', 'in', order_refs)]) > - order = order_obj.browse(cr, uid, order_ids[0]) > + order_obj = self.pool['sale.order'] > + order_ids = order_obj.search(cr, uid, [('name', 'in', order_refs)], > + context=context) > + order = order_obj.browse(cr, uid, order_ids[0], context=context) > > # Get property administrator > - partner_obj = self.pool.get ('res.partner') > - administrator_ids = partner_obj.search(cr, uid, [('ref', '=', > data['administrator'])]) > + partner_obj = self.pool['res.partner'] > + administrator_ids = partner_obj.search( > + cr, uid, [('ref', '=', data['administrator'])], context=context) > if not administrator_ids: > - raise osv.except_osv(_('Error !'), _('Property Administrator not > found!!')) > + raise orm.except_orm(_('Error !'), > + _('Property Administrator not found!!')) > administrator_id = administrator_ids[0] > > - order_obj.write(cr, uid, order_ids, {'middleman_partner_id': > administrator_id}) > + order_obj.write(cr, uid, order_ids, > + {'middleman_partner_id': administrator_id}, > + context=context) > > # Store Act > - if data.get('act'): > - attach_obj = self.pool.get('ir.attachment') > + if data['act']: > + attach_obj = self.pool['ir.attachment'] > partner = order.partner_id > - attach_obj.create(cr, uid, {'datas': data['act'], 'datas_fname': > '%s.pdf' % partner.ref, 'name': '%s.pdf' % partner.ref, 'res_id': partner.id, > 'res_model': 'res.partner'}) > + attach_obj.create(cr, uid, {'datas': data['act'], > + 'datas_fname': '%s.pdf' % > partner.ref, > + 'name': '%s.pdf' % partner.ref, > + 'res_id': partner.id, > + 'res_model': 'res.partner'}, > + context=context) > > # Add instalation service line > - line_obj = self.pool.get('sale.order.line') > + line_obj = self.pool['sale.order.line'] > new_line = { > 'order_id': order.id, > 'product_id': 8, > 'product_uom': 1, > 'product_uom_qty': len(data['lines']), > - } > - new_line.update(line_obj.product_id_change_inherit(cr, uid, [], > order.pricelist_id.id, new_line['product_id'], > contract_id=order.contract_id.id, partner_id=order.partner_id.id, > date_order=order.date_order, > fiscal_position=order.fiscal_position.id)['value']) > + } > + new_line.update(line_obj.product_id_change_inherit( > + cr, uid, [], order.pricelist_id.id, new_line['product_id'], > + contract_id=order.contract_id.id, partner_id=order.partner_id.id, > + date_order=order.date_order, > + fiscal_position=order.fiscal_position.id)['value']) > if new_line.get('tax_id'): > new_line['tax_id'] = [(6, 0, new_line['tax_id'])] > - line_obj.create(cr, uid, new_line) > + line_obj.create(cr, uid, new_line, context=context) > > # Return order references > return order_refs > - > - def update_order_line(self, cr, uid, data): > + > + def update_order_line(self, cr, uid, data, context=None): > """Update a sale order line: > prodlot_id: Pack product ID > order_line_id: Order line ID > """ > - prod_obj = self.pool.get('product.product') > - stock_prod_lot_obj = self.pool.get('stock.production.lot') > - line_obj = self.pool.get('sale.order.line') > - pack = stock_prod_lot_obj.browse(cr, uid, [data['prodlot_id']]) > - line = line_obj.browse(cr, uid, [data['order_line_id']]) > + stock_prod_lot_obj = self.pool['stock.production.lot'] > + line_obj = self.pool['sale.order.line'] > + pack = stock_prod_lot_obj.browse(cr, uid, [data['prodlot_id']], > + context=context) > + line = line_obj.browse(cr, uid, [data['order_line_id']], > + context=context) > order = line[0].order_id > if len(pack) == 0: > return -1 > pack = pack[0] > - update_dict = {'name': pack.product_id.name, > + update_dict = { > + 'name': pack.product_id.name, > 'client_order_ref': pack.ref, > 'product_id': pack.product_id.id, > - 'prodlot_id':pack.id, > + 'prodlot_id': pack.id, > 'price_unit': pack.product_id.list_price, > 'discount': pack.product_id.discount, > - } > - line_obj.write(cr, uid, [data['order_line_id']], update_dict) > - new_update = line_obj.product_id_change_inherit(cr, uid, [], > order.pricelist_id.id, update_dict['product_id'], > contract_id=order.contract_id.id, partner_id=order.partner_id.id, > date_order=order.date_order, fiscal_position=order.fiscal_position.id) > + } > + line_obj.write(cr, uid, [data['order_line_id']], update_dict, > + context=context) > + new_update = line_obj.product_id_change_inherit( > + cr, uid, [], order.pricelist_id.id, update_dict['product_id'], > + contract_id=order.contract_id.id, partner_id=order.partner_id.id, > + date_order=order.date_order, > + fiscal_position=order.fiscal_position.id, context=context) > update_dict.update(new_update['value']) > if update_dict.get('tax_id'): > update_dict['tax_id'] = [(6, 0, update_dict['tax_id'])] > update_dict['prodlot_id'] = pack.id > - return line_obj.write(cr, uid, [data['order_line_id']], update_dict) > - > - def update_process_order(self, cr, uid, data): > + return line_obj.write(cr, uid, [data['order_line_id']], update_dict, > + context=context) > + > + def update_process_order(self, cr, uid, data, context=None): > """Update and process a sale order: > order_line_id: Order line ID > prodlot_id: Pack product ID > """ > - line_obj = self.pool.get('sale.order.line') > - sale_obj = self.pool.get('sale.order') > - order_id = sale_obj.search(cr, uid, [('name','=',int(data['ref'])), > ('state','=','draft')]) > + line_obj = self.pool['sale.order.line'] > + sale_obj = self.pool['sale.order'] > + order_id = sale_obj.search( > + cr, uid, [('name', '=', int(data['ref'])), > + ('state', '=', 'draft')], context=context) > if not len(order_id): > #El pedido ya esta procesado. > return (-1, 'Pedido ya procesado') > - order_line_ids = line_obj.search(cr, uid, [('order_id', '=', > order_id[0]), ('name','=','Pack')]) > + order_line_ids = line_obj.search( > + cr, uid, [('order_id', '=', order_id[0]), ('name', '=', 'Pack')], > + context=context) > if not len(order_line_ids): > #El pedido no tiene lineas. > return (-1, 'Pedido sin lineas!') > data['order_line_id'] = order_line_ids[0] > - res = self.update_order_line(cr, uid, data) > + res = self.update_order_line(cr, uid, data, context=context) > res = '103' > if len(order_line_ids) == 1: > #self.process_phonelift_deliveries(cr, uid, order_id) > - res='3' > + res = '3' > return (res, None) > > - def process_phonelift_delivery(self, cr, uid, ref_id): > + def process_phonelift_delivery(self, cr, uid, ref_id, context=None): > wf_service = netsvc.LocalService('workflow') > logger = logging.getLogger(self._name) > > #Search order_id > - order_ids = self.search(cr, uid, [('name','=',int(ref_id)), > ('state','=','draft')]) > + order_ids = self.search(cr, uid, [('name', '=', int(ref_id)), > + ('state', '=', 'draft')], > + context=context) > > # Processing orders > logger.info("*** Processing orders") > - self.write(cr, uid, order_ids, {'state': 'draft'}) > + self.write(cr, uid, order_ids, {'state': 'draft'}, context=context) > for order_id in order_ids: > - wf_service.trg_validate(uid, 'sale.order', order_id, > 'order_confirm', cr) > - orders = self.browse(cr, uid, order_ids) > - > + wf_service.trg_validate( > + uid, 'sale.order', order_id, 'order_confirm', cr) > + orders = self.browse(cr, uid, order_ids, context=context) > + > # Processing pickings > logger.info("*** Processing pickings") > - picking_obj = self.pool.get('stock.picking') > - partial_obj = self.pool.get("stock.partial.picking") > - picking_ids = picking_obj.search(cr, uid, [('origin', 'in', [o.name > for o in orders]), ('type', '=', 'out')]) > - picking_obj.action_done(cr, uid, picking_ids) > - partial_id = partial_obj.create(cr, uid, {}, context={'active_ids': > picking_ids}) > - partial_obj.do_partial(cr, uid, [partial_id], context={'active_ids': > picking_ids}) > + picking_obj = self.pool['stock.picking'] > + partial_obj = self.pool["stock.partial.picking"] > + picking_ids = picking_obj.search( > + cr, uid, [('origin', 'in', [o.name for o in orders]), > + ('type', '=', 'out')], context=context) > + picking_obj.action_done(cr, uid, picking_ids, context=context) > + partial_id = partial_obj.create( > + cr, uid, {}, context={'active_ids': picking_ids}) > + partial_obj.do_partial( > + cr, uid, [partial_id], context={'active_ids': picking_ids}) > > # Invoicing pickings > logger.info("*** Invoicing pickings") > - onshipping_obj = self.pool.get('stock.invoice.onshipping') > - journal_id = self.pool.get('account.journal').search(cr, uid, > [('code', '=', 'VEN')])[0] > + onshipping_obj = self.pool['stock.invoice.onshipping'] > + journal_id = self.pool['account.journal'].search( > + cr, uid, [('code', '=', 'VEN')], context=context)[0] > for picking_id in picking_ids: > - onshipping_id = onshipping_obj.create(cr, uid, {'journal_id': > journal_id}, context={'active_ids': [picking_id], 'active_id': picking_id}) > - onshipping_obj.open_invoice(cr, uid, [onshipping_id], > context={'active_ids': [picking_id], 'active_id': picking_id}) > + onshipping_id = onshipping_obj.create( > + cr, uid, {'journal_id': journal_id}, > + context={'active_ids': [picking_id], 'active_id': > picking_id}) > + onshipping_obj.open_invoice( > + cr, uid, [onshipping_id], context={'active_ids': > [picking_id], > + 'active_id': picking_id}) > # Validating invoices > logger.info("*** Validating invoices") > invoice_obj = self.pool.get('account.invoice') > pickings = picking_obj.read(cr, uid, picking_ids, ['name']) > for picking in pickings: > - invoice_ids = invoice_obj.search(cr, uid, [('origin', 'like', > "%s:%%" % picking['name'])]) > - invoice_obj.button_reset_taxes(cr,uid,invoice_ids) > + invoice_ids = invoice_obj.search( > + cr, uid, [('origin', 'like', "%s:%%" % picking['name'])], > + context=context) > + invoice_obj.button_reset_taxes(cr, uid, invoice_ids, > + context=context) > for invoice_id in invoice_ids: > - wf_service.trg_validate(uid, 'account.invoice', invoice_id, > 'invoice_open', cr) > -sale_order() > - > + wf_service.trg_validate( > + uid, 'account.invoice', invoice_id, 'invoice_open', cr) > > === renamed file 'phonelift_sales_extension/stock.py' => > 'phonelift_sales_extension/models/stock.py' > --- phonelift_sales_extension/stock.py 2014-06-11 10:23:47 +0000 > +++ phonelift_sales_extension/models/stock.py 2014-06-30 13:16:06 +0000 > @@ -19,109 +19,133 @@ > # > > ############################################################################## > > -from osv import osv > -import sys, traceback, time > - > -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: > -class stock_production_lot(osv.osv): > +from openerp.osv import orm > +import sys > +import traceback En principio, no veo que se utilice. > +import time > + > + > +class stock_production_lot(orm.Model): > _inherit = 'stock.production.lot' > > - def search_link_partial(self, cr, uid, data): > + def search_link_partial(self, cr, uid, data, context=None): > '''Search link > - num: last 5 digits > + num: last 5 digits > ''' > num = data['num'] > - stock_prodlot = self.pool.get('stock.production.lot') > + stock_prodlot = self.pool['stock.production.lot'] > try: > - id_link = stock_prodlot.search(cr,uid,[('name','like',num)]) > - link = stock_prodlot.browse(cr,uid,id_link)[0] > - stock=link.stock_available > + id_link = stock_prodlot.search(cr, uid, [('name', 'like', num)], > + context=context) > + link = stock_prodlot.browse(cr, uid, id_link, context=context)[0] > + stock = link.stock_available > except: > id_link = [] > - stock=0 > - return (id_link,stock) > - > - def search_sim(self, cr, uid, data): > + stock = 0 > + return (id_link, stock) > + > + def search_sim(self, cr, uid, data, context=None): > ''' Search sim lot > telf: Telephone number > ''' > - stock_prodlot = self.pool.get('stock.production.lot') > + stock_prodlot = self.pool['stock.production.lot'] > telf = data['telf'] > id_sim = [] > try: > - id_sim = > stock_prodlot.search(cr,uid,[('ref','=',telf),('stock_available','>=','1')]) > + id_sim = stock_prodlot.search( > + cr, uid, [('ref', '=', telf), ('stock_available', '>=', > '1')], > + context=context) > except: > - ty,val,tb = sys.exc_info() > - ret = traceback.format_exception(ty,val,tb) > + ty, val, tb = sys.exc_info() > + ret = traceback.format_exception(ty, val, tb) > return id_sim > - > - def create_pack(self, cr, uid, data): > + > + def create_pack(self, cr, uid, data, context=None): > ''' Create a pack > telf: Telephone number > id_link: Link prodlot id > ''' > - company = [('company_id','=','1')] > - stock_move_obj = self.pool.get('stock.move') > - stock_warehouse_obj = self.pool.get('stock.warehouse') > - stock_prod_lot_obj = self.pool.get('stock.production.lot') > - product_obj = self.pool.get('product.product') > - bom_obj = self.pool.get('mrp.bom') > - pack_data = {'id_link':data['id_link'], > - 'telf':data['telf'], > - } > - link = stock_prod_lot_obj.browse(cr,uid,[int(pack_data['id_link']),]) > + company = [('company_id', '=', '1')] > + stock_move_obj = self.pool['stock.move'] > + stock_warehouse_obj = self.pool['stock.warehouse'] > + stock_prod_lot_obj = self.pool['stock.production.lot'] > + bom_obj = self.pool['mrp.bom'] > + pack_data = { > + 'id_link': data['id_link'], > + 'telf': data['telf'], > + } > + link = stock_prod_lot_obj.browse(cr, uid, > [int(pack_data['id_link'])], > + context=context) > if not len(link): > - return (-1,'No existe el enlace indicado') > + return (-1, 'No existe el enlace indicado') > link = link[0] > - sim = > stock_prod_lot_obj.browse(cr,uid,stock_prod_lot_obj.search(cr,uid,[('ref','=',pack_data['telf'])])) > + sim = stock_prod_lot_obj.browse( > + cr, uid, stock_prod_lot_obj.search( > + cr, uid, [('ref', '=', pack_data['telf'])], context=context), > + context=context) > if not len(sim): > - return (-1,'No existe la sim indicada') > + return (-1, 'No existe la sim indicada') > sim = sim[0] > #Comprobamos si el pack existe y tiene stock > - pack_ids = stock_prod_lot_obj.search(cr,uid,[('name', '=', > link.name), ('ref', '=', sim.ref), ('stock_available','>=','1')]) > + pack_ids = stock_prod_lot_obj.search( > + cr, uid, [('name', '=', link.name), > + ('ref', '=', sim.ref), > + ('stock_available', '>=', '1')], > + context=context) > if len(pack_ids): > - return (pack_ids[0],None) > - #Comprobamos el Stock de ambos productos > + return (pack_ids[0], None) > + #Comprobamos el Stock de ambos productos > link_product_id = link.product_id.id > sim_product_id = sim.product_id.id > if not (link.stock_available and sim.stock_available): > return (-1, 'Sin stock') > - bom_ids = > bom_obj.search(cr,uid,[('bom_lines.product_id.id','=',link_product_id),('bom_lines.product_id.id','=',sim_product_id),('active','=','1')]) > + bom_ids = bom_obj.search( > + cr, uid, [('bom_lines.product_id.id', '=', link_product_id), > + ('bom_lines.product_id.id', '=', sim_product_id), > + ('active', '=', '1')], > + context=context) > if not len(bom_ids): > return (-1, 'No existe el pack con ese BOM') > - bom_pack = bom_obj.browse(cr,uid,bom_ids)[0] > + bom_pack = bom_obj.browse(cr, uid, bom_ids, context=context)[0] > pack_id = bom_pack.product_id.id > - pack = {'product_id': pack_id, > - #Datos de la sim > - 'icc': sim.icc, > - 'ref': sim.telefono, > - 'telefono': sim.telefono, > - 'pin': sim.pin, > - 'puk': sim.puk, > - 'fecha_alta': sim.fecha_alta, > - 'fecha_activacion': sim.fecha_activacion, > - #Datos del track > - 'imei': link.imei, > - 'name': link.imei, > - 'n_serie': link.n_serie, > - 'propietario': link.propietario, > - 'descripcion': link.descripcion, > - 'albaran_entrada': link.albaran_entrada, > - } > - > - id_lotpack = stock_prod_lot_obj.create(cr, uid,pack) > - pack = stock_prod_lot_obj.browse(cr,uid,[id_lotpack])[0] > + pack = { > + 'product_id': pack_id, > + #Datos de la sim > + 'icc': sim.icc, > + 'ref': sim.telefono, > + 'telefono': sim.telefono, > + 'pin': sim.pin, > + 'puk': sim.puk, > + 'fecha_alta': sim.fecha_alta, > + 'fecha_activacion': sim.fecha_activacion, > + #Datos del track > + 'imei': link.imei, > + 'name': link.imei, > + 'n_serie': link.n_serie, > + 'propietario': link.propietario, > + 'descripcion': link.descripcion, > + 'albaran_entrada': link.albaran_entrada, > + } > + > + id_lotpack = stock_prod_lot_obj.create(cr, uid, pack, > context=context) > + pack = stock_prod_lot_obj.browse(cr, uid, [id_lotpack], > + context=context)[0] > #Realizamos los movimientos La guía de estilo para los comentarios indica que deben llevar un espacio entre # y el texto. > stock_warehouse = None > - stock_warehouse_ids = stock_warehouse_obj.search(cr, uid, []) > - for warehouse in stock_warehouse_obj.browse(cr, uid, > stock_warehouse_ids, company): > + stock_warehouse_ids = stock_warehouse_obj.search(cr, uid, [], > + context=context) > + for warehouse in stock_warehouse_obj.browse(cr, uid, ¿Por qué hacer un bucle aquí si se coge el primer valor siempre? Mejor hace un browse del índice 0 > + stock_warehouse_ids, > + company, > + context=context): > stock_warehouse = warehouse > - break > + break > > if stock_warehouse: > vals_sim = { > 'product_id': link.product_id.id, > - 'name': '[' + link.product_id.default_code + '] ' + > link.product_id.name, > + 'name': ('[' + link.product_id.default_code + Utiliza mejor "[%s] %s" para ser más legible. > + '] ' + link.product_id.name), > 'prodlot_id': link.id, > 'product_qty': 1, > 'product_uos_qty': 1, > @@ -136,7 +160,8 @@ > } > vals_track = { > 'product_id': sim.product_id.id, > - 'name': '[' + sim.product_id.default_code + '] ' + > sim.product_id.name, > + 'name': ('[' + sim.product_id.default_code + Utiliza sustitución de cadenas. > + '] ' + sim.product_id.name), > 'prodlot_id': sim.id, > 'product_qty': 1, > 'product_uos_qty': 1, > @@ -151,7 +176,8 @@ > } > vals_pack = { > 'product_id': pack.product_id.id, > - 'name': '[' + pack.product_id.default_code + '] ' + > pack.product_id.name, > + 'name': ('[' + pack.product_id.default_code + Utiliza sustitución de cadenas. > + '] ' + pack.product_id.name), > 'prodlot_id': pack.id, > 'product_qty': 1, > 'product_uos_qty': 1, > @@ -164,10 +190,8 @@ > 'priority': '1', > 'state': 'done', > } > - stock_move_int_id = stock_move_obj.create(cr, uid, vals_sim) > - stock_move_int_id = stock_move_obj.create(cr, uid, vals_track) > - stock_move_int_id = stock_move_obj.create(cr, uid, vals_pack) > - return (id_lotpack,None) > + stock_move_obj.create(cr, uid, vals_sim, context=context) > + stock_move_obj.create(cr, uid, vals_track, context=context) > + stock_move_obj.create(cr, uid, vals_pack, context=context) > + return (id_lotpack, None) > return (-1, 'No existen almacenes.') > - > -stock_production_lot() > > === renamed file 'phonelift_sales_extension/user.py' => > 'phonelift_sales_extension/models/user.py' > --- phonelift_sales_extension/user.py 2014-06-11 10:23:47 +0000 > +++ phonelift_sales_extension/models/user.py 2014-06-30 13:16:06 +0000 > @@ -19,42 +19,46 @@ > # > > ############################################################################## > > -from osv import osv > - > -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: > -class user(osv.osv): > - _inherit = 'res.users' > - > - def create_user(self, cr, uid, data): > - user_d = {'name':data['nombre'], > - 'login':data['colegiado'], > - 'active':True, > - 'user_email':data['email'], > - 'signature':data['sociedad'] > - } > - address = { > - 'street':data['direccion'], > - 'zip':data['cp'], > - 'city':data['poblacion'], > - > 'state_id':self.pool.get('res.country.state').search_by_name(cr,uid,data['provincia']), > - 'phone':data['telefono']} > - > - users_obj = self.pool.get('res.users') > - address_obj = self.pool.get('res.partner.address') > - users_ids = users_obj.search(cr, uid, [('login', '=', > data.get('colegiado'))]) > - if not users_ids: > - address_id = address_obj.create(cr,uid,address) > - print address_id > - user_d['address_id'] = address_id > - user_id = users_obj.create(cr, uid, user_d) > - #user = users_obj.browse > - #return "lalalal" > - > - def deactivate_user(self,cr,uid,data): > - users_obj = self.pool.get('res.users') > - users_ids = users_obj.search(cr, uid, [('login', '=', > data.get('colegiado'))]) > - if users_ids: > - users_obj.write(cr,uid,users_ids,{'active':False}) > - > - > -user() > +from osv import orm > + > + > +class ResUsers(orm.Model): > + _inherit = 'res.users' > + > + def create_user(self, cr, uid, data, context=None): > + user_d = { > + 'name': data['nombre'], > + 'login': data['colegiado'], > + 'active': True, > + 'user_email': data['email'], > + 'signature': data['sociedad'] > + } > + partner = { > + 'name': data['nombre'], > + 'street': data['direccion'], > + 'zip': data['cp'], > + 'city': data['poblacion'], > + 'state_id': self.pool['res.country.state'].search_by_name( > + cr, uid, data['provincia']), > + 'phone': data['telefono'] > + } > + > + users_obj = self.pool['res.users'] > + partner_obj = self.pool['res.partner'] > + users_ids = users_obj.search(cr, uid, > + [('login', '=', data['colegiado'])], > + context=context) > + if not users_ids: > + partner_id = partner_obj.create(cr, uid, partner, > context=context) > + > + user_d['partner_id'] = partner_id > + users_obj.create(cr, uid, user_d) > + > + def deactivate_user(self, cr, uid, data, context=None): > + users_obj = self.pool['res.users'] > + users_ids = users_obj.search(cr, uid, > + [('login', '=', data['colegiado'])], > + context=context) > + if users_ids: > + users_obj.write(cr, uid, users_ids, {'active': False}, > + context=context) > -- https://code.launchpad.net/~oihanecruce/avanzosc/phonelift_sales_extension/+merge/223355 Your team Avanzosc_security is subscribed to branch lp:~avanzosc-security-team/avanzosc/72horas. -- Mailing list: https://launchpad.net/~avanzosc Post to : [email protected] Unsubscribe : https://launchpad.net/~avanzosc More help : https://help.launchpad.net/ListHelp

