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
7959ada6
Commit
7959ada6
authored
Aug 01, 2025
by
Sai Srinivas
Browse files
01-08-2025 By Sai Srinivas
Finance Module and CRM issues
parent
14d01f4d
Changes
35
Expand all
Hide whitespace changes
Inline
Side-by-side
lib/Models/crmModels/crmNewLeadsProspectsSubmitResponse.dart
0 → 100644
View file @
7959ada6
class
crmNewLeadsProspectsSubmitResponse
{
String
?
error
;
String
?
message
;
String
?
leadId
;
crmNewLeadsProspectsSubmitResponse
({
this
.
error
,
this
.
message
,
this
.
leadId
});
crmNewLeadsProspectsSubmitResponse
.
fromJson
(
Map
<
String
,
dynamic
>
json
)
{
error
=
json
[
'error'
];
message
=
json
[
'message'
];
leadId
=
json
[
'lead_id'
];
}
Map
<
String
,
dynamic
>
toJson
()
{
final
Map
<
String
,
dynamic
>
data
=
new
Map
<
String
,
dynamic
>();
data
[
'error'
]
=
this
.
error
;
data
[
'message'
]
=
this
.
message
;
data
[
'lead_id'
]
=
this
.
leadId
;
return
data
;
}
}
lib/Notifiers/commonProvider/accountsListProvider.dart
View file @
7959ada6
...
@@ -360,6 +360,141 @@ class Accountslistprovider extends ChangeNotifier {
...
@@ -360,6 +360,141 @@ class Accountslistprovider extends ChangeNotifier {
}
}
}
}
bool
validateStep1
(){
accountError
=
null
;
nameError
=
null
;
mobileError
=
null
;
contactPersonError
=
null
;
bool
isValid
=
true
;
if
(
_selectedAccountType
==
null
||
_selectedAccountType
!.
isEmpty
)
{
accountError
=
"Please select an Account"
;
isValid
=
false
;
}
if
(
nameController
.
text
.
trim
().
isEmpty
)
{
nameError
=
"Please Enter a Name"
;
isValid
=
false
;
}
if
(
mobileController
.
text
.
trim
().
isNotEmpty
&&
mobileController
.
text
.
length
<
10
){
mobileError
=
"Mobile Number should be 10 digits"
;
isValid
=
false
;
}
if
(
mobileController
.
text
.
trim
().
isEmpty
)
{
mobileError
=
"Please Enter Mobile Number"
;
isValid
=
false
;
}
if
(
contactPersonController
.
text
.
trim
().
isEmpty
)
{
contactPersonError
=
"Please Enter Contact Person Name"
;
isValid
=
false
;
}
_submitClicked
=
false
;
notifyListeners
();
return
isValid
;
}
bool
validateStep2
(){
stateError
=
null
;
districtError
=
null
;
localityError
=
null
;
addressError
=
null
;
bool
isValid
=
true
;
// 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;
// }
_submitClicked
=
false
;
notifyListeners
();
return
isValid
;
}
bool
validateStep3
(){
banknameError
=
null
;
bankBranchError
=
null
;
bankIFSCError
=
null
;
bankHolderNameError
=
null
;
bankAcNumberError
=
null
;
upiError
=
null
;
bool
isValid
=
true
;
// 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;
// }
_submitClicked
=
false
;
notifyListeners
();
return
isValid
;
}
bool
validateStep4
(){
bool
isValid
=
true
;
// 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) {
// teleError= "Please Enter Telephone"; isValid = false;
// }
// if (contectPersonMailController.text.trim().isEmpty) {
// teleError= "Please Enter"; isValid = false;
// }
_submitClicked
=
false
;
notifyListeners
();
return
isValid
;
}
bool
validatereceiptForm
(
BuildContext
context
)
{
bool
validatereceiptForm
(
BuildContext
context
)
{
accountError
=
null
;
accountError
=
null
;
nameError
=
null
;
nameError
=
null
;
...
...
lib/Notifiers/crmProvider/addNewLeadsandProspectsProvider.dart
View file @
7959ada6
...
@@ -8,6 +8,7 @@ import 'package:flutter_download_manager/flutter_download_manager.dart';
...
@@ -8,6 +8,7 @@ import 'package:flutter_download_manager/flutter_download_manager.dart';
import
'package:flutter_local_notifications/flutter_local_notifications.dart'
;
import
'package:flutter_local_notifications/flutter_local_notifications.dart'
;
import
'package:generp/Models/crmModels/crmSelectedProductDetailsResponse.dart'
;
import
'package:generp/Models/crmModels/crmSelectedProductDetailsResponse.dart'
;
import
'package:generp/screens/LoginScreen.dart'
;
import
'package:generp/screens/LoginScreen.dart'
;
import
'package:generp/screens/crm/LeadDetailsByMode.dart'
;
import
'package:http/http.dart'
as
http
;
import
'package:http/http.dart'
as
http
;
import
'package:intl/intl.dart'
;
import
'package:intl/intl.dart'
;
import
'package:path_provider/path_provider.dart'
;
import
'package:path_provider/path_provider.dart'
;
...
@@ -600,7 +601,18 @@ class Addnewleadsandprospectsprovider extends ChangeNotifier {
...
@@ -600,7 +601,18 @@ class Addnewleadsandprospectsprovider extends ChangeNotifier {
);
);
if
(
data
!=
null
)
{
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
if
(
data
.
error
==
"0"
)
{
Navigator
.
pop
(
context
,
true
);
Navigator
.
pushAndRemoveUntil
(
context
,
MaterialPageRoute
(
builder:
(
context
)
=>
LeadDetailsByMode
(
mode:
"executive"
,
pageTitleName:
"Lead Details"
,
leadId:
data
.
leadId
??
"-"
,),
settings:
RouteSettings
(
name:
"LeadDetailsByMode"
)
),
(
Route
<
dynamic
>
route
)
{
return
route
.
settings
.
name
==
'CrmdashboardScreen'
;
},
);
toast
(
context
,
data
.
message
);
toast
(
context
,
data
.
message
);
resetForm
();
resetForm
();
notifyListeners
();
notifyListeners
();
...
...
lib/Notifiers/crmProvider/crmLeadDetailsProvider.dart
View file @
7959ada6
...
@@ -535,7 +535,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
...
@@ -535,7 +535,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -571,7 +571,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
...
@@ -571,7 +571,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
),
),
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
...
...
lib/Notifiers/crmProvider/crmProspectDetailsProvider.dart
View file @
7959ada6
...
@@ -415,7 +415,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
...
@@ -415,7 +415,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -451,7 +451,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
...
@@ -451,7 +451,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
),
),
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
...
...
lib/Notifiers/crmProvider/followUpUpdateProvider.dart
View file @
7959ada6
...
@@ -8,6 +8,7 @@ import 'package:google_maps_flutter/google_maps_flutter.dart';
...
@@ -8,6 +8,7 @@ import 'package:google_maps_flutter/google_maps_flutter.dart';
import
'package:intl/intl.dart'
;
import
'package:intl/intl.dart'
;
import
'package:provider/provider.dart'
;
import
'package:provider/provider.dart'
;
import
'../../screens/crm/LeadDetailsByMode.dart'
;
import
'../../services/api_calling.dart'
;
import
'../../services/api_calling.dart'
;
import
'crmLeadDetailsProvider.dart'
;
import
'crmLeadDetailsProvider.dart'
;
...
@@ -156,6 +157,7 @@ class followUpUpdateProvider extends ChangeNotifier {
...
@@ -156,6 +157,7 @@ class followUpUpdateProvider extends ChangeNotifier {
Future
<
void
>
crmAddFollowUpAPIFunction
(
Future
<
void
>
crmAddFollowUpAPIFunction
(
BuildContext
context
,
BuildContext
context
,
fromScreen
,
nextAppointmentStatus
,
nextAppointmentStatus
,
orderStatus
,
orderStatus
,
leadID
,
leadID
,
...
@@ -196,7 +198,23 @@ class followUpUpdateProvider extends ChangeNotifier {
...
@@ -196,7 +198,23 @@ class followUpUpdateProvider extends ChangeNotifier {
if
(
data
!=
null
&&
data
.
error
==
"0"
)
{
if
(
data
!=
null
&&
data
.
error
==
"0"
)
{
_submitLoading
=
false
;
_submitLoading
=
false
;
resetForm
();
resetForm
();
Navigator
.
pop
(
context
);
if
(
fromScreen
==
"Pending Tasks"
){
Navigator
.
pushAndRemoveUntil
(
context
,
MaterialPageRoute
(
builder:
(
context
)
=>
LeadDetailsByMode
(
mode:
"executive"
,
pageTitleName:
"Lead Details"
,
leadId:
leadID
??
"-"
,),
settings:
RouteSettings
(
name:
"LeadDetailsByMode"
)
),
(
Route
<
dynamic
>
route
)
{
return
route
.
settings
.
name
==
'CrmdashboardScreen'
;
},
);
}
else
{
Navigator
.
pop
(
context
);
}
if
(
mode
.
isNotEmpty
){
if
(
mode
.
isNotEmpty
){
prov2
.
crmLeadDetailsAPIFunction
(
context
,
leadID
,
mode
);
prov2
.
crmLeadDetailsAPIFunction
(
context
,
leadID
,
mode
);
}
}
...
@@ -332,7 +350,7 @@ class followUpUpdateProvider extends ChangeNotifier {
...
@@ -332,7 +350,7 @@ class followUpUpdateProvider extends ChangeNotifier {
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -369,7 +387,7 @@ class followUpUpdateProvider extends ChangeNotifier {
...
@@ -369,7 +387,7 @@ class followUpUpdateProvider extends ChangeNotifier {
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
minimumDate:
DateTime
(
DateTime
.
now
().
year
,
DateTime
.
now
().
month
,
DateTime
.
now
().
day
),
minimumDate:
DateTime
(
DateTime
.
now
().
year
,
DateTime
.
now
().
month
,
DateTime
.
now
().
day
),
...
...
lib/Notifiers/financeProvider/RequesitionLidtDetailsProvider.dart
View file @
7959ada6
...
@@ -13,6 +13,9 @@ import 'package:provider/provider.dart';
...
@@ -13,6 +13,9 @@ import 'package:provider/provider.dart';
import
'approveRejectPaymentRequestResponse.dart'
;
import
'approveRejectPaymentRequestResponse.dart'
;
class
Requesitionlidtdetailsprovider
extends
ChangeNotifier
{
class
Requesitionlidtdetailsprovider
extends
ChangeNotifier
{
bool
_showMoreDetails
=
false
;
TextEditingController
requestedAmount
=
TextEditingController
();
TextEditingController
requestedAmount
=
TextEditingController
();
TextEditingController
approvedAmountReadonly
=
TextEditingController
();
TextEditingController
approvedAmountReadonly
=
TextEditingController
();
TextEditingController
proposedPaymentAccount
=
TextEditingController
();
TextEditingController
proposedPaymentAccount
=
TextEditingController
();
...
@@ -55,6 +58,8 @@ String? proposedAmountError;
...
@@ -55,6 +58,8 @@ String? proposedAmountError;
get
image_picked
=>
_image_picked
;
get
image_picked
=>
_image_picked
;
bool
get
showMoreDetails
=>
_showMoreDetails
;
int
get
imagePicked
=>
_image_picked
;
int
get
imagePicked
=>
_image_picked
;
File
?
get
imagePath
=>
_imageName
;
File
?
get
imagePath
=>
_imageName
;
...
@@ -76,6 +81,11 @@ String? proposedAmountError;
...
@@ -76,6 +81,11 @@ String? proposedAmountError;
notifyListeners
();
notifyListeners
();
}
}
set
showMoreDetails
(
bool
value
){
_showMoreDetails
=
value
;
notifyListeners
();
}
PaymentDetails
get
paymentsDetails
=>
_paymentDetails
;
PaymentDetails
get
paymentsDetails
=>
_paymentDetails
;
RequestDetails
get
requestsDetails
=>
_requestDetails
;
RequestDetails
get
requestsDetails
=>
_requestDetails
;
...
...
lib/Notifiers/financeProvider/RequestionListProvider.dart
View file @
7959ada6
...
@@ -676,7 +676,7 @@ class Requestionlistprovider extends ChangeNotifier {
...
@@ -676,7 +676,7 @@ class Requestionlistprovider extends ChangeNotifier {
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -712,7 +712,7 @@ class Requestionlistprovider extends ChangeNotifier {
...
@@ -712,7 +712,7 @@ class Requestionlistprovider extends ChangeNotifier {
),
),
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
...
...
lib/Notifiers/financeProvider/paymentReceiptsProvider.dart
View file @
7959ada6
...
@@ -29,6 +29,8 @@ import 'package:share_plus/share_plus.dart';
...
@@ -29,6 +29,8 @@ import 'package:share_plus/share_plus.dart';
import
'package:printing/printing.dart'
;
import
'package:printing/printing.dart'
;
class
Paymentreceiptsprovider
extends
ChangeNotifier
{
class
Paymentreceiptsprovider
extends
ChangeNotifier
{
bool
_showMoreDetails
=
false
;
List
<
ReceiptsList
>
_receiptsList
=
[];
List
<
ReceiptsList
>
_receiptsList
=
[];
ReceiptDetails
_receiptDetails
=
ReceiptDetails
();
ReceiptDetails
_receiptDetails
=
ReceiptDetails
();
List
<
String
>
_headings
=
[];
List
<
String
>
_headings
=
[];
...
@@ -83,6 +85,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
...
@@ -83,6 +85,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
String
_receiptPaymentModesID
=
""
;
String
_receiptPaymentModesID
=
""
;
String
_receiptPaymentModesValues
=
""
;
String
_receiptPaymentModesValues
=
""
;
bool
get
showMoreDetails
=>
_showMoreDetails
;
List
<
Accounts
>
get
receiptAccounts
=>
_receiptAccounts
;
List
<
Accounts
>
get
receiptAccounts
=>
_receiptAccounts
;
List
<
ReceiptAccounts
>
get
receiptPaymentAccounts
=>
_receiptPaymentAccounts
;
List
<
ReceiptAccounts
>
get
receiptPaymentAccounts
=>
_receiptPaymentAccounts
;
...
@@ -110,6 +113,10 @@ class Paymentreceiptsprovider extends ChangeNotifier {
...
@@ -110,6 +113,10 @@ class Paymentreceiptsprovider extends ChangeNotifier {
// Date picker methods
// Date picker methods
set
showMoreDetails
(
bool
value
){
_showMoreDetails
=
value
;
notifyListeners
();
}
set
selectreceiptAccounts
(
Accounts
?
value
)
{
set
selectreceiptAccounts
(
Accounts
?
value
)
{
_selectedreceiptAccounts
=
value
;
_selectedreceiptAccounts
=
value
;
_receiptAccountID
=
value
!.
id
!;
_receiptAccountID
=
value
!.
id
!;
...
@@ -945,7 +952,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
...
@@ -945,7 +952,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -982,7 +989,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
...
@@ -982,7 +989,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
),
),
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
...
...
lib/Notifiers/financeProvider/paymentRequisitionPaymentsListProvider.dart
View file @
7959ada6
...
@@ -19,6 +19,8 @@ import 'package:provider/provider.dart';
...
@@ -19,6 +19,8 @@ import 'package:provider/provider.dart';
import
'../../Utils/commonServices.dart'
;
import
'../../Utils/commonServices.dart'
;
class
Paymentrequisitionpaymentslistprovider
extends
ChangeNotifier
{
class
Paymentrequisitionpaymentslistprovider
extends
ChangeNotifier
{
bool
_showMoreDetails
=
false
;
List
<
PaymentsList
>
_paymentsList
=
[];
List
<
PaymentsList
>
_paymentsList
=
[];
PaymentDetails
_paymentDetails
=
PaymentDetails
();
PaymentDetails
_paymentDetails
=
PaymentDetails
();
List
<
String
>
_headings
=
[];
List
<
String
>
_headings
=
[];
...
@@ -29,6 +31,12 @@ class Paymentrequisitionpaymentslistprovider extends ChangeNotifier{
...
@@ -29,6 +31,12 @@ class Paymentrequisitionpaymentslistprovider extends ChangeNotifier{
List
<
String
>
get
Headings
=>
_headings
;
List
<
String
>
get
Headings
=>
_headings
;
List
<
String
>
get
subHeadings
=>
_subHeadings
;
List
<
String
>
get
subHeadings
=>
_subHeadings
;
bool
get
isLoading
=>
_isLoading
;
bool
get
isLoading
=>
_isLoading
;
bool
get
showMoreDetails
=>
_showMoreDetails
;
set
showMoreDetails
(
bool
value
){
_showMoreDetails
=
value
;
notifyListeners
();
}
Future
<
void
>
paymentsListAPI
(
context
,
from
,
to
)
async
{
Future
<
void
>
paymentsListAPI
(
context
,
from
,
to
)
async
{
try
{
try
{
...
...
lib/Notifiers/loginNotifier.dart
View file @
7959ada6
...
@@ -150,7 +150,7 @@ set isLoading(bool value){
...
@@ -150,7 +150,7 @@ set isLoading(bool value){
if
(
password
.
isEmpty
)
{
if
(
password
.
isEmpty
)
{
_passwordError
=
"Please enter your password"
;
_passwordError
=
"Please enter your password"
;
}
}
_isLoading
=
false
;
notifyListeners
();
notifyListeners
();
return
_emailError
.
isEmpty
&&
_passwordError
.
isEmpty
;
return
_emailError
.
isEmpty
&&
_passwordError
.
isEmpty
;
}
}
...
@@ -199,15 +199,23 @@ set isLoading(bool value){
...
@@ -199,15 +199,23 @@ set isLoading(bool value){
);
);
notifyListeners
();
notifyListeners
();
}
else
if
(
data
.
error
==
1
)
{
}
else
if
(
data
.
error
==
1
)
{
_isLoading
=
false
;
notifyListeners
();
toast
(
context
,
toast
(
context
,
"You are not authorized to login in this device !"
);
"You are not authorized to login in this device !"
);
}
else
if
(
data
.
error
==
2
)
{
}
else
if
(
data
.
error
==
2
)
{
_isLoading
=
false
;
notifyListeners
();
toast
(
context
,
"Invalid login credentials !"
);
toast
(
context
,
"Invalid login credentials !"
);
}
else
{
}
else
{
_isLoading
=
false
;
notifyListeners
();
toast
(
context
,
"Invalid login credentials !"
);
toast
(
context
,
"Invalid login credentials !"
);
}
}
}
else
{}
}
else
{
_isLoading
=
false
;
notifyListeners
();
}
}
on
Exception
catch
(
e
)
{
}
on
Exception
catch
(
e
)
{
debugPrint
(
"
$e
"
);
debugPrint
(
"
$e
"
);
}
}
...
...
lib/Notifiers/ordersProvider/addOrderProvider.dart
View file @
7959ada6
...
@@ -1565,7 +1565,7 @@ class Addorderprovider extends ChangeNotifier {
...
@@ -1565,7 +1565,7 @@ class Addorderprovider extends ChangeNotifier {
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -1595,7 +1595,7 @@ class Addorderprovider extends ChangeNotifier {
...
@@ -1595,7 +1595,7 @@ class Addorderprovider extends ChangeNotifier {
),
),
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
...
...
lib/Notifiers/ordersProvider/addPaymentProvider.dart
View file @
7959ada6
...
@@ -603,7 +603,7 @@ class Addpaymentprovider extends ChangeNotifier{
...
@@ -603,7 +603,7 @@ class Addpaymentprovider extends ChangeNotifier{
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
1
,
flex:
2
,
child:
SizedBox
(
child:
SizedBox
(
height:
40
,
height:
40
,
child:
Row
(
child:
Row
(
...
@@ -633,7 +633,7 @@ class Addpaymentprovider extends ChangeNotifier{
...
@@ -633,7 +633,7 @@ class Addpaymentprovider extends ChangeNotifier{
),
),
),
),
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
CupertinoDatePicker
(
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
initialDateTime:
_date
??
DateTime
.
now
(),
...
...
lib/screens/HomeScreen.dart
View file @
7959ada6
...
@@ -5,6 +5,7 @@ import 'package:connectivity_plus/connectivity_plus.dart';
...
@@ -5,6 +5,7 @@ import 'package:connectivity_plus/connectivity_plus.dart';
import
'package:flutter/cupertino.dart'
;
import
'package:flutter/cupertino.dart'
;
import
'package:flutter/material.dart'
;
import
'package:flutter/material.dart'
;
import
'package:flutter/services.dart'
;
import
'package:flutter/services.dart'
;
import
'package:flutter_inappwebview/flutter_inappwebview.dart'
;
import
'package:flutter_svg/flutter_svg.dart'
;
import
'package:flutter_svg/flutter_svg.dart'
;
import
'package:generp/Utils/commonWidgets.dart'
;
import
'package:generp/Utils/commonWidgets.dart'
;
import
'../Utils/commonServices.dart'
;
import
'../Utils/commonServices.dart'
;
...
@@ -209,11 +210,22 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -209,11 +210,22 @@ class _MyHomePageState extends State<MyHomePage> {
toolbarHeight:
0
,
toolbarHeight:
0
,
backgroundColor:
Colors
.
white
,
backgroundColor:
Colors
.
white
,
),
),
body:
SizedBox
(
body:
Container
(
decoration:
BoxDecoration
(
gradient:
LinearGradient
(
colors:
[
AppColors
.
scaffold_bg_color
,
AppColors
.
scaffold_bg_color
,
Color
(
0xFFCEEDFF
),
],
begin:
Alignment
.
topCenter
,
end:
Alignment
.
bottomCenter
,
),
),
child:
Column
(
child:
Column
(
children:
[
children:
[
Expanded
(
Expanded
(
flex:
3
,
flex:
4
,
child:
InkResponse
(
child:
InkResponse
(
onTap:
()
{
onTap:
()
{
_showProfileBottomSheet
(
_showProfileBottomSheet
(
...
@@ -394,20 +406,8 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -394,20 +406,8 @@ class _MyHomePageState extends State<MyHomePage> {
),
),
),
),
Expanded
(
Expanded
(
flex:
12
,
flex:
13
,
child:
Container
(
child:
SizedBox
(
decoration:
BoxDecoration
(
gradient:
LinearGradient
(
colors:
[
AppColors
.
scaffold_bg_color
,
AppColors
.
scaffold_bg_color
,
Color
(
0xFFCEEDFF
),
],
begin:
Alignment
.
topCenter
,
end:
Alignment
.
bottomCenter
,
),
),
child:
Column
(
child:
Column
(
crossAxisAlignment:
CrossAxisAlignment
.
start
,
crossAxisAlignment:
CrossAxisAlignment
.
start
,
children:
[
children:
[
...
@@ -1400,10 +1400,24 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -1400,10 +1400,24 @@ class _MyHomePageState extends State<MyHomePage> {
),
),
),
),
],
],
],
],
),
),
),
),
),
),
Align
(
alignment:
Alignment
.
bottomCenter
,
child:
Container
(
height:
40
,
alignment:
Alignment
.
bottomCenter
,
margin:
EdgeInsets
.
only
(
bottom:
20
),
child:
Image
.
asset
(
fit:
BoxFit
.
scaleDown
,
"assets/images/horizontal_logo.png"
,
),
),
),
// Expanded(
// Expanded(
// flex: 10,
// flex: 10,
// child: Container(
// child: Container(
...
@@ -1623,16 +1637,8 @@ class _MyHomePageState extends State<MyHomePage> {
...
@@ -1623,16 +1637,8 @@ class _MyHomePageState extends State<MyHomePage> {
],
],
),
),
),
),
floatingActionButtonLocation:
FloatingActionButtonLocation
.
centerFloat
,
// floatingActionButtonLocation: FloatingActionButtonLocation.centerFloat,
floatingActionButton:
Container
(
// floatingActionButton:
height:
40
,
alignment:
Alignment
.
bottomCenter
,
margin:
EdgeInsets
.
only
(
bottom:
20
),
child:
Image
.
asset
(
fit:
BoxFit
.
scaleDown
,
"assets/images/horizontal_logo.png"
,
),
),
),
),
),
),
),
),
...
...
lib/screens/LoginScreen.dart
View file @
7959ada6
...
@@ -323,20 +323,31 @@ class _LoginScreenState extends State<LoginScreen>
...
@@ -323,20 +323,31 @@ class _LoginScreenState extends State<LoginScreen>
15
,
15
,
0
,
0
,
),
),
child:
TextField
(
child:
TextF
ormF
ield
(
controller:
email
,
controller:
email
,
keyboardType:
keyboardType:
TextInputType
.
emailAddress
,
TextInputType
.
emailAddress
,
minLines:
1
,
minLines:
1
,
autofocus:
true
,
focusNode:
_emailFocusNode
,
focusNode:
_emailFocusNode
,
style:
TextStyle
(
fontSize:
14
),
style:
TextStyle
(
fontSize:
14
),
onChanged:
(
value
)
{
onChanged:
(
value
)
{
loginProv
.
updateEmail
(
email
.
text
);
loginProv
.
updateEmail
(
email
.
text
);
},
},
textInputAction:
TextInputAction
.
next
,
onTapOutside:
(
event
)
{
onTapOutside:
(
event
)
{
// Handle onTapOutside
// Handle onTapOutside
FocusScope
.
of
(
context
).
unfocus
();
FocusScope
.
of
(
context
).
unfocus
();
},
},
onEditingComplete:
()
{
if
(
_emailFocusNode
.
hasFocus
)
{
setState
(()
{
_emailFocusNode
.
unfocus
();
_passwordFocusNode
.
requestFocus
();
});
}
},
decoration:
InputDecoration
(
decoration:
InputDecoration
(
isDense:
true
,
isDense:
true
,
hintStyle:
TextStyle
(
hintStyle:
TextStyle
(
...
@@ -358,12 +369,12 @@ class _LoginScreenState extends State<LoginScreen>
...
@@ -358,12 +369,12 @@ class _LoginScreenState extends State<LoginScreen>
margin:
EdgeInsets
.
only
(
margin:
EdgeInsets
.
only
(
top:
2.5
,
top:
2.5
,
bottom:
2.5
,
bottom:
2.5
,
left:
25
,
left:
10
,
),
),
child:
Text
(
child:
Text
(
loginProv
.
emailError
,
loginProv
.
emailError
,
textAlign:
TextAlign
.
start
,
textAlign:
TextAlign
.
start
,
style:
TextStyle
(
color:
Colors
.
red
),
style:
TextStyle
(
color:
Colors
.
red
,
fontSize:
10
,
),
),
),
),
),
]
else
...[
]
else
...[
...
@@ -410,12 +421,13 @@ class _LoginScreenState extends State<LoginScreen>
...
@@ -410,12 +421,13 @@ class _LoginScreenState extends State<LoginScreen>
0
,
0
,
0
,
0
,
),
),
child:
TextField
(
child:
TextF
ormF
ield
(
controller:
password
,
controller:
password
,
focusNode:
_passwordFocusNode
,
focusNode:
_passwordFocusNode
,
obscureText:
!
loginProv
.
pwdVisible
,
obscureText:
!
loginProv
.
pwdVisible
,
keyboardType:
keyboardType:
TextInputType
.
visiblePassword
,
TextInputType
.
visiblePassword
,
textInputAction:
TextInputAction
.
done
,
style:
TextStyle
(
fontSize:
14
),
style:
TextStyle
(
fontSize:
14
),
onChanged:
(
value
)
{
onChanged:
(
value
)
{
loginProv
.
updatePassword
(
loginProv
.
updatePassword
(
...
@@ -423,6 +435,19 @@ class _LoginScreenState extends State<LoginScreen>
...
@@ -423,6 +435,19 @@ class _LoginScreenState extends State<LoginScreen>
);
);
},
},
onEditingComplete:
()
{},
onEditingComplete:
()
{},
onFieldSubmitted:
(
value
)
{
loginProv
.
isLoading
=
true
;
loginProv
.
LoginApiFunction
(
context
,
email
.
text
,
password
.
text
,
);
var
f
=
FocusScope
.
of
(
context
);
if
(!
f
.
hasPrimaryFocus
)
{
f
.
unfocus
();
}
},
decoration:
InputDecoration
(
decoration:
InputDecoration
(
contentPadding:
EdgeInsets
.
fromLTRB
(
contentPadding:
EdgeInsets
.
fromLTRB
(
0
,
0
,
...
@@ -467,80 +492,82 @@ class _LoginScreenState extends State<LoginScreen>
...
@@ -467,80 +492,82 @@ class _LoginScreenState extends State<LoginScreen>
margin:
EdgeInsets
.
only
(
margin:
EdgeInsets
.
only
(
top:
2.5
,
top:
2.5
,
bottom:
2.5
,
bottom:
2.5
,
left:
25
,
left:
10
,
),
),
child:
Text
(
child:
Text
(
loginProv
.
passwordError
,
loginProv
.
passwordError
,
textAlign:
TextAlign
.
start
,
textAlign:
TextAlign
.
start
,
style:
TextStyle
(
color:
Colors
.
red
),
style:
TextStyle
(
color:
Colors
.
red
,
fontSize:
10
,
),
),
),
),
),
]
else
...[
]
else
...[
SizedBox
(
height:
2
5.0
),
SizedBox
(
height:
1
5.0
),
],
],
Container
(
SizedBox
(
height:
10
,),
child:
InkWell
(
InkWell
(
onTap:
onTap:
loginProv
.
isLoading
loginProv
.
isLoading
?
null
?
null
:
()
{
:
()
{
// LoginApiFunction();
// LoginApiFunction();
loginProv
.
isLoading
=
true
;
loginProv
.
isLoading
=
true
;
loginProv
.
LoginApiFunction
(
loginProv
.
LoginApiFunction
(
context
,
context
,
email
.
text
,
email
.
text
,
password
.
text
,
password
.
text
,
);
);
var
f
=
FocusScope
.
of
(
var
f
=
FocusScope
.
of
(
context
,
context
,
);
);
if
(!
f
.
hasPrimaryFocus
)
{
if
(!
f
.
hasPrimaryFocus
)
{
f
.
unfocus
();
f
.
unfocus
();
}
}
// Navigator.push(context,MaterialPageRoute(builder: (context)=>Profile()));
// Navigator.push(context,MaterialPageRoute(builder: (context)=>Profile()));
},
},
child:
Container
(
child:
Container
(
alignment:
Alignment
.
center
,
alignment:
Alignment
.
center
,
height:
45
,
height:
45
,
width:
screenWidth
,
width:
screenWidth
,
margin:
EdgeInsets
.
only
(
margin:
EdgeInsets
.
only
(
left:
5.0
,
left:
5.0
,
right:
5.0
,
right:
5.0
,
),
),
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
color:
color:
loginProv
.
isButtonEnabled
loginProv
.
isButtonEnabled
?
AppColors
.
app_blue
?
AppColors
.
app_blue
:
AppColors
.
button_disabled
,
:
AppColors
.
button_disabled
,
//1487C9
//1487C9
borderRadius:
BorderRadius
.
circular
(
borderRadius:
BorderRadius
.
circular
(
15.0
,
15.0
,
),
),
),
child:
Center
(
),
child:
child:
Center
(
loginProv
.
isLoading
child:
?
CircularProgressIndicator
.
adaptive
(
loginProv
.
isLoading
padding:
EdgeInsets
.
all
(
?
CircularProgressIndicator
.
adaptive
(
5
,
padding:
EdgeInsets
.
all
(
),
5
,
valueColor:
AlwaysStoppedAnimation
(
Colors
.
white
,
),
)
:
Text
(
"Login"
,
textAlign:
TextAlign
.
center
,
style:
TextStyle
(
color:
Colors
.
white
,
fontFamily:
"JakartaRegular"
,
),
),
),
),
valueColor:
AlwaysStoppedAnimation
(
Colors
.
white
,
),
)
:
Text
(
"Login"
,
textAlign:
TextAlign
.
center
,
style:
TextStyle
(
color:
Colors
.
white
,
fontFamily:
"JakartaRegular"
,
),
),
),
),
),
),
),
),
...
@@ -763,9 +790,15 @@ class LogoWidget extends StatelessWidget {
...
@@ -763,9 +790,15 @@ class LogoWidget extends StatelessWidget {
return
Container
(
return
Container
(
width:
MediaQuery
.
of
(
context
).
size
.
width
/
4.5
,
width:
MediaQuery
.
of
(
context
).
size
.
width
/
4.5
,
height:
MediaQuery
.
of
(
context
).
size
.
width
/
4.5
,
height:
MediaQuery
.
of
(
context
).
size
.
width
/
4.5
,
padding:
imagePath
==
"assets/images/logo_7.png"
?
EdgeInsets
.
symmetric
(
horizontal:
5
):
null
,
padding:
imagePath
==
"assets/images/logo_7.png"
?
EdgeInsets
.
symmetric
(
horizontal:
5
)
:
null
,
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
color:
imagePath
==
"assets/images/logo_7.png"
?
Colors
.
white
:
Colors
.
transparent
,
color:
imagePath
==
"assets/images/logo_7.png"
?
Colors
.
white
:
Colors
.
transparent
,
borderRadius:
BorderRadius
.
circular
(
25
),
borderRadius:
BorderRadius
.
circular
(
25
),
image:
DecorationImage
(
image:
DecorationImage
(
image:
AssetImage
(
imagePath
),
image:
AssetImage
(
imagePath
),
...
...
lib/screens/commom/accountLedger.dart
View file @
7959ada6
...
@@ -143,7 +143,7 @@ class _AccountledgerState extends State<Accountledger> {
...
@@ -143,7 +143,7 @@ class _AccountledgerState extends State<Accountledger> {
}
}
return
Scaffold
(
return
Scaffold
(
resizeToAvoidBottomInset:
true
,
resizeToAvoidBottomInset:
true
,
appBar:
appbar2
(
appBar:
appbar2
New
(
context
,
context
,
"Account Ledger List"
,
"Account Ledger List"
,
provider
.
resetAll
,
provider
.
resetAll
,
...
@@ -184,6 +184,7 @@ class _AccountledgerState extends State<Accountledger> {
...
@@ -184,6 +184,7 @@ class _AccountledgerState extends State<Accountledger> {
),
),
],
],
),
),
0xFFFFFFFF
),
),
backgroundColor:
AppColors
.
scaffold_bg_color
,
backgroundColor:
AppColors
.
scaffold_bg_color
,
body:
body:
...
...
lib/screens/commom/addCommonPayment.dart
View file @
7959ada6
This diff is collapsed.
Click to expand it.
lib/screens/crm/LeadDetailsByMode.dart
View file @
7959ada6
...
@@ -61,6 +61,7 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
...
@@ -61,6 +61,7 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
context
,
context
,
listen:
false
,
listen:
false
,
);
);
provider
.
showMoreDetails
=
false
;
provider
.
crmLeadDetailsAPIFunction
(
context
,
widget
.
leadId
,
widget
.
mode
);
provider
.
crmLeadDetailsAPIFunction
(
context
,
widget
.
leadId
,
widget
.
mode
);
});
});
}
}
...
@@ -1566,7 +1567,7 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
...
@@ -1566,7 +1567,7 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
CrossAxisAlignment
.
start
,
CrossAxisAlignment
.
start
,
children:
[
children:
[
Expanded
(
Expanded
(
flex:
3
,
flex:
3
,
child:
Text
(
child:
Text
(
textAlign:
TextAlign
.
left
,
textAlign:
TextAlign
.
left
,
"Feedback"
,
"Feedback"
,
...
@@ -1580,7 +1581,7 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
...
@@ -1580,7 +1581,7 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
),
),
),
),
Expanded
(
Expanded
(
flex:
7
,
flex:
7
,
child:
Text
(
child:
Text
(
textAlign:
TextAlign
.
right
,
textAlign:
TextAlign
.
right
,
provider
provider
...
@@ -1799,33 +1800,45 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
...
@@ -1799,33 +1800,45 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
),
),
),
),
),
),
if
(
provider
if
(
provider
.
appointmentDetails
[
lp
]
.
appointmentDetails
[
lp
]
.
astatus
==
"No"
)...[
.
astatus
==
"No"
)
...[
Expanded
(
Expanded
(
flex:
2
,
flex:
2
,
child:
Container
(
child:
Container
(
height:
45
,
height:
45
,
padding:
EdgeInsets
.
symmetric
(
horizontal:
5
),
padding:
EdgeInsets
.
symmetric
(
horizontal:
5
,
),
decoration:
BoxDecoration
(
decoration:
BoxDecoration
(
color:
AppColors
.
processed_bg_color
,
color:
borderRadius:
BorderRadius
.
circular
(
8
)
AppColors
.
processed_bg_color
,
borderRadius:
BorderRadius
.
circular
(
8
,
),
),
),
child:
Center
(
child:
Center
(
child:
Text
(
child:
Text
(
"Pending"
,
"Pending"
,
textAlign:
TextAlign
.
right
,
textAlign:
TextAlign
.
right
,
style:
TextStyle
(
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
fontFamily:
"JakartaMedium"
,
fontSize:
14
,
fontSize:
14
,
color:
AppColors
.
processed_text_color
,
color:
AppColors
.
processed_text_color
,
),
),
),
),
),
),
),
),
),
),
]
],
],
],
),
),
Container
(
Container
(
...
@@ -3297,13 +3310,15 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
...
@@ -3297,13 +3310,15 @@ class _LeadDetailsByModeState extends State<LeadDetailsByMode> {
),
),
],
],
),
),
// Text(
if
(
type
!=
"add"
)
...[
// "Note: Submit Quantity as Zero (0) to delete Product",
Text
(
// style: TextStyle(
"Note: Submit Quantity as Zero (0) to delete Product"
,
// color: AppColors.app_blue,
style:
TextStyle
(
// fontSize: 12,
color:
AppColors
.
app_blue
,
// ),
fontSize:
12
,
// ),
),
),
],
if
(
editProvider
.
qtyError
!=
null
)
...[
if
(
editProvider
.
qtyError
!=
null
)
...[
errorWidget
(
context
,
editProvider
.
qtyError
),
errorWidget
(
context
,
editProvider
.
qtyError
),
],
],
...
...
lib/screens/crm/ProspectDetailsByMode.dart
View file @
7959ada6
...
@@ -74,6 +74,7 @@ class ProspectDetailsByModeState extends State<ProspectDetailsByMode> {
...
@@ -74,6 +74,7 @@ class ProspectDetailsByModeState extends State<ProspectDetailsByMode> {
context
,
context
,
widget
.
leadId
,
widget
.
leadId
,
);
);
provider
.
showMoreDetails
=
false
;
provider
.
crmProspectDetailsAPIFunction
(
context
,
widget
.
leadId
);
provider
.
crmProspectDetailsAPIFunction
(
context
,
widget
.
leadId
);
});
});
}
}
...
...
lib/screens/crm/addLeadsProspectsScreen.dart
View file @
7959ada6
This diff is collapsed.
Click to expand it.
Prev
1
2
Next
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