2017-04-01 3 views
0
jj_loan_aprroveボタンをクリック
class jj_loan(models.Model): 
    _name  = 'jj_loan.jj_loan' 
    name  = fields.Char(required=True) 
    _inherit = ['mail.thread', 'ir.needaction_mixin'] 
    state  = fields.Selection([('Draft','Draft'),('Apply','Apply')] ,default="Draft") 
    manager_id = fields.Many2one('hr.employee', 'Approval',default=_supervisor_get) 

    def add_approve_follower(self): 
     vals={} 
     partner_id = [] 
     ptn = self.env['res.partner'].search([('email', '=', self.manager_id.user_id.email)]) //get partner id by email 
     if not ptn:return vals //if get fail return {} 
     for x in self.message_follower_ids: 
      if x.partner_id.id == ptn.id:return vals //if already added in followers return {} 
     partner_id.append(ptn.id) 
     vals['message_follower_ids'] = [(0,0,{ 
       'res_model':'jj_loan.jj_loan', 
       'partner_id':pid}) for pid in partner_id] 
     return vals; //return message_follower_ids 

    @api.one 
    def jj_loan_aprrove(self): 
     vals = self.add_account_follower(); //get now followers 
     vals['state'] = 'Approve' 
     self.write(vals) 
     self.send_followers(_("Approved")) 
     return True 

    @api.multi 
    def send_followers(self,body): 
     followers = [x.partner_id.id for x in self.message_follower_ids] 
     self.message_post(body=body,type="notification",subtype="mt_comment",parnter_ids=followers) 
     return True 

は、MANAGER_IDが自動的にフォロワーリストに追加されたサブタイプ、しかし、メッセージが作成されたときに、管理者は、通知を得ることができません追加します。その後、私はこれがbellowesとして原因が見つかりました:私はprogrammely信者を追加する方法を知っていると、デフォルトのチェックボックスが 感謝odooプログラムは、メールフォロワーなしデフォルト

ついに

答えて

0

を確認したい

manager is following this thread, but after I clicked the edit icon. and I see the two checkbox are unchecked ,the first checkbox should be checked by default  the two checkbox are unchecked this is the normal status when I add followers manually

、後odooのデフォルトを読みます私はmessage_follower_idsがres_modelの鍵を持っているはずですので、この質問の解決策は次の通りです:

default_subtypes = self.env['mail.message.subtype'].search([ ('default', '=', True),  '|', ('res_model', '=', model_id), ('res_model', '=', False)]) 
vals['message_follower_ids'] = [(0,0,{ 
      'res_model':model_id, 
      'subtype_ids': [(6, 0, default_subtypes.ids)], 
      'partner_id':pid}) for pid in partner_id] 
return vals; 
関連する問題