전체 UI 색상 통일 - 제각각이던 빨강/주황/파랑 계열을 의미별 토큰 4종으로 정리
danger/warning/success/approved(+각 Bg 버전)를 AppPalette에 추가하고, 화면마다 다르게 쓰이던 Colors.red[400/600/700]/redAccent, orange/amber 계열, blue 계열 리터럴을 전부 해당 토큰으로 교체. NFC 체크인 화면의 홀로 튀던 Colors.blueAccent도 함께 정리.
This commit is contained in:
@@ -106,7 +106,7 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)),
|
||||
title: const Row(
|
||||
children: [
|
||||
Icon(Icons.warning_amber_rounded, color: Colors.orange),
|
||||
Icon(Icons.warning_amber_rounded, color: AppPalette.warning),
|
||||
SizedBox(width: 8),
|
||||
Text('많은 시간요청 학생'),
|
||||
],
|
||||
@@ -147,7 +147,7 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
'${_timeRange(r['requestedStart'], r['requestedEnd'])} '
|
||||
'(약 ${hours?.toStringAsFixed(1)}시간)',
|
||||
style: const TextStyle(
|
||||
color: Colors.orange,
|
||||
color: AppPalette.warning,
|
||||
fontWeight: FontWeight.bold,
|
||||
fontSize: 13,
|
||||
),
|
||||
@@ -172,8 +172,10 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
_reject(r['id']);
|
||||
},
|
||||
style: OutlinedButton.styleFrom(
|
||||
foregroundColor: Colors.red,
|
||||
side: const BorderSide(color: Colors.red),
|
||||
foregroundColor: AppPalette.danger,
|
||||
side: const BorderSide(
|
||||
color: AppPalette.danger,
|
||||
),
|
||||
),
|
||||
child: const Text('거절'),
|
||||
),
|
||||
@@ -224,13 +226,13 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
({Color color, String label}) _statusInfo(String status) {
|
||||
switch (status) {
|
||||
case 'PENDING':
|
||||
return (color: Colors.orange, label: '대기중');
|
||||
return (color: AppPalette.warning, label: '대기중');
|
||||
case 'APPROVED':
|
||||
return (color: Colors.blue, label: '승인됨');
|
||||
return (color: AppPalette.approved, label: '승인됨');
|
||||
case 'RETURNED':
|
||||
return (color: Colors.grey, label: '반납완료');
|
||||
case 'REJECTED':
|
||||
return (color: Colors.red, label: '거절됨');
|
||||
return (color: AppPalette.danger, label: '거절됨');
|
||||
default:
|
||||
return (color: Colors.grey, label: status);
|
||||
}
|
||||
@@ -276,7 +278,7 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
icon: Badge(
|
||||
isLabelVisible: longCount > 0,
|
||||
label: Text('$longCount'),
|
||||
backgroundColor: Colors.red,
|
||||
backgroundColor: AppPalette.danger,
|
||||
child: const Icon(Icons.warning_amber_rounded),
|
||||
),
|
||||
onPressed: _showLongRequestsDialog,
|
||||
@@ -297,14 +299,14 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
vertical: 10,
|
||||
),
|
||||
decoration: BoxDecoration(
|
||||
color: Colors.orange[100],
|
||||
color: AppPalette.warningBg,
|
||||
borderRadius: BorderRadius.circular(12),
|
||||
border: Border.all(color: Colors.orange[400]!),
|
||||
border: Border.all(color: AppPalette.warning),
|
||||
),
|
||||
child: Text(
|
||||
'승인 대기 중인 요청이 $pendingCount건 있습니다.',
|
||||
style: TextStyle(
|
||||
color: Colors.orange[900],
|
||||
color: AppPalette.warning,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
),
|
||||
@@ -340,15 +342,15 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
shape: RoundedRectangleBorder(
|
||||
borderRadius: BorderRadius.circular(16),
|
||||
side: isLong
|
||||
? BorderSide(
|
||||
color: Colors.red[400]!,
|
||||
? const BorderSide(
|
||||
color: AppPalette.danger,
|
||||
width: 2,
|
||||
)
|
||||
: (isPending
|
||||
? BorderSide(
|
||||
color: Colors.orange[300]!,
|
||||
? const BorderSide(
|
||||
color: AppPalette.warning,
|
||||
)
|
||||
: BorderSide(
|
||||
: const BorderSide(
|
||||
color: AppPalette.sage,
|
||||
)),
|
||||
),
|
||||
@@ -419,7 +421,7 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
Text(
|
||||
'${r['approvedByTeacherName']} 선생님이 허용했습니다',
|
||||
style: TextStyle(
|
||||
color: Colors.blue[700],
|
||||
color: AppPalette.approved,
|
||||
fontSize: 12,
|
||||
fontWeight: FontWeight.w600,
|
||||
),
|
||||
@@ -438,9 +440,10 @@ class _DeviceCheckoutLedgerPageState extends State<DeviceCheckoutLedgerPage> {
|
||||
style:
|
||||
OutlinedButton.styleFrom(
|
||||
foregroundColor:
|
||||
Colors.red,
|
||||
AppPalette.danger,
|
||||
side: const BorderSide(
|
||||
color: Colors.red,
|
||||
color:
|
||||
AppPalette.danger,
|
||||
),
|
||||
),
|
||||
child: const Text('거절'),
|
||||
|
||||
Reference in New Issue
Block a user