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
2ccf19cc
Commit
2ccf19cc
authored
Jul 04, 2025
by
Sai Srinivas
Browse files
04-07-2025 By Sai Srinivas
Test cases and Order Module, Crm Module.
parent
4b790bef
Changes
94
Expand all
Hide whitespace changes
Inline
Side-by-side
lib/Notifiers/crmProvider/crmDashboardProvider.dart
View file @
2ccf19cc
import
'package:flutter/cupertino.dart'
;
import
'package:flutter/foundation.dart'
;
import
'package:generp/Models/crmModels/crmDashboardResponse.dart'
;
import
'package:provider/provider.dart'
;
import
'../../Models/crmModels/AccessiblePagesResponse.dart'
;
import
'../../Models/crmModels/crmPendingTasksResponse.dart'
;
import
'../../Models/crmModels/crmUniversalSearchResponse.dart'
;
import
'../../services/api_calling.dart'
;
import
'../HomeScreenNotifier.dart'
;
class
Crmdashboardprovider
extends
ChangeNotifier
{
TextEditingController
searchController
=
TextEditingController
();
List
<
PagesAccessible
>
_accessPages
=
[];
List
<
PagesAccessible
>
get
accessPages
=>
_accessPages
;
List
<
PendingTasks
>
_pendingTasks
=
[];
List
<
PendingTasks
>
get
pendingTasksLists
=>
_pendingTasks
;
List
<
Accounts
>
_accountsList
=
[];
List
<
Leads
>
_leadsList
=
[];
List
<
Enquires
>
_enquiresList
=
[];
Future
<
void
>
accessPagesAPIFunction
(
context
)
async
{
List
<
Accounts
>
get
accountsList
=>
_accountsList
;
List
<
Leads
>
get
leadsList
=>
_leadsList
;
List
<
Enquires
>
get
enquiresList
=>
_enquiresList
;
Hotleads
_hotleads
=
Hotleads
();
Hotleads
get
hotleads
=>
_hotleads
;
Hotleads
_coldleads
=
Hotleads
();
Hotleads
get
coldleads
=>
_coldleads
;
Hotleads
_warmleads
=
Hotleads
();
Hotleads
get
warmleads
=>
_warmleads
;
Hotleads
_totalleads
=
Hotleads
();
Hotleads
get
totalleads
=>
_totalleads
;
Hotleads
_orderlost
=
Hotleads
();
Hotleads
get
orderlost
=>
_orderlost
;
Hotleads
_norequirement
=
Hotleads
();
Hotleads
get
norequirement
=>
_norequirement
;
Hotleads
_openEnquiries
=
Hotleads
();
Hotleads
get
openEnquiries
=>
_openEnquiries
;
List
<
Hotleads
>
_allLeads
=
[];
List
<
Hotleads
>
get
allLeads
=>
_allLeads
;
Future
<
void
>
accessPagesAPIFunction
(
context
)
async
{
try
{
var
HomeProv
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
crmAccessiblePagesAPI
(
HomeProv
.
empId
,
HomeProv
.
session
);
...
...
@@ -26,4 +58,72 @@ class Crmdashboardprovider extends ChangeNotifier{
}
}
Future
<
void
>
crmDashboardAPIFunction
(
context
,
mode
,
from
,
to
,
teamemployee
)
async
{
try
{
var
HomeProv
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
crmDashboardAPI
(
HomeProv
.
empId
,
HomeProv
.
session
,
mode
,
from
,
to
,
teamemployee
);
if
(
data
!=
null
){
if
(
data
.
error
==
"0"
){
_hotleads
=
data
.
hotleads
!;
_coldleads
=
data
.
coldleads
!;
_warmleads
=
data
.
warmleads
!;
_totalleads
=
data
.
totalleads
!;
_orderlost
=
data
.
orderlost
!;
_norequirement
=
data
.
norequirement
!;
_openEnquiries
=
data
.
openEnquiries
!;
_allLeads
=
[
_hotleads
,
_coldleads
,
_warmleads
,
_totalleads
,
_orderlost
,
_norequirement
,
_openEnquiries
,
];
notifyListeners
();
}
}
}
catch
(
e
,
s
){
}
}
Future
<
void
>
crmPendingTasksAPIFunction
(
context
)
async
{
try
{
var
HomeProv
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
crmPendingTasksAPI
(
HomeProv
.
empId
,
HomeProv
.
session
);
if
(
data
!=
null
){
if
(
data
.
error
==
"0"
){
_pendingTasks
=
data
.
pendingTasks
!;
notifyListeners
();
}
}
}
catch
(
e
,
s
){
}
}
Future
<
void
>
crmUniversalSearchFunction
(
context
)
async
{
try
{
var
HomeProv
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
crmUniversalSearchAPI
(
HomeProv
.
empId
,
HomeProv
.
session
,
searchController
.
text
);
if
(
data
!=
null
){
if
(
data
.
error
==
"0"
){
_accountsList
=
data
.
accounts
??[];
_leadsList
=
data
.
leads
??[];
_enquiresList
=
data
.
enquires
??[];
notifyListeners
();
}
}
}
catch
(
e
,
s
){
}
}
}
\ No newline at end of file
lib/Notifiers/crmProvider/crmGenerateQuotationProvider.dart
View file @
2ccf19cc
...
...
@@ -238,12 +238,14 @@ class Crmgeneratequotationprovider extends ChangeNotifier {
if
(
quotation_type
==
"genquotedown"
){
String
suggestedFilename
=
getUniqueFilename
(
'quotation'
,
'pdf'
);
String
contentDisposition
=
'attachment; filename="
$suggestedFilename
"'
;
openWhatsApp
(
data
.
quoteFilepath
!);
//
openWhatsApp(data.quoteFilepath!);
_handleDownload
(
context
,
data
.
quoteFilepath
!,
contentDisposition
,
'application/octet-stream'
,
''
);
}
else
if
(
quotation_type
==
"genquotewhatsappbymynum"
){
openWhatsApp
(
data
.
quoteFilepath
!);
}
Navigator
.
pop
(
context
,
true
);
toast
(
context
,
data
.
message
);
resetForm
();
notifyListeners
();
}
else
{}
...
...
@@ -291,6 +293,8 @@ class Crmgeneratequotationprovider extends ChangeNotifier {
'mimeType'
:
mimeType
,
'suggestedFilename'
:
suggestedFilename
,
});
await
launchUrl
(
Uri
.
parse
(
url
),
mode:
LaunchMode
.
externalApplication
);
}
else
if
(
Platform
.
isIOS
)
{
_handleIOSDownload
(
context
,
url
,
suggestedFilename
);
}
...
...
lib/Notifiers/crmProvider/crmLeadDetailsProvider.dart
View file @
2ccf19cc
...
...
@@ -4,12 +4,14 @@ import 'package:intl/intl.dart';
import
'package:provider/provider.dart'
;
import
'../../Models/crmModels/LeadDetailsResponse.dart'
;
import
'../../Utils/app_colors.dart'
;
import
'../../services/api_calling.dart'
;
import
'../HomeScreenNotifier.dart'
;
class
crmLeadDetailsProvider
extends
ChangeNotifier
{
bool
_isLoading
=
false
;
bool
_showMoreDetails
=
false
;
TextEditingController
nameController
=
TextEditingController
();
TextEditingController
designationController
=
TextEditingController
();
...
...
@@ -77,6 +79,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
String
?
get
dateError
=>
_dateError
;
bool
get
isLoading
=>
_isLoading
;
bool
get
showMoreDetails
=>
_showMoreDetails
;
List
<
String
>
get
visitTypes
=>
_visitTypes
;
String
?
get
selectedVisitType
=>
_selectedVisitType
;
...
...
@@ -94,9 +97,9 @@ class crmLeadDetailsProvider extends ChangeNotifier {
List
<
QuotationsDetails
>
get
quotationsDetails
=>
_quotationsDetails
;
List
<
String
>
get
Headings
=>
_headings
;
List
<
String
>
get
subHeadings
=>
_subHeadings
;
//
List<String> get Headings => _headings;
//
//
List<String> get subHeadings => _subHeadings;
String
?
get
formattedDate
=>
_formattedDate
;
...
...
@@ -167,6 +170,11 @@ class crmLeadDetailsProvider extends ChangeNotifier {
notifyListeners
();
}
set
showMoreDetails
(
bool
value
){
_showMoreDetails
=
value
;
notifyListeners
();
}
set
formattedDate
(
String
?
value
)
{
_formattedDate
=
value
;
dateController
.
text
=
_formattedDate
!;
...
...
@@ -206,34 +214,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
_followupDetails
=
data
.
followupDetails
!;
_appointmentDetails
=
data
.
appointmentDetails
!;
_quotationsDetails
=
data
.
quotationsDetails
!;
_headings
=
[
"Address"
,
"Account Manager Name"
,
"Account Created By"
,
"State"
,
"District"
,
"Sub Locality"
,
"Source"
,
"Reference"
,
"Team"
,
"Segment"
,
"Lead Status"
,
"Lead Age"
,
];
_subHeadings
=
[
data
.
leadDetails
!.
address
??
"-"
,
data
.
accountDetails
!.
accManager
??
"-"
,
data
.
accountDetails
!.
owner
??
"-"
,
data
.
accountDetails
!.
state
??
"-"
,
data
.
accountDetails
!.
district
??
"-"
,
data
.
accountDetails
!.
subLocality
??
"-"
,
data
.
accountDetails
!.
source
??
"-"
,
data
.
accountDetails
!.
reference
??
"-"
,
data
.
accountDetails
!.
team
??
"-"
,
data
.
accountDetails
!.
segment
??
"-"
,
data
.
leadDetails
!.
status
??
"-"
,
"
${data.leadDetails!.lage??"-"}
days"
,
];
_visitTypes
=
[
"Phone"
,
"Visit"
];
_isLoading
=
false
;
notifyListeners
();
...
...
@@ -358,7 +339,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Cancel'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -367,7 +348,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Done'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -380,6 +361,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
Expanded
(
flex:
3
,
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
mode:
CupertinoDatePickerMode
.
date
,
use24hFormat:
true
,
...
...
lib/Notifiers/crmProvider/crmNearbyOpenLeadsProvider.dart
View file @
2ccf19cc
...
...
@@ -155,6 +155,7 @@ class crmNearbyOpenLeadsProvider extends ChangeNotifier {
provider
.
empId
,
provider
.
session
,
_latlongs
,
_currentValue
);
if
(
data
!=
null
)
{
...
...
lib/Notifiers/crmProvider/crmProspectDetailsProvider.dart
View file @
2ccf19cc
...
...
@@ -3,6 +3,7 @@ import 'package:flutter/foundation.dart';
import
'package:intl/intl.dart'
;
import
'package:provider/provider.dart'
;
import
'../../Models/crmModels/crmProspectDetailsResponse.dart'
;
import
'../../Utils/app_colors.dart'
;
import
'../../Utils/commonServices.dart'
;
import
'../../services/api_calling.dart'
;
import
'../HomeScreenNotifier.dart'
;
...
...
@@ -315,7 +316,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Cancel'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -324,7 +325,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Done'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -337,6 +338,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
Expanded
(
flex:
3
,
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
mode:
CupertinoDatePickerMode
.
date
,
use24hFormat:
true
,
...
...
lib/Notifiers/financeProvider/RequesitionLidtDetailsProvider.dart
View file @
2ccf19cc
...
...
@@ -14,6 +14,7 @@ import 'approveRejectPaymentRequestResponse.dart';
class
Requesitionlidtdetailsprovider
extends
ChangeNotifier
{
TextEditingController
requestedAmount
=
TextEditingController
();
TextEditingController
approvedAmountReadonly
=
TextEditingController
();
TextEditingController
proposedPaymentAccount
=
TextEditingController
();
TextEditingController
approvedAmount
=
TextEditingController
();
TextEditingController
accountName
=
TextEditingController
();
...
...
@@ -30,7 +31,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
TextEditingController
bankHolderName
=
TextEditingController
();
TextEditingController
paymentAccountSearchController
=
TextEditingController
();
String
?
proposedAmountError
;
PaymentDetails
_paymentDetails
=
PaymentDetails
();
RequestDetails
_requestDetails
=
RequestDetails
();
PaymentRequestDetails
_paymentRequestDetails
=
PaymentRequestDetails
();
...
...
@@ -279,6 +280,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
print
(
"here 212ssass1"
);
requestedAmount
.
text
=
_requestDetails
.
requestedAmount
??
"-"
;
proposedPaymentAccount
.
text
=
_requestDetails
.
proposedAccount
??
"-"
;
approvedAmountReadonly
.
text
=
_requestDetails
.
formattedAmount
??
"-"
;
approvedAmount
.
text
=
_requestDetails
.
amount
??
"-"
;
accountName
.
text
=
_requestDetails
.
accountName
??
"-"
;
branch
.
text
=
_requestDetails
.
branch
??
"-"
;
...
...
@@ -320,6 +322,10 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
payment_request_id
,
approve_remarks
,)
async
{
try
{
if
(
approve_remarks
.
toString
().
trim
().
isEmpty
)
{
toast
(
context
,
"Enter Remarks"
);
return
;
}
var
provider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
RejectPaymentRequestSubmitAPI
(
provider
.
empId
,
...
...
@@ -371,6 +377,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
Future
<
void
>
paymentrequisitionProcessSubmitAPIFunction
(
context
,
mode
,
reference_num
,
payment_amount
,
payment_request_id
,
payment_account_id
,
processing_remarks
,
...
...
@@ -382,6 +389,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
provider
.
session
,
mode
,
reference_num
,
payment_amount
,
payment_request_id
,
payment_account_id
,
processing_remarks
,
...
...
@@ -401,6 +409,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
resetAll
()
{
requestedAmount
.
clear
();
proposedPaymentAccount
.
clear
();
approvedAmountReadonly
.
clear
();
approvedAmount
.
clear
();
accountName
.
clear
();
branch
.
clear
();
...
...
@@ -418,6 +427,7 @@ class Requesitionlidtdetailsprovider extends ChangeNotifier {
_selectedPaymentAccounts
=
null
;
_selectedValue
=
""
;
_selectedID
=
null
;
proposedAmountError
=
null
;
checkDropDownReset
();
notifyListeners
();
...
...
lib/Notifiers/financeProvider/RequestionListProvider.dart
View file @
2ccf19cc
...
...
@@ -28,6 +28,7 @@ import 'package:pdf/widgets.dart' as pw;
import
'package:printing/printing.dart'
;
import
'../../Models/financeModels/paymentRequestionBankDetailsResponse.dart'
;
import
'../../Utils/app_colors.dart'
;
class
Requestionlistprovider
extends
ChangeNotifier
{
TextEditingController
reqPurposeController
=
TextEditingController
();
...
...
@@ -49,6 +50,7 @@ class Requestionlistprovider extends ChangeNotifier {
String
?
_formattedDate
;
List
<
Accounts
>
_accounts
=
[];
List
<
PaymentModes
>
_paymentModes
=
[];
List
<
Employees
>
_approvalEmployee
=
[];
List
<
String
>
_requestingPurposes
=
[];
List
<
RequistionList
>
_requisitionList
=
[];
...
...
@@ -58,6 +60,10 @@ class Requestionlistprovider extends ChangeNotifier {
List
<
DirectPaymentModes
>
_directPaymentModes
=
[];
Employees
?
_selectedApprovalEmployee
;
String
?
_selectedApprovalEmployeeID
;
String
?
_selectedApprovalEmployeeValue
;
DirectAccounts
?
_selectedDirectAccounts
;
DirectPaymentAccounts
?
_selectDirectPaymentAccounts
;
...
...
@@ -73,6 +79,16 @@ class Requestionlistprovider extends ChangeNotifier {
String
_directPaymentModesID
=
""
;
String
_directPaymentModesValues
=
""
;
List
<
Employees
>
get
approvalEmployee
=>
_approvalEmployee
;
Employees
?
get
selectedApprovalEmployee
=>
_selectedApprovalEmployee
;
String
?
get
selectedApprovalEmployeeID
=>
_selectedApprovalEmployeeID
;
String
?
get
selectedApprovalEmployeeValue
=>
_selectedApprovalEmployeeValue
;
List
<
DirectAccounts
>
get
directAccounts
=>
_directAccounts
;
List
<
DirectPaymentAccounts
>
get
directPaymentAccounts
=>
...
...
@@ -104,6 +120,22 @@ class Requestionlistprovider extends ChangeNotifier {
// Date picker methods
String
?
get
formattedDate
=>
_formattedDate
;
set
selectedApprovalEmployee
(
Employees
?
value
){
_selectedApprovalEmployee
=
value
;
_selectedApprovalEmployeeID
=
value
!.
id
!;
_selectedApprovalEmployeeValue
=
value
!.
name
!;
notifyListeners
();
}
set
selectedApprovalEmployeeValue
(
String
?
value
){
_selectedApprovalEmployeeValue
=
value
;
notifyListeners
();
}
set
selectedApprovalEmployeeID
(
String
?
value
){
_selectedApprovalEmployeeID
=
value
;
notifyListeners
();
}
set
formattedDate
(
String
?
value
)
{
_formattedDate
=
value
;
dateController
.
text
=
_formattedDate
!;
...
...
@@ -180,6 +212,7 @@ class Requestionlistprovider extends ChangeNotifier {
String
_paymentModeId
=
""
;
String
_paymentModeValue
=
""
;
String
_accountId
=
""
;
String
_accountValue
=
""
;
String
_reqPurpose
=
""
;
String
?
selectAccountError
;
...
...
@@ -226,6 +259,7 @@ class Requestionlistprovider extends ChangeNotifier {
get
imagePicked
=>
_image_picked
;
String
get
accountId
=>
_accountId
;
String
get
accountValue
=>
_accountValue
;
String
get
reqPurpose
=>
_reqPurpose
;
...
...
@@ -266,8 +300,10 @@ class Requestionlistprovider extends ChangeNotifier {
}
set
selectedAccount
(
Accounts
?
value
)
{
_selectedAccounts
=
value
;
_accountId
=
value
!.
id
!;
selectAccountError
=
null
;
_accountId
=
value
!.
id
!;
_accountValue
=
value
!.
name
!;
selectAccountError
=
null
;
print
(
"_accountId:
$_accountId
"
);
notifyListeners
();
}
...
...
@@ -302,6 +338,10 @@ class Requestionlistprovider extends ChangeNotifier {
_accountId
=
value
;
notifyListeners
();
}
set
accountValue
(
String
value
)
{
_accountValue
=
value
;
notifyListeners
();
}
set
reqPurposeId
(
String
value
)
{
_reqPurpose
=
value
;
...
...
@@ -364,20 +404,19 @@ class Requestionlistprovider extends ChangeNotifier {
_accounts
.
clear
();
_paymentModes
.
clear
();
_requestingPurposes
.
clear
();
_approvalEmployee
.
clear
();
notifyListeners
();
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
_accounts
=
data
.
accounts
??[];
print
(
"1234234"
);
if
(
mode
==
"self"
&&
data
.
accounts
!.
length
==
1
){
print
(
"1234234"
);
paymentRequestionBankDetailsAPIFunction
(
context
,
data
.
accounts
!.
first
.
id
);
}
_approvalEmployee
=
data
.
employees
??[];
_paymentModes
=
data
.
paymentModes
??[];
_requestingPurposes
=
data
.
requestingPurposes
??[];
print
(
'here'
);
print
(
data
.
requestingPurposes
);
print
(
_accounts
);
_requestingPurposes
=
data
.
requestingPurposes
??[];
notifyListeners
();
checkDropdownselected
();
...
...
@@ -416,7 +455,7 @@ class Requestionlistprovider extends ChangeNotifier {
}
catch
(
e
,
s
)
{}
}
Future
<
void
>
addPaymentRequestionSubmitAPI
(
context
,
mode
)
async
{
Future
<
void
>
addPaymentRequestionSubmitAPI
(
context
,
mode
,
approvalEmployeeID
)
async
{
try
{
_submitClicked
=
true
;
notifyListeners
();
...
...
@@ -447,6 +486,7 @@ class Requestionlistprovider extends ChangeNotifier {
bankAcHolderController
.
text
,
bankUpiController
.
text
,
_image
,
approvalEmployeeID
);
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
...
...
@@ -606,7 +646,7 @@ class Requestionlistprovider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Cancel'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -615,7 +655,7 @@ class Requestionlistprovider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Done'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -628,10 +668,12 @@ class Requestionlistprovider extends ChangeNotifier {
Expanded
(
flex:
3
,
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
mode:
CupertinoDatePickerMode
.
date
,
use24hFormat:
true
,
showDayOfWeek:
true
,
onDateTimeChanged:
(
DateTime
newDate
)
{
setDate
(
newDate
);
},
...
...
@@ -910,6 +952,7 @@ class Requestionlistprovider extends ChangeNotifier {
_paymentModeId
=
""
;
_paymentModeValue
=
""
;
_accountId
=
""
;
_accountValue
=
""
;
_reqPurpose
=
""
;
_image
=
null
;
...
...
@@ -966,6 +1009,7 @@ class Requestionlistprovider extends ChangeNotifier {
!
_accounts
.
contains
(
_selectedAccounts
))
{
_selectedAccounts
=
null
;
_accountId
=
""
;
_accountValue
=
""
;
}
if
(
_selectedPayment
!=
null
&&
!
_paymentModes
.
contains
(
_selectedPayment
))
{
...
...
@@ -1131,6 +1175,10 @@ class Requestionlistprovider extends ChangeNotifier {
}
if
(
_paymentModeValue
==
"UPI"
)
{
if
(
bankAcHolderController
.
text
.
trim
().
isEmpty
)
{
bankHolderError
=
"Please enter account holder name"
;
isValid
=
false
;
}
if
(
bankUpiController
.
text
.
trim
().
isEmpty
)
{
UPIError
=
"Please enter UPI ID"
;
isValid
=
false
;
...
...
lib/Notifiers/financeProvider/paymentReceiptsProvider.dart
View file @
2ccf19cc
...
...
@@ -8,6 +8,7 @@ import 'package:excel/excel.dart';
import
'package:flutter/material.dart'
;
import
'package:flutter/services.dart'
;
import
'package:generp/Notifiers/HomeScreenNotifier.dart'
;
import
'package:generp/Utils/app_colors.dart'
;
import
'package:generp/services/api_calling.dart'
;
import
'package:image_picker/image_picker.dart'
;
import
'package:intl/intl.dart'
;
...
...
@@ -931,7 +932,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Cancel'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -940,7 +941,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Done'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -953,6 +954,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
Expanded
(
flex:
3
,
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
mode:
CupertinoDatePickerMode
.
date
,
use24hFormat:
true
,
...
...
lib/Notifiers/loginNotifier.dart
View file @
2ccf19cc
...
...
@@ -41,6 +41,11 @@ class Loginnotifier extends ChangeNotifier {
String
get
AndroidDevId
=>
_androidId
;
int
get
loginStatus
=>
_loginStatus
;
set
isLoading
(
bool
value
){
_isLoading
=
value
;
notifyListeners
();
}
Future
<
void
>
initAndroidId
()
async
{
String
androidId
;
...
...
@@ -157,6 +162,7 @@ int get loginStatus => _loginStatus;
password
,
)
async
{
try
{
if
(!
_validate
(
email
,
password
))
return
;
_isLoading
=
true
;
...
...
lib/Notifiers/ordersProvider/addOrderProvider.dart
View file @
2ccf19cc
...
...
@@ -5,6 +5,7 @@ import 'package:flutter/cupertino.dart';
import
'package:flutter/foundation.dart'
;
import
'package:flutter/material.dart'
;
import
'package:generp/Models/ordersModels/addOrderAccontDetailsResponse.dart'
;
import
'package:generp/Utils/app_colors.dart'
;
import
'package:generp/Utils/commonServices.dart'
;
import
'package:geolocator/geolocator.dart'
;
import
'package:geolocator/geolocator.dart'
as
geo_location
;
...
...
@@ -385,7 +386,7 @@ class Addorderprovider extends ChangeNotifier {
set
selecetdDispatchStates
(
States
?
value
)
{
_selectedDispatchStates
=
value
;
_selectedDispatchStateID
=
value
!
.
id
;
_selectedDispatchStateID
=
value
?
.
id
;
_selectedDispatchStateName
=
value
!.
name
!;
selectedDispatchStateError
=
""
;
notifyListeners
();
...
...
@@ -403,7 +404,7 @@ class Addorderprovider extends ChangeNotifier {
set
selectedDispatchDistricts
(
Districts
?
value
)
{
_selectedDispatchDistricts
=
value
;
_selectedDispatchDistrictID
=
value
!
.
id
;
_selectedDispatchDistrictID
=
value
?
.
id
;
_selectedDispatchDistrictValue
=
value
!.
district
;
selectedDispatchDistrictError
=
""
;
// districtError = null;
...
...
@@ -412,7 +413,7 @@ class Addorderprovider extends ChangeNotifier {
set
selectedDispatchSubLocations
(
SubLocations
?
value
)
{
_selectedDispatchSubLocations
=
value
;
_selectedDispatchSubLocID
=
value
!
.
id
;
_selectedDispatchSubLocID
=
value
?
.
id
;
_selectedDispatchSubLocValue
=
value
!.
subLocality
!;
selectedDispatchSubLocError
=
""
;
// localityError = null;
...
...
@@ -1573,7 +1574,7 @@ class Addorderprovider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Cancel'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -1582,7 +1583,7 @@ class Addorderprovider extends ChangeNotifier {
CupertinoButton
(
child:
Text
(
'Done'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -1595,6 +1596,7 @@ class Addorderprovider extends ChangeNotifier {
Expanded
(
flex:
3
,
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
mode:
CupertinoDatePickerMode
.
date
,
use24hFormat:
true
,
...
...
lib/Notifiers/ordersProvider/addPaymentProvider.dart
View file @
2ccf19cc
...
...
@@ -14,6 +14,7 @@ import 'package:provider/provider.dart';
import
'../../Models/ordersModels/AddOrderPaymentSelectAccountResponse.dart'
;
import
'../../Models/ordersModels/AddOrderPaymentSelectOrderResponse.dart'
;
import
'../../Utils/app_colors.dart'
;
class
Addpaymentprovider
extends
ChangeNotifier
{
...
...
@@ -115,6 +116,7 @@ class Addpaymentprovider extends ChangeNotifier{
}
set
selectedDescription
(
String
?
value
){
_selectedDescription
=
value
;
descriptionError
=
""
;
notifyListeners
();
}
set
selectedAccountList
(
AccountList
?
value
){
...
...
@@ -496,22 +498,18 @@ class Addpaymentprovider extends ChangeNotifier{
if
(
amountController
.
text
.
trim
().
isEmpty
){
isValid
=
false
;
amountError
=
"Please Enter the Amount"
;
notifyListeners
();
}
if
(
orderAdjustedAmountController
.
text
.
trim
().
isEmpty
){
isValid
=
false
;
orderAdjustedAmountError
=
"Please Enter the Amount"
;
notifyListeners
();
}
if
(
descriptionController
.
text
.
trim
().
isEmpty
){
if
(
_description
==
null
||
_selectedDescription
==
null
)
{
descriptionError
=
"Please select"
;
isValid
=
false
;
descriptionError
=
"Please Enter the Description"
;
notifyListeners
();
}
if
(
paymentReceivedDateController
.
text
.
trim
().
isEmpty
){
isValid
=
false
;
paymentModeError
=
"Please Enter the Amount"
;
notifyListeners
();
}
if
(
_paymentMode
==
null
||
_selectedPaymentMode
==
null
)
{
paymentModeError
=
"Please select an Account"
;
...
...
@@ -521,8 +519,8 @@ class Addpaymentprovider extends ChangeNotifier{
if
(
paymentRefController
.
text
.
trim
().
isEmpty
){
isValid
=
false
;
paymentRefError
=
"Please Enter the Payment reference"
;
notifyListeners
();
}
_submitClicked
=
false
;
notifyListeners
();
return
isValid
;
}
...
...
@@ -614,7 +612,7 @@ class Addpaymentprovider extends ChangeNotifier{
CupertinoButton
(
child:
Text
(
'Cancel'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -623,7 +621,7 @@ class Addpaymentprovider extends ChangeNotifier{
CupertinoButton
(
child:
Text
(
'Done'
,
style:
TextStyle
(
fontFamily:
"JakartaMedium"
),
style:
TextStyle
(
fontFamily:
"JakartaMedium"
,
color:
AppColors
.
app_blue
),
),
onPressed:
()
{
Navigator
.
pop
(
context
);
...
...
@@ -636,6 +634,7 @@ class Addpaymentprovider extends ChangeNotifier{
Expanded
(
flex:
3
,
child:
CupertinoDatePicker
(
dateOrder:
DatePickerDateOrder
.
dmy
,
initialDateTime:
_date
??
DateTime
.
now
(),
mode:
CupertinoDatePickerMode
.
date
,
use24hFormat:
true
,
...
...
lib/Notifiers/ordersProvider/dispatchOrderProvider.dart
View file @
2ccf19cc
import
'package:flutter/cupertino.dart'
;
import
'package:flutter/foundation.dart'
;
import
'package:generp/Notifiers/ordersProvider/pagesDashboardProvider.dart'
;
import
'package:provider/provider.dart'
;
import
'../../Utils/commonServices.dart'
;
...
...
@@ -112,6 +113,24 @@ String? driverMobileNumberError;
}
Future
<
void
>
ordersPDIIDByEngineNumberFunction
(
context
,
index
)
async
{
try
{
final
provider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
ordersPdiIdByEngNumberUrlAPI
(
provider
.
empId
,
provider
.
session
,
engineNumberControllers
[
index
].
text
,
);
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
pdiIDControllers
[
index
].
text
=
data
.
pdiId
!;
updateTotalAmount
(
index
);
notifyListeners
();
}
else
{}
}
else
{}
}
catch
(
e
,
s
)
{}
}
Future
<
void
>
ordersDetailsDispatchOrderViewFunction
(
context
,
orderID
)
async
{
try
{
final
provider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
...
...
@@ -140,6 +159,7 @@ String? driverMobileNumberError;
sale_order_number
,
edit_company_name
,
crm_order_p_id
,
mode
)
async
{
try
{
if
(!
validateApproveRejectForm
())
{
...
...
@@ -149,6 +169,7 @@ String? driverMobileNumberError;
_submitClicked
=
true
;
notifyListeners
();
var
provider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
detProvider
=
Provider
.
of
<
Pagesdashboardprovider
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
ordersDetailsApproveRejectAPI
(
provider
.
empId
,
provider
.
session
,
...
...
@@ -171,6 +192,11 @@ String? driverMobileNumberError;
_submitClicked
=
false
;
toast
(
context
,
"
${data.message}
"
);
resetForm
();
detProvider
.
ordersDetailsByModeAPIFunction
(
context
,
orderId
,
mode
,
);
Navigator
.
pop
(
context
,
true
);
notifyListeners
();
}
else
{
...
...
lib/Notifiers/ordersProvider/editOrderProvider.dart
View file @
2ccf19cc
...
...
@@ -39,7 +39,6 @@ class Editorderprovider extends ChangeNotifier {
String
?
_selectedDispatchSubLocID
;
String
?
_selectedDispatchSubLocValue
;
String
?
_selectedUnloadingScope
;
String
?
_selectedFreightScope
;
String
?
_selectedErectionScope
;
...
...
@@ -59,7 +58,6 @@ class Editorderprovider extends ChangeNotifier {
int
get
imagePicked
=>
_imagePicked
;
List
<
String
>
get
unloadingScope
=>
_unloadingScope
;
List
<
String
>
get
freightScope
=>
_freightScope
;
...
...
@@ -99,9 +97,7 @@ class Editorderprovider extends ChangeNotifier {
String
?
get
selectedDispatchSubLocValue
=>
_selectedDispatchSubLocValue
;
OrderDetails
get
orderDetails
=>
_orderDetails
;
OrderDetails
get
orderDetails
=>
_orderDetails
;
set
imagePath
(
File
?
value
)
{
_imageName
=
value
;
...
...
@@ -117,6 +113,7 @@ class Editorderprovider extends ChangeNotifier {
_imagePicked
=
value
;
notifyListeners
();
}
set
selecetdDispatchStates
(
States
?
value
)
{
_selectedDispatchStates
=
value
;
_selectedDispatchStateID
=
value
!.
id
;
...
...
@@ -169,10 +166,12 @@ class Editorderprovider extends ChangeNotifier {
_selectedDispatchSubLocValue
=
value
;
notifyListeners
();
}
set
submitClicked
(
bool
value
){
set
submitClicked
(
bool
value
)
{
_submitClicked
=
value
;
notifyListeners
();
}
set
selectedUnloadingScope
(
String
?
value
)
{
_selectedUnloadingScope
=
value
;
notifyListeners
();
...
...
@@ -200,15 +199,16 @@ class Editorderprovider extends ChangeNotifier {
if
(
data
.
error
==
"0"
)
{
_dispatchStates
=
data
.
states
!;
_orderDetails
=
data
.
orderDetails
!;
_erectionScope
=
[
"
Excluded"
,
"
Included"
,
"Excluded"
];
_unloadingScope
=
[
"
Excluded"
,
"
Included"
,
"Excluded"
];
_freightScope
=
[
"Included"
,
"Included"
,
"Excluded"
];
_erectionScope
=
[
"Included"
,
"Excluded"
];
_unloadingScope
=
[
"Included"
,
"Excluded"
];
_freightScope
=
[
"Included"
,
"Excluded"
];
notifyListeners
();
}
else
{}
}
else
{}
}
catch
(
e
,
s
)
{}
}
Future
<
void
>
getDispatchDistrictAPI
(
context
,
stateID
)
async
{
try
{
var
homeProv
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
...
...
@@ -249,18 +249,39 @@ class Editorderprovider extends ChangeNotifier {
}
catch
(
e
,
s
)
{}
}
Future
<
void
>
ordersEditOrderAPISubmitFunction
(
context
,
orderID
,
stateID
,
districtID
,
subLocID
,
unloading
,
freight
,
erection
)
async
{
Future
<
void
>
ordersEditOrderAPISubmitFunction
(
context
,
orderID
,
stateID
,
districtID
,
subLocID
,
unloading
,
freight
,
erection
,
)
async
{
try
{
_submitClicked
=
true
;
notifyListeners
();
final
provider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
ordersDetailsEditOrderSubmitAPI
(
provider
.
empId
,
provider
.
session
,
orderID
,
_image
,
stateID
,
districtID
,
subLocID
,
dispatchPincodeController
.
text
,
dispatchAddressController
.
text
,
unloading
,
freight
,
erection
,
noteController
.
text
);
final
data
=
await
ApiCalling
.
ordersDetailsEditOrderSubmitAPI
(
provider
.
empId
,
provider
.
session
,
orderID
,
_image
,
stateID
,
districtID
,
subLocID
,
dispatchPincodeController
.
text
,
dispatchAddressController
.
text
,
unloading
,
freight
,
erection
,
noteController
.
text
,
);
if
(
data
!=
null
)
{
if
(
data
.
error
==
"0"
)
{
_submitClicked
=
false
;
Navigator
.
pop
(
context
,
true
);
Navigator
.
pop
(
context
,
true
);
toast
(
context
,
data
.
message
);
notifyListeners
();
}
else
{
...
...
@@ -277,7 +298,6 @@ class Editorderprovider extends ChangeNotifier {
}
}
imgFromCamera
(
context
)
async
{
// Capture a photo
try
{
...
...
@@ -320,20 +340,66 @@ class Editorderprovider extends ChangeNotifier {
}
}
void
onChangedDispatchAddress
(
value
){
void
onChangedDispatchAddress
(
value
)
{
dispatchAddressError
=
""
;
notifyListeners
();
}
void
onChangedDispatchPincode
(
value
){
void
onChangedDispatchPincode
(
value
)
{
dispatchPincodeError
=
""
;
notifyListeners
();
}
void
onChangedNote
(
value
){
void
onChangedNote
(
value
)
{
noteError
=
""
;
notifyListeners
();
}
void
resetForm
(){
void
resetForm
()
{
dispatchPincodeController
.
clear
();
dispatchAddressController
.
clear
();
noteController
.
clear
();
_selectedUnloadingScope
=
null
;
_selectedFreightScope
=
null
;
_selectedErectionScope
=
null
;
_selectedDispatchStates
=
null
;
_selectedDispatchStateID
=
null
;
_selectedDispatchStateName
=
null
;
_selectedDispatchDistricts
=
null
;
_selectedDispatchDistrictID
=
null
;
_selectedDispatchDistrictValue
=
null
;
_selectedDispatchSubLocations
=
null
;
_selectedDispatchSubLocID
=
null
;
_selectedDispatchSubLocValue
=
null
;
if
(!
_dispatchStates
.
contains
(
_selectedDispatchStates
)
&&
_selectedDispatchStates
!=
null
)
{
_selectedDispatchStateID
=
null
;
_selectedDispatchStateName
=
null
;
}
if
(!
_dispatchDistricts
.
contains
(
_selectedDispatchDistricts
)
&&
_selectedDispatchDistricts
!=
null
)
{
_selectedDispatchDistrictID
=
null
;
_selectedDispatchDistrictValue
=
null
;
}
if
(!
_dispatchSubLocations
.
contains
(
_selectedDispatchSubLocations
)
&&
_selectedDispatchSubLocations
!=
null
)
{
_selectedDispatchSubLocID
=
null
;
_selectedDispatchSubLocValue
=
null
;
}
if
(!
_unloadingScope
.
contains
(
_selectedUnloadingScope
)
&&
_selectedUnloadingScope
!=
null
)
{
_selectedUnloadingScope
=
null
;
}
if
(!
_freightScope
.
contains
(
_selectedFreightScope
)
&&
_selectedFreightScope
!=
null
)
{
_selectedFreightScope
=
null
;
}
if
(!
_erectionScope
.
contains
(
_selectedErectionScope
)
&&
_selectedErectionScope
!=
null
)
{
_selectedErectionScope
=
null
;
}
notifyListeners
();
}
}
lib/Notifiers/ordersProvider/pagesDashboardProvider.dart
View file @
2ccf19cc
...
...
@@ -5,6 +5,7 @@ import 'package:flutter/foundation.dart';
import
'package:image_picker/image_picker.dart'
;
import
'package:provider/provider.dart'
;
import
'../../Models/ordersModels/orderDashboardResponse.dart'
;
import
'../../Models/ordersModels/ordersAccessiblePagesResponse.dart'
;
import
'../../Models/ordersModels/ordersDetailsByModeResponse.dart'
;
import
'../../Models/ordersModels/ordersListByModeFilterResponse.dart'
;
...
...
@@ -15,6 +16,8 @@ import '../HomeScreenNotifier.dart';
class
Pagesdashboardprovider
extends
ChangeNotifier
{
bool
_submitClicked
=
false
;
bool
_showMoreDetails
=
false
;
TextEditingController
feedbackController
=
TextEditingController
();
TextEditingController
approveRejectFeedbackController
=
TextEditingController
();
...
...
@@ -47,6 +50,21 @@ class Pagesdashboardprovider extends ChangeNotifier {
var
_image_picked
=
0
;
final
ImagePicker
_picker
=
ImagePicker
();
Ordergain
_ordergain
=
Ordergain
();
Ordergain
get
ordergain
=>
_ordergain
;
Ordergain
_dispatches
=
Ordergain
();
Ordergain
get
dispatches
=>
_dispatches
;
Ordergain
_pendingTasks
=
Ordergain
();
Ordergain
get
pendingTasks
=>
_pendingTasks
;
Ordergain
_quote
=
Ordergain
();
Ordergain
get
quote
=>
_quote
;
List
<
Ordergain
>
_ordersgain
=
[];
List
<
Ordergain
>
get
ordersgain
=>
_ordersgain
;
bool
get
showMoreDetails
=>
_showMoreDetails
;
set
showMoreDetails
(
bool
value
){
_showMoreDetails
=
value
;
notifyListeners
();
}
File
?
_image
;
File
?
_imageName
;
...
...
@@ -112,9 +130,9 @@ class Pagesdashboardprovider extends ChangeNotifier {
String
?
get
selectedLeadType
=>
_selectedLeadType
;
List
<
String
>
get
Headings
=>
_headings
;
List
<
String
>
get
subHeadings
=>
_subHeadings
;
//
List<String> get Headings => _headings;
//
//
List<String> get subHeadings => _subHeadings;
set
imagePath
(
File
?
value
)
{
_imageName
=
value
;
...
...
@@ -214,10 +232,38 @@ class Pagesdashboardprovider extends ChangeNotifier {
}
}
Future
<
void
>
orderDashboardAPIFunction
(
context
,
mode
,
from
,
to
,
teamemployee
)
async
{
try
{
var
HomeProv
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
ordersDashboardAPI
(
HomeProv
.
empId
,
HomeProv
.
session
,
mode
,
from
,
to
,
teamemployee
);
if
(
data
!=
null
){
if
(
data
.
error
==
"0"
){
_ordergain
=
data
.
ordergain
!;
_dispatches
=
data
.
dispatches
!;
_pendingTasks
=
data
.
pendingTasks
!;
_quote
=
data
.
quote
!;
_ordersgain
=
[
_ordergain
,
_dispatches
,
_pendingTasks
,
_quote
,
];
notifyListeners
();
}
}
}
catch
(
e
,
s
){
}
}
Future
<
void
>
ordersAccessiblePagesAPIFunction
(
context
)
async
{
try
{
var
provider
=
Provider
.
of
<
HomescreenNotifier
>(
context
,
listen:
false
);
final
data
=
await
ApiCalling
.
orders
Dashboard
API
(
final
data
=
await
ApiCalling
.
orders
AccesiblePages
API
(
provider
.
empId
,
provider
.
session
,
);
...
...
@@ -303,7 +349,7 @@ class Pagesdashboardprovider extends ChangeNotifier {
_paymentHistory
=
data
.
paymentHistory
!;
editCompanyController
.
text
=
data
.
orderDetails
!.
accountName
??
""
;
_headings
=
[
"Order N
o
"
,
"Order N
umber
"
,
"Account Name"
,
"Billing State"
,
...
...
lib/Notifiers/ordersProvider/tpcAgentsProvider.dart
View file @
2ccf19cc
...
...
@@ -108,8 +108,6 @@ class Tpcagentsprovider extends ChangeNotifier{
if
(
data
.
error
==
"0"
)
{
_tpcAgentsList
=
data
.
tpcAgentList
!;
_isLoading
=
false
;
notifyListeners
();
}
else
{
_isLoading
=
false
;
}
...
...
lib/Notifiers/scanLoginProvider.dart
View file @
2ccf19cc
...
...
@@ -84,11 +84,13 @@ class Scanloginprovider extends ChangeNotifier{
if
(
data
.
sessionExists
==
1
)
{
if
(
data
.
error
==
0
)
{
Navigator
.
pop
(
context
);
toast
(
context
,
data
.
message
);
toast
(
context
,
"Login Successful!!"
);
}
else
if
(
data
.
error
==
1
)
{
toast
(
context
,
data
.
message
);
toast
(
context
,
"Session Expired, Please Try Again!!"
);
}
else
if
(
data
.
error
==
2
)
{
toast
(
context
,
data
.
message
);
toast
(
context
,
"Something Went wrong, Please Try Again!!"
);
}
else
{
toast
(
context
,
"Something Went wrong, Please Try Again!"
);
...
...
lib/Utils/commonWidgets.dart
View file @
2ccf19cc
...
...
@@ -118,6 +118,7 @@ Widget errorWidget(context, text) {
Widget
textControllerWidget
(
context
,
controller
,
textHead
,
hintText
,
Function
(
String
)?
onChanged
,
inputtype
,
...
...
@@ -133,7 +134,7 @@ Widget textControllerWidget(
children:
[
Padding
(
padding:
const
EdgeInsets
.
only
(
bottom:
5.0
,
top:
8.0
),
child:
Text
(
hintText
),
child:
Text
(
textHead
),
),
Container
(
height:
hintText
==
"Enter Description"
?
150
:
50
,
...
...
lib/main.dart
View file @
2ccf19cc
...
...
@@ -242,6 +242,11 @@ class MyApp extends StatelessWidget {
shadowColor:
Colors
.
white54
,
searchBarTheme:
const
SearchBarThemeData
(),
tabBarTheme:
const
TabBarThemeData
(),
textSelectionTheme:
TextSelectionThemeData
(
cursorColor:
AppColors
.
app_blue
),
dialogTheme:
const
DialogThemeData
(
shadowColor:
Colors
.
white
,
surfaceTintColor:
Colors
.
white
,
...
...
@@ -264,6 +269,7 @@ class MyApp extends StatelessWidget {
color:
Colors
.
white
,
//),
),
textButtonTheme:
TextButtonThemeData
(
style:
ButtonStyle
(
// overlayColor: MaterialStateProperty.all(Colors.white),
...
...
@@ -287,6 +293,16 @@ class MyApp extends StatelessWidget {
AppColors
.
grey_semi
.
withOpacity
(
0.6
),
),
),
inputDecorationTheme:
InputDecorationTheme
(
hintStyle:
TextStyle
(
fontWeight:
FontWeight
.
w400
,
color:
Color
(
0xFFB4BEC0
),
fontSize:
14
,
),
enabledBorder:
InputBorder
.
none
,
focusedBorder:
InputBorder
.
none
,
),
),
home:
const
Splash
(),
);
...
...
lib/screens/AttendanceScreen.dart
View file @
2ccf19cc
This diff is collapsed.
Click to expand it.
lib/screens/CheckInScreen.dart
View file @
2ccf19cc
import
'dart:io'
;
import
'package:flutter/material.dart'
;
import
'package:flutter_image_compress/flutter_image_compress.dart'
;
import
'package:generp/Utils/app_colors.dart'
;
import
'package:generp/Utils/commonWidgets.dart'
;
import
'package:google_maps_flutter/google_maps_flutter.dart'
;
import
'package:image_picker/image_picker.dart'
;
import
'package:provider/provider.dart'
;
import
'../Notifiers/CheckInProvider.dart'
;
import
'FrontCameraCapture.dart'
;
class
CheckInOutScreen
extends
StatefulWidget
{
final
int
getAttendanceStatus
;
...
...
@@ -26,6 +31,13 @@ class _CheckInOutScreenState extends State<CheckInOutScreen> {
});
}
@override
void
dispose
()
{
// TODO: implement dispose
super
.
dispose
();
}
@override
Widget
build
(
BuildContext
context
)
{
...
...
@@ -35,10 +47,12 @@ class _CheckInOutScreenState extends State<CheckInOutScreen> {
return
Consumer
<
CheckInOutProvider
>(
builder:
(
context
,
provider
,
child
)
{
return
WillPopScope
(
onWillPop:
()
=>
onBackPressed
(
context
),
onWillPop:
()
{
provider
.
dispose
();
return
onBackPressed
(
context
);},
child:
Scaffold
(
resizeToAvoidBottomInset:
true
,
appBar:
appbar
(
context
,
widget
.
getAttendanceStatus
==
0
?
"Check In"
:
"Check Out"
),
appBar:
appbar
2
(
context
,
widget
.
getAttendanceStatus
==
0
?
"Check In"
:
"Check Out"
,
provider
.
dispose
,
SizedBox
(
width:
0
,)
),
body:
SafeArea
(
child:
Container
(
child:
SafeArea
(
...
...
@@ -133,6 +147,10 @@ class _CheckInOutScreenState extends State<CheckInOutScreen> {
provider
.
locationController
,
keyboardType:
TextInputType
.
text
,
onChanged:
(
value
)
{
provider
.
validateLocation
=
""
;
provider
.
notifyListeners
();
},
decoration:
InputDecoration
(
hintText:
...
...
@@ -189,9 +207,38 @@ class _CheckInOutScreenState extends State<CheckInOutScreen> {
provider
.
notifyListeners
();
}
else
{
provider
.
validateLocation
=
""
;
if
(
Platform
.
isAndroid
)
{
provider
.
image
=
await
Navigator
.
push
(
context
,
MaterialPageRoute
(
builder:
(
context
)
=>
FrontCameraCapture
()));
print
(
"
${provider.image}
"
);
if
(
provider
.
image
!=
null
){
provider
.
imagePicked
=
1
;
}
var
file
=
await
FlutterImageCompress
.
compressWithFile
(
provider
.
image
!.
path
,
);
if
(
file
!=
null
)
{
if
(
widget
.
getAttendanceStatus
==
0
)
{
provider
.
checkIn
(
context
);
}
else
if
(
widget
.
getAttendanceStatus
==
1
)
{
provider
.
checkOut
(
context
);
}
}
}
else
if
(
Platform
.
isIOS
)
{
// BackgroundLocation.stopLocationService();
provider
.
imgFromCamera
(
context
,
widget
.
getAttendanceStatus
);
// setState(() {
// isLoading = true;
// image_picked = 0;
// CheckIn();
// });
}
}
},
...
...
Prev
1
2
3
4
5
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