[IMP]purchase: added message_hook method and improve workflow and button

bzr revid: mma@tinyerp.com-20120229101653-wiuo4am11s1kaa5h
This commit is contained in:
Mayur Maheshwari (OpenERP) 2012-02-29 15:46:53 +05:30
parent 5f50bd32e7
commit f4f13affad
3 changed files with 16 additions and 4 deletions

View File

@ -346,14 +346,25 @@ class purchase_order(osv.osv):
self.write(cr, uid, ids, {'state': 'approved', 'date_approve': fields.date.context_today(self,cr,uid,context=context)})
return True
def _hook_message_sent(self, cr, uid, purchase_id, context=None):
wf_service = netsvc.LocalService("workflow")
wf_service.trg_validate(uid, 'purchase.order', purchase_id, 'send_rfq', cr)
return True
def wkf_send_rfq(self, cr, uid, ids, context=None):
mod_obj = self.pool.get('ir.model.data')
template_id = self.pool.get('email.template').search(cr, uid, [('model_id', '=', 'purchase.order')])
self.write(cr, uid, ids, {'state' : 'send'})
res = mod_obj.get_object_reference(cr, uid, 'mail', 'email_compose_message_wizard_form')
res_id = res and res[1] or False
#EDI EXport data
id = ids[0]
order = self.browse(cr, uid, id, context)
if not order.partner_id.opt_out:
order.edi_export_and_email(template_ext_id='purchase.email_template_edi_purchase', context=context)
ctx = context.copy()
ctx.update({'active_model': 'purchase.order', 'active_id': id, 'mail.compose.template_id': template_id})
return {
'view_type': 'form',
'view_mode': 'form',
@ -362,7 +373,8 @@ class purchase_order(osv.osv):
'view_id': res_id,
'type': 'ir.actions.act_window',
'target': 'new',
'context': {'active_model': 'purchase.order','mail.compose.template_id' :template_id},
'context': ctx,
'nodestroy': True,
}
#TODO: implement messages system

View File

@ -196,7 +196,7 @@
</group>
<group col="16" colspan="4">
<field name="state" widget="statusbar" statusbar_visible="draft,approved,done" statusbar_colors='{"except_picking":"red","except_invoice":"red","confirmed":"blue","wait":"blue"}' readonly="1"/>
<button name="send_rfq" states="draft" string="Send" icon="terp-mail-message-new"/>
<button name="wkf_send_rfq" states="draft" string="Send" type="object" icon="terp-mail-message-new"/>
<button name="view_report" string="Print" states="draft" type="object" icon="gtk-print"/>
<button name="action_cancel" states="except_picking,except_invoice,wait" string="Cancel" type="object" icon="gtk-cancel"/>
<button name="picking_ok" states="except_picking" string="Manually Corrected" icon="gtk-convert"/>

View File

@ -17,7 +17,7 @@
<field name="wkf_id" ref="purchase_order"/>
<field name="name">send</field>
<field name="kind">function</field>
<field name="action">wkf_send_rfq()</field>
<field name="action">write({'state':'send'})</field>
</record>
<record id="act_confirmed" model="workflow.activity">
<field name="wkf_id" ref="purchase_order"/>