获取当前登录人员以及部门经理

   name = fields.Many2one(’hr.employee’, string=” 申请人”, readonly=True)
       manager = fields.Many2one(’hr.employee’, string=” 主管”,readonly=True)

   current_name = fields.Many2one(’hr.employee’, string=” 当前登录人”,compute=”_get_current_name”)

   def _get_current_name(self):
            uid = self.env.uid
            res = self.env[’resource.resource’].search([(’user_id’,’=’,uid)])
            name = res.name
            employee = self.env[’hr.employee’].search(
            [(’name_related’,’=’,name)])
            self.current_name = employee

#默认当前登录人以及登录着的部门经理

  @api.model# 使用新的 api
        def _get_default_name(self):
            uid = self.env.uid
            res = self.env[’resource.resource’].search([(’user_id’,’=’,uid)])
            name = res.name
            employee = self.env[’hr.employee’].search(
                    [(’name_related’,’=’,name)])
            # for i in self.env.user:# 说明其是 recordset
            # print(’hello’)
            return employee
            
        @api.model
        def _get_default_manager(self):# 单记录 recordset 可以直接用点记号读取属性值
            uid = self.env.uid
            res = self.env[’resource.resource’].search([(’user_id’,’=’,uid)])
            name = res.name
            employee = self.env[’hr.employee’].search(
                [(’name_related’,’=’,name)])
            logging.info(”myinfo {}”.format(employee.parent_id))
            return employee.parent_id # 似乎有这种数字引用方法值得我们注意
            _defaults = {
                ’name’ : _get_default_name ,
                ’manager’ : _get_default_manager ,
                }

 

 

  is_manager = fields.Boolean(compute=’_get_is_manager’)

  def _get_is_manager(self):
            print(’----------test’)
            print(self.current_name, self.manager,self.env.uid)
            if self.current_name == self.manager:
                self.is_manager = True
            else:
                self.is_manager = False

posted on 2018-10-09 15:40  辰辰宝贝  阅读(495)  评论(0编辑  收藏  举报