From eb595cb2dc52d31ee45f9ac8253a1e437e2df084 Mon Sep 17 00:00:00 2001 From: zhou <123@> Date: Sat, 28 Dec 2024 19:31:42 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yuthon_hr_attendance/data/data_other.xml | 82 ++-- yuthon_hr_attendance/models/hr_attendance.py | 444 +++++++++---------- 2 files changed, 263 insertions(+), 263 deletions(-) diff --git a/yuthon_hr_attendance/data/data_other.xml b/yuthon_hr_attendance/data/data_other.xml index 75529a148..4864337e4 100644 --- a/yuthon_hr_attendance/data/data_other.xml +++ b/yuthon_hr_attendance/data/data_other.xml @@ -1,46 +1,46 @@ - - - 定时任务:粮储值班下班打卡提醒 - - code - model.card_lc_shift_remind_out() - - - 1 - days - - -1 - - + + + + + + + + + + + + + + - - 定时任务:工程部中值夜班下班打卡提醒 - - code - model.gc_night_remind_out() - - - 1 - days - - -1 - - + + + + + + + + + + + + + - - 定时任务:保安部白班上班打卡提醒 - - code - model.ba_card_white_up() - - - 1 - days - - -1 - - - + + + + + + + + + + + + + + \ No newline at end of file diff --git a/yuthon_hr_attendance/models/hr_attendance.py b/yuthon_hr_attendance/models/hr_attendance.py index 796beabce..d893469b5 100644 --- a/yuthon_hr_attendance/models/hr_attendance.py +++ b/yuthon_hr_attendance/models/hr_attendance.py @@ -191,228 +191,228 @@ class HrAttendance(models.Model): title="打卡异常提醒", description="异常提醒", url=str, btntxt="详细信息") - # 保安部 - 白班 - def ba_card_white_up(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '白班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def ba_card_white_down(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '白班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - # 保安部 - 中班 - def ba_card_mid_up(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '中班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def ba_card_mid_down(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '中班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - # 保安部 - 夜班 - def ba_card_night_up(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '夜班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def ba_card_night_down(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '夜班')]) - for user in ba_up_users: - if user.end_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - # 工程部 - 白班 白值 - def gc_white_in_remind(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '工程部'), ('template_id.planning_name', 'in', ['白班', '白值'])]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id,user.template_id.planning_name) - - def gc_white_shift_remind(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '白值')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_duty_remind(user.resource_id.employee_id) - - def gc_white_out_remind(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '工程部'), ('template_id.planning_name', 'in', ['白班', '白值'])]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - # 工程部-中值夜 - def gc_night_remind_in(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '中夜')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def gc_night_remind_shift(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '中夜')]) - for user in ba_up_users: - if user.end_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_duty_remind(user.resource_id.employee_id) - - def gc_night_remind_out(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '中夜')]) - for user in ba_up_users: - if user.end_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - # 粮储-白班 - def card_lc_remind_in(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def card_lc_remind_out(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白班')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time':datetime.now(), - 'shift':user.template_id.planning_name, - 'department': user.department_id.name,}) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - # 粮储-值班 - def card_lc_shift_remind_in(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白值')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def card_lc_shift_remind(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白值')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_duty_remind(user.resource_id.employee_id) - - def card_lc_shift_remind_out(self): - ba_up_users = self.env['planning.slot'].search( - [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白值')]) - for user in ba_up_users: - if user.start_datetime.date() == fields.date.today(): - self.env['card.remind.form'].create({ - 'name': user.resource_id.employee_id.name, - 'start_time': datetime.now(), - 'shift': user.template_id.planning_name, - 'department': user.department_id.name, }) - self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) - - def card_in_comment(self, employee_id, planning_name): - data = f"您的班次是{planning_name},还有10分钟上班,记得打卡" - self.sudo().env["wecom.apps"].sync_send_message(category='att', user_id=employee_id.wecom_userid, message=data) - - def card_out_comment(self, employee_id,planning_name): - data = f"您的班次是{planning_name},您该下班了,记得打卡" - self.sudo().env["wecom.apps"].sync_send_message(category='att', user_id=employee_id.wecom_userid, message=data) - - def card_duty_remind(self, employee_id): - data = "今天您值班,记得打卡" - self.sudo().env["wecom.apps"].sync_send_message(category='att', user_id=employee_id.wecom_userid, message=data) + # # 保安部 - 白班 + # def ba_card_white_up(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '白班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def ba_card_white_down(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '白班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # # 保安部 - 中班 + # def ba_card_mid_up(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '中班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def ba_card_mid_down(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '中班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # # 保安部 - 夜班 + # def ba_card_night_up(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '夜班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def ba_card_night_down(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '保安部'), ('template_id.planning_name', '=', '夜班')]) + # for user in ba_up_users: + # if user.end_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # # 工程部 - 白班 白值 + # def gc_white_in_remind(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '工程部'), ('template_id.planning_name', 'in', ['白班', '白值'])]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id,user.template_id.planning_name) + # + # def gc_white_shift_remind(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '白值')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_duty_remind(user.resource_id.employee_id) + # + # def gc_white_out_remind(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '工程部'), ('template_id.planning_name', 'in', ['白班', '白值'])]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # # 工程部-中值夜 + # def gc_night_remind_in(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '中夜')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def gc_night_remind_shift(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '中夜')]) + # for user in ba_up_users: + # if user.end_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_duty_remind(user.resource_id.employee_id) + # + # def gc_night_remind_out(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '工程部'), ('template_id.planning_name', '=', '中夜')]) + # for user in ba_up_users: + # if user.end_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # # 粮储-白班 + # def card_lc_remind_in(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def card_lc_remind_out(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白班')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time':datetime.now(), + # 'shift':user.template_id.planning_name, + # 'department': user.department_id.name,}) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # # 粮储-值班 + # def card_lc_shift_remind_in(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白值')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_in_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def card_lc_shift_remind(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白值')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_duty_remind(user.resource_id.employee_id) + # + # def card_lc_shift_remind_out(self): + # ba_up_users = self.env['planning.slot'].search( + # [('role_id.name', '=', '联安粮库'), ('template_id.planning_name', '=', '白值')]) + # for user in ba_up_users: + # if user.start_datetime.date() == fields.date.today(): + # self.env['card.remind.form'].create({ + # 'name': user.resource_id.employee_id.name, + # 'start_time': datetime.now(), + # 'shift': user.template_id.planning_name, + # 'department': user.department_id.name, }) + # self.card_out_comment(user.resource_id.employee_id,user.template_id.planning_name) + # + # def card_in_comment(self, employee_id, planning_name): + # data = f"您的班次是{planning_name},还有10分钟上班,记得打卡" + # self.sudo().env["wecom.apps"].sync_send_message(category='att', user_id=employee_id.wecom_userid, message=data) + # + # def card_out_comment(self, employee_id,planning_name): + # data = f"您的班次是{planning_name},您该下班了,记得打卡" + # self.sudo().env["wecom.apps"].sync_send_message(category='att', user_id=employee_id.wecom_userid, message=data) + # + # def card_duty_remind(self, employee_id): + # data = "今天您值班,记得打卡" + # self.sudo().env["wecom.apps"].sync_send_message(category='att', user_id=employee_id.wecom_userid, message=data) # @api.depends('employee_id') # def compute_shift_id(self):