Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Sai Srinivas
GEN_ERP_2025
Commits
38d17dba
Commit
38d17dba
authored
Jul 07, 2025
by
Sai Srinivas
Browse files
ios pub
parent
45a85185
Changes
3
Hide whitespace changes
Inline
Side-by-side
lib/screens/AttendanceScreen.dart
View file @
38d17dba
...
@@ -91,7 +91,7 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
...
@@ -91,7 +91,7 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
// prevMonthName == currentMonthName
// prevMonthName == currentMonthName
// ? '$currentMonthName $year'
// ? '$currentMonthName $year'
// : '$prevMonthName - $currentMonthName $year';
// : '$prevMonthName - $currentMonthName $year';
final
monthLabel
=
'
$currentMonthName
$year
'
;
final
monthLabel
=
'
$currentMonthName
$year
'
;
return
RefreshIndicator
.
adaptive
(
return
RefreshIndicator
.
adaptive
(
color:
AppColors
.
app_blue
,
color:
AppColors
.
app_blue
,
...
@@ -106,585 +106,611 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
...
@@ -106,585 +106,611 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
onWillPop:
()
=>
onBackPressed
(
context
),
onWillPop:
()
=>
onBackPressed
(
context
),
child:
SafeArea
(
child:
SafeArea
(
top:
false
,
top:
false
,
bottom:
Platform
.
isIOS
?
false
:
true
,
bottom:
Platform
.
isIOS
?
false
:
true
,
child:
Scaffold
(
child:
Scaffold
(
resizeToAvoidBottomInset:
true
,
resizeToAvoidBottomInset:
true
,
backgroundColor:
AppColors
.
scaffold_bg_color
,
backgroundColor:
AppColors
.
scaffold_bg_color
,
appBar:
appbar
(
context
,
"Attendance"
),
appBar:
appbar
(
context
,
"Attendance"
),
body:
SafeArea
(
body:
Container
(
child:
Container
(
child:
SingleChildScrollView
(
child:
SingleChildScrollView
(
child:
Column
(
child:
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
[
children:
[
Container
(
Container
(
margin:
EdgeInsets
.
only
(
top:
15
,
bottom:
15
),
margin:
EdgeInsets
.
only
(
top:
15
,
bottom:
15
),
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
color:
Colors
.
white
,
color:
Colors
.
white
,
borderRadius:
BorderRadius
.
circular
(
16
),
borderRadius:
BorderRadius
.
circular
(
16
),
),
),
child:
Column
(
child:
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
[
children:
[
Container
(
Container
(
padding:
EdgeInsets
.
only
(
padding:
EdgeInsets
.
only
(
left:
15
,
left:
15
,
right:
10
,
right:
10
,
top:
15
,
top:
15
,
),
child:
Row
(
children:
[
Expanded
(
child:
Text
(
"Check-in"
)),
Expanded
(
child:
Text
(
"Check-out"
)),
],
),
),
),
SizedBox
(
child:
Row
(
child:
Row
(
children:
[
children:
[
Expanded
(
child:
Text
(
"Check-in"
)),
Expanded
(
Expanded
(
child:
Text
(
"Check-out"
)),
child:
Container
(
],
padding:
EdgeInsets
.
symmetric
(
),
horizontal:
10
,
),
vertical:
15
,
SizedBox
(
),
child:
Row
(
margin:
EdgeInsets
.
symmetric
(
children:
[
horizontal:
10
,
Expanded
(
vertical:
15
,
child:
Container
(
),
padding:
EdgeInsets
.
symmetric
(
decoration:
BoxDecoration
(
horizontal:
10
,
color:
Color
(
0xFFF3EDFF
),
vertical:
15
,
borderRadius:
BorderRadius
.
circular
(
),
16
,
margin:
EdgeInsets
.
symmetric
(
),
horizontal:
10
,
vertical:
15
,
),
decoration:
BoxDecoration
(
color:
Color
(
0xFFF3EDFF
),
borderRadius:
BorderRadius
.
circular
(
16
,
),
),
child:
Column
(
),
crossAxisAlignment:
child:
Column
(
CrossAxisAlignment
.
start
,
crossAxisAlignment:
children:
[
CrossAxisAlignment
.
start
,
RichText
(
children:
[
text:
TextSpan
(
RichText
(
children:
[
text:
TextSpan
(
TextSpan
(
children:
[
text:
formattedTime
,
TextSpan
(
style:
TextStyle
(
text:
formattedTime
,
color:
formattedTime
!=
"-"
?
Color
(
0xFF493272
):
Color
(
0xFFED3424
),
style:
TextStyle
(
fontFamily:
color:
"JakartaRegular"
,
formattedTime
!=
"-"
fontSize:
30
,
?
Color
(
),
0xFF493272
,
)
:
Color
(
0xFFED3424
,
),
fontFamily:
"JakartaRegular"
,
fontSize:
30
,
),
),
TextSpan
(
),
text:
period
,
TextSpan
(
style:
TextStyle
(
text:
period
,
color:
period
!=
"-"
?
Color
(
0xFF493272
):
Color
(
0xFFED3424
),
style:
TextStyle
(
fontFamily:
color:
"JakartaRegular"
,
period
!=
"-"
),
?
Color
(
0xFF493272
,
)
:
Color
(
0xFFED3424
,
),
fontFamily:
"JakartaRegular"
,
),
),
]
,
)
,
)
,
]
,
),
),
Text
(
),
"
${attendance.attendanceHistory.firstOrNull?['check_in_location']}
"
,
Text
(
style:
TextStyle
(
"
${attendance.attendanceHistory.firstOrNull?['check_in_location']}
"
,
color:
Color
(
0xFF818181
),
style:
TextStyle
(
),
color:
Color
(
0xFF818181
),
),
),
]
,
)
,
)
,
]
,
),
),
),
),
Expanded
(
),
child:
Container
(
Expanded
(
padding:
EdgeInsets
.
symmetric
(
child:
Container
(
horizontal:
10
,
padding:
EdgeInsets
.
symmetric
(
vertic
al:
1
5
,
horizont
al:
1
0
,
)
,
vertical:
15
,
margin:
EdgeInsets
.
symmetric
(
),
horizontal:
10
,
margin:
EdgeInsets
.
symmetric
(
vertic
al:
1
5
,
horizont
al:
1
0
,
)
,
vertical:
15
,
decoration:
BoxDecoration
(
),
color:
Color
(
0xFFF3EDFF
),
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
color:
Color
(
0xFFF3EDFF
),
16
,
borderRadius:
BorderRadius
.
circular
(
)
,
16
,
),
),
child:
Column
(
),
crossAxisAlignment:
child:
Column
(
CrossAxisAlignment
.
start
,
crossAxisAlignment:
children:
[
CrossAxisAlignment
.
start
,
RichText
(
children:
[
text:
TextSpan
(
RichText
(
children:
[
text:
TextSpan
(
TextSpan
(
children:
[
text:
formattedTime2
,
TextSpan
(
style:
TextStyle
(
text:
formattedTime2
,
color:
formattedTime2
!=
"-"
?
Color
(
0xFF493272
):
Color
(
0xFFED3424
),
style:
TextStyle
(
fontFamily:
color:
"JakartaRegular"
,
formattedTime2
!=
"-"
fontSize:
30
,
?
Color
(
),
0xFF493272
,
)
:
Color
(
0xFFED3424
,
),
fontFamily:
"JakartaRegular"
,
fontSize:
30
,
),
),
TextSpan
(
),
text:
period2
,
TextSpan
(
style:
TextStyle
(
text:
period2
,
color:
period2
!=
"-"
?
Color
(
0xFF493272
):
Color
(
0xFFED3424
),
style:
TextStyle
(
fontFamily:
color:
"JakartaRegular"
,
period2
!=
"-"
),
?
Color
(
0xFF493272
,
)
:
Color
(
0xFFED3424
,
),
fontFamily:
"JakartaRegular"
,
),
),
]
,
)
,
)
,
]
,
),
),
Text
(
),
"
${attendance.attendanceHistory.firstOrNull?['check_out_location']}
"
,
Text
(
style:
TextStyle
(
"
${attendance.attendanceHistory.firstOrNull?['check_out_location']}
"
,
color:
Color
(
0xFF818181
),
style:
TextStyle
(
),
color:
Color
(
0xFF818181
),
),
),
]
,
)
,
)
,
]
,
),
),
),
),
]
,
)
,
)
,
]
,
),
),
],
),
),
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
10
,
vertical:
10
,
),
child:
Text
(
"Attendance Details"
,
style:
TextStyle
(
fontFamily:
"JakartaSemiBold"
,
fontSize:
14
,
color:
Color
(
0xFF818181
),
),
),
)
,
]
,
),
),
Container
(
),
padding:
EdgeInsets
.
symmetric
(
Container
(
horizontal:
10
,
padding:
EdgeInsets
.
symmetric
(
vertical:
10
,
horizontal:
10
,
),
vertical:
10
,
decoration:
BoxDecoration
(
),
color:
Colors
.
white
,
child:
Text
(
borderRadius:
BorderRadius
.
circular
(
16
),
"Attendance Details"
,
style:
TextStyle
(
fontFamily:
"JakartaSemiBold"
,
fontSize:
14
,
color:
Color
(
0xFF818181
),
),
),
child:
GridView
.
builder
(
),
itemCount:
4
,
),
shrinkWrap:
true
,
Container
(
physics:
NeverScrollableScrollPhysics
(),
padding:
EdgeInsets
.
symmetric
(
gridDelegate:
horizontal:
10
,
SliverGridDelegateWithFixedCrossAxisCount
(
vertical:
10
,
crossAxisCount:
2
,
),
crossAxisSpacing:
10
,
decoration:
BoxDecoration
(
mainAxisSpacing:
10
,
color:
Colors
.
white
,
childAspectRatio:
20
/
10
,
borderRadius:
BorderRadius
.
circular
(
16
),
),
),
itemBuilder:
(
context
,
index
)
{
child:
GridView
.
builder
(
final
numbers
=
[
itemCount:
4
,
attendance
.
presentDays
,
shrinkWrap:
true
,
attendance
.
absentDays
,
physics:
NeverScrollableScrollPhysics
(),
attendance
.
holidays
,
gridDelegate:
attendance
.
latePenalties
,
SliverGridDelegateWithFixedCrossAxisCount
(
];
crossAxisCount:
2
,
final
names
=
[
crossAxisSpacing:
10
,
"Present Days"
,
mainAxisSpacing:
10
,
"Absent Days"
,
childAspectRatio:
20
/
10
,
"Holidays"
,
),
"Late Points"
,
itemBuilder:
(
context
,
index
)
{
];
final
numbers
=
[
final
colors
=
[
attendance
.
presentDays
,
0xFFE7FFE5
,
attendance
.
absentDays
,
0xFFFFEFEF
,
attendance
.
holidays
,
0xFFF3EDFF
,
attendance
.
latePenalties
,
0xFFFFF6F0
,
];
];
final
names
=
[
final
textcolors
=
[
"Present Days"
,
0xFF0D9C00
,
"Absent Days"
,
0xFFFF0000
,
"Holidays"
,
0xFF493272
,
"Late Points"
,
0xFF91481B
,
];
];
final
colors
=
[
return
Container
(
0xFFE7FFE5
,
padding:
EdgeInsets
.
symmetric
(
horizontal:
13
),
0xFFFFEFEF
,
decoration:
BoxDecoration
(
0xFFF3EDFF
,
color:
Color
(
colors
[
index
]),
0xFFFFF6F0
,
borderRadius:
BorderRadius
.
circular
(
12
),
];
),
final
textcolors
=
[
child:
Column
(
0xFF0D9C00
,
crossAxisAlignment:
CrossAxisAlignment
.
start
,
0xFFFF0000
,
mainAxisAlignment:
MainAxisAlignment
.
center
,
0xFF493272
,
children:
[
0xFF91481B
,
Text
(
];
numbers
[
index
].
toString
(),
return
Container
(
style:
TextStyle
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
13
),
fontSize:
30
,
decoration:
BoxDecoration
(
fontFamily:
"JakartaMedium"
,
color:
Color
(
colors
[
index
]),
color:
Color
(
textcolors
[
index
]),
borderRadius:
BorderRadius
.
circular
(
12
),
),
),
child:
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
mainAxisAlignment:
MainAxisAlignment
.
center
,
children:
[
Text
(
numbers
[
index
].
toString
(),
style:
TextStyle
(
fontSize:
30
,
fontFamily:
"JakartaMedium"
,
color:
Color
(
textcolors
[
index
]),
),
),
Text
(
),
names
[
index
],
Text
(
style:
TextStyle
(
names
[
index
],
color:
Color
(
0xFF818181
),
style:
TextStyle
(
),
color:
Color
(
0xFF818181
),
),
),
]
,
)
,
)
,
]
,
)
;
)
,
},
);
)
,
}
,
),
),
),
///calendar
///calendar
Container
(
Container
(
// padding: EdgeInsets.symmetric(horizontal: 10,vertical: 5),
// padding: EdgeInsets.symmetric(horizontal: 10,vertical: 5),
margin:
EdgeInsets
.
symmetric
(
margin:
EdgeInsets
.
symmetric
(
horizontal:
10
,
horizontal:
10
,
vertical:
5
,
vertical:
5
,
),
),
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
16
),
borderRadius:
BorderRadius
.
circular
(
16
),
color:
Colors
.
white
,
color:
Colors
.
white
,
),
),
child:
Column
(
child:
Column
(
children:
[
children:
[
Padding
(
Padding
(
padding:
const
EdgeInsets
.
fromLTRB
(
padding:
const
EdgeInsets
.
fromLTRB
(
30
,
30
,
10
,
10
,
30
,
30
,
0
,
0
,
),
),
child:
Container
(
child:
Container
(
child:
Row
(
child:
Row
(
mainAxisAlignment:
mainAxisAlignment:
MainAxisAlignment
.
spaceBetween
,
MainAxisAlignment
.
spaceBetween
,
children:
[
children:
[
SizedBox
(
SizedBox
(
child:
Row
(
child:
Row
(
children:
[
children:
[
GestureDetector
(
GestureDetector
(
onTap:
()
{
onTap:
()
{
attendance
.
setPreviousMonth
(
attendance
.
setPreviousMonth
(
homeProvider
,
homeProvider
,
context
,
context
,
);
);
},
},
child:
SvgPicture
.
asset
(
child:
SvgPicture
.
asset
(
"assets/svg/arrow_left.svg"
,
"assets/svg/arrow_left.svg"
,
),
),
),
Text
(
),
monthLabel
,
Text
(
style:
TextStyle
(
monthLabel
,
overflow:
TextOverflow
.
ellipsis
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
overflow:
TextOverflow
.
ellipsis
,
color:
Color
(
0xFF2D2D2D
)
,
fontFamily:
"JakartaMedium"
,
),
color:
Color
(
0xFF2D2D2D
),
),
),
GestureDetector
(
),
onTap:
()
{
GestureDetector
(
attendance
.
setNextMonth
(
onTap:
()
{
homeProvider
,
attendance
.
setNextMonth
(
context
,
homeProvider
,
);
context
,
},
);
child:
SvgPicture
.
asset
(
},
"assets/svg/arrow_right_new.svg"
,
child:
SvgPicture
.
asset
(
)
,
"assets/svg/arrow_right_new.svg"
,
),
),
]
,
)
,
)
,
]
,
),
),
),
InkResponse
(
InkResponse
(
onTap:
()
{
onTap:
()
{
_showInfoBottomSheet
(
context
);
_showInfoBottomSheet
(
context
);
},
},
child:
SizedBox
(
child:
SizedBox
(
width:
20
,
height:
20
,
child:
SvgPicture
.
asset
(
"assets/svg/ic_info_new.svg"
,
width:
20
,
width:
20
,
height:
20
,
height:
20
,
child:
SvgPicture
.
asset
(
"assets/svg/ic_info_new.svg"
,
width:
20
,
height:
20
,
),
),
),
),
),
]
,
)
,
)
,
]
,
),
),
),
),
SizedBox
(
height:
5
),
),
Padding
(
SizedBox
(
height:
5
),
p
adding
:
const
EdgeInsets
.
fromLTRB
(
8
,
10
,
8
,
0
),
P
adding
(
child
:
C
on
tainer
(
padding
:
c
on
st
EdgeInsets
.
fromLTRB
(
8
,
10
,
8
,
0
),
child:
Row
(
child:
Container
(
child
ren:
[
child
:
Row
(
for
(
children:
[
var
i
=
0
;
for
(
i
<
var
i
=
0
;
[
i
<
'S'
,
[
'M
'
,
'S
'
,
'T
'
,
'M
'
,
'W
'
,
'T
'
,
'T
'
,
'W
'
,
'F
'
,
'T
'
,
'S
'
,
'F
'
,
].
length
;
'S'
,
i
++
].
length
;
)
i
++
Expanded
(
)
child:
Text
(
Expanded
(
[
child:
Text
(
'S'
,
[
'M
'
,
'S
'
,
'T
'
,
'M
'
,
'W
'
,
'T
'
,
'T
'
,
'W
'
,
'F
'
,
'T
'
,
'S
'
,
'F
'
,
][
i
]
,
'S'
,
textAlign:
TextAlign
.
center
,
][
i
]
,
style:
TextStyle
(
textAlign:
TextAlign
.
center
,
overflow:
TextOverflow
.
ellipsis
,
style:
TextStyle
(
color:
overflow:
TextOverflow
.
ellipsis
,
i
==
0
color:
?
Color
(
0xFFFF0000
)
i
==
0
:
AppColors
.
semi_black
,
?
Color
(
0xFFFF0000
)
)
,
:
AppColors
.
semi_black
,
),
),
),
),
]
,
)
,
)
,
]
,
),
),
),
),
),
Padding
(
Padding
(
padding:
const
EdgeInsets
.
fromLTRB
(
0
,
0
,
0
,
10
),
padding:
const
EdgeInsets
.
fromLTRB
(
0
,
0
,
0
,
10
),
child:
Container
(
child:
Container
(
child:
GridView
.
builder
(
child:
GridView
.
builder
(
itemCount:
daysInPeriod
+
startingIndex
,
itemCount:
daysInPeriod
+
startingIndex
,
gridDelegate:
gridDelegate:
SliverGridDelegateWithFixedCrossAxisCount
(
SliverGridDelegateWithFixedCrossAxisCount
(
crossAxisCount:
7
,
crossAxisCount:
7
,
crossAxisSpacing:
2
,
crossAxisSpacing:
2
,
mainAxisSpacing:
1
,
mainAxisSpacing:
1
,
childAspectRatio:
(
255
/
245
),
childAspectRatio:
(
255
/
245
),
),
),
padding:
const
EdgeInsets
.
fromLTRB
(
padding:
const
EdgeInsets
.
fromLTRB
(
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
),
),
shrinkWrap:
true
,
shrinkWrap:
true
,
physics:
NeverScrollableScrollPhysics
(),
physics:
NeverScrollableScrollPhysics
(),
itemBuilder:
(
context
,
index
)
{
itemBuilder:
(
context
,
index
)
{
if
(
index
<
startingIndex
)
{
if
(
index
<
startingIndex
)
{
return
SizedBox
.
shrink
();
return
SizedBox
.
shrink
();
}
}
final
dayIndex
=
index
-
startingIndex
;
final
dayIndex
=
index
-
startingIndex
;
final
currentDateInPeriod
=
startDate
.
add
(
final
currentDateInPeriod
=
startDate
.
add
(
Duration
(
days:
dayIndex
),
Duration
(
days:
dayIndex
),
);
);
final
currentDay
=
final
currentDay
=
currentDateInPeriod
.
day
;
currentDateInPeriod
.
day
;
final
isFutureDate
=
currentDateInPeriod
final
isFutureDate
=
currentDateInPeriod
.
isAfter
(
currentDate
);
.
isAfter
(
currentDate
);
// Find matching date in dateArrayList
// Find matching date in dateArrayList
Map
<
String
,
dynamic
>?
dateMap
;
Map
<
String
,
dynamic
>?
dateMap
;
try
{
try
{
dateMap
=
dateArrayList
[
dayIndex
];
dateMap
=
dateArrayList
[
dayIndex
];
}
catch
(
e
)
{
}
catch
(
e
)
{
dateMap
=
{};
dateMap
=
{};
}
}
// Find matching penalty
// Find matching penalty
Map
<
String
,
dynamic
>?
penaltyMap
;
Map
<
String
,
dynamic
>?
penaltyMap
;
try
{
try
{
penaltyMap
=
penaltyMap
=
penalityArrayList
[
dayIndex
];
penalityArrayList
[
dayIndex
];
}
catch
(
e
)
{
}
catch
(
e
)
{
penaltyMap
=
{};
penaltyMap
=
{};
}
}
String
?
dateColor
=
String
?
dateColor
=
dateMap
.
isNotEmpty
dateMap
.
isNotEmpty
?
dateMap
.
values
.
first
?
dateMap
.
values
.
first
:
null
;
:
null
;
String
?
penaltyKey
=
String
?
penaltyKey
=
penaltyMap
.
isNotEmpty
penaltyMap
.
isNotEmpty
?
penaltyMap
.
keys
.
first
?
penaltyMap
.
keys
.
first
:
null
;
:
null
;
int
?
datePenalty
=
int
?
datePenalty
=
penaltyMap
.
isNotEmpty
penaltyMap
.
isNotEmpty
?
penaltyMap
.
values
.
first
?
penaltyMap
.
values
.
first
:
0
;
:
0
;
// Determine if this is the current day
// Determine if this is the current day
final
isCurrentDay
=
final
isCurrentDay
=
currentDateInPeriod
.
day
==
currentDateInPeriod
.
day
==
currentDate
.
day
&&
currentDate
.
day
&&
currentDateInPeriod
.
month
==
currentDateInPeriod
.
month
==
currentDate
.
month
&&
currentDate
.
month
&&
currentDateInPeriod
.
year
==
currentDateInPeriod
.
year
==
currentDate
.
year
;
currentDate
.
year
;
return
InkWell
(
return
InkWell
(
onTap:
onTap:
isFutureDate
isFutureDate
?
null
?
null
:
()
{
:
()
{
selectedIndex
=
index
;
selectedIndex
=
index
;
if
(
penaltyKey
!=
null
)
{
if
(
penaltyKey
!=
null
)
{
attendance
attendance
.
dateWiseAttendance
(
.
dateWiseAttendance
(
homeProvider
,
homeProvider
,
penaltyKey
,
penaltyKey
,
context
,
context
,
);
);
}
}
attendance
.
selectedDate
=
attendance
.
selectedDate
=
currentDay
.
toString
();
currentDay
.
toString
();
_showAttDetailsBottomSheet
(
_showAttDetailsBottomSheet
(
context
,
context
,
);
);
},
},
child:
Card
(
child:
Card
(
elevation:
0
,
elevation:
0
,
child:
Column
(
child:
Column
(
children:
[
children:
[
// Row(
// Row(
// mainAxisAlignment:
// mainAxisAlignment:
// MainAxisAlignment.center,
// MainAxisAlignment.center,
// children: [
// children: [
// Text(
// Text(
// "($datePenalty)",
// "($datePenalty)",
// style: TextStyle(
// style: TextStyle(
// fontWeight: FontWeight.w400,
// fontWeight: FontWeight.w400,
// color: Colors.black,
// color: Colors.black,
// fontSize: 5
// fontSize: 5
// ),
// ),
// ),
// ),
// ],
// ],
// ),
// ),
Center
(
Center
(
child:
Container
(
child:
Container
(
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
shape:
BoxShape
.
circle
,
shape:
BoxShape
.
circle
,
border:
Border
.
all
(
border:
Border
.
all
(
color:
(
isCurrentDay
||
(
selectedIndex
==
index
))
?
Color
(
0xFF1487C9
,
)
:
Colors
.
transparent
,
),
color:
color:
isFutureDate
(
isCurrentDay
||
?
Colors
.
transparent
:
(
isCurrentDay
||
(
selectedIndex
==
(
selectedIndex
==
index
))
index
))
?
Color
(
0xFFFFFFFF
)
:
dateColor
==
'g'
?
Color
(
0xFF6B3A02
,
).
withAlpha
(
50
)
:
dateColor
==
'r'
?
Color
(
?
Color
(
0xFFFF0000
,
0xFF1487C9
,
).
withAlpha
(
50
)
)
:
dateColor
==
'b'
?
Color
(
0xFF493272
,
).
withAlpha
(
50
)
:
dateColor
==
'br'
?
Color
(
0xFFFFE8D0
)
:
dateColor
==
'y'
?
Color
(
0xFFFFF9B2
)
:
Colors
:
Colors
.
transparent
,
.
transparent
,
),
),
child:
Center
(
color:
child:
Text
(
isFutureDate
currentDay
.
toString
(),
?
Colors
.
transparent
style:
TextStyle
(
:
(
isCurrentDay
||
fontSize:
14
,
(
selectedIndex
==
fontWeight:
index
))
FontWeight
.
w400
,
?
Color
(
0xFFFFFFFF
)
color:
:
dateColor
==
'g'
isFutureDate
?
Color
(
?
AppColors
0xFF6B3A02
,
.
semi_black
).
withAlpha
(
50
)
:
(
isCurrentDay
||
:
dateColor
==
'r'
(
selectedIndex
==
?
Color
(
index
))
0xFFFF0000
,
?
Color
(
).
withAlpha
(
50
)
0xFF2D2D2D
,
:
dateColor
==
'b'
)
?
Color
(
:
dateColor
==
0xFF493272
,
'g'
).
withAlpha
(
50
)
?
Color
(
:
dateColor
==
'br'
0xFF6B3A02
,
?
Color
(
0xFFFFE8D0
)
)
:
dateColor
==
'y'
:
dateColor
==
?
Color
(
0xFFFFF9B2
)
'r'
:
Colors
?
Color
(
.
transparent
,
0xFFFF0000
,
),
)
child:
Center
(
:
dateColor
==
child:
Text
(
'b'
currentDay
.
toString
(),
?
Color
(
style:
TextStyle
(
0xFF493272
,
fontSize:
14
,
)
fontWeight:
:
dateColor
==
FontWeight
.
w400
,
'br'
color:
?
Color
(
isFutureDate
0xFF6B3A02
,
?
AppColors
)
.
semi_black
:
dateColor
==
:
(
isCurrentDay
||
'y'
(
selectedIndex
==
?
Color
(
index
))
0xFF605C00
,
?
Color
(
)
0xFF2D2D2D
,
:
Colors
)
.
transparent
,
:
dateColor
==
),
'g'
?
Color
(
0xFF6B3A02
,
)
:
dateColor
==
'r'
?
Color
(
0xFFFF0000
,
)
:
dateColor
==
'b'
?
Color
(
0xFF493272
,
)
:
dateColor
==
'br'
?
Color
(
0xFF6B3A02
,
)
:
dateColor
==
'y'
?
Color
(
0xFF605C00
,
)
:
Colors
.
transparent
,
),
),
),
),
),
),
),
),
]
,
)
,
)
,
]
,
),
),
)
;
)
,
},
);
)
,
}
,
),
),
),
),
]
,
)
,
)
,
]
,
),
),
SizedBox
(
height:
70
),
),
]
,
SizedBox
(
height:
70
)
,
)
,
]
,
),
),
),
),
),
),
...
@@ -704,7 +730,6 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
...
@@ -704,7 +730,6 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
attendance
.
attendanceStatus
,
attendance
.
attendanceStatus
,
),
),
),
),
);
);
if
(
res
==
true
)
{
if
(
res
==
true
)
{
attendance
.
getAttendanceList
(
attendance
.
getAttendanceList
(
...
@@ -839,7 +864,7 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
...
@@ -839,7 +864,7 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
crossAxisAlignment:
CrossAxisAlignment
.
start
,
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
1
,
child:
Container
(
child:
Container
(
width:
18
,
width:
18
,
height:
18
,
height:
18
,
...
@@ -860,11 +885,11 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
...
@@ -860,11 +885,11 @@ class _AttendanceScreenState extends State<AttendanceScreen> {
),
),
SizedBox
(
width:
5
),
SizedBox
(
width:
5
),
Expanded
(
Expanded
(
flex:
4
,
flex:
4
,
child:
Text
(
child:
Text
(
text
[
index
],
text
[
index
],
maxLines:
2
,
maxLines:
2
,
overflow:
TextOverflow
.
ellipsis
,
overflow:
TextOverflow
.
ellipsis
,
style:
TextStyle
(
style:
TextStyle
(
fontSize:
14
,
fontSize:
14
,
color:
Colors
.
black
,
color:
Colors
.
black
,
...
...
lib/screens/HomeScreen.dart
View file @
38d17dba
...
@@ -166,7 +166,7 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -166,7 +166,7 @@ class _MyHomePageState extends State<MyHomePage> {
},
},
child:
SafeArea
(
child:
SafeArea
(
top:
false
,
top:
false
,
bottom:
Platform
.
isIOS
?
false
:
true
,
bottom:
Platform
.
isIOS
?
false
:
true
,
child:
Scaffold
(
child:
Scaffold
(
resizeToAvoidBottomInset:
true
,
resizeToAvoidBottomInset:
true
,
backgroundColor:
AppColors
.
scaffold_bg_color
,
backgroundColor:
AppColors
.
scaffold_bg_color
,
...
@@ -191,10 +191,7 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -191,10 +191,7 @@ class _MyHomePageState extends State<MyHomePage> {
right:
15
,
right:
15
,
top:
30
,
top:
30
,
),
),
padding:
EdgeInsets
.
only
(
padding:
EdgeInsets
.
only
(
bottom:
15
,
right:
10
),
bottom:
15
,
),
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
30
),
borderRadius:
BorderRadius
.
circular
(
30
),
gradient:
LinearGradient
(
gradient:
LinearGradient
(
...
@@ -271,7 +268,8 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -271,7 +268,8 @@ class _MyHomePageState extends State<MyHomePage> {
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
3
,
child:
SizedBox
(
child:
Container
(
padding:
EdgeInsets
.
only
(
right:
10
),
child:
Column
(
child:
Column
(
crossAxisAlignment:
crossAxisAlignment:
CrossAxisAlignment
.
start
,
CrossAxisAlignment
.
start
,
...
@@ -291,9 +289,10 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -291,9 +289,10 @@ class _MyHomePageState extends State<MyHomePage> {
'
${profile.employeeName}
'
,
'
${profile.employeeName}
'
,
maxFontSize:
18
,
maxFontSize:
18
,
minFontSize:
12
,
minFontSize:
12
,
style:
TextStyle
(
fontSize:
18
,
style:
TextStyle
(
color:
AppColors
.
app_blue
,
fontSize:
18
,
fontFamily:
"JakartaRegular"
color:
AppColors
.
app_blue
,
fontFamily:
"JakartaRegular"
,
),
),
maxLines:
2
,
maxLines:
2
,
),
),
...
@@ -301,9 +300,10 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -301,9 +300,10 @@ class _MyHomePageState extends State<MyHomePage> {
'(
${profile.designation}
)'
,
'(
${profile.designation}
)'
,
maxFontSize:
14
,
maxFontSize:
14
,
minFontSize:
10
,
minFontSize:
10
,
style:
TextStyle
(
fontSize:
14
,
style:
TextStyle
(
color:
AppColors
.
semi_black
,
fontSize:
14
,
fontFamily:
"JakartaRegular"
color:
AppColors
.
semi_black
,
fontFamily:
"JakartaRegular"
,
),
),
maxLines:
1
,
maxLines:
1
,
),
),
...
@@ -394,7 +394,9 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -394,7 +394,9 @@ class _MyHomePageState extends State<MyHomePage> {
MaterialPageRoute
(
MaterialPageRoute
(
builder:
builder:
(
context
)
=>
AttendanceScreen
(),
(
context
)
=>
AttendanceScreen
(),
settings:
RouteSettings
(
arguments:
'AttendanceScreen'
),
settings:
RouteSettings
(
arguments:
'AttendanceScreen'
,
),
),
),
);
);
break
;
break
;
...
@@ -436,7 +438,9 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -436,7 +438,9 @@ class _MyHomePageState extends State<MyHomePage> {
builder:
builder:
(
context
)
=>
(
context
)
=>
Gentrackerdashboard
(),
Gentrackerdashboard
(),
settings:
RouteSettings
(
arguments:
'Gentrackerdashboard'
),
settings:
RouteSettings
(
arguments:
'Gentrackerdashboard'
,
),
),
),
);
);
break
;
break
;
...
@@ -498,16 +502,15 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -498,16 +502,15 @@ class _MyHomePageState extends State<MyHomePage> {
);
);
break
;
break
;
case
"Finance"
:
case
"Finance"
:
res
=
await
Navigator
.
push
(
res
=
await
Navigator
.
push
(
context
,
context
,
MaterialPageRoute
(
MaterialPageRoute
(
builder:
builder:
(
context
)
=>
Financedashboard
(),
(
context
)
=>
Financedashboard
(),
settings:
RouteSettings
(
arguments:
'Financedashboard'
),
settings:
RouteSettings
(
arguments:
'Financedashboard'
,
),
),
),
);
);
break
;
break
;
case
"Orders"
:
case
"Orders"
:
...
@@ -525,7 +528,9 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -525,7 +528,9 @@ class _MyHomePageState extends State<MyHomePage> {
MaterialPageRoute
(
MaterialPageRoute
(
builder:
builder:
(
context
)
=>
CrmdashboardScreen
(),
(
context
)
=>
CrmdashboardScreen
(),
settings:
RouteSettings
(
name:
'CrmdashboardScreen'
)
settings:
RouteSettings
(
name:
'CrmdashboardScreen'
,
),
),
),
);
);
default
:
default
:
...
@@ -591,7 +596,9 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -591,7 +596,9 @@ class _MyHomePageState extends State<MyHomePage> {
right:
15
,
right:
15
,
top:
30
,
top:
30
,
),
),
padding:
EdgeInsets
.
only
(
bottom:
MediaQuery
.
of
(
context
).
viewInsets
.
bottom
,),
padding:
EdgeInsets
.
only
(
bottom:
MediaQuery
.
of
(
context
).
viewInsets
.
bottom
,
),
child:
Consumer3
<
child:
Consumer3
<
HomescreenNotifier
,
HomescreenNotifier
,
ProfileNotifer
,
ProfileNotifer
,
...
@@ -637,7 +644,10 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -637,7 +644,10 @@ class _MyHomePageState extends State<MyHomePage> {
),
),
SizedBox
(
height:
15
),
SizedBox
(
height:
15
),
Container
(
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
5
,
vertical:
10
),
padding:
EdgeInsets
.
symmetric
(
horizontal:
5
,
vertical:
10
,
),
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
30
),
borderRadius:
BorderRadius
.
circular
(
30
),
gradient:
LinearGradient
(
gradient:
LinearGradient
(
...
@@ -845,7 +855,9 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -845,7 +855,9 @@ class _MyHomePageState extends State<MyHomePage> {
right:
15
,
right:
15
,
top:
30
,
top:
30
,
),
),
padding:
EdgeInsets
.
only
(
bottom:
MediaQuery
.
of
(
context
).
viewInsets
.
bottom
,),
padding:
EdgeInsets
.
only
(
bottom:
MediaQuery
.
of
(
context
).
viewInsets
.
bottom
,
),
child:
Consumer3
<
child:
Consumer3
<
HomescreenNotifier
,
HomescreenNotifier
,
ProfileNotifer
,
ProfileNotifer
,
...
...
pubspec.lock
View file @
38d17dba
...
@@ -37,10 +37,10 @@ packages:
...
@@ -37,10 +37,10 @@ packages:
dependency: transitive
dependency: transitive
description:
description:
name: async
name: async
sha256:
d2872f9c1
97
3
1c
2
e5
f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
sha256:
"758e6d74e
971c
3
e5
aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
url: "https://pub.dev"
url: "https://pub.dev"
source: hosted
source: hosted
version: "2.1
2
.0"
version: "2.1
3
.0"
auto_size_text:
auto_size_text:
dependency: "direct main"
dependency: "direct main"
description:
description:
...
@@ -293,10 +293,10 @@ packages:
...
@@ -293,10 +293,10 @@ packages:
dependency: transitive
dependency: transitive
description:
description:
name: fake_async
name: fake_async
sha256: "
6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc
"
sha256: "
5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44
"
url: "https://pub.dev"
url: "https://pub.dev"
source: hosted
source: hosted
version: "1.3.
2
"
version: "1.3.
3
"
ffi:
ffi:
dependency: transitive
dependency: transitive
description:
description:
...
@@ -940,26 +940,26 @@ packages:
...
@@ -940,26 +940,26 @@ packages:
dependency: transitive
dependency: transitive
description:
description:
name: leak_tracker
name: leak_tracker
sha256:
c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec
sha256:
"8dcda04c3fc16c14f48a7bb586d4be1f0d1572731b6d81d51772ef47c02081e0"
url: "https://pub.dev"
url: "https://pub.dev"
source: hosted
source: hosted
version: "1
0
.0.
8
"
version: "1
1
.0.
1
"
leak_tracker_flutter_testing:
leak_tracker_flutter_testing:
dependency: transitive
dependency: transitive
description:
description:
name: leak_tracker_flutter_testing
name: leak_tracker_flutter_testing
sha256:
f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573
sha256:
"1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1"
url: "https://pub.dev"
url: "https://pub.dev"
source: hosted
source: hosted
version: "3.0.
9
"
version: "3.0.
10
"
leak_tracker_testing:
leak_tracker_testing:
dependency: transitive
dependency: transitive
description:
description:
name: leak_tracker_testing
name: leak_tracker_testing
sha256: "
6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3
"
sha256: "
8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1
"
url: "https://pub.dev"
url: "https://pub.dev"
source: hosted
source: hosted
version: "3.0.
1
"
version: "3.0.
2
"
lints:
lints:
dependency: transitive
dependency: transitive
description:
description:
...
@@ -1665,10 +1665,10 @@ packages:
...
@@ -1665,10 +1665,10 @@ packages:
dependency: transitive
dependency: transitive
description:
description:
name: vm_service
name: vm_service
sha256:
"0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14"
sha256:
ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
url: "https://pub.dev"
url: "https://pub.dev"
source: hosted
source: hosted
version: "1
4.3.1
"
version: "1
5.0.0
"
web:
web:
dependency: transitive
dependency: transitive
description:
description:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment