[IMP] Stock, Sale:Code optimization in OSV_Memory wizard files
bzr revid: mso@mso-20100311074754-aswbr7n13dtmxll3
This commit is contained in:
@@ -36,7 +36,7 @@ class sale_order_line_make_invoice(osv.osv_memory):
|
||||
'grouped' : lambda *a: False
|
||||
}
|
||||
|
||||
def makeInvoices(self, cr, uid, ids, context):
|
||||
def make_invoices(self, cr, uid, ids, context):
|
||||
res = False
|
||||
invoices = {}
|
||||
|
||||
@@ -65,26 +65,28 @@ class sale_order_line_make_invoice(osv.osv_memory):
|
||||
inv_id = self.pool.get('account.invoice').create(cr, uid, inv)
|
||||
return inv_id
|
||||
|
||||
for line in self.pool.get('sale.order.line').browse(cr,uid,context['active_ids']):
|
||||
sales_order_line_obj = self.pool.get('sale.order.line')
|
||||
wf_service = netsvc.LocalService('workflow')
|
||||
for line in sales_order_line_obj.browse(cr,uid,context['active_ids']):
|
||||
if (not line.invoiced) and (line.state not in ('draft','cancel')):
|
||||
if not line.order_id.id in invoices:
|
||||
invoices[line.order_id.id] = []
|
||||
line_id = self.pool.get('sale.order.line').invoice_line_create(cr, uid,
|
||||
line_id = sales_order_line_obj.invoice_line_create(cr, uid,
|
||||
[line.id])
|
||||
for lid in line_id:
|
||||
invoices[line.order_id.id].append((line, lid))
|
||||
self.pool.get('sale.order.line').write(cr, uid, [line.id],
|
||||
sales_order_line_obj.write(cr, uid, [line.id],
|
||||
{'invoiced': True})
|
||||
flag = True
|
||||
data_sale = self.pool.get('sale.order').browse(cr,uid,line.order_id.id)
|
||||
sales_order_obj = self.pool.get('sale.order')
|
||||
data_sale = sales_order_obj.browse(cr,uid,line.order_id.id)
|
||||
for line in data_sale.order_line:
|
||||
if not line.invoiced:
|
||||
flag = False
|
||||
break
|
||||
if flag:
|
||||
wf_service = netsvc.LocalService('workflow')
|
||||
wf_service.trg_validate(uid, 'sale.order', line.order_id.id, 'all_lines', cr)
|
||||
self.pool.get('sale.order').write(cr,uid,[line.order_id.id],{'state' : 'progress'})
|
||||
sales_order_obj.write(cr,uid,[line.order_id.id],{'state' : 'progress'})
|
||||
|
||||
for result in invoices.values():
|
||||
order = result[0][0].order_id
|
||||
|
||||
@@ -38,10 +38,12 @@ class sale_advance_payment_inv(osv.osv_memory):
|
||||
_default = {
|
||||
'qtty' : lambda *a: 1
|
||||
}
|
||||
def createInvoices(self, cr, uid, ids, context={}):
|
||||
def create_invoices(self, cr, uid, ids, context={}):
|
||||
list_inv = []
|
||||
obj_sale = self.pool.get('sale.order')
|
||||
obj_lines = self.pool.get('account.invoice.line')
|
||||
inv_obj = self.pool.get('account.invoice')
|
||||
|
||||
for sale_adv_obj in self.browse(cr, uid, ids):
|
||||
for sale in obj_sale.browse(cr, uid, context['active_ids']):
|
||||
address_contact = False
|
||||
@@ -83,7 +85,7 @@ class sale_advance_payment_inv(osv.osv_memory):
|
||||
'payment_term':sale.payment_term.id,
|
||||
'fiscal_position': sale.partner_id.property_account_position.id
|
||||
}
|
||||
inv_obj = self.pool.get('account.invoice')
|
||||
|
||||
inv_id = inv_obj.create(cr, uid, inv)
|
||||
|
||||
for inv in sale.invoice_ids:
|
||||
@@ -134,9 +136,9 @@ class sale_open_invoice(osv.osv_memory):
|
||||
for advance_pay in self.browse(cr, uid, ids):
|
||||
result = mod_obj._get_id(cr, uid, 'account', 'view_account_invoice_filter')
|
||||
id = mod_obj.read(cr, uid, result, ['res_id'])
|
||||
model_data_ids = self.pool.get('ir.model.data').search(cr, uid,
|
||||
model_data_ids = mod_obj.search(cr, uid,
|
||||
[('model', '=', 'ir.ui.view'), ('name', '=', 'invoice_form')])
|
||||
resource_id = self.pool.get('ir.model.data').read(cr, uid, model_data_ids,
|
||||
resource_id = mod_obj.read(cr, uid, model_data_ids,
|
||||
fields=['res_id'])[0]['res_id']
|
||||
return {
|
||||
# 'domain': "[('id','in', ["+','.join(map(str, invoices))+"])]", # TODO
|
||||
|
||||
@@ -40,6 +40,8 @@ class stock_fill_inventory(osv.osv_memory):
|
||||
def fill_inventory(self, cr, uid, ids, context):
|
||||
inventory_line_obj = self.pool.get('stock.inventory.line')
|
||||
location_obj = self.pool.get('stock.location')
|
||||
product_obj = self.pool.get('product.product')
|
||||
stock_location_obj = self.pool.get('stock.location')
|
||||
for fill_inventory in self.browse(cr, uid, ids):
|
||||
res = {}
|
||||
res_location = {}
|
||||
@@ -59,10 +61,10 @@ class stock_fill_inventory(osv.osv_memory):
|
||||
for location in res_location.keys():
|
||||
res = res_location[location]
|
||||
for product_id in res.keys():
|
||||
prod = self.pool.get('product.product').browse(cr, uid, [product_id])[0]
|
||||
prod = product_obj.browse(cr, uid, [product_id])[0]
|
||||
uom = prod.uom_id.id
|
||||
context.update({'uom': uom})
|
||||
amount = self.pool.get('stock.location')._product_get(cr, uid,
|
||||
amount = stock_location_obj._product_get(cr, uid,
|
||||
location, [product_id], context=context)[product_id]
|
||||
|
||||
if(amount):
|
||||
|
||||
@@ -37,7 +37,8 @@ class stock_inventory_line_split(osv.osv_memory):
|
||||
}
|
||||
|
||||
def _check_production_lot(self, cr, uid, context):
|
||||
for inv_obj in self.pool.get('stock.inventory.line').browse(cr, uid, \
|
||||
stock_inventory_line_obj = self.pool.get('stock.inventory.line')
|
||||
for inv_obj in stock_inventory_line_obj.browse(cr, uid, \
|
||||
context['active_ids']):
|
||||
if not inv_obj.prod_lot_id:
|
||||
raise osv.except_osv(_('Caution!'), _('Before splitting the \
|
||||
@@ -53,10 +54,11 @@ inventory lines, make sure the production lot is assigned to this product.'))
|
||||
inv_id = context['active_id']
|
||||
inv_line_obj = self.pool.get('stock.inventory.line')
|
||||
prodlot_obj = self.pool.get('stock.production.lot')
|
||||
for linesplit_obj in self.browse(cr, uid, ids):
|
||||
ir_sequence_obj = self.pool.get('ir.sequence')
|
||||
|
||||
sequence = ir_sequence_obj.get(cr, uid, 'stock.lot.serial')
|
||||
ir_sequence_obj = self.pool.get('ir.sequence')
|
||||
sequence = ir_sequence_obj.get(cr, uid, 'stock.lot.serial')
|
||||
|
||||
for linesplit_obj in self.browse(cr, uid, ids):
|
||||
if not sequence:
|
||||
raise wizard.except_wizard(_('Error!'), _('No production sequence defined'))
|
||||
if linesplit_obj.prefix:
|
||||
|
||||
@@ -70,15 +70,15 @@ class stock_invoice_onshipping(osv.osv_memory):
|
||||
|
||||
def create_invoice(self, cr, uid, ids, context):
|
||||
result = []
|
||||
picking_obj = self.pool.get('stock.picking')
|
||||
mod_obj = self.pool.get('ir.model.data')
|
||||
act_obj = self.pool.get('ir.actions.act_window')
|
||||
|
||||
for onshipdata_obj in self.read(cr, uid, ids, ['journal_id', 'group', 'type', 'invoice_date']):
|
||||
if context.get('new_picking', False):
|
||||
onshipdata_obj[id] = onshipdata_obj.new_picking
|
||||
onshipdata_obj[ids] = onshipdata_obj.new_picking
|
||||
|
||||
picking_obj = self.pool.get('stock.picking')
|
||||
mod_obj = self.pool.get('ir.model.data')
|
||||
act_obj = self.pool.get('ir.actions.act_window')
|
||||
|
||||
type = onshipdata_obj['type']
|
||||
context['date_inv'] = onshipdata_obj['invoice_date']
|
||||
res = picking_obj.action_invoice_create(cr, uid,context['active_ids'],
|
||||
|
||||
Reference in New Issue
Block a user