添加功能

This commit is contained in:
zhou
2025-07-07 20:00:22 +08:00
parent 56ff75d806
commit 0f0cf680a4
+8 -7
View File
@@ -101,15 +101,15 @@ class HrAttendance(models.Model):
#考勤异常提醒
def card_remind(self):
# 获取所有员工
menu_id = self.env['ir.ui.menu'].search([('name', '=', '我的异常')])
menu_id = self.env['ir.ui.menu'].sudo().search([('name', '=', '我的考勤')])
all_employees = self.env['hr.employee'].search([])
abnormal_employees = []
current_date = datetime.today()
month_start = current_date.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
month_end = (month_start + relativedelta(months=1)) - relativedelta(seconds=1)
current_date = fields.Date.today()
month_start = current_date.replace(day=1)
month_end = (month_start + relativedelta(months=1) - relativedelta(days=1))
for employee in all_employees:
domain = [
('shift_name', '=', '行政班次'),
('employee_id', '=', employee.id),
('current_data', '>=', month_start),
('current_data', '<=', month_end)
@@ -117,7 +117,7 @@ class HrAttendance(models.Model):
attend_records = self.env['hr.attendance'].search(domain)
has_abnormal = False
for attend_id in attend_records:
if attend_id.is_no_card or attend_id.is_early_card or attend_id.is_late_card or attend_id.is_abnormal:
if attend_id.is_no_card or attend_id.is_early_card or attend_id.is_late_card or attend_id.is_abnormal or attend_id.absenteeism_card:
has_abnormal = True
break
if has_abnormal:
@@ -125,7 +125,7 @@ class HrAttendance(models.Model):
abnormal_employees.append(employee)
for emp in abnormal_employees:
url = f'https://oa.thtzjt.com/web?login={emp.user_id.login}&oauth_uid={emp.wecom_userid}#id={self.id}&cids=2&action={menu_id.action.id}&model=hr.attendance&view_type=form&menu_id={menu_id.id}'
url = f'https://oa.thtzjt.com/web#id={self.id}&cids=2&action={menu_id.action.id}&model=hr.attendance&view_type=from&menu_id={menu_id.id}'
self.sudo().env["wecom.apps"].sync_send_message_textcard(category='attendance',
user_id=emp.wecom_userid,
title="打卡异常提醒",
@@ -177,6 +177,7 @@ class HrAttendance(models.Model):
is_early_card += 1
if i.is_no_card:
is_late_card += 1
url = f'https://oa.thtzjt.com/web#id={self.id}&cids=2&action={menu_id.action.id}&model=hr.attendance&view_type=from&menu_id={menu_id.id}'
self.sudo().env["wecom.apps"].sync_send_message_textcard(category='att', user_id=rec.employee_id.wecom_userid,
title="打卡异常提醒", description="本月迟到: {}\n本月缺卡: {}\n本月早退: {}\n".format(is_late_card, is_no_card, is_early_card),