All Employees fetching task done in advance payment screen
This commit is contained in:
parent
c4bb8331c9
commit
2255ae29fa
@ -65,12 +65,17 @@ class AdvancePaymentController extends GetxController {
|
|||||||
try {
|
try {
|
||||||
employeesLoading.value = true;
|
employeesLoading.value = true;
|
||||||
|
|
||||||
final list = await ApiService.getEmployees(query: q);
|
// Build query params
|
||||||
|
final queryParams = {
|
||||||
|
'allEmployee': 'true',
|
||||||
|
if (q.isNotEmpty) 'q': q, // only include search query if not empty
|
||||||
|
};
|
||||||
|
|
||||||
|
final list = await ApiService.getEmployees(queryParams: queryParams);
|
||||||
final parsed = Employee.listFromJson(list);
|
final parsed = Employee.listFromJson(list);
|
||||||
logSafe("✅ Employees fetched from API: ${parsed.map((e) => e.name).toList()}");
|
logSafe(
|
||||||
|
"✅ Employees fetched from API: ${parsed.map((e) => e.name).toList()}");
|
||||||
|
|
||||||
|
|
||||||
// Save full result and filter locally
|
|
||||||
allEmployees = parsed;
|
allEmployees = parsed;
|
||||||
_filterEmployees(q);
|
_filterEmployees(q);
|
||||||
} catch (e, s) {
|
} catch (e, s) {
|
||||||
|
|||||||
@ -307,7 +307,8 @@ class ApiService {
|
|||||||
// Service Project Module APIs
|
// Service Project Module APIs
|
||||||
|
|
||||||
/// Get details of a single service project
|
/// Get details of a single service project
|
||||||
static Future<ServiceProjectDetailModel?> getServiceProjectDetailApi(String projectId) async {
|
static Future<ServiceProjectDetailModel?> getServiceProjectDetailApi(
|
||||||
|
String projectId) async {
|
||||||
final endpoint = "${ApiEndpoints.getServiceProjectDetail}/$projectId";
|
final endpoint = "${ApiEndpoints.getServiceProjectDetail}/$projectId";
|
||||||
logSafe("Fetching details for Service Project ID: $projectId");
|
logSafe("Fetching details for Service Project ID: $projectId");
|
||||||
|
|
||||||
@ -315,7 +316,8 @@ static Future<ServiceProjectDetailModel?> getServiceProjectDetailApi(String proj
|
|||||||
final response = await _getRequest(endpoint);
|
final response = await _getRequest(endpoint);
|
||||||
|
|
||||||
if (response == null) {
|
if (response == null) {
|
||||||
logSafe("Service Project Detail request failed: null response", level: LogLevel.error);
|
logSafe("Service Project Detail request failed: null response",
|
||||||
|
level: LogLevel.error);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -328,12 +330,13 @@ static Future<ServiceProjectDetailModel?> getServiceProjectDetailApi(String proj
|
|||||||
return ServiceProjectDetailModel.fromJson(jsonResponse);
|
return ServiceProjectDetailModel.fromJson(jsonResponse);
|
||||||
}
|
}
|
||||||
} catch (e, stack) {
|
} catch (e, stack) {
|
||||||
logSafe("Exception during getServiceProjectDetailApi: $e", level: LogLevel.error);
|
logSafe("Exception during getServiceProjectDetailApi: $e",
|
||||||
|
level: LogLevel.error);
|
||||||
logSafe("StackTrace: $stack", level: LogLevel.debug);
|
logSafe("StackTrace: $stack", level: LogLevel.debug);
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Get Service Project List
|
/// Get Service Project List
|
||||||
static Future<ServiceProjectListModel?> getServiceProjectsListApi({
|
static Future<ServiceProjectListModel?> getServiceProjectsListApi({
|
||||||
@ -1968,21 +1971,14 @@ static Future<ServiceProjectDetailModel?> getServiceProjectDetailApi(String proj
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Fetch employees with optional query. Returns raw list (List<dynamic>)
|
/// Fetch employees with optional query. Returns raw list (List<dynamic>)
|
||||||
static Future<List<dynamic>> getEmployees({String query = ''}) async {
|
static Future<List<dynamic>> getEmployees(
|
||||||
|
{Map<String, String>? queryParams}) async {
|
||||||
try {
|
try {
|
||||||
// endpoint relative to ApiEndpoints.baseUrl; _getRequest builds full url
|
final endpoint = ApiEndpoints.getEmployeesWithoutPermission;
|
||||||
var endpoint = ApiEndpoints.getEmployeesWithoutPermission;
|
|
||||||
Map<String, String>? queryParams;
|
|
||||||
if (query.isNotEmpty) {
|
|
||||||
// server may expect a query param name other than 'q'. Adjust if needed.
|
|
||||||
queryParams = {'q': query};
|
|
||||||
}
|
|
||||||
|
|
||||||
final resp = await _getRequest(endpoint, queryParams: queryParams);
|
final resp = await _getRequest(endpoint, queryParams: queryParams);
|
||||||
if (resp == null) return [];
|
if (resp == null) return [];
|
||||||
|
|
||||||
// parse response
|
|
||||||
try {
|
|
||||||
final body = jsonDecode(resp.body);
|
final body = jsonDecode(resp.body);
|
||||||
if (body is Map && body.containsKey('data')) {
|
if (body is Map && body.containsKey('data')) {
|
||||||
final data = body['data'];
|
final data = body['data'];
|
||||||
@ -1993,11 +1989,6 @@ static Future<ServiceProjectDetailModel?> getServiceProjectDetailApi(String proj
|
|||||||
} else {
|
} else {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
} catch (e, s) {
|
|
||||||
logSafe("❌ ApiService.getEmployees: parse error $e\n$s",
|
|
||||||
level: LogLevel.error);
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
} catch (e, s) {
|
} catch (e, s) {
|
||||||
logSafe("❌ ApiService.getEmployees error: $e\n$s", level: LogLevel.error);
|
logSafe("❌ ApiService.getEmployees error: $e\n$s", level: LogLevel.error);
|
||||||
return [];
|
return [];
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user