chnages has been made

This commit is contained in:
Daniah Ayad Al-sultani
2026-02-12 14:25:19 +03:00
parent a7930d19e5
commit 08b16df68d
13 changed files with 467 additions and 413 deletions

View File

@@ -7,7 +7,7 @@ import '../dto/advances_list_response_dto.dart';
abstract class AdvanceRemoteDataSource {
Future<AdvanceResponseDto> createAdvance(AdvanceRequestDto request);
Future<AdvancesListResponseDto> getAdvances();
Future<AdvancesListResponseDto> getAdvances(String employeeId);
}
class AdvanceRemoteDataSourceImpl implements AdvanceRemoteDataSource {
@@ -71,9 +71,12 @@ class AdvanceRemoteDataSourceImpl implements AdvanceRemoteDataSource {
}
@override
Future<AdvancesListResponseDto> getAdvances() async {
Future<AdvancesListResponseDto> getAdvances(String employeeId) async {
try {
final response = await apiClient.get('/SalaryInAdvance');
final response = await apiClient.get(
'/SalaryInAdvance',
queryParameters: {'EmployeeId': employeeId},
);
if (response.statusCode == 200) {
final responseData = response.data;

View File

@@ -9,7 +9,7 @@ import '../dto/vacations_list_response_dto.dart';
abstract class VacationRemoteDataSource {
Future<VacationResponseDto> createVacation(VacationRequestDto request);
Future<VacationTypesResponseDto> getVacationTypes();
Future<VacationsListResponseDto> getVacations();
Future<VacationsListResponseDto> getVacations(String employeeId);
}
class VacationRemoteDataSourceImpl implements VacationRemoteDataSource {
@@ -125,9 +125,12 @@ class VacationRemoteDataSourceImpl implements VacationRemoteDataSource {
}
@override
Future<VacationsListResponseDto> getVacations() async {
Future<VacationsListResponseDto> getVacations(String employeeId) async {
try {
final response = await apiClient.get('/Vacation');
final response = await apiClient.get(
'/Vacation',
queryParameters: {'EmployeeId': employeeId},
);
if (response.statusCode == 200) {
final responseData = response.data;

View File

@@ -31,23 +31,24 @@ class AdvanceRepositoryImpl implements AdvanceRepository {
statusCode: responseDto.statusCode,
isSuccess: responseDto.isSuccess,
message: responseDto.message,
data: responseDto.data != null
? AdvanceDataModel(
employeeId: responseDto.data!.employeeId,
employeeFullName: responseDto.data!.employeeFullName,
date: responseDto.data!.date,
amount: responseDto.data!.amount,
submittedBy: responseDto.data!.submittedBy,
submittedByUser: responseDto.data!.submittedByUser,
reason: responseDto.data!.reason,
state: responseDto.data!.state,
id: responseDto.data!.id,
createdAt: responseDto.data!.createdAt,
updatedAt: responseDto.data!.updatedAt,
deletedAt: responseDto.data!.deletedAt,
isDeleted: responseDto.data!.isDeleted,
)
: null,
data:
responseDto.data != null
? AdvanceDataModel(
employeeId: responseDto.data!.employeeId,
employeeFullName: responseDto.data!.employeeFullName,
date: responseDto.data!.date,
amount: responseDto.data!.amount,
submittedBy: responseDto.data!.submittedBy,
submittedByUser: responseDto.data!.submittedByUser,
reason: responseDto.data!.reason,
state: responseDto.data!.state,
id: responseDto.data!.id,
createdAt: responseDto.data!.createdAt,
updatedAt: responseDto.data!.updatedAt,
deletedAt: responseDto.data!.deletedAt,
isDeleted: responseDto.data!.isDeleted,
)
: null,
);
return Right(responseModel);
@@ -61,40 +62,46 @@ class AdvanceRepositoryImpl implements AdvanceRepository {
}
@override
Future<Either<Failure, AdvancesListResponseModel>> getAdvances() async {
Future<Either<Failure, AdvancesListResponseModel>> getAdvances(
String employeeId,
) async {
try {
final responseDto = await remoteDataSource.getAdvances();
final responseDto = await remoteDataSource.getAdvances(employeeId);
// Convert DTO to Model
final responseModel = AdvancesListResponseModel(
statusCode: responseDto.statusCode,
isSuccess: responseDto.isSuccess,
message: responseDto.message,
data: responseDto.data != null
? AdvancesListDataModel(
items: responseDto.data!.items
.map((dto) => AdvanceDataModel(
employeeId: dto.employeeId,
employeeFullName: dto.employeeFullName,
date: dto.date,
amount: dto.amount,
submittedBy: dto.submittedBy,
submittedByUser: dto.submittedByUser,
reason: dto.reason,
state: dto.state,
id: dto.id,
createdAt: dto.createdAt,
updatedAt: dto.updatedAt,
deletedAt: dto.deletedAt,
isDeleted: dto.isDeleted,
))
.toList(),
pageNumber: responseDto.data!.pageNumber,
pageSize: responseDto.data!.pageSize,
totalCount: responseDto.data!.totalCount,
totalPages: responseDto.data!.totalPages,
)
: null,
data:
responseDto.data != null
? AdvancesListDataModel(
items:
responseDto.data!.items
.map(
(dto) => AdvanceDataModel(
employeeId: dto.employeeId,
employeeFullName: dto.employeeFullName,
date: dto.date,
amount: dto.amount,
submittedBy: dto.submittedBy,
submittedByUser: dto.submittedByUser,
reason: dto.reason,
state: dto.state,
id: dto.id,
createdAt: dto.createdAt,
updatedAt: dto.updatedAt,
deletedAt: dto.deletedAt,
isDeleted: dto.isDeleted,
),
)
.toList(),
pageNumber: responseDto.data!.pageNumber,
pageSize: responseDto.data!.pageSize,
totalCount: responseDto.data!.totalCount,
totalPages: responseDto.data!.totalPages,
)
: null,
);
return Right(responseModel);

View File

@@ -34,24 +34,25 @@ class VacationRepositoryImpl implements VacationRepository {
statusCode: responseDto.statusCode,
isSuccess: responseDto.isSuccess,
message: responseDto.message,
data: responseDto.data != null
? VacationDataModel(
employeeId: responseDto.data!.employeeId,
employeeFullName: responseDto.data!.employeeFullName,
startDate: responseDto.data!.startDate,
endDate: responseDto.data!.endDate,
reason: responseDto.data!.reason,
submittedBy: responseDto.data!.submittedBy,
submittedByUser: responseDto.data!.submittedByUser,
state: responseDto.data!.state,
type: responseDto.data!.type,
id: responseDto.data!.id,
createdAt: responseDto.data!.createdAt,
updatedAt: responseDto.data!.updatedAt,
deletedAt: responseDto.data!.deletedAt,
isDeleted: responseDto.data!.isDeleted,
)
: null,
data:
responseDto.data != null
? VacationDataModel(
employeeId: responseDto.data!.employeeId,
employeeFullName: responseDto.data!.employeeFullName,
startDate: responseDto.data!.startDate,
endDate: responseDto.data!.endDate,
reason: responseDto.data!.reason,
submittedBy: responseDto.data!.submittedBy,
submittedByUser: responseDto.data!.submittedByUser,
state: responseDto.data!.state,
type: responseDto.data!.type,
id: responseDto.data!.id,
createdAt: responseDto.data!.createdAt,
updatedAt: responseDto.data!.updatedAt,
deletedAt: responseDto.data!.deletedAt,
isDeleted: responseDto.data!.isDeleted,
)
: null,
);
return Right(responseModel);
@@ -74,12 +75,12 @@ class VacationRepositoryImpl implements VacationRepository {
statusCode: responseDto.statusCode,
isSuccess: responseDto.isSuccess,
message: responseDto.message,
data: responseDto.data
.map((dto) => VacationTypeModel(
value: dto.value,
name: dto.name,
))
.toList(),
data:
responseDto.data
.map(
(dto) => VacationTypeModel(value: dto.value, name: dto.name),
)
.toList(),
);
return Right(responseModel);
@@ -93,41 +94,47 @@ class VacationRepositoryImpl implements VacationRepository {
}
@override
Future<Either<Failure, VacationsListResponseModel>> getVacations() async {
Future<Either<Failure, VacationsListResponseModel>> getVacations(
String employeeId,
) async {
try {
final responseDto = await remoteDataSource.getVacations();
final responseDto = await remoteDataSource.getVacations(employeeId);
// Convert DTO to Model
final responseModel = VacationsListResponseModel(
statusCode: responseDto.statusCode,
isSuccess: responseDto.isSuccess,
message: responseDto.message,
data: responseDto.data != null
? VacationsListDataModel(
items: responseDto.data!.items
.map((dto) => VacationDataModel(
employeeId: dto.employeeId,
employeeFullName: dto.employeeFullName,
startDate: dto.startDate,
endDate: dto.endDate,
reason: dto.reason,
submittedBy: dto.submittedBy,
submittedByUser: dto.submittedByUser,
state: dto.state,
type: dto.type,
id: dto.id,
createdAt: dto.createdAt,
updatedAt: dto.updatedAt,
deletedAt: dto.deletedAt,
isDeleted: dto.isDeleted,
))
.toList(),
pageNumber: responseDto.data!.pageNumber,
pageSize: responseDto.data!.pageSize,
totalCount: responseDto.data!.totalCount,
totalPages: responseDto.data!.totalPages,
)
: null,
data:
responseDto.data != null
? VacationsListDataModel(
items:
responseDto.data!.items
.map(
(dto) => VacationDataModel(
employeeId: dto.employeeId,
employeeFullName: dto.employeeFullName,
startDate: dto.startDate,
endDate: dto.endDate,
reason: dto.reason,
submittedBy: dto.submittedBy,
submittedByUser: dto.submittedByUser,
state: dto.state,
type: dto.type,
id: dto.id,
createdAt: dto.createdAt,
updatedAt: dto.updatedAt,
deletedAt: dto.deletedAt,
isDeleted: dto.isDeleted,
),
)
.toList(),
pageNumber: responseDto.data!.pageNumber,
pageSize: responseDto.data!.pageSize,
totalCount: responseDto.data!.totalCount,
totalPages: responseDto.data!.totalPages,
)
: null,
);
return Right(responseModel);