bzr revid: hmo@tinyerp.com-20121010072631-68qcg1zzec0s1318
This commit is contained in:
Harry (OpenERP) 2012-10-10 12:56:31 +05:30
commit e857c86128
5 changed files with 22 additions and 16 deletions

View File

@ -397,10 +397,6 @@ the rule to mark CC(mail to any other person defined in actions)."),
obj.state = action.act_state
write['state'] = action.act_state
if hasattr(obj, 'categ_id') and action.act_categ_id:
obj.categ_id = action.act_categ_id
write['categ_id'] = action.act_categ_id.id
model_obj.write(cr, uid, [obj.id], write, context)
if hasattr(model_obj, 'remind_user') and action.act_remind_user:

View File

@ -57,8 +57,8 @@ class base_action_rule(osv.osv):
if hasattr(obj, 'section_id'):
ok = ok and (not action.trg_section_id or action.trg_section_id.id == obj.section_id.id)
if hasattr(obj, 'categ_id'):
ok = ok and (not action.trg_categ_id or action.trg_categ_id.id == obj.categ_id.id)
if hasattr(obj, 'categ_ids'):
ok = ok and (not action.trg_categ_id or action.trg_categ_id.id in obj.categ_ids)
#Cheking for history
regex = action.regex_history
@ -93,6 +93,9 @@ class base_action_rule(osv.osv):
write['email_cc'] = obj.email_cc + ',' + obj.act_email_cc
else:
write['email_cc'] = obj.act_email_cc
if hasattr(obj, 'categ_ids') and action.act_categ_id:
write['categ_ids'] = [4, action.act_categ_id.id]
# Put state change by rule in communication history
if hasattr(obj, 'state') and hasattr(obj, 'message_post') and action.act_state:

View File

@ -505,7 +505,7 @@ class test_mail(TestMailMockups):
# 1. mass_mail on pigs and bird
compose_id = mail_compose.create(cr, uid,
{'subject': _subject, 'body': '${object.description}', 'content_type': 'html'},
{'subject': _subject, 'body': '${object.description}'},
{'default_composition_mode': 'mass_mail', 'default_model': 'mail.group', 'default_res_id': False,
'active_ids': [self.group_pigs_id, group_bird_id]})
compose = mail_compose.browse(cr, uid, compose_id)

View File

@ -197,6 +197,12 @@ class procurement_order(osv.osv):
'location_id': orderpoint.location_id.id,
'procure_method': 'make_to_order',
'origin': orderpoint.name}
def _product_virtual_get(self, cr, uid, order_point):
location_obj = self.pool.get('stock.location')
return location_obj._product_virtual_get(cr, uid,
order_point.location_id.id, [order_point.product_id.id],
{'uom': order_point.product_uom.id})[order_point.product_id.id]
def _procure_orderpoint_confirm(self, cr, uid, automatic=False,\
use_new_cursor=False, context=None, user_id=False):
@ -217,7 +223,7 @@ class procurement_order(osv.osv):
if use_new_cursor:
cr = pooler.get_db(use_new_cursor).cursor()
orderpoint_obj = self.pool.get('stock.warehouse.orderpoint')
location_obj = self.pool.get('stock.location')
procurement_obj = self.pool.get('procurement.order')
wf_service = netsvc.LocalService("workflow")
offset = 0
@ -227,14 +233,9 @@ class procurement_order(osv.osv):
while ids:
ids = orderpoint_obj.search(cr, uid, [], offset=offset, limit=100)
for op in orderpoint_obj.browse(cr, uid, ids, context=context):
if op.procurement_id.state != 'exception':
if op.procurement_id and hasattr(op.procurement_id, 'purchase_id'):
if op.procurement_id.purchase_id.state in ('draft', 'confirmed'):
continue
prods = location_obj._product_virtual_get(cr, uid,
op.location_id.id, [op.product_id.id],
{'uom': op.product_uom.id})[op.product_id.id]
prods = self._product_virtual_get(cr, uid, op)
if prods is None:
continue
if prods < op.product_min_qty:
qty = max(op.product_min_qty, op.product_max_qty)-prods

View File

@ -1080,6 +1080,12 @@ class procurement_order(osv.osv):
self.write(cr, uid, [procurement.id], {'state': 'running', 'purchase_id': res[procurement.id]})
self.running_send_note(cr, uid, [procurement.id], context=context)
return res
def _product_virtual_get(self, cr, uid, order_point):
procurement = order_point.procurement_id
if procurement and procurement.state != 'exception' and procurement.purchase_id and procurement.purchase_id.state in ('draft', 'confirmed'):
return None
return super(procurement_order, self)._product_virtual_get(cr, uid, order_point)
procurement_order()