# Pythone code to be excuted.
# There paramters list as below:
# env: Environment, such as env['ir.model.data']
# instance: current model instance
# _logger: such as _logger.info('msg')
# kwargs: other paramters passed in
# toolkits: including following attributes - datetime, time, json
# result: put return values into this dict {key:value,...}
values = kwargs.setdefault('values', {})
employee_type_rep = values.get('employee_type_rep')
employee_grade_id = values.get('employee_grade_id')
legal_entity = values.get('legal_entity')
package_LR31 = env['hr.holiday.package'].search([('code','=', 'LR31')])
package_LR18 = env['hr.holiday.package'].search([('code','=', 'LR18')])
package_LR01 = env['hr.holiday.package'].search([('code','=', 'LR01')])
overtime_42 = env['hr.overtime.conf'].search([('sequence','=', 'OTCONF67929342')])
overtime_03 = env['hr.overtime.conf'].search([('sequence','=', 'OTCONF20191127003')])
overtime_05 = env['hr.overtime.conf'].search([('sequence','=', 'OTCONF20200114005')])
overtime_06 = env['hr.overtime.conf'].search([('sequence','=', 'OTCONF20200310006')])
overtime_07 = env['hr.overtime.conf'].search([('sequence','=', 'OTCONF20200310007')])
withhold_agents_BEKAERT1= env['withhold.agent'].search([('code','=', 'BEKAERT1')])
withhold_agents_BEKAERT2= env['withhold.agent'].search([('code','=', 'BEKAERT2')])
withhold_agents_BEKAERT3= env['withhold.agent'].search([('code','=', 'BEKAERT3')])
withhold_agents_BEKAERT4= env['withhold.agent'].search([('code','=', 'BEKAERT4')])
withhold_agents_BEKAERT5= env['withhold.agent'].search([('code','=', 'BEKAERT5')])
withhold_agents_BEKAERT6= env['withhold.agent'].search([('code','=', 'BEKAERT6')])
withhold_agents_BEKAERT7= env['withhold.agent'].search([('code','=', 'BEKAERT7')])
withhold_agents_BEKAERT8= env['withhold.agent'].search([('code','=', 'BEKAERT8')])
withhold_agents_BEKAERT9= env['withhold.agent'].search([('code','=', 'BEKAERT9')])
withhold_agents_BEKAERT10= env['withhold.agent'].search([('code','=', 'BEKAERT10')])
withhold_agents_BEKAERT11= env['withhold.agent'].search([('code','=', 'BEKAERT11')])
withhold_agents_BEKAERT12= env['withhold.agent'].search([('code','=', 'BEKAERT12')])
withhold_agents_BEKAERT13= env['withhold.agent'].search([('code','=', 'BEKAERT13')])
withhold_agents_BEKAERT14= env['withhold.agent'].search([('code','=', 'BEKAERT14')])
withhold_agents_BEKAERT15= env['withhold.agent'].search([('code','=', 'BEKAERT15')])
if employee_type_rep and employee_type_rep.name in ('Disabled Employee','Secondment Out'):
result.update({'holiday_package_id': package_LR31.id})
elif employee_type_rep and employee_grade_id and employee_type_rep.name == 'Intern Employee' and employee_grade_id.name == 'IN':
result.update({'holiday_package_id': package_LR18.id})
elif employee_type_rep and employee_grade_id and employee_type_rep.name == 'Intern Employee' and employee_grade_id.name == 'WC':
result.update({'holiday_package_id': package_LR31.id})
elif employee_type_rep and legal_entity and employee_type_rep.name in ('Formal Employee','Extra Empoyee') and legal_entity.x_legalentityabb == 'BBSC':
result.update({'holiday_package_id': package_LR01.id})
elif legal_entity and legal_entity.x_legalentityabb in ('BAP','BBSC','BCSC','BHTC','BJSC','BSAC','CBSC','SSC','BJWP','BNM','BQWP'):
result.update({'overtime_conf_id': overtime_42.id})
if legal_entity.code == 'LE003':
result.update({'withhold_agent': withhold_agents_BEKAERT14.id})
elif legal_entity.code == 'L004':
result.update({'withhold_agent': withhold_agents_BEKAERT1.id})
elif legal_entity.code == 'L011':
result.update({'withhold_agent': withhold_agents_BEKAERT10.id})
elif legal_entity.code == 'L015':
result.update({'withhold_agent': withhold_agents_BEKAERT13.id})
elif legal_entity.code == 'L010':
result.update({'withhold_agent': withhold_agents_BEKAERT9.id})
elif legal_entity.code == 'L006':
result.update({'withhold_agent': withhold_agents_BEKAERT6.id})
elif legal_entity.code == 'L003':
result.update({'withhold_agent': withhold_agents_BEKAERT4.id})
elif legal_entity.code == 'LE004':
result.update({'withhold_agent': withhold_agents_BEKAERT15.id})
elif legal_entity.code == 'L005':
result.update({'withhold_agent': withhold_agents_BEKAERT5.id})
elif legal_entity.code == 'L013':
result.update({'withhold_agent': withhold_agents_BEKAERT12.id})
elif legal_entity.code == 'L009':
result.update({'withhold_agent': withhold_agents_BEKAERT8.id})
elif legal_entity and legal_entity.x_legalentityabb in ('BHZ','BMC'):
result.update({'overtime_conf_id': overtime_03.id})
if legal_entity.code == 'L001':
result.update({'withhold_agent': withhold_agents_BEKAERT1.id})
elif legal_entity and legal_entity.x_legalentityabb == 'BSTC':
result.update({'overtime_conf_id': overtime_05.id})
result.update({'withhold_agent': withhold_agents_BEKAERT7.id})
elif legal_entity and legal_entity.x_legalentityabb == 'BTRD':
result.update({'overtime_conf_id': overtime_06.id})
result.update({'withhold_agent': withhold_agents_BEKAERT3.id})
elif legal_entity and legal_entity.x_legalentityabb == 'SBE':
result.update({'overtime_conf_id': overtime_07.id})
result.update({'withhold_agent': withhold_agents_BEKAERT11.id})
else:
result.update({'holiday_package_id': None})
result.update({'withhold_agent': None})
result.update({'overtime_conf_id': None})