전체 학생 허용 시 장시간(1시간 59분 이상) 요청은 자동 제외
기존엔 전체 승인이 장시간 요청도 구분 없이 다 승인해버렸음. 이제 1시간 59분 넘는 요청은 자동으로 빼고 대기중 상태로 남겨서, "많은 시간요청 학생" 목록에서 따로 검토 후 개별 승인/거절하게 함. 확인 다이얼로그에도 몇 건이 승인되고 몇 건이 제외되는지 미리 보여줌. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -50,6 +50,7 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
}
|
||||
|
||||
// 🙌 [전체 학생 허용] 한 명씩 누르기 귀찮을 때, 대기 중인 요청을 한 번에 전부 승인한다.
|
||||
// 1시간 59분 넘는 장시간 요청은 자동으로 제외되어 대기중으로 남는다 - 따로 검토가 필요해서.
|
||||
void _showApproveAllConfirmDialog() {
|
||||
final pendingCount = _controller.requests
|
||||
.where((r) => r['status'] == 'PENDING')
|
||||
@@ -58,11 +59,18 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
AppNotice.show(context, '승인 대기 중인 요청이 없습니다.');
|
||||
return;
|
||||
}
|
||||
final approvableCount = _controller.autoApprovableIds.length;
|
||||
final excludedCount = pendingCount - approvableCount;
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (dialogContext) => AlertDialog(
|
||||
title: const Text('전체 학생 허용'),
|
||||
content: Text('대기 중인 요청 $pendingCount건을 한 번에 전부 승인하시겠습니까?'),
|
||||
content: Text(
|
||||
excludedCount > 0
|
||||
? '대기 중인 요청 $pendingCount건 중 $approvableCount건을 승인합니다.\n'
|
||||
'장시간(1시간 59분 이상) 요청 $excludedCount건은 제외되어 "많은 시간요청 학생"에서 따로 확인해야 합니다.'
|
||||
: '대기 중인 요청 $pendingCount건을 한 번에 전부 승인하시겠습니까?',
|
||||
),
|
||||
actions: [
|
||||
TextButton(
|
||||
onPressed: () => Navigator.pop(dialogContext),
|
||||
|
||||
Reference in New Issue
Block a user