key store

This commit is contained in:
venbaittech 2024-11-27 13:46:23 +05:30
parent d30f72acd9
commit 69cc7aeb06
11 changed files with 41 additions and 204 deletions

View File

@ -23,8 +23,14 @@ if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file("key.properties")
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
android {
namespace "com.example.nhance_app_pwa"
namespace "nh.ind.nhance.frontend"
compileSdk flutter.compileSdkVersion
ndkVersion flutter.ndkVersion
@ -43,7 +49,7 @@ android {
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.example.nhance_app_pwa"
applicationId "nh.ind.nhance.frontend"
// You can update the following values to match your application needs.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdkVersion 23
@ -52,11 +58,23 @@ android {
versionName flutterVersionName
}
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
// signingConfig signingConfigs.debug
signingConfig signingConfigs.release
minifyEnabled true // Enable code shrinking for smaller APKs
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}

View File

@ -1,36 +1,26 @@
{
"project_info": {
"project_number": "508866094093",
"project_id": "nhance-app-4fedb",
"storage_bucket": "nhance-app-4fedb.appspot.com"
"project_number": "1084115316849",
"project_id": "nhance-ee8d1",
"storage_bucket": "nhance-ee8d1.firebasestorage.app"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:508866094093:android:9969e766daa5b770366144",
"mobilesdk_app_id": "1:1084115316849:android:963ff492c3d23ab06c6bd0",
"android_client_info": {
"package_name": "com.example.nhance_app_pwa"
"package_name": "nh.ind.nhance.frontend"
}
},
"oauth_client": [
{
"client_id": "508866094093-n8l9fkevuc7vp50evicvhogiiibsc30m.apps.googleusercontent.com",
"client_type": 3
}
],
"oauth_client": [],
"api_key": [
{
"current_key": "AIzaSyAZdKJco4fe0e1HP1A249BVZzA3WMYb_3g"
"current_key": "AIzaSyC4yHbCX4mQu0jO81pJrDwxKLQlTQWofrc"
}
],
"services": {
"appinvite_service": {
"other_platform_oauth_client": [
{
"client_id": "508866094093-n8l9fkevuc7vp50evicvhogiiibsc30m.apps.googleusercontent.com",
"client_type": 3
}
]
"other_platform_oauth_client": []
}
}
}

View File

@ -9,7 +9,7 @@
"client_info": {
"mobilesdk_app_id": "1:203846206303:android:01f39a22f39a50539b6cea",
"android_client_info": {
"package_name": "com.example.nhance_app_pwa"
"package_name": "nh.ind.nhance.frontend"
}
},
"oauth_client": [],

View File

@ -1,4 +1,4 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.nhance_app_pwa">
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="nh.ind.nhance.frontend">
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

View File

@ -1,4 +1,4 @@
package com.example.nhance_app_pwa
package nh.ind.nhance.frontend
import io.flutter.embedding.android.FlutterFragmentActivity

View File

@ -4,6 +4,8 @@
<dict>
<key>NSFaceIDUsageDescription</key>
<string>We use Face ID to protect your data in the app.</string>
<key>CFBundleIdentifier</key>
<string>nh.ind.nhance.frontend</string>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleDisplayName</key>

View File

@ -33,10 +33,10 @@ Future<void> main() async {
if (Firebase.apps.isEmpty) {
await Firebase.initializeApp(
options: const FirebaseOptions(
apiKey: 'AIzaSyAZdKJco4fe0e1HP1A249BVZzA3WMYb_3g',
appId: '1:508866094093:android:9969e766daa5b770366144',
messagingSenderId: '508866094093',
projectId: 'nhance-app-4fedb'));
apiKey: 'AIzaSyC4yHbCX4mQu0jO81pJrDwxKLQlTQWofrc',
appId: '1:1084115316849:android:963ff492c3d23ab06c6bd0',
messagingSenderId: '1084115316849',
projectId: 'nhance-ee8d1'));
await dotenv.load(fileName: Environment.fileName);
}

View File

