[FIX] HR: can't change email address of only on employee

lp bug: https://launchpad.net/bugs/680473 fixed

bzr revid: mra@mra-laptop-20101207092123-onw0418p01bm0tqy
This commit is contained in:
Mustufa Rangwala 2010-12-07 14:51:23 +05:30
parent 94c9141324
commit c3aaa57d4f
2 changed files with 9 additions and 3 deletions

View File

@ -149,8 +149,8 @@ class hr_employee(osv.osv):
'address_home_id': fields.many2one('res.partner.address', 'Home Address'),
'partner_id': fields.related('address_home_id', 'partner_id', type='many2one', relation='res.partner', readonly=True, help="Partner that is related to the current employee. Accounting transaction will be written on this partner belongs to employee."),
'bank_account_id':fields.many2one('res.partner.bank', 'Bank Account', domain="[('partner_id','=',partner_id)]", help="Employee bank salary account"),
'work_phone': fields.related('address_id', 'phone', type='char', size=32, string='Work Phone', readonly=True),
'work_email': fields.related('address_id', 'email', type='char', size=240, string='Work E-mail'),
'work_phone': fields.char('Work Phone', size=32, readonly=False),
'work_email': fields.char('Work E-mail', size=240),
'work_location': fields.char('Office Location', size=32),
'notes': fields.text('Notes'),
'parent_id': fields.related('department_id', 'manager_id', relation='hr.employee', string='Manager', type='many2one', store=True, select=True, readonly=True, help="It is linked with manager of Department"),
@ -163,6 +163,12 @@ class hr_employee(osv.osv):
'passport_id':fields.char('Passport', size=64)
}
def onchange_address_id(self, cr, uid, ids, address, context=None):
if address:
address = self.pool.get('res.partner.address').browse(cr, uid, address, context=context)
return {'value': {'work_email': address.email, 'work_phone': address.phone}}
return {'value': {}}
def onchange_company(self, cr, uid, ids, company, context=None):
address_id = False
if company:

View File

@ -56,7 +56,7 @@
<separator string="Contact Information" colspan="2"/>
<field name="address_home_id" colspan="2"/>
<field name="partner_id" invisible="1" />
<field name="address_id" colspan="2" domain="[('partner_id', '=', partner_id)]"/>
<field name="address_id" colspan="2" on_change="onchange_address_id(address_id)" domain="[('partner_id', '=', partner_id)]"/>
<field name="work_phone"/>
<field name="work_email" widget="email" />
<field name="work_location"/>