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
b7f79d62
Commit
b7f79d62
authored
Jun 30, 2025
by
Sai Srinivas
Browse files
30-06-2025 By Sai Srinivas
Finance And Common Module.
parent
1a2ae52a
Changes
15
Expand all
Hide whitespace changes
Inline
Side-by-side
lib/Models/financeModels/paymentRequestionBankDetailsResponse.dart
0 → 100644
View file @
b7f79d62
class
paymentRequestionBankDetailsResponse
{
GetDetails
?
getDetails
;
String
?
error
;
String
?
message
;
paymentRequestionBankDetailsResponse
({
this
.
getDetails
,
this
.
error
,
this
.
message
});
paymentRequestionBankDetailsResponse
.
fromJson
(
Map
<
String
,
dynamic
>
json
)
{
getDetails
=
json
[
'get_details'
]
!=
null
?
new
GetDetails
.
fromJson
(
json
[
'get_details'
])
:
null
;
error
=
json
[
'error'
];
message
=
json
[
'message'
];
}
Map
<
String
,
dynamic
>
toJson
()
{
final
Map
<
String
,
dynamic
>
data
=
new
Map
<
String
,
dynamic
>();
if
(
this
.
getDetails
!=
null
)
{
data
[
'get_details'
]
=
this
.
getDetails
!.
toJson
();
}
data
[
'error'
]
=
this
.
error
;
data
[
'message'
]
=
this
.
message
;
return
data
;
}
}
class
GetDetails
{
String
?
id
;
String
?
name
;
String
?
bankName
;
String
?
bankBranchName
;
String
?
bankIfscCode
;
String
?
bankAccountHolderName
;
String
?
bankAccountNumber
;
String
?
bankUpiId
;
GetDetails
(
{
this
.
id
,
this
.
name
,
this
.
bankName
,
this
.
bankBranchName
,
this
.
bankIfscCode
,
this
.
bankAccountHolderName
,
this
.
bankAccountNumber
,
this
.
bankUpiId
});
GetDetails
.
fromJson
(
Map
<
String
,
dynamic
>
json
)
{
id
=
json
[
'id'
];
name
=
json
[
'name'
];
bankName
=
json
[
'bank_name'
];
bankBranchName
=
json
[
'bank_branch_name'
];
bankIfscCode
=
json
[
'bank_ifsc_code'
];
bankAccountHolderName
=
json
[
'bank_account_holder_name'
];
bankAccountNumber
=
json
[
'bank_account_number'
];
bankUpiId
=
json
[
'bank_upi_id'
];
}
Map
<
String
,
dynamic
>
toJson
()
{
final
Map
<
String
,
dynamic
>
data
=
new
Map
<
String
,
dynamic
>();
data
[
'id'
]
=
this
.
id
;
data
[
'name'
]
=
this
.
name
;
data
[
'bank_name'
]
=
this
.
bankName
;
data
[
'bank_branch_name'
]
=
this
.
bankBranchName
;
data
[
'bank_ifsc_code'
]
=
this
.
bankIfscCode
;
data
[
'bank_account_holder_name'
]
=
this
.
bankAccountHolderName
;
data
[
'bank_account_number'
]
=
this
.
bankAccountNumber
;
data
[
'bank_upi_id'
]
=
this
.
bankUpiId
;
return
data
;
}
}
lib/Notifiers/commonProvider/accountsListProvider.dart
View file @
b7f79d62
...
...
@@ -338,21 +338,6 @@ class Accountslistprovider extends ChangeNotifier {
}
}
void
checkAdditionalDetailsFilled
()
{
hasFilledAdditionalDetails
=
bankNameController
.
text
.
trim
().
isNotEmpty
&&
branchNameController
.
text
.
trim
().
isNotEmpty
&&
bankIfscCotroller
.
text
.
trim
().
isNotEmpty
&&
bankHolderNameController
.
text
.
trim
().
isNotEmpty
&&
bankAcNumberController
.
text
.
trim
().
isNotEmpty
&&
bankUpiController
.
text
.
trim
().
isNotEmpty
&&
contactPersonController
.
text
.
trim
().
isNotEmpty
&&
contectPersonDesignationController
.
text
.
trim
().
isNotEmpty
&&
contectPersonAltMobController
.
text
.
trim
().
isNotEmpty
;
// && contectPersonTeleController.text.trim().isNotEmpty
// && contectPersonMailController.text.trim().isNotEmpty;
notifyListeners
();
}
bool
validatereceiptForm
(
BuildContext
context
)
{
accountError
=
null
;
nameError
=
null
;
...
...
@@ -386,86 +371,87 @@ class Accountslistprovider extends ChangeNotifier {
mobileError
=
"Please Enter Mobile Number"
;
isValid
=
false
;
}
if
(
_selectedState
==
null
||
_selectedStateID
!.
isEmpty
)
{
stateError
=
"Please select a State"
;
isValid
=
false
;
}
if
(
_selectedDistricts
==
null
||
_selectedDistrictID
!.
isEmpty
)
{
districtError
=
"Please select a District"
;
isValid
=
false
;
}
if
(
_selectedSubLocations
==
null
||
_selectedSubLocID
!.
isEmpty
)
{
localityError
=
"Please select a Locality"
;
isValid
=
false
;
}
if
(
addressController
.
text
.
trim
().
isEmpty
)
{
addressError
=
"Please Enter an Address"
;
isValid
=
false
;
}
checkAdditionalDetailsFilled
();
if
(!
_isVisible
&&
!
hasFilledAdditionalDetails
)
{
addMoreDetailsError
=
"Please Add More Details to Continue"
;
isValid
=
false
;
}
if
(
_isVisible
)
{
if
(
bankNameController
.
text
.
trim
()
.
isEmpty
)
{
banknameError
=
"Please Enter a Bank Name"
;
isValid
=
false
;
}
if
(
branchNameController
.
text
.
trim
()
.
isEmpty
)
{
bankBranchError
=
"Please Enter Branch Name"
;
isValid
=
false
;
}
if
(
bankIfscCotroller
.
text
.
trim
()
.
isEmpty
)
{
bankIFSCError
=
"Please Enter Bank IFSC"
;
isValid
=
false
;
}
if
(
bankHolderNameController
.
text
.
trim
()
.
isEmpty
)
{
bankHolderNameError
=
"Please Enter Account Holder Name"
;
isValid
=
false
;
}
if
(
bankAcNumberController
.
text
.
trim
()
.
isEmpty
)
{
bankAcNumberError
=
"Please Enter Bank Account Number"
;
isValid
=
false
;
}
if
(
bankUpiController
.
text
.
trim
()
.
isEmpty
)
{
upiError
=
"Please Enter UPI ID"
;
isValid
=
false
;
}
if
(
contactPersonController
.
text
.
trim
()
.
isEmpty
)
{
contactPersonError
=
"Please Enter Contact Person Name"
;
isValid
=
false
;
}
if
(
contectPersonDesignationController
.
text
.
trim
()
.
isEmpty
)
{
desigantionError
=
"Please Enter Designation"
;
isValid
=
false
;
}
if
(
contectPersonAltMobController
.
text
.
trim
()
.
isEmpty
)
{
altMobError
=
"Please Enter Mobile Number"
;
isValid
=
false
;
}
}
//
//
// if (!_isVisible && !hasFilledAdditionalDetails) {
// addMoreDetailsError = "Please Add More Details to Continue";
// isValid = false;
// }
// if(_isVisible) {
//
// if (_selectedState == null || _selectedStateID!.isEmpty) {
// stateError = "Please select a State";
// isValid = false;
// }
// if (_selectedDistricts == null || _selectedDistrictID!.isEmpty) {
// districtError = "Please select a District";
// isValid = false;
// }
// if (_selectedSubLocations == null || _selectedSubLocID!.isEmpty) {
// localityError = "Please select a Locality";
// isValid = false;
// }
// if (addressController.text.trim().isEmpty) {
// addressError = "Please Enter an Address";
// isValid = false;
// }
// if (bankNameController.text
// .trim()
// .isEmpty) {
// banknameError = "Please Enter a Bank Name";
// isValid = false;
// }
//
// if (branchNameController.text
// .trim()
// .isEmpty) {
// bankBranchError = "Please Enter Branch Name";
// isValid = false;
// }
// if (bankIfscCotroller.text
// .trim()
// .isEmpty) {
// bankIFSCError = "Please Enter Bank IFSC";
// isValid = false;
// }
// if (bankHolderNameController.text
// .trim()
// .isEmpty) {
// bankHolderNameError = "Please Enter Account Holder Name";
// isValid = false;
// }
// if (bankAcNumberController.text
// .trim()
// .isEmpty) {
// bankAcNumberError = "Please Enter Bank Account Number";
// isValid = false;
// }
// if (bankUpiController.text
// .trim()
// .isEmpty) {
// upiError = "Please Enter UPI ID";
// isValid = false;
// }
// if (contactPersonController.text
// .trim()
// .isEmpty) {
// contactPersonError = "Please Enter Contact Person Name";
// isValid = false;
// }
// if (contectPersonDesignationController.text
// .trim()
// .isEmpty) {
// desigantionError = "Please Enter Designation";
// isValid = false;
// }
// if (contectPersonAltMobController.text
// .trim()
// .isEmpty) {
// altMobError = "Please Enter Mobile Number";
// isValid = false;
// }
//
// }
// if (contectPersonTeleController.text.trim().isEmpty) {
...
...
@@ -495,65 +481,65 @@ class Accountslistprovider extends ChangeNotifier {
void
updateBankName
(
String
value
)
{
banknameError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateBankBranch
(
String
value
)
{
bankBranchError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateIFSC
(
String
value
)
{
bankIFSCError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateHolder
(
String
value
)
{
bankHolderNameError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateNumber
(
String
value
)
{
bankAcNumberError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateUPI
(
String
value
)
{
upiError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateContactPerson
(
String
value
){
contactPersonError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateDesignation
(
String
value
){
desigantionError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateAltMobile
(
String
value
){
altMobError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateTeleMobile
(
String
value
){
teleError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
void
updateMail
(
String
value
){
mailError
=
null
;
checkAdditionalDetailsFilled
();
notifyListeners
();
}
...
...
lib/Notifiers/financeProvider/RequesitionLidtDetailsProvider.dart
View file @
b7f79d62
...
...
@@ -15,6 +15,7 @@ import 'approveRejectPaymentRequestResponse.dart';
class
Requesitionlidtdetailsprovider
extends
ChangeNotifier
{
TextEditingController
requestedAmount
=
TextEditingController
();
TextEditingController
proposedPaymentAccount
=
TextEditingController
();
TextEditingController
approvedAmount
=
TextEditingController
();
TextEditingController
accountName
=
TextEditingController
();
TextEditingController
branch
=
TextEditingController
();
TextEditingController
requestingPurpose
=
TextEditingController
();
...
...
@@ -182,6 +183,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
"Level 1 Approved By"
,
"Level 2 Remarks"
,
"Level 2 Approved By"
,
"Approved Amount"
,
"Created Date/Time"
,
"Updated Date/Time"
,
];
...
...
@@ -260,6 +262,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
_requestDetails
.
level1Employee
??
"-"
,
_requestDetails
.
level2ApprovalRemarks
??
"-"
,
_requestDetails
.
level2Employee
??
"-"
,
_requestDetails
.
amount
??
"-"
,
_requestDetails
.
createdDatetime
??
"-"
,
_requestDetails
.
updatedDatetime
??
"-"
,
];
...
...
@@ -276,6 +279,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
print
(
"here 212ssass1"
);
requestedAmount
.
text
=
_requestDetails
.
requestedAmount
??
"-"
;
proposedPaymentAccount
.
text
=
_requestDetails
.
proposedAccount
??
"-"
;
approvedAmount
.
text
=
_requestDetails
.
amount
??
"-"
;
accountName
.
text
=
_requestDetails
.
accountName
??
"-"
;
branch
.
text
=
_requestDetails
.
branch
??
"-"
;
requestingPurpose
.
text
=
_requestDetails
.
requestingPurpose
??
"-"
;
...
...
@@ -397,6 +401,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
resetAll
()
{
requestedAmount
.
clear
();
proposedPaymentAccount
.
clear
();
approvedAmount
.
clear
();
accountName
.
clear
();
branch
.
clear
();
requestingPurpose
.
clear
();
...
...
lib/Notifiers/financeProvider/RequestionListProvider.dart
View file @
b7f79d62
...
...
@@ -27,6 +27,8 @@ import 'package:pdf/pdf.dart';
import
'package:pdf/widgets.dart'
as
pw
;
import
'package:printing/printing.dart'
;
import
'../../Models/financeModels/paymentRequestionBankDetailsResponse.dart'
;
class
Requestionlistprovider
extends
ChangeNotifier
{
TextEditingController
reqPurposeController
=
TextEditingController
();
TextEditingController
descController
=
TextEditingController
();
...
...
@@ -62,6 +64,8 @@ class Requestionlistprovider extends ChangeNotifier {
DirectPaymentModes
?
_selectDirectPaymentModes
;
GetDetails
_getBankDetails
=
GetDetails
();
String
_directAccountID
=
""
;
String
_directAccountValue
=
""
;
String
_directPaymentAccountsID
=
""
;
...
...
@@ -74,6 +78,8 @@ class Requestionlistprovider extends ChangeNotifier {
List
<
DirectPaymentAccounts
>
get
directPaymentAccounts
=>
_directPaymentAccounts
;
GetDetails
get
getBankDetails
=>
_getBankDetails
;
List
<
DirectPaymentModes
>
get
directPaymentModes
=>
_directPaymentModes
;
DirectAccounts
?
get
selectDirectAccounts
=>
_selectedDirectAccounts
;
...
...
@@ -355,18 +361,56 @@ class Requestionlistprovider extends ChangeNotifier {
homeProvider
.
session
,
mode
,
);
_accounts
.
clear
();
_paymentModes
.
clear
();
_requestingPurposes
.
clear
();
notifyListeners
();
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
_accounts
=
data
.
accounts
??[];
if
(
mode
==
"self"
&&
data
.
accounts
!.
length
==
1
){
print
(
"1234234"
);
paymentRequestionBankDetailsAPIFunction
(
context
,
data
.
accounts
!.
first
.
id
);
}
_paymentModes
=
data
.
paymentModes
??[];
_requestingPurposes
=
data
.
requestingPurposes
??[];
print
(
'here'
);
print
(
data
.
requestingPurposes
);
print
(
_accounts
);
notifyListeners
();
checkDropdownselected
();
}
else
{}
}
}
catch
(
e
,
s
)
{}
}
Future
<
void
>
paymentRequestionBankDetailsAPIFunction
(
context
,
account_id
)
async
{
try
{
var
homeProvider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
,
);
final
data
=
await
ApiCalling
.
paymentRequestionBankDetailsAPI
(
homeProvider
.
empId
,
homeProvider
.
session
,
account_id
,
);
notifyListeners
();
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
_getBankDetails
=
data
.
getDetails
!;
bankNameController
.
text
=
data
.
getDetails
!.
bankName
??
"-"
;
bankBranchController
.
text
=
data
.
getDetails
!.
bankBranchName
??
"-"
;
bankIfscController
.
text
=
data
.
getDetails
!.
bankIfscCode
??
"-"
;
bankAcHolderController
.
text
=
data
.
getDetails
!.
bankAccountHolderName
??
"-"
;
bankAccNumberController
.
text
=
data
.
getDetails
!.
bankAccountNumber
??
"-"
;
bankUpiController
.
text
=
data
.
getDetails
!.
bankUpiId
??
"-"
;
notifyListeners
();
}
else
{}
}
}
catch
(
e
,
s
)
{}
...
...
lib/screens/HomeScreen.dart
View file @
b7f79d62
...
...
@@ -172,7 +172,7 @@ class _MyHomePageState extends State<MyHomePage> {
child:
Column
(
children:
[
Expanded
(
flex:
3
,
flex:
4
,
child:
Container
(
padding:
EdgeInsets
.
symmetric
(
vertical:
10
),
decoration:
BoxDecoration
(
...
...
@@ -188,6 +188,10 @@ class _MyHomePageState extends State<MyHomePage> {
right:
15
,
top:
30
,
),
padding:
EdgeInsets
.
only
(
bottom:
15
,
),
decoration:
BoxDecoration
(
borderRadius:
BorderRadius
.
circular
(
30
),
gradient:
LinearGradient
(
...
...
@@ -336,7 +340,7 @@ class _MyHomePageState extends State<MyHomePage> {
),
),
Expanded
(
flex:
8
,
flex:
10
,
child:
Container
(
padding:
EdgeInsets
.
only
(
left:
20
,
...
...
lib/screens/commom/addCommonPayment.dart
View file @
b7f79d62
This diff is collapsed.
Click to expand it.
lib/screens/commom/commonDashboard.dart
View file @
b7f79d62
...
...
@@ -109,7 +109,7 @@ class _CommondashboardState extends State<Commondashboard> {
borderRadius:
BorderRadius
.
circular
(
15
),
),
child:
Text
(
"Add
Common
Account"
,
"Add Account"
,
style:
TextStyle
(
fontSize:
15
,
fontFamily:
"JakartaMedium"
,
...
...
lib/screens/commom/transactionDetails.dart
View file @
b7f79d62
import
'package:flutter/material.dart'
;
import
'package:generp/Utils/app_colors.dart'
;
import
'package:generp/Utils/commonWidgets.dart'
;
import
'package:generp/screens/finance/FileViewer.dart'
;
import
'package:provider/provider.dart'
;
import
'../../Notifiers/financeProvider/paymentRequisitionPaymentsListProvider.dart'
;
...
...
@@ -40,7 +41,7 @@ class _TransactiondetailsState extends State<Transactiondetails> {
backgroundColor:
AppColors
.
scaffold_bg_color
,
body:
SafeArea
(
child:
Container
(
margin:
EdgeInsets
.
symmetric
(
vertical:
10
,
horizontal:
10
),
margin:
EdgeInsets
.
symmetric
(
vertical:
10
,
horizontal:
10
),
child:
SingleChildScrollView
(
child:
Container
(
padding:
EdgeInsets
.
symmetric
(
horizontal:
10
,
vertical:
10
),
...
...
@@ -58,19 +59,19 @@ class _TransactiondetailsState extends State<Transactiondetails> {
flex:
1
,
child:
SizedBox
(
child:
widget
.
type
==
"Credit"
?
Image
.
asset
(
"assets/images/trans_debit.png"
,
height:
45
,
width:
45
,
fit:
BoxFit
.
contain
,
)
:
Image
.
asset
(
"assets/images/trans_credit.png"
,
height:
45
,
width:
45
,
fit:
BoxFit
.
contain
,
),
widget
.
type
==
"Credit"
?
Image
.
asset
(
"assets/images/trans_debit.png"
,
height:
45
,
width:
45
,
fit:
BoxFit
.
contain
,
)
:
Image
.
asset
(
"assets/images/trans_credit.png"
,
height:
45
,
width:
45
,
fit:
BoxFit
.
contain
,
),
),
),
SizedBox
(
width:
10
),
...
...
@@ -99,7 +100,7 @@ class _TransactiondetailsState extends State<Transactiondetails> {
children:
[
TextSpan
(
text:
widget
.
type
==
"Credit"
?
"-"
:
"+"
,
widget
.
type
==
"Credit"
?
"-"
:
"+"
,
style:
TextStyle
(
color:
Color
(
0xFF2D2D2D
),
fontSize:
13
,
...
...
@@ -124,21 +125,23 @@ class _TransactiondetailsState extends State<Transactiondetails> {
],
),
Divider
(
thickness:
0.5
,
color:
Color
(
0xFFd7d7d7
)),
...
List
.
generate
(
5
,
(
j
)
{
...
List
.
generate
(
6
,
(
j
)
{
final
headings
=
[
"ID"
,
"Date"
,
"Account"
,
"Ref Type"
,
"Description"
,
"Payment Remarks"
,
"Attachment"
];
final
subHeadings
=
[
details
.
id
??
"-"
,
details
.
createdDatetime
??
"-"
,
details
.
accountName
??
"-"
,
details
.
refType
??
"-"
,
details
.
description
??
"-"
,
details
.
paymentRemarks
??
"-"
,
"View"
,
];
return
Container
(
padding:
EdgeInsets
.
symmetric
(
vertical:
5
),
...
...
@@ -156,16 +159,48 @@ class _TransactiondetailsState extends State<Transactiondetails> {
),
),
SizedBox
(
width:
15
),
Expanded
(
child:
Text
(
subHeadings
[
j
]
??
"-"
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
fontSize:
14
,
color:
AppColors
.
grey_thick
,
if
(
subHeadings
[
j
]
==
"View"
)...[
Expanded
(
child:
InkResponse
(
onTap:
()
async
{
Navigator
.
push
(
context
,
MaterialPageRoute
(
builder:
(
context
)
=>
Fileviewer
(
fileName:
details
.
attachmentViewFileName
??
""
,
fileUrl:
details
.
attachmentDirFilePath
??
""
)
,));
},
child:
Text
(
"
${subHeadings[j]}
"
==
""
?
"-"
:
subHeadings
[
j
]
??
"-"
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
fontSize:
14
,
color:
AppColors
.
app_blue
,
decorationColor:
AppColors
.
app_blue
,
decoration:
TextDecoration
.
underline
),
),
),
),
),
]
else
...[
Expanded
(
child:
Text
(
"
${subHeadings[j]}
"
==
""
?
"-"
:
subHeadings
[
j
]
??
"-"
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
fontSize:
14
,
color:
AppColors
.
grey_thick
,
),
),
),
]
],
),
);
...
...
lib/screens/finance/PaymentRequestionListDetails.dart
View file @
b7f79d62
...
...
@@ -32,6 +32,7 @@ class Paymentrequestionlistdetails extends StatefulWidget {
class
_PaymentrequestionlistdetailsState
extends
State
<
Paymentrequestionlistdetails
>
{
List
<
FocusNode
>
focusNodes
=
List
.
generate
(
10
,
(
index
)
=>
FocusNode
(),);
Dropdowntheme
ddtheme
=
Dropdowntheme
();
TextEditingController
approvedAmount
=
TextEditingController
();
TextEditingController
remarks
=
TextEditingController
();
...
...
@@ -71,6 +72,13 @@ class _PaymentrequestionlistdetailsState
});
}
@override
void
dispose
()
{
// TODO: implement dispose
focusNodes
.
map
((
e
)=>
e
.
dispose
());
super
.
dispose
();
}
@override
Widget
build
(
BuildContext
context
)
{
return
Consumer
<
Requesitionlidtdetailsprovider
>(
...
...
@@ -299,13 +307,15 @@ class _PaymentrequestionlistdetailsState
),
);
}),
SizedBox
(
height:
80
,)
],
),
),
),
),
),
floatingActionButton
:
bottomNavigationBar
:
([
"admin"
,
"self"
].
contains
(
widget
.
mode
)
||
!
shouldShowButtons
)
?
Container
(
height:
0
)
:
Container
(
...
...
@@ -625,9 +635,12 @@ class _PaymentrequestionlistdetailsState
approvedAmount
,
"Enter Approved Amount"
,
(
p0
)
{},
TextInputType
.
number
,
TextInputType
.
number
WithOptions
()
,
false
,
FilteringTextInputFormatter
.
digitsOnly
,
null
,
focusNodes
[
0
],
focusNodes
[
1
],
TextInputAction
.
next
),
textControllerWidget
(
context
,
...
...
@@ -637,6 +650,9 @@ class _PaymentrequestionlistdetailsState
TextInputType
.
text
,
false
,
null
,
focusNodes
[
1
],
null
,
TextInputAction
.
done
),
TextWidget
(
context
,
"Proposed Payment Account"
),
DropdownButtonHideUnderline
(
...
...
@@ -847,7 +863,7 @@ class _PaymentrequestionlistdetailsState
textControllerReadonlyWidget
(
context
,
provider
.
requestedAmount
,
"
Enter
Requested Amount"
,
"Requested Amount"
,
(
p0
)
{},
),
...
...
@@ -859,6 +875,7 @@ class _PaymentrequestionlistdetailsState
TextInputType
.
text
,
false
,
null
,
focusNodes
[
2
],
null
,
TextInputAction
.
done
),
InkWell
(
onTap:
()
{
...
...
@@ -956,6 +973,7 @@ class _PaymentrequestionlistdetailsState
(
p0
)
{},
),
TextWidget
(
context
,
"Payment Account"
),
DropdownButtonHideUnderline
(
child:
Row
(
...
...
@@ -1061,6 +1079,13 @@ class _PaymentrequestionlistdetailsState
),
),
textControllerReadonlyWidget
(
context
,
provider
.
approvedAmount
,
"Approved Amount"
,
(
p0
)
{},
),
textControllerWidget
(
context
,
paymentReferenceNumber
,
...
...
@@ -1069,6 +1094,7 @@ class _PaymentrequestionlistdetailsState
TextInputType
.
text
,
false
,
null
,
focusNodes
[
3
],
focusNodes
[
4
],
TextInputAction
.
next
),
textControllerWidget
(
...
...
@@ -1079,6 +1105,7 @@ class _PaymentrequestionlistdetailsState
TextInputType
.
text
,
false
,
null
,
focusNodes
[
4
],
null
,
TextInputAction
.
done
),
InkResponse
(
...
...
lib/screens/finance/addPaymentReceiptList.dart
View file @
b7f79d62
...
...
@@ -19,6 +19,7 @@ class Addpaymentreceiptlist extends StatefulWidget {
class
_AddpaymentreceiptlistState
extends
State
<
Addpaymentreceiptlist
>
{
Dropdowntheme
ddtheme
=
Dropdowntheme
();
List
<
FocusNode
>
focusNodes
=
List
.
generate
(
12
,
(
index
)
=>
FocusNode
(),);
@override
void
initState
()
{
// TODO: implement initState
...
...
@@ -34,6 +35,7 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
@override
void
dispose
()
{
focusNodes
.
map
((
e
)=>
e
.
dispose
());
super
.
dispose
();
}
...
...
@@ -252,7 +254,11 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
context
,
provider
.
amountController
,
"Enter Amount"
,
provider
.
updateAmount
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
provider
.
updateAmount
,
TextInputType
.
numberWithOptions
(),
false
,
null
,
focusNodes
[
0
],
focusNodes
[
1
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
amountError
),
///payment date toBE
...
...
@@ -284,6 +290,19 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
readOnly:
true
,
onChanged:
(
value
)
{
},
focusNode:
focusNodes
[
1
],
onTapUpOutside:
(
event
)
{
if
(
focusNodes
[
1
].
hasFocus
){
focusNodes
[
1
].
unfocus
();
}
},
textInputAction:
TextInputAction
.
done
,
onEditingComplete:
()
{
focusNodes
[
1
].
unfocus
();
},
decoration:
InputDecoration
(
hintText:
"Enter Date"
,
...
...
@@ -375,35 +394,50 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
context
,
provider
.
bankNameController
,
"Enter Bank Name"
,
provider
.
updateBankName
,
TextInputType
.
text
,
false
,
null
provider
.
updateBankName
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
2
],
focusNodes
[
3
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankNameError
),
textControllerWidget
(
context
,
provider
.
bankBranchController
,
"Enter Bank Branch"
,
provider
.
updateBankBranch
,
TextInputType
.
text
,
false
,
null
provider
.
updateBankBranch
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
3
],
focusNodes
[
4
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankBranchError
),
textControllerWidget
(
context
,
provider
.
bankAccNumberController
,
"Enter Account Number"
,
provider
.
updateNumber
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
provider
.
updateNumber
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
,
focusNodes
[
4
],
focusNodes
[
5
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankNumberError
),
textControllerWidget
(
context
,
provider
.
bankIfscController
,
"Enter Bank IFSC"
,
provider
.
updateIFSC
,
TextInputType
.
text
,
false
,
null
provider
.
updateIFSC
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
5
],
focusNodes
[
6
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankIFSCError
),
textControllerWidget
(
context
,
provider
.
bankAcHolderController
,
"Enter Bank Account Holder Name"
,
provider
.
updateHolder
,
TextInputType
.
text
,
false
,
null
provider
.
updateHolder
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
6
],
focusNodes
[
8
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankHolderError
),
]
else
if
(
provider
.
paymentModeValue
==
"UPI"
)
...
...
...
@@ -412,7 +446,10 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
context
,
provider
.
bankUpiController
,
"Enter UPI ID"
,
provider
.
updateUPI
,
TextInputType
.
text
,
false
,
null
provider
.
updateUPI
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
7
],
focusNodes
[
8
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
UPIError
),
],
...
...
@@ -420,14 +457,20 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
context
,
provider
.
paymentReferenceController
,
"Enter Payment Reference Number"
,
provider
.
updatereference
,
TextInputType
.
text
,
false
,
null
provider
.
updatereference
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
8
],
focusNodes
[
9
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
paymentreferenceError
),
textControllerWidget
(
context
,
provider
.
descController
,
"Enter Description"
,
provider
.
updateDescription
,
TextInputType
.
text
,
false
,
null
provider
.
updateDescription
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
9
],
focusNodes
[
10
],
TextInputAction
.
done
),
errorWidget
(
context
,
provider
.
descriptionError
),
InkResponse
(
...
...
@@ -502,7 +545,7 @@ class _AddpaymentreceiptlistState extends State<Addpaymentreceiptlist> {
borderRadius:
BorderRadius
.
circular
(
15
),
),
child:
provider
.
submitClicked
?
CircularProgressIndicator
.
adaptive
(
valueColor:
AlwaysStoppedAnimation
(
AppColors
.
app_blu
e
),
valueColor:
AlwaysStoppedAnimation
(
AppColors
.
whit
e
),
):
Text
(
"Submit"
,
style:
TextStyle
(
...
...
lib/screens/finance/directPaymentRequesitionList.dart
View file @
b7f79d62
...
...
@@ -25,6 +25,8 @@ class Directpaymentrequesitionlist extends StatefulWidget {
class
_DirectpaymentrequesitionlistState
extends
State
<
Directpaymentrequesitionlist
>
{
Dropdowntheme
ddtheme
=
Dropdowntheme
();
List
<
FocusNode
>
focusNodes
=
List
.
generate
(
12
,
(
index
)
=>
FocusNode
(),);
@override
void
initState
()
{
// TODO: implement initState
...
...
@@ -40,6 +42,7 @@ class _DirectpaymentrequesitionlistState
@override
void
dispose
()
{
focusNodes
.
map
((
e
)
=>
e
.
dispose
(),);
super
.
dispose
();
}
...
...
@@ -263,7 +266,11 @@ class _DirectpaymentrequesitionlistState
context
,
provider
.
amountController
,
"Enter Amount"
,
provider
.
updateAmount
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
provider
.
updateAmount
,
TextInputType
.
numberWithOptions
(),
false
,
null
,
focusNodes
[
0
],
focusNodes
[
1
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
amountError
),
...
...
@@ -298,6 +305,19 @@ class _DirectpaymentrequesitionlistState
maxLines:
1
,
readOnly:
true
,
onChanged:
(
value
)
{},
focusNode:
focusNodes
[
1
],
onTapUpOutside:
(
event
)
{
if
(
focusNodes
[
1
].
hasFocus
){
focusNodes
[
1
].
unfocus
();
}
},
textInputAction:
TextInputAction
.
done
,
onEditingComplete:
()
{
focusNodes
[
1
].
unfocus
();
},
decoration:
InputDecoration
(
hintText:
"Enter Date"
,
hintStyle:
TextStyle
(
...
...
@@ -386,35 +406,50 @@ class _DirectpaymentrequesitionlistState
context
,
provider
.
bankNameController
,
"Enter Bank Name"
,
provider
.
updateBankName
,
TextInputType
.
text
,
false
,
null
provider
.
updateBankName
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
2
],
focusNodes
[
3
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankNameError
),
textControllerWidget
(
context
,
provider
.
bankBranchController
,
"Enter Bank Branch"
,
provider
.
updateBankBranch
,
TextInputType
.
text
,
false
,
null
provider
.
updateBankBranch
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
3
],
focusNodes
[
4
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankBranchError
),
textControllerWidget
(
context
,
provider
.
bankAccNumberController
,
"Enter Account Number"
,
provider
.
updateNumber
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
provider
.
updateNumber
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
,
focusNodes
[
4
],
focusNodes
[
5
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankNumberError
),
textControllerWidget
(
context
,
provider
.
bankIfscController
,
"Enter Bank IFSC"
,
provider
.
updateIFSC
,
TextInputType
.
text
,
false
,
null
provider
.
updateIFSC
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
5
],
focusNodes
[
6
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankIFSCError
),
textControllerWidget
(
context
,
provider
.
bankAcHolderController
,
"Enter Bank Account Holder Name"
,
provider
.
updateHolder
,
TextInputType
.
text
,
false
,
null
provider
.
updateHolder
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
6
],
focusNodes
[
8
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankHolderError
),
]
else
if
(
provider
.
directPaymentModesValues
==
"UPI"
)
...[
...
...
@@ -422,7 +457,10 @@ class _DirectpaymentrequesitionlistState
context
,
provider
.
bankUpiController
,
"Enter UPI ID"
,
provider
.
updateUPI
,
TextInputType
.
text
,
false
,
null
provider
.
updateUPI
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
7
],
focusNodes
[
8
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
UPIError
),
],
...
...
@@ -430,14 +468,20 @@ class _DirectpaymentrequesitionlistState
context
,
provider
.
paymentReferenceController
,
"Enter Payment Reference Number"
,
provider
.
updateReference
,
TextInputType
.
text
,
false
,
null
provider
.
updateReference
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
8
],
focusNodes
[
9
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
paymentreferenceerror
),
textControllerWidget
(
context
,
provider
.
descController
,
"Enter Description"
,
provider
.
updateDescription
,
TextInputType
.
text
,
false
,
null
provider
.
updateDescription
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
9
],
focusNodes
[
10
],
TextInputAction
.
done
),
errorWidget
(
context
,
provider
.
descriptionError
),
InkResponse
(
...
...
lib/screens/finance/submitPaymentRequestionListsByMode.dart
View file @
b7f79d62
...
...
@@ -24,6 +24,7 @@ class Submitpaymentrequestionlistsbymode extends StatefulWidget {
class
_SubmitpaymentrequestionlistsbymodeState
extends
State
<
Submitpaymentrequestionlistsbymode
>
{
Dropdowntheme
ddtheme
=
Dropdowntheme
();
List
<
FocusNode
>
focusNodes
=
List
.
generate
(
11
,
(
index
)
=>
FocusNode
(),);
@override
void
initState
()
{
// TODO: implement initState
...
...
@@ -36,6 +37,7 @@ class _SubmitpaymentrequestionlistsbymodeState
@override
void
dispose
()
{
focusNodes
.
map
((
e
)=>
e
.
dispose
());
super
.
dispose
();
}
...
...
@@ -115,6 +117,7 @@ class _SubmitpaymentrequestionlistsbymodeState
"hfjkshfg"
+
provider
.
accountId
.
toString
(),
);
provider
.
paymentRequestionBankDetailsAPIFunction
(
context
,
provider
.
accountId
);
}
}
},
...
...
@@ -218,7 +221,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
reqPurposeController
,
"Enter Request Purpose"
,
provider
.
updateReqPupose
,
TextInputType
.
text
,
false
,
null
provider
.
updateReqPupose
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
0
],
focusNodes
[
1
],
TextInputAction
.
next
),
],
errorWidget
(
context
,
provider
.
reqPurposeError
),
...
...
@@ -227,7 +233,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
descController
,
"Enter Description"
,
provider
.
updateDescription
,
TextInputType
.
text
,
false
,
null
provider
.
updateDescription
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
1
],
focusNodes
[
2
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
descriptionError
),
...
...
@@ -235,7 +244,11 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
amountController
,
"Enter Amount"
,
provider
.
updateAmount
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
provider
.
updateAmount
,
TextInputType
.
numberWithOptions
(),
false
,
null
,
focusNodes
[
2
],
null
,
TextInputAction
.
done
),
errorWidget
(
context
,
provider
.
amountError
),
...
...
@@ -356,7 +369,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
bankNameController
,
"Enter Bank Name"
,
provider
.
updateBankName
,
TextInputType
.
text
,
false
,
null
provider
.
updateBankName
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
3
],
focusNodes
[
4
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankNameError
),
...
...
@@ -364,7 +380,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
bankBranchController
,
"Enter Bank Branch"
,
provider
.
updateBankBranch
,
TextInputType
.
text
,
false
,
null
provider
.
updateBankBranch
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
4
],
focusNodes
[
5
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankBranchError
),
...
...
@@ -372,7 +391,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
bankAccNumberController
,
"Enter Account Number"
,
provider
.
updateNumber
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
provider
.
updateNumber
,
TextInputType
.
number
,
false
,
FilteringTextInputFormatter
.
digitsOnly
,
focusNodes
[
5
],
focusNodes
[
6
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankNumberError
),
...
...
@@ -380,7 +402,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
bankIfscController
,
"Enter Bank IFSC"
,
provider
.
updateIFSC
,
TextInputType
.
text
,
false
,
null
provider
.
updateIFSC
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
6
],
focusNodes
[
7
],
TextInputAction
.
next
),
errorWidget
(
context
,
provider
.
bankIFSCError
),
...
...
@@ -388,7 +413,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
bankAcHolderController
,
"Enter Bank Account Holder Name"
,
provider
.
updateHolder
,
TextInputType
.
text
,
false
,
null
provider
.
updateHolder
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
7
],
null
,
TextInputAction
.
done
),
errorWidget
(
context
,
provider
.
bankHolderError
),
]
else
if
(
provider
.
paymentModeValue
==
"UPI"
)
...[
...
...
@@ -396,7 +424,10 @@ class _SubmitpaymentrequestionlistsbymodeState
context
,
provider
.
bankUpiController
,
"Enter UPI ID"
,
provider
.
updateUPI
,
TextInputType
.
text
,
false
,
null
provider
.
updateUPI
,
TextInputType
.
text
,
false
,
null
,
focusNodes
[
8
],
null
,
TextInputAction
.
done
),
errorWidget
(
context
,
provider
.
UPIError
),
],
...
...
lib/services/api_calling.dart
View file @
b7f79d62
...
...
@@ -59,6 +59,7 @@ import '../Models/UpdateComplaintResponse.dart';
import
'../Models/UpdatePasswordResponse.dart'
;
import
'../Models/VersionsResponse.dart'
;
import
'../Models/ViewVisitDetailsResponse.dart'
;
import
'../Models/financeModels/paymentRequestionBankDetailsResponse.dart'
;
import
'../Models/commonModels/commonAccountLedgerFilterResponse.dart'
;
import
'../Models/commonModels/commonAccountLedgerResponse.dart'
;
import
'../Models/commonModels/commonAccountdetailsResponse.dart'
;
...
...
@@ -1561,6 +1562,32 @@ class ApiCalling {
}
}
static
Future
<
paymentRequestionBankDetailsResponse
?>
paymentRequestionBankDetailsAPI
(
empId
,
session
,
account_id
,
)
async
{
try
{
Map
<
String
,
String
>
data
=
{
'emp_id'
:
(
empId
).
toString
(),
'session_id'
:
(
session
).
toString
(),
'account_id'
:
(
account_id
).
toString
(),
};
final
res
=
await
post
(
data
,
paymentRequestBankDetailsUrl
,
{});
if
(
res
!=
null
)
{
print
(
"Bank Detaols
${data}
"
);
debugPrint
(
res
.
body
);
return
paymentRequestionBankDetailsResponse
.
fromJson
(
jsonDecode
(
res
.
body
));
}
else
{
debugPrint
(
"Null Response"
);
return
null
;
}
}
catch
(
e
)
{
debugPrint
(
'hello bev=bug
$e
'
);
return
null
;
}
}
static
Future
<
approveRejectPaymentRequestResponse
?>
approveRejectPaymentRequestAPI
(
empId
,
session
,
payment_request_id
)
async
{
try
{
...
...
@@ -1859,6 +1886,8 @@ class ApiCalling {
}
}
static
Future
<
DistrictsResponse
?>
commonAddAccountViewDistrictAPI
(
empId
,
session
,
...
...
lib/services/api_names.dart
View file @
b7f79d62
...
...
@@ -63,6 +63,7 @@ const addDirectPaymentRequestionSubmitUrl = "${baseUrl_test}add_direct_payment_s
const
addPaymentReceiptSubmitUrl
=
"
${baseUrl_test}
add_payment_receipt_submit"
;
const
paymentRequestionListUrl
=
"
${baseUrl_test}
payment_requsition_list"
;
const
paymentRequestionDetailsUrl
=
"
${baseUrl_test}
payment_requisition_details"
;
const
paymentRequestBankDetailsUrl
=
"
${baseUrl_test}
get_account_bank_details"
;
const
approveRejectPaymentRequestUrl
=
"
${baseUrl_test}
approve_reject_payment_request_view"
;
const
approveRejectPaymentRequestSubmitUrl
=
"
${baseUrl_test}
approve_reject_payment_request_submit"
;
const
paymentRequesitionPaymentsListUrl
=
"
${baseUrl_test}
payment_requistion_payments_list"
;
...
...
pubspec.yaml
View file @
b7f79d62
...
...
@@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
version
:
1.0.8
8
+9
2
version
:
1.0.8
9
+9
3
environment
:
sdk
:
^3.7.2
...
...
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