feat: Remove unused selectedProjectId from DailyTaskPlaningController and update AssignTaskBottomSheet to use ProjectController's selectedProjectId

This commit is contained in:
Vaibhav Surve 2025-06-12 21:13:12 +05:30
parent 4022197b7f
commit 5cf0202cc1
3 changed files with 22 additions and 20 deletions

View File

@ -11,7 +11,6 @@ final Logger log = Logger();
class DailyTaskPlaningController extends GetxController {
List<ProjectModel> projects = [];
String? selectedProjectId;
List<EmployeeModel> employees = [];
List<TaskPlanningDetailsModel> dailyTasks = [];
RxMap<String, RxBool> uploadingStates = <String, RxBool>{}.obs;

View File

@ -5,6 +5,7 @@ import 'package:marco/helpers/widgets/my_button.dart';
import 'package:marco/helpers/widgets/my_text.dart';
import 'package:marco/helpers/widgets/my_spacing.dart';
import 'package:marco/helpers/widgets/my_snackbar.dart';
import 'package:marco/controller/project_controller.dart';
class AssignTaskBottomSheet extends StatefulWidget {
final String workLocation;
@ -34,6 +35,7 @@ class AssignTaskBottomSheet extends StatefulWidget {
class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
final DailyTaskPlaningController controller = Get.find();
final ProjectController projectController = Get.find();
final TextEditingController targetController = TextEditingController();
final TextEditingController descriptionController = TextEditingController();
String? selectedProjectId;
@ -51,7 +53,8 @@ class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
@override
void initState() {
super.initState();
selectedProjectId = controller.selectedProjectId;
selectedProjectId = projectController.selectedProjectId?.value;
WidgetsBinding.instance.addPostFrameCallback((_) {
if (selectedProjectId != null) {
controller.fetchEmployeesByProject(selectedProjectId!);
@ -140,16 +143,13 @@ class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
),
MySpacing.height(8),
Container(
constraints: BoxConstraints(
maxHeight: 150,
),
constraints: BoxConstraints(maxHeight: 150),
child: _buildEmployeeList(),
),
MySpacing.height(8),
Obx(() {
if (controller.selectedEmployees.isEmpty) {
return Container();
}
if (controller.selectedEmployees.isEmpty) return Container();
return Padding(
padding: const EdgeInsets.symmetric(vertical: 8.0),
@ -163,21 +163,23 @@ class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
if (!isSelected) return Container();
return Chip(
label: Text(e.name,
style: const TextStyle(color: Colors.white)),
backgroundColor:
const Color.fromARGB(255, 95, 132, 255),
deleteIcon:
const Icon(Icons.close, color: Colors.white),
onDeleted: () {
controller.uploadingStates[e.id]?.value = false;
controller.updateSelectedEmployees();
});
label: Text(e.name,
style: const TextStyle(color: Colors.white)),
backgroundColor:
const Color.fromARGB(255, 95, 132, 255),
deleteIcon:
const Icon(Icons.close, color: Colors.white),
onDeleted: () {
controller.uploadingStates[e.id]?.value = false;
controller.updateSelectedEmployees();
},
);
});
}).toList(),
),
);
}),
_buildTextField(
icon: Icons.track_changes,
label: "Target for Today :",
@ -187,6 +189,7 @@ class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
validatorType: "target",
),
MySpacing.height(24),
_buildTextField(
icon: Icons.description,
label: "Description :",
@ -196,6 +199,7 @@ class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
validatorType: "description",
),
MySpacing.height(24),
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
@ -225,7 +229,6 @@ class _AssignTaskBottomSheetState extends State<AssignTaskBottomSheet> {
}
final selectedRoleId = controller.selectedRoleId.value;
final filteredEmployees = selectedRoleId == null
? controller.employees
: controller.employees

View File

@ -15,7 +15,7 @@ class DailyTaskPlaningFilter extends StatelessWidget {
@override
Widget build(BuildContext context) {
String? tempSelectedProjectId = controller.selectedProjectId;
String? tempSelectedProjectId = '654563563645';
bool showProjectList = false;
final accessibleProjects = controller.projects