两个定时任务:
today = datetime.today().strftime('%Y-%m-%d')
transfers = env['rank.job.transfer'].search(cr, 1, [('state', '=', 'done'),('active','=',True)])
transfers_dict = {}
for record in transfers:
adj = env['rank.job.transfer'].browse(cr, 1, record)
if transfers_dict.get(adj.employee_id,False):
transfers_dict[adj.employee_id].append(adj)
else:
transfers_dict[adj.employee_id]=[adj]
for key,value in transfers_dict.items():
if value:
value.sort(key=lambda x:x.transfer_date,reverse=True)
item = value[0]
vals =
{
'x_newcostcenter1': item.new_cost_center.id if item.new_cost_center else None,
'x_shengxiaoriqi': item.transfer_date,
}
if item.employee_id.x_newcostcenter1 != item.new_cost_center or item.employee_id.x_shengxiaoriqi != item.transfer_date:
item.employee_id.write(vals)
today = datetime.today().strftime('%Y-%m-%d')
employees = env['hr.employee'].search(cr, 1, [])
for record in employees:
emp = env['hr.employee'].browse(cr, 1, record)
if not emp.x_shengxiaoriqi:
vals1 =
{
'x_shijicostcenter1': emp.cost_center.id if emp.cost_center else None
}
elif emp.x_shengxiaoriqi[5:7] >= today[5:7]:
vals1 =
{
'x_shijicostcenter1': emp.x_newcostcenter1.id if emp.x_newcostcenter1 else None
}
else:
vals1 = {}
emp.write(vals1)