diff --git a/.env b/.env
index c86ec85..20ebfc0 100644
--- a/.env
+++ b/.env
@@ -1,5 +1,7 @@
-API_URL=https://venbait.in/nhance/dev/employeeRest/
-TICKET_API_URL=https://venbait.in/nhance/helpdesk/dev/api
+API_URL=https://app.nhanceindia.in/zenith/employeeRest/
+#CHAT_BOT_URL=https://venbait.in/nhance/dev
+API_URL_Enrollment=https://app.nhanceindia.in/enrolment/employeeRest/
+TICKET_API_URL=https://venbait.in/nhance/dev/api
ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
-BASE_HREF=/nhance/employee/dev/
-ENV=development
\ No newline at end of file
+BASE_HREF=/app/
+ENV=production
\ No newline at end of file
diff --git a/.env.production b/.env.production
index 1df8c98..20ebfc0 100644
--- a/.env.production
+++ b/.env.production
@@ -1,5 +1,7 @@
API_URL=https://app.nhanceindia.in/zenith/employeeRest/
-TICKET_API_URL=https://app.nhanceindia.in/helpdesk/api
+#CHAT_BOT_URL=https://venbait.in/nhance/dev
+API_URL_Enrollment=https://app.nhanceindia.in/enrolment/employeeRest/
+TICKET_API_URL=https://venbait.in/nhance/dev/api
ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
BASE_HREF=/app/
ENV=production
\ No newline at end of file
diff --git a/.env.test b/.env.test
index 1df8c98..c4f2062 100644
--- a/.env.test
+++ b/.env.test
@@ -1,5 +1,7 @@
-API_URL=https://app.nhanceindia.in/zenith/employeeRest/
-TICKET_API_URL=https://app.nhanceindia.in/helpdesk/api
-ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
-BASE_HREF=/app/
-ENV=production
\ No newline at end of file
+API_URL=https://appstage.nhanceindia.in/arena/crm/employeeRest/
+#CHAT_BOT_URL=https://venbait.in/nhance/dev
+API_URL_Enrollment=https://appstage.nhanceindia.in/arena/enrolment/employeeRest/
+TICKET_API_URL=https://venbait.in/nhance/dev/api
+#ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
+BASE_HREF=/arena/app/
+ENV=uat
\ No newline at end of file
diff --git a/.env.uat b/.env.uat
index 1df8c98..c4f2062 100644
--- a/.env.uat
+++ b/.env.uat
@@ -1,5 +1,7 @@
-API_URL=https://app.nhanceindia.in/zenith/employeeRest/
-TICKET_API_URL=https://app.nhanceindia.in/helpdesk/api
-ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
-BASE_HREF=/app/
-ENV=production
\ No newline at end of file
+API_URL=https://appstage.nhanceindia.in/arena/crm/employeeRest/
+#CHAT_BOT_URL=https://venbait.in/nhance/dev
+API_URL_Enrollment=https://appstage.nhanceindia.in/arena/enrolment/employeeRest/
+TICKET_API_URL=https://venbait.in/nhance/dev/api
+#ticketToken=3YTSia2mRoZ7A4zvBgkqbGPrCd6Ewp8IDOuyjXhVFsl1nxWNcQJ95MeUftKH
+BASE_HREF=/arena/app/
+ENV=uat
\ No newline at end of file
diff --git a/assets/botman_chat.html b/assets/botman_chat.html
new file mode 100644
index 0000000..ad41604
--- /dev/null
+++ b/assets/botman_chat.html
@@ -0,0 +1,66 @@
+
+
+
+
+
+ Botman Chat
+
+
+
+
+
+
+
+
diff --git a/lib/customAppBar/customFooter.dart b/lib/customAppBar/customFooter.dart
index 9895961..8a56e9d 100644
--- a/lib/customAppBar/customFooter.dart
+++ b/lib/customAppBar/customFooter.dart
@@ -10,7 +10,7 @@ class CustomFooter extends StatelessWidget {
mainAxisSize: MainAxisSize.min,
children: [
Text(
- 'Copyright@ 2024 Nhance',
+ 'Copyright @ ${DateTime.now().year} Nhance',
style: TextStyle(
fontSize: 14,
color: Colors.grey[600], // Text color
diff --git a/lib/customAppBar/enrollmentAppBar.dart b/lib/customAppBar/enrollmentAppBar.dart
index eab7f00..93f304e 100644
--- a/lib/customAppBar/enrollmentAppBar.dart
+++ b/lib/customAppBar/enrollmentAppBar.dart
@@ -19,6 +19,8 @@ class _CustomAppBarState extends State {
bool showBackToHR = true;
bool hideInactiveStatus = true;
dynamic empStatus;
+ dynamic _postToken;
+ bool isTokenAvailable = false;
@override
void initState() {
@@ -26,16 +28,27 @@ class _CustomAppBarState extends State {
getEmpStatus();
}
+ Future checkEnrollToken() async {
+ SharedPreferences prefs = await SharedPreferences.getInstance();
+ setState(() {
+ isTokenAvailable = prefs.getString('enrollToken') != null;
+ });
+ }
+
Future getEmpStatus() async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
- empStatus = prefs.getString('enrollmentEmp_status');
+ setState(() {
+ empStatus = prefs.getString('enrollmentEmp_status');
+ // _postToken = prefs.getString('_postToken');
+ isTokenAvailable = prefs.getString('_postToken') != null;
+ });
}
Future logout(BuildContext context) async {
// final prefs = await SharedPreferences.getInstance();
// final String? token = prefs.getString('token');
//
- // if (token != null && token.isNotEmpty) {
+ // if (_postToken != null && _postToken.isNotEmpty) {
// await prefs.clear();
// Navigator.pushNamed(context, 'login');
// }
@@ -99,7 +112,7 @@ class _CustomAppBarState extends State {
),
),
// AdaptiveNavBar Column
- if (empStatus != 'enrolled')
+ if (!isTokenAvailable)
Expanded(
flex: Responsive.isDesktop(context) ? 9 : 3,
child: AdaptiveNavBar(
@@ -116,7 +129,7 @@ class _CustomAppBarState extends State {
// Navigator.pushNamed(context, 'oldPolicy');
},
),
- if (empStatus != 'enrolled')
+ if (!isTokenAvailable)
NavBarItem(
text: "Logout",
onTap: () async {
@@ -126,7 +139,8 @@ class _CustomAppBarState extends State {
],
),
),
- if (empStatus == 'enrolled')
+ // if (empStatus == 'enrolled')
+ if (isTokenAvailable)
Expanded(
flex: Responsive.isDesktop(context) ? 9 : 3,
child: AdaptiveNavBar(
diff --git a/lib/main.dart b/lib/main.dart
index 830152d..c93f2f6 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -48,9 +48,7 @@ Future main() async {
appId: '1:1084115316849:android:963ff492c3d23ab06c6bd0',
messagingSenderId: '1084115316849',
projectId: 'nhance-ee8d1'));
- await dotenv.load(fileName: Environment.fileName);
- // Load environment variables
await dotenv.load(fileName: Environment.fileName);
runApp(MyApp());
diff --git a/lib/models/environment.dart b/lib/models/environment.dart
index f93a3e1..b265adf 100644
--- a/lib/models/environment.dart
+++ b/lib/models/environment.dart
@@ -25,6 +25,10 @@ class Environment {
return dotenv.env['API_URL_Enrollment'] ?? 'API_URL not found!';
}
+ static String get chatBotUrl {
+ return dotenv.env['CHAT_BOT_URL'] ?? 'CHAT_BOT_URL not found!';
+ }
+
static String get baseHref {
return dotenv.env['BASE_HREF'] ?? 'BASE_HREF not found!';
}
diff --git a/lib/pages/email_verify.dart b/lib/pages/email_verify.dart
index 8be84a5..db5cf6b 100644
--- a/lib/pages/email_verify.dart
+++ b/lib/pages/email_verify.dart
@@ -139,7 +139,7 @@ class _MyEmailVerifyState extends State {
void verifyOTP(String otp) async {
try {
final response = await http.post(
- Uri.parse(Environment.apiUrl + 'getVerifiedUserData'),
+ Uri.parse(Environment.apiUrlEnrollment + 'getVerifiedUserData'),
body:
json.encode({'email_id': widget.email, 'otp': _otpController.text}),
headers: {
@@ -222,7 +222,7 @@ class _MyEmailVerifyState extends State {
prefs.setString('client_id', client_id);
emp_status = decodedToken['emp_status'];
prefs.setString('emp_status', emp_status);
- getClientLogoAndDetails();
+ // getClientLogoAndDetails();
print('Successfully Login');
@@ -249,7 +249,7 @@ class _MyEmailVerifyState extends State {
prefs.setString('enrollmentClient_id', enrollmentClient_id);
enrollmentEmp_status = decodedToken['emp_status'];
prefs.setString('enrollmentEmp_status', enrollmentEmp_status);
- // getClientLogoAndDetails();
+ getClientLogoAndDetails();
}
final SharedPreferences prefs = await SharedPreferences.getInstance();
@@ -365,8 +365,8 @@ class _MyEmailVerifyState extends State {
}
Future getClientLogoAndDetails() async {
- var url = Uri.parse(Environment.apiUrl +
- 'getClientDetails?client_id=$client_id&emp_code=$empCodeString');
+ var url = Uri.parse(Environment.apiUrlEnrollment +
+ 'getClientDetails?client_id=$enrollmentClient_id&emp_code=$enrollmentEmpCodeString&client_branch_id=$enrollmentEmpClientBranchId');
try {
var response = await http.get(
url,
diff --git a/lib/pages/enrollment/addons.dart b/lib/pages/enrollment/addons.dart
index 846811f..5c5b725 100644
--- a/lib/pages/enrollment/addons.dart
+++ b/lib/pages/enrollment/addons.dart
@@ -146,9 +146,12 @@ class _addOnsDetailsState extends State {
dynamic empRefId;
dynamic enrollmentEmpClientBranchId;
dynamic selfEmpStatus;
+ dynamic gpaTotalAmt;
+ dynamic gmcTotalAmt;
List