family member in progress
parent
dd146179ec
commit
c3945d2583
@ -0,0 +1,34 @@
|
|||||||
|
|
||||||
|
class SubmitContactTransactionList {
|
||||||
|
String? pITEMKEY;
|
||||||
|
String? pRETURNMSG;
|
||||||
|
String? pRETURNSTATUS;
|
||||||
|
int? pTRANSACTIONID;
|
||||||
|
|
||||||
|
SubmitContactTransactionList(
|
||||||
|
{this.pITEMKEY,
|
||||||
|
this.pRETURNMSG,
|
||||||
|
this.pRETURNSTATUS,
|
||||||
|
this.pTRANSACTIONID});
|
||||||
|
|
||||||
|
SubmitContactTransactionList.fromJson(Map<String, dynamic> json) {
|
||||||
|
pITEMKEY = json['P_ITEM_KEY'];
|
||||||
|
pRETURNMSG = json['P_RETURN_MSG'];
|
||||||
|
pRETURNSTATUS = json['P_RETURN_STATUS'];
|
||||||
|
pTRANSACTIONID = json['P_TRANSACTION_ID'];
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
final Map<String, dynamic> data = new Map<String, dynamic>();
|
||||||
|
data['P_ITEM_KEY'] = this.pITEMKEY;
|
||||||
|
data['P_RETURN_MSG'] = this.pRETURNMSG;
|
||||||
|
data['P_RETURN_STATUS'] = this.pRETURNSTATUS;
|
||||||
|
data['P_TRANSACTION_ID'] = this.pTRANSACTIONID;
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// if (this.submitContactTransactionList != null) {
|
||||||
|
// data['SubmitContactTransactionList'] =
|
||||||
|
// this.submitContactTransactionList!.toJson();
|
||||||
|
// }
|
@ -1,74 +0,0 @@
|
|||||||
|
|
||||||
|
|
||||||
import 'package:easy_localization/src/public_ext.dart';
|
|
||||||
import 'package:flutter/material.dart';
|
|
||||||
import 'package:mohem_flutter_app/api/profile_api_client.dart';
|
|
||||||
import 'package:mohem_flutter_app/classes/colors.dart';
|
|
||||||
import 'package:mohem_flutter_app/classes/utils.dart';
|
|
||||||
import 'package:mohem_flutter_app/config/routes.dart';
|
|
||||||
import 'package:mohem_flutter_app/dialogs/otp_dialog.dart';
|
|
||||||
import 'package:mohem_flutter_app/extensions/int_extensions.dart';
|
|
||||||
import 'package:mohem_flutter_app/extensions/string_extensions.dart';
|
|
||||||
import 'package:mohem_flutter_app/extensions/widget_extensions.dart';
|
|
||||||
import 'package:mohem_flutter_app/generated/locale_keys.g.dart';
|
|
||||||
import 'package:mohem_flutter_app/models/get_employee_basic_details.model.dart';
|
|
||||||
import 'package:mohem_flutter_app/models/get_employee_contacts.model.dart';
|
|
||||||
import 'package:mohem_flutter_app/ui/profile/dynamic_screens/dynamic_input_familyMembers_screen.dart';
|
|
||||||
import 'package:mohem_flutter_app/ui/profile/dynamic_screens/dynamic_input_profile_screen.dart';
|
|
||||||
import 'package:mohem_flutter_app/ui/profile/profile.dart';
|
|
||||||
import 'package:mohem_flutter_app/widgets/app_bar_widget.dart';
|
|
||||||
import 'package:mohem_flutter_app/widgets/button/default_button.dart';
|
|
||||||
|
|
||||||
class DeleteFamilyMember extends StatefulWidget {
|
|
||||||
const DeleteFamilyMember({Key? key}) : super(key: key);
|
|
||||||
|
|
||||||
@override
|
|
||||||
_DeleteFamilyMemberState createState() => _DeleteFamilyMemberState();
|
|
||||||
}
|
|
||||||
|
|
||||||
class _DeleteFamilyMemberState extends State<DeleteFamilyMember> {
|
|
||||||
@override
|
|
||||||
Widget build(BuildContext context) {
|
|
||||||
return Scaffold(
|
|
||||||
appBar: AppBarWidget(
|
|
||||||
context,
|
|
||||||
title: "Dependents And Beneficiaries",
|
|
||||||
),
|
|
||||||
backgroundColor: MyColors.backgroundColor,
|
|
||||||
bottomSheet: footer(),
|
|
||||||
body:Column(
|
|
||||||
children: [
|
|
||||||
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
);
|
|
||||||
}
|
|
||||||
footer() {
|
|
||||||
return Row(
|
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
|
||||||
children: [
|
|
||||||
Container(
|
|
||||||
color: MyColors.gradiantEndColor,
|
|
||||||
// margin: EdgeInsets.only(left: 50,right: 20),
|
|
||||||
padding: EdgeInsets.only(left: 50,right: 50),
|
|
||||||
child: TextButton(
|
|
||||||
style: TextButton.styleFrom(
|
|
||||||
primary:MyColors.white,
|
|
||||||
onSurface: MyColors.white,
|
|
||||||
backgroundColor: MyColors.gradiantEndColor,
|
|
||||||
),
|
|
||||||
onPressed: (){},
|
|
||||||
child: Text('Next',
|
|
||||||
style: TextStyle(
|
|
||||||
fontStyle: FontStyle.normal,
|
|
||||||
fontSize: 16,
|
|
||||||
color: Colors.white,
|
|
||||||
fontWeight: FontWeight.w600
|
|
||||||
),),
|
|
||||||
)
|
|
||||||
),
|
|
||||||
],
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,148 @@
|
|||||||
|
import 'package:easy_localization/easy_localization.dart';
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:mohem_flutter_app/api/profile_api_client.dart';
|
||||||
|
import 'package:mohem_flutter_app/classes/colors.dart';
|
||||||
|
import 'package:mohem_flutter_app/classes/utils.dart';
|
||||||
|
import 'package:mohem_flutter_app/config/routes.dart';
|
||||||
|
import 'package:mohem_flutter_app/extensions/widget_extensions.dart';
|
||||||
|
import 'package:mohem_flutter_app/generated/locale_keys.g.dart';
|
||||||
|
import 'package:mohem_flutter_app/models/get_approves_list_model.dart';
|
||||||
|
import 'package:mohem_flutter_app/models/get_eit_dff_structure_list_model.dart';
|
||||||
|
import 'package:mohem_flutter_app/models/profile/submit_contact_transaction_list_model.dart';
|
||||||
|
import 'package:mohem_flutter_app/ui/misc/request_submit_screen.dart';
|
||||||
|
import 'package:mohem_flutter_app/widgets/app_bar_widget.dart';
|
||||||
|
import 'dart:io';
|
||||||
|
import 'package:flutter/cupertino.dart';
|
||||||
|
import 'package:mohem_flutter_app/widgets/dynamic_forms/dynamic_textfield_widget.dart';
|
||||||
|
|
||||||
|
class DeleteFamilyMember extends StatefulWidget {
|
||||||
|
int relationId;
|
||||||
|
DeleteFamilyMember(@required this.relationId, {Key? key}) : super(key: key);
|
||||||
|
|
||||||
|
@override
|
||||||
|
_DeleteFamilyMemberState createState() => _DeleteFamilyMemberState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _DeleteFamilyMemberState extends State<DeleteFamilyMember> {
|
||||||
|
String pFunctionName = "HR_PERINFO_SS";
|
||||||
|
String actionType = "DELETE";
|
||||||
|
// int? contactRelationId;
|
||||||
|
String? date="MM/DD/YYYY";
|
||||||
|
String? datePar;
|
||||||
|
|
||||||
|
SubmitContactTransactionList? submitContactTransactionList;
|
||||||
|
GetApprovesList? getApprovesList;
|
||||||
|
|
||||||
|
//int? relationId;
|
||||||
|
@override
|
||||||
|
void initState() {
|
||||||
|
print(widget.relationId);
|
||||||
|
super.initState();
|
||||||
|
}
|
||||||
|
|
||||||
|
void deleteFamilyMember(datePar) async {
|
||||||
|
try {
|
||||||
|
Utils.showLoading(context);
|
||||||
|
submitContactTransactionList = await ProfileApiClient().submetConatctTransaction(pFunctionName.toString(), actionType.toString(), widget.relationId!.toInt(), datePar.toString());
|
||||||
|
var transactionId = submitContactTransactionList!.pTRANSACTIONID;
|
||||||
|
getApprovesList = await ProfileApiClient().getApproves(transactionId!.toInt());
|
||||||
|
Navigator.pushNamed(context, AppRoutes.requestSubmitScreen,
|
||||||
|
arguments: RequestSubmitScreenParams(LocaleKeys.profile_familyDetails.tr(), submitContactTransactionList!.pTRANSACTIONID!.toInt(), submitContactTransactionList!.pITEMKEY!));
|
||||||
|
Utils.hideLoading(context);
|
||||||
|
setState(() {});
|
||||||
|
} catch (ex) {
|
||||||
|
Utils.hideLoading(context);
|
||||||
|
Utils.handleException(ex, context, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Scaffold(
|
||||||
|
appBar: AppBarWidget(
|
||||||
|
context,
|
||||||
|
title: "Dependents And Beneficiaries",
|
||||||
|
),
|
||||||
|
backgroundColor: MyColors.backgroundColor,
|
||||||
|
bottomSheet: footer(),
|
||||||
|
body: Column(
|
||||||
|
children: [
|
||||||
|
DynamicTextFieldWidget(
|
||||||
|
"*End Date", date.toString(),
|
||||||
|
// suffixIconData: Icons.calendar_today,
|
||||||
|
isEnable: false,
|
||||||
|
onTap: () async {
|
||||||
|
DateTime dateValue = await _selectDate(context);
|
||||||
|
// DateTime date1 = DateTime(dateValue.year, dateValue.month, dateValue.day);
|
||||||
|
date = DateFormat('yyyy/MM/dd').format(dateValue);
|
||||||
|
datePar = DateFormat('yyyy/MM/dd hh:mm:ss').format(dateValue);
|
||||||
|
setState(() {});
|
||||||
|
if (date !=null) {
|
||||||
|
print(datePar);
|
||||||
|
deleteFamilyMember(datePar);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
).paddingOnly(bottom: 12)
|
||||||
|
],
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
footer() {
|
||||||
|
return Row(
|
||||||
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
|
children: [
|
||||||
|
Container(
|
||||||
|
color: MyColors.gradiantEndColor,
|
||||||
|
// margin: EdgeInsets.only(left: 50,right: 20),
|
||||||
|
padding: EdgeInsets.only(left: 50, right: 50),
|
||||||
|
child: TextButton(
|
||||||
|
style: TextButton.styleFrom(
|
||||||
|
primary: MyColors.white,
|
||||||
|
onSurface: MyColors.white,
|
||||||
|
backgroundColor: MyColors.gradiantEndColor,
|
||||||
|
),
|
||||||
|
onPressed: () {
|
||||||
|
deleteFamilyMember(datePar);
|
||||||
|
|
||||||
|
},
|
||||||
|
child: Text(
|
||||||
|
LocaleKeys.next.tr(),
|
||||||
|
style: TextStyle(fontStyle: FontStyle.normal, fontSize: 16, color: Colors.white, fontWeight: FontWeight.w600),
|
||||||
|
),
|
||||||
|
)),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
DateTime selectedDate = DateTime.now();
|
||||||
|
|
||||||
|
Future<DateTime> _selectDate(BuildContext context) async {
|
||||||
|
DateTime time = selectedDate;
|
||||||
|
if (!Platform.isIOS) {
|
||||||
|
await showCupertinoModalPopup(
|
||||||
|
context: context,
|
||||||
|
builder: (cxt) => Container(
|
||||||
|
height: 250,
|
||||||
|
color: Colors.white,
|
||||||
|
child: CupertinoDatePicker(
|
||||||
|
backgroundColor: Colors.white,
|
||||||
|
mode: CupertinoDatePickerMode.date,
|
||||||
|
onDateTimeChanged: (value) {
|
||||||
|
if (value != null && value != selectedDate) {
|
||||||
|
time = value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
initialDateTime: selectedDate,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
final DateTime? picked =
|
||||||
|
await showDatePicker(context: context, initialDate: selectedDate, initialEntryMode: DatePickerEntryMode.calendarOnly, firstDate: DateTime(2015, 8), lastDate: DateTime(2101));
|
||||||
|
if (picked != null && picked != selectedDate) {
|
||||||
|
time = picked;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return time;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue