!4539 添加功能

Merge pull request !4539 from 李鹏宇/dev_zhou
This commit is contained in:
李鹏宇
2025-08-14 03:09:45 +00:00
committed by Gitee
2 changed files with 26 additions and 14 deletions
@@ -412,10 +412,11 @@ class AppletAttendance(Controller):
}
return json.dumps(return_data)
# 处理考勤记录
def process_attendances(self, attendances, user_id):
records = []
for att in attendances:
is_weekend = att.current_data.weekday() in [5, 6]
if not att.shift_id:
year = att.current_data.year
month = att.current_data.month
@@ -450,29 +451,39 @@ class AppletAttendance(Controller):
check_out = att.check_out
is_early_card = att.is_early_card
is_late_card = att.is_late_card
check_in_status = '缺卡' if not check_in else ('迟到' if is_late_card else '正常')
check_out_status = '缺卡' if not check_out else ('早退' if is_early_card else '正常')
base_check_in_status = '缺卡' if not check_in else ('迟到' if is_late_card else '正常')
base_check_out_status = '缺卡' if not check_out else ('早退' if is_early_card else '正常')
if is_weekend:
check_in_status = '正常'
check_out_status = '正常'
else:
check_in_status = base_check_in_status
check_out_status = base_check_out_status
if check_in:
check_in_time = (check_in + timedelta(hours=8)).strftime('%H:%M:%S')
check_in_str = f"{check_in_status} {check_in_time}" if check_in_status in ['迟到',
'早退'] else check_in_time
else:
check_in_str = '缺卡'
check_in_str = '正常' if is_weekend else '缺卡'
if check_out:
check_out_time = (check_out + timedelta(hours=8)).strftime('%H:%M:%S')
check_out_str = f"{check_out_status} {check_out_time}" if check_out_status in ['迟到',
'早退'] else check_out_time
else:
check_out_str = '缺卡'
check_out_str = '正常' if is_weekend else '缺卡'
if not check_in_status and not check_out_status:
color_select = 3
if is_weekend:
has_exception = False # 周末任何情况都不算异常
else:
has_exception = (check_in_status in ['迟到', '早退', '缺卡']) or (
check_out_status in ['迟到', '早退', '缺卡'])
color_select = 2 if has_exception else 1
# 添加到记录列表
color_select = 2 if has_exception else 1
records.append({
'date': att.current_data.strftime('%Y/%m/%d'),
'class': [f"{att.shift_name} ", f"{standard_check_in_str}-{standard_check_out_str}"],
@@ -480,6 +491,7 @@ class AppletAttendance(Controller):
'check_in': check_in_str,
'check_out': check_out_str,
'color_select': color_select,
'is_weekend': is_weekend
})
return records
+5 -5
View File
@@ -184,11 +184,6 @@
parent="hr_attendance_root_board_menu"
sequence="19"
action="yuthon_hr_attendance.applet_security_action"/>
<!-- <menuitem id="applet_security_setting_board"-->
<!-- name="小程序权限配置"-->
<!-- parent="hr_attendance_root_board_menu"-->
<!-- sequence="20"-->
<!-- action="yuthon_hr_attendance.applet_security_setting_action"/>-->
<!-- <menuitem id="menu_applet_security_board"-->
<!-- name="小程序权限管理"-->
<!-- parent="hr_attendance_root_board_menu"-->
@@ -248,6 +243,11 @@
parent="attendance_resources_setting_root_board"
action="yuthon_holiday.view_yuthon_holiday_setting_action"
sequence="30"/>
<menuitem id="applet_security_setting_board"
name="小程序权限配置"
parent="attendance_resources_setting_root_board"
sequence="40"
action="yuthon_hr_attendance.applet_security_setting_action"/>
<!-- 薪资管理 -->
<menuitem id="human_resources_salary_root_board"