Add board service and repository, update routes and assets

- Introduced BoardService and BoardRepository for managing board-related data.
- Updated app routes to reflect the new board screen structure.
- Added new board-related assets to the asset manager.
- Refactored BoardScreen navigation to utilize the new provider structure.
This commit is contained in:
amirrezaghabeli
2025-11-11 12:58:05 +03:30
parent a03e66f66b
commit abf1cc3f7d
14 changed files with 1092 additions and 166 deletions
+80
View File
@@ -0,0 +1,80 @@
import '../../../core/network/network_manager.dart';
import '../../core/config/app_config.dart';
import '../../core/utils/result.dart';
import 'model/board_response/board_response.dart';
class BoardService {
BoardService({required NetworkManager networkManager})
: _networkManager = networkManager;
final NetworkManager _networkManager;
Future<Result<BoardResponse>> getBoard() async {
final uri = '${AppConfig.apiBaseUrl}/api/v1/board';
await Future.delayed(const Duration(seconds: 2));
// final result = await _networkManager.makeRequest(
// uri,
// (json) => BoardResponse.fromJson(json),
// method: 'GET',
// );
// return result;
return Result.ok(
BoardResponse(
success: true,
message: 'Board data fetched successfully',
data: tasks,
error: null,
),
);
}
}
List<BoardData> tasks = [
BoardData(
id: '1',
description:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
deadline: DateTime(2025, 6, 15),
assignedTo: 'Pratyush Tewari',
isReady: false,
status: 'toDo',
),
BoardData(
id: '2',
description:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
deadline: DateTime(2025, 6, 15),
assignedTo: 'Pratyush Tewari',
isReady: true,
status: 'toDo',
),
BoardData(
id: '3',
description:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
deadline: DateTime(2025, 6, 15),
assignedTo: 'Pratyush Tewari',
isReady: false,
status: 'inProgress',
),
BoardData(
id: '4',
description:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
deadline: DateTime(2025, 6, 15),
assignedTo: 'Pratyush Tewari',
isReady: true,
status: 'inProgress',
),
BoardData(
id: '5',
description:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua',
deadline: DateTime(2025, 6, 15),
assignedTo: 'Pratyush Tewari',
isReady: false,
status: 'done',
),
];