对于某人工号的借订,如果超过N的次数,并且在规定时间内,就会促发禁用教室。
- myjudge.py
def check_booking_audit_N_record(booking_employee_id,check_days,N_times):
'''查询booking为N的记录'''
# 初始化【可以借订的记录】
can_booking_for_no_N_record = True
booking_all = booking.objects.all()
now_date = datetime.now().date()
old_date = now_date - timedelta(days = check_days)
print('now_date',now_date)
print('old_date',old_date)
booking_item = booking_all.filter(Q(booking_employee_id=booking_employee_id)
& Q(booking_audit='N')
& (Q(booking_date__lte=now_date) & Q(booking_date__gte=old_date))
)
# 修改【可以借订的记录】
if len(booking_item)>=N_times :
can_booking_for_no_N_record = False
print('booking_item',booking_item)
print('can_booking_for_no_N_record',can_booking_for_no_N_record)
return can_booking_for_no_N_record
- views.py
'''检查是否违反5S规定'''
'''30天内2次违反规定'''
if check_booking_audit_N_record(booking_employee_id=booking_employee_id,check_days=30,N_times=1):
pass
else:
return HttpResponse("因为之前教室借订的状况不佳(30天内1次违反规定),本次预定失败,请点击此处返回")
'''检查是否违反5S规定'''
'''60天内4次违反规定'''
if check_booking_audit_N_record(booking_employee_id=booking_employee_id,check_days=60,N_times=2):
pass
else:
return HttpResponse("因为之前教室借订的状况不佳(60天内2次违反规定),本次预定失败,请点击此处返回")