@ -173,15 +173,13 @@ class _addOnsDetailsState extends State<addOnsDetails> {
});
// Decode the JWT token received from the API response
Map<String, dynamic>? decodedToken = Jwt.parseJwt(token);
print(decodedToken);
selfEmpStatus = prefs.getString('selfEmpStatus');
empClientBranchId = prefs.getString('empClientBranchId');
empCodeString = prefs.getString('empCode');
print(empCodeString); // Check if emp_code is correct
empPrimaryId = prefs.getString('empPrimaryId');
gpaEmpName = prefs.getString('gpaEmpName');
client_id = prefs.getString('client_id');
print(client_id);
// Call the API when the page enters
if (prefs.containsKey('clientLogo') && prefs.containsKey('clientName')) {
@ -212,15 +210,11 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
final response = await apiService.getClientLogoAndDetailsToApi(
client_id!, empCodeString!, empClientBranchId!);
print('check 1');
if (response['status'] == 'success') {
if (response.containsKey('data')) {
dynamic clientDetails = response['data'];
print(clientDetails);
clientName = clientDetails['client']['client_name'];
print(clientName);
clientLogo = clientDetails['client']['client_logo'];
print(clientLogo);
} else {
// Handle other status messages if needed
print('API request failed with status: ${response['status']}');
@ -248,7 +242,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
if (response['status'] == 'success') {
setState(() {
gpaPolicies = response['data'];
print('gpaPolicies');
});
} else {
setState(() {
@ -276,10 +269,8 @@ class _addOnsDetailsState extends State<addOnsDetails> {
if (response['status'] == 'success') {
// setState(() {
gmcPolicies = response['data'];
print('gmcPolicies');
// });
// Assuming data is a List
print(gmcPolicies);
} else {
setState(() {
gmcDataIsEmpty = 0;
@ -306,8 +297,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
if (response.containsKey('data')) {
setState(() {
topUpSiPolicies = response['data'];
print('topUpSiPolicies');
print(topUpSiPolicies);
});
if (topUpSiPolicies.isNotEmpty) {
// setState(() {
@ -315,8 +304,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
await topUpSiPolicies['gmc_si_topup']['client_policy_id'];
topUpSlabRates = await topUpSiPolicies['gmc_si_topup']['SlabRates'];
print('topUpSlabRates');
print(topUpSlabRates);
topUpPolicyName =
await topUpSiPolicies['gmc_si_topup']['policy_name'];
@ -325,22 +312,15 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpFamilyFloater = await topUpSiPolicies['gmc_si_topup']
['policy_terms']['family_floater'];
print('topUpFamilyFloater');
print(topUpFamilyFloater);
topUpMappedFamilyFloatersSi = await topUpSiPolicies['gmc_si_topup']
['family_floaters_of_only_si_array'];
print('topUpMappedFamilyFloatersSi');
print(topUpMappedFamilyFloatersSi);
print('topUpECardDownload');
topUpECardDownload =
topUpSiPolicies['gmc_si_topup']['eCardDownload'];
print(topUpECardDownload);
String intOpenForEnrollment =
topUpSiPolicies['gmc_si_topup']['OpenForEnrollment'];
topUpOpenForEnrollment = int.parse(intOpenForEnrollment);
print(topUpOpenForEnrollment);
topUpTypeName = topUpSiPolicies['gmc_si_topup']['type'];
@ -349,7 +329,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpSiSelectedSI =
topUpSiValue != 0 ? topUpSiValue.toString() : null;
if (topUpSiSelectedSI != null) {
print('topUpSiSelectedSI');
setState(() {
_topUpSiSwitcher = true;
topUpSiPremiumValue = (topUpSiPolicies['gmc_si_topup']
@ -396,8 +375,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
if (response.containsKey('data')) {
setState(() {
topUpSiParentPolicies = response['data'];
print('topUpSiParentPolicies');
print(topUpSiParentPolicies);
});
if (topUpSiParentPolicies.isNotEmpty) {
// setState(() {
@ -407,8 +384,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpParentSlabRates =
await topUpSiParentPolicies['gmc_si_parent_topup']['SlabRates'];
print('topUpParentSlabRates');
print(topUpParentSlabRates);
topUpParentPolicyName =
await topUpSiParentPolicies['gmc_si_parent_topup']
@ -420,24 +395,17 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpParentFamilyFloater =
await topUpSiParentPolicies['gmc_si_parent_topup']
['policy_terms']['family_floater'];
print('topUpParentFamilyFloater');
print(topUpParentFamilyFloater);
topUpParentMappedFamilyFloatersSi =
await topUpSiParentPolicies['gmc_si_parent_topup']
['family_floaters_of_only_si_array'];
print('topUpParentMappedFamilyFloatersSi');
print(topUpParentMappedFamilyFloatersSi);
print('topUpECardDownload');
topUpParentECardDownload =
topUpSiParentPolicies['gmc_si_parent_topup']['eCardDownload'];
print(topUpParentECardDownload);
String intOpenForEnrollment =
topUpSiParentPolicies['gmc_si_parent_topup']
['OpenForEnrollment'];
topUpParentOpenForEnrollment = int.parse(intOpenForEnrollment);
print(topUpParentOpenForEnrollment);
topUpParentTypeName =
topUpSiParentPolicies['gmc_si_parent_topup']['type'];
@ -448,7 +416,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpParentSiSelectedSI =
topUpParentSiValue != 0 ? topUpParentSiValue.toString() : null;
if (topUpParentSiSelectedSI != null) {
print('topUpParentSiSelectedSI');
setState(() {
_topUpParentSiSwitcher = true;
topUpParentSiPremiumValue =
@ -497,8 +464,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
if (response.containsKey('data')) {
setState(() {
addOnsDependentPolicies = response['data'];
print('addOnsDependentPolicies');
print(addOnsDependentPolicies);
});
if (addOnsDependentPolicies.isNotEmpty) {
// setState(() {
@ -509,7 +474,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
addOnsDependentSlabRates =
await addOnsDependentPolicies['gmc_dependent_addon']
['SlabRates'];
print(addOnsDependentSlabRates);
addOnsDependentPolicyName =
await addOnsDependentPolicies['gmc_dependent_addon']
@ -521,15 +485,11 @@ class _addOnsDetailsState extends State<addOnsDetails> {
addOnsDependentFamilyFloater =
await addOnsDependentPolicies['gmc_dependent_addon']
['policy_terms']['family_floater'];
print('addOnsDependentFamilyFloater');
print(addOnsDependentFamilyFloater);
setState(() {
addOnsDependentMappedFamilyFloatersDependent =
addOnsDependentPolicies['gmc_dependent_addon']
['family_floaters_of_dependent_and_si_array'];
print('addOnsDependentMappedFamilyFloatersDependent');
print(addOnsDependentMappedFamilyFloatersDependent);
});
String intOpenForEnrollment =
@ -567,8 +527,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
addOnsDependentECardDownload =
addOnsDependentPolicies['gmc_dependent_addon']
['eCardDownload'];
print('addOnsDependentECardDownload');
print(addOnsDependentECardDownload);
}
} else {
print('No data found in the response');
@ -609,23 +567,18 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
Future<void> _selectDate(BuildContext context, formType) async {
print(formType);
var ageValidation = formType['age_validation'];
int min =
int.parse(ageValidation['min']); // Parsing the string to an integer
int max =
int.parse(ageValidation['max']); // Parsing the string to an integer
print(min);
print(max);
late DateTime minDate;
late DateTime maxDate;
final DateTime now = DateTime.now();
maxDate = DateTime(now.year - min, now.month, now.day);
print(maxDate);
minDate = DateTime(now.year - max, now.month, now.day);
print(minDate);
// Ensure initialDate is within the range of minDate and maxDate
DateTime initialDate =
@ -653,7 +606,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
Future<void> deleteItem(Map<String, dynamic> deletedItem) async {
print(deletedItem);
try {
var id = deletedItem['employee_id'];
final response = await apiService.deleteItemToApi(id);
@ -672,7 +624,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
getGmcSiParentTopUp();
getGmcDependentAddOns();
ToastHelper.showSuccessToast(context, 'Item deleted successfully');
print('Item deleted successfully');
} else {
// Handle errors
ToastHelper.showErrorToast(context, 'Failed to delete item');
@ -686,9 +637,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
void saveAddOnsDetails(Map<String, dynamic> formData,
Map<String, dynamic> floatedData, action) async {
// Construct the array of objects
print(formData);
print(floatedData);
print(action);
formDataList.add({
'relationship': formData['relationship'],
'name': formData['memberName'],
@ -725,7 +673,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
getGmcSiParentTopUp();
getGmcDependentAddOns();
ToastHelper.showSuccessToast(context, 'Saved Successfully...');
print('Form data sent successfully.');
} else {
ToastHelper.showErrorToast(context, 'Failed');
print('Failed to send form data. Error: ${response}');
@ -741,31 +688,22 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
void sendAddonsGmcDependentToAPI() async {
print(_addOnsDependentSwitcher);
print('continue');
print(addOnsSelectedDependent);
if (_addOnsDependentSwitcher == true) {
if (addOnsSelectedDependent == null || addOnsSelectedDependent.isEmpty) {
return; // Return if addOnsSelectedDependent is null or empty
} else {
print('createOrUpdateEmployeePolicySiAmount');
try {
dynamic getTrueObjects = addOnsDependentMappedFamilyFloatersDependent
.where((element) => element['is_value_exist'] == true)
.toList();
print(getTrueObjects);
List<Map<String, dynamic>> getTrueDataObjects = getTrueObjects
.map<Map<String, dynamic>>(
(element) => element['data'] as Map<String, dynamic>)
.toList();
print(getTrueDataObjects);
List<Map<String, String>> selectedValues = [];
// try {
print('fff');
if (getTrueDataObjects != null || getTrueDataObjects.isNotEmpty) {
for (var floater in getTrueDataObjects) {
String employee_id = floater['employee_id'];
@ -784,7 +722,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
// Add the map to the list
selectedValues.add(floaterData);
}
print(selectedValues);
}
// Iterate through familyMembers list and send each member's data to the API
@ -798,10 +735,8 @@ class _addOnsDetailsState extends State<addOnsDetails> {
_relationShipController.clear();
_memberNameController.clear();
_dobController.clear();
print('Saved successfully!');
} else {
ToastHelper.showErrorToast(context, 'Failed to save');
print('Operation Failed!');
}
} catch (error) {
print('Error saving family members');
@ -813,32 +748,22 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
void sendAddonsGmcSiToAPI() async {
print(_topUpSiSwitcher);
print('continue');
print(topUpSiSelectedSI);
if (_topUpSiSwitcher == true) {
if (topUpSiSelectedSI == null || topUpSiSelectedSI.isEmpty) {
print('topUpSiSelectedSI');
return; // Return if addOnsSelectedDependent is null or empty
} else {
print('createOrUpdateEmployeePolicySiAmount');
try {
dynamic getTrueObjects = topUpMappedFamilyFloatersSi
.where((element) => element['is_value_exist'] == true)
.toList();
print(getTrueObjects);
List<Map<String, dynamic>> getTrueDataObjects = getTrueObjects
.map<Map<String, dynamic>>(
(element) => element['data'] as Map<String, dynamic>)
.toList();
print(getTrueDataObjects);
List<Map<String, String>> selectedValues = [];
// try {
print('fff');
if (getTrueDataObjects != null || getTrueDataObjects.isNotEmpty) {
for (var floater in getTrueDataObjects) {
String employee_id = floater['employee_id'];
@ -857,7 +782,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
// Add the map to the list
selectedValues.add(floaterData);
}
print(selectedValues);
}
final response =
@ -870,7 +794,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
_relationShipController.clear();
_memberNameController.clear();
_dobController.clear();
print('Saved successfully!');
} else {
print('Failed to Save...');
}
@ -884,32 +807,22 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
void sendAddonsGmcParentSiToAPI() async {
print(_topUpParentSiSwitcher);
print('continue');
print(topUpParentSiSelectedSI);
if (_topUpParentSiSwitcher == true) {
if (topUpParentSiSelectedSI == null || topUpParentSiSelectedSI.isEmpty) {
print('topUpSiSelectedSI');
return; // Return if addOnsSelectedDependent is null or empty
} else {
print('createOrUpdateEmployeePolicySiAmount');
try {
dynamic getTrueObjects = topUpParentMappedFamilyFloatersSi
.where((element) => element['is_value_exist'] == true)
.toList();
print(getTrueObjects);
List<Map<String, dynamic>> getTrueDataObjects = getTrueObjects
.map<Map<String, dynamic>>(
(element) => element['data'] as Map<String, dynamic>)
.toList();
print(getTrueDataObjects);
List<Map<String, String>> selectedValues = [];
// try {
print('fff');
if (getTrueDataObjects != null || getTrueDataObjects.isNotEmpty) {
for (var floater in getTrueDataObjects) {
String employee_id = floater['employee_id'];
@ -928,7 +841,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
// Add the map to the list
selectedValues.add(floaterData);
}
print(selectedValues);
}
final response =
@ -941,7 +853,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
_relationShipController.clear();
_memberNameController.clear();
_dobController.clear();
print('Saved successfully!');
} else {
print('Failed to Save...');
}
@ -1013,8 +924,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
void topUpSiCalculation(choosedSiValue) async {
try {
print(choosedSiValue);
var calculation = {
'client_policy_id': topUpClientPolicyId,
'emp_code': empCodeString,
@ -1022,13 +931,11 @@ class _addOnsDetailsState extends State<addOnsDetails> {
'client_branch_id': empClientBranchId
};
print(calculation);
// Iterate through familyMembers list and send each member's data to the API
final response = await apiService.topUpSiCalculationToAPI(calculation);
if (response['status'] == 'success') {
print(response);
List<dynamic>? topUpEmpArray;
for (var item in response['data']) {
if (item.containsKey(empCodeString)) {
@ -1038,8 +945,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
if (topUpEmpArray != null) {
print('Array for emp_code $empCodeString:');
print(topUpEmpArray);
double topUpRataPremimumSum = 0;
for (var item in topUpEmpArray) {
var topUpRataPremimum = item['policy_details']['rata_premimum'];
@ -1047,7 +952,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpRataPremimumSum += topUpRataPremimum;
}
}
print('Sum of rata_premimum: $topUpRataPremimumSum');
double topUpGstSum = 0;
for (var item in topUpEmpArray) {
@ -1056,18 +960,13 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpGstSum += topUpGst;
}
}
print('Sum of gst: $topUpGstSum');
setState(() {
topUpSiPremiumValue = (topUpRataPremimumSum as double).toInt();
print(topUpSiPremiumValue);
topUpSiPremiumGst = (topUpGstSum as double).toInt();
print(topUpSiPremiumGst);
topUpSiTotalAmt = topUpSiPremiumValue + topUpSiPremiumGst;
// topUpSiTotalAmt = (topUpSum as double).toInt();
print(topUpSiTotalAmt);
});
sendAddonsGmcSiToAPI();
} else {
@ -1083,8 +982,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
void topUpParentSiCalculation(choosedSiValue) async {
try {
print(choosedSiValue);
var calculation = {
'client_policy_id': topUpParentClientPolicyId,
'emp_code': empCodeString,
@ -1092,14 +989,12 @@ class _addOnsDetailsState extends State<addOnsDetails> {
'client_branch_id': empClientBranchId
};
print(calculation);
// Iterate through familyMembers list and send each member's data to the API
final response =
await apiService.topUpParentSiCalculationToAPI(calculation);
if (response['status'] == 'success') {
print(response['data']);
List<dynamic>? topUpEmpArray;
for (var item in response['data']) {
if (item.containsKey(empCodeString)) {
@ -1109,8 +1004,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
if (topUpEmpArray != null) {
print('Array for emp_code $empCodeString:');
print(topUpEmpArray);
double topUpRataPremimumSum = 0;
for (var item in topUpEmpArray) {
var topUpRataPremimum = item['policy_details']['rata_premimum'];
@ -1118,7 +1011,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpRataPremimumSum += topUpRataPremimum;
}
}
print('Sum of rata_premimum: $topUpRataPremimumSum');
double topUpGstSum = 0;
for (var item in topUpEmpArray) {
@ -1127,16 +1019,12 @@ class _addOnsDetailsState extends State<addOnsDetails> {
topUpGstSum += topUpGst;
}
}
print('Sum of gst: $topUpGstSum');
setState(() {
topUpParentSiPremiumValue =
(topUpRataPremimumSum as double).toInt();
print(topUpParentSiPremiumValue);
topUpParentSiPremiumGst = (topUpGstSum as double).toInt();
print(topUpSiPremiumGst);
topUpParentSiTotalAmt =
topUpParentSiPremiumValue + topUpParentSiPremiumGst;
print(topUpParentSiTotalAmt);
});
sendAddonsGmcParentSiToAPI();
} else {
@ -1152,8 +1040,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
void addOnsDependentCalculation(choosedDependentValue) async {
try {
print(choosedDependentValue);
var calculation = {
'client_policy_id': addOnsDependentClientPolicyId,
'emp_code': empCodeString,
@ -1161,14 +1047,12 @@ class _addOnsDetailsState extends State<addOnsDetails> {
'client_branch_id': empClientBranchId
};
print(calculation);
// Iterate through familyMembers list and send each member's data to the API
final response =
await apiService.addOnsDependentCalculationToAPI(calculation);
if (response['status'] == 'success') {
print(response['data']);
List<dynamic>? addOnsEmpArray;
for (var item in response['data']) {
if (item.containsKey(empCodeString)) {
@ -1178,8 +1062,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
if (addOnsEmpArray != null) {
print('Array for emp_code $empCodeString:');
print(addOnsEmpArray);
double addOnsRataPremimumSum = 0;
for (var item in addOnsEmpArray) {
var addOnsRataPremimum = item['policy_details']['rata_premimum'];
@ -1187,7 +1069,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
addOnsRataPremimumSum += addOnsRataPremimum;
}
}
print('Sum of rata_premimum: $addOnsRataPremimumSum');
double addOnsGstSum = 0;
for (var item in addOnsEmpArray) {
@ -1196,16 +1077,12 @@ class _addOnsDetailsState extends State<addOnsDetails> {
addOnsGstSum += addOnsGst;
}
}
print('Sum of gst: $addOnsGstSum');
setState(() {
addOnDependentPremiumValue =
(addOnsRataPremimumSum as double).toInt();
print(addOnDependentPremiumValue);
addOnsDependentPremiumGst = (addOnsGstSum as double).toInt();
print(addOnsDependentPremiumGst);
addOnsDependentTotalAmt =
addOnDependentPremiumValue + addOnsDependentPremiumGst;
print(topUpSiTotalAmt);
});
} else {
print('Array not found for emp_code $empCodeString');
@ -1222,12 +1099,9 @@ class _addOnsDetailsState extends State<addOnsDetails> {
setState(() {
isLoading = true;
});
print('sendAddOnAPI');
if (gpaDataIsEmpty != 0) {
print('gpaDataIsEmpty : $gpaDataIsEmpty');
for (var item in gpaPolicies) {
print('ClientPolicyId');
// Extract ClientPolicyId value from each object
String clientPolicyId = item['ClientPolicyId'];
// Convert to integer and add to iAgreeForAddOn list
@ -1244,9 +1118,7 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
}
print('iAgreeForAddOn');
iAgreeForAddOn = iAgreeForAddOn.toSet().toList();
print(iAgreeForAddOn); // Output: [90, 92, 88, 89]
Map<String, dynamic> apiParams = {
'emp_code': empCodeString,
@ -1262,7 +1134,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
isLoading = false;
isChecked = false;
});
print('response.statusCode == 200');
ToastHelper.showSuccessToast(context, 'Saved Successfully...');
} else {
setState(() {
@ -1270,7 +1141,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
});
// Handle other status codes
ToastHelper.showErrorToast(context, 'failed to save');
print('Request failed with status: ${response['code']}');
}
} catch (e) {
setState(() {
@ -1285,8 +1155,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
final SharedPreferences prefs = await SharedPreferences.getInstance();
if (prefs.containsKey('hrtoken')) {
String? mobileNo = prefs.getString('fromHrLoginMobileNo');
print('mobileNo');
print(mobileNo);
Navigator.pushNamed(context, 'empDetails',
arguments: {'mobile': mobileNo});
} else {
@ -1295,7 +1163,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
void checkSiTopUp() async {
print('checkSiTopUp');
List<Map<String, dynamic>> siData = [
{
'topUpSiPremiumValue': topUpSiPremiumValue,
@ -1308,7 +1175,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
void checkSiParentTopUp() async {
print('checkSiParentTopUp');
List<Map<String, dynamic>> siParentData = [
{
'topUpParentSiPremiumValue': topUpParentSiPremiumValue,
@ -1321,7 +1187,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
}
void checkDependentTopUp() async {
print('checkDependentTopUp');
List<Map<String, dynamic>> dependentData = [
{
'addOnDependentPremiumValue': addOnDependentPremiumValue,
@ -1335,10 +1200,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
@override
Widget build(BuildContext context) {
print('CVC');
print('Check1: $topUpSiPolicies');
print('CVC');
print('Check2: $addOnsDependentPolicies');
if (gpaDataIsEmpty == 0 && gmcDataIsEmpty == 0) {
return Scaffold(
appBar: CustomAppBar(),
@ -3823,7 +3684,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
if (_topUpSiSwitcher == false) {
removeAddonsGmcSiToAPI();
} else {
print('checkSiTopUp');
checkSiTopUp();
}
@ -3831,7 +3691,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
false) {
removeAddonsGmcParentSiToAPI();
} else {
print('checkSiParentTopUp');
checkSiParentTopUp();
}
@ -3839,7 +3698,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
false) {
removeAddonsGmcDependentToAPI();
} else {
print('checkDependentTopUp');
checkDependentTopUp();
sendAddonsGmcDependentToAPI();
}
@ -3949,25 +3807,14 @@ class _addOnsDetailsState extends State<addOnsDetails> {
Future<void> _launchURL(String url) async {
final Uri uri = Uri.parse(url); // Parse the URL properly
print('_launchURL $uri');
if (uri != null) {
print('If $uri');
await launchUrl(uri, mode: LaunchMode.externalApplication);
} else {
print('else $uri');
throw 'Could not launch $url';
}
}
void openForm(Map<String, dynamic> floaterData, action) {
print(action);
print(floaterData);
print(relationshipOptions);
print('test');
print(_relationShipController);
print(_memberNameController);
print(_dobController);
dynamic popupName = floaterData['button_name'];
// Check if the action is 'Edit'
selectedRelationships = relationshipOptions
@ -3976,32 +3823,23 @@ class _addOnsDetailsState extends State<addOnsDetails> {
)
.toList();
print(selectedRelationships);
print(addOnsDependentMappedFamilyFloatersDependent);
if (action == 'Add') {
if (floaterData['form_type'] == 'parent_in_law' ||
floaterData['form_type'] == 'parent') {
print('Add');
// Filter the addOnsDependentMappedFamilyFloatersDependent list to get only the objects where is_value_exist is true
dynamic getTrueObjects = addOnsDependentMappedFamilyFloatersDependent
.where((element) => element['is_value_exist'] == true)
.toList();
print(getTrueObjects);
List<Map<String, dynamic>> getTrueDataObjects = getTrueObjects
.map<Map<String, dynamic>>(
(element) => element['data'] as Map<String, dynamic>)
.toList();
print(getTrueDataObjects);
selectedRelationships.removeWhere((relationship) =>
getTrueDataObjects.any((dataObject) =>
dataObject['relationship'] ==
relationship['relationship_name']));
print(selectedRelationships);
}
}
@ -4280,25 +4118,17 @@ class _addOnsDetailsState extends State<addOnsDetails> {
dynamic getTrueObjects = gmcMappedFamilyFloaters
.where((element) => element['is_value_exist'] == true)
.toList();
print('getTrueObjects');
print(getTrueObjects);
if (getTrueObjects.length > 0) {
print('true');
gmcSumInsured = gmcMappedFamilyFloaters[0]["data"]["basic_cover_si"];
} else {
print('false');
gmcSumInsured = item['Policy_Terms']['sum_insured'];
}
gmcTypeName = item['type'];
});
print('forEach Card');
print(gmcMappedFamilyFloaters);
dynamic getTrueObjects = gmcMappedFamilyFloaters
.where((element) => element['is_value_exist'] == true)
.toList();
print(getTrueObjects);
Widget card = getTrueObjects.length > 0
? Card(
elevation: 0,
@ -4465,9 +4295,6 @@ class _addOnsDetailsState extends State<addOnsDetails> {
List<Widget> cards = [];
for (var item in data) {
print('item');
print(item);
String? gpaPolicyName = item['Policy_Name'];
String? gpaPolicyType = item['type'];
String? gpaECardDownload = item['eCardDownload'];

View File

@ -7,7 +7,7 @@ project(runner LANGUAGES CXX)
set(BINARY_NAME "nhance_app_pwa")
# The unique GTK application identifier for this application. See:
# https://wiki.gnome.org/HowDoI/ChooseApplicationID
set(APPLICATION_ID "com.example.nhance_app_pwa")
set(APPLICATION_ID "nh.ind.nhance.frontend")
# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
# versions of CMake.

View File

@ -8,7 +8,7 @@
PRODUCT_NAME = nhance_app_pwa
// The application's bundle identifier
PRODUCT_BUNDLE_IDENTIFIER = com.example.nhanceAppPwa
PRODUCT_BUNDLE_IDENTIFIER = nh.ind.nhance.frontend
// The copyright displayed in application information
PRODUCT_COPYRIGHT = Copyright © 2024 com.example. All rights reserved.

BIN
my-release-key.jks Normal file

Binary file not shown.