@@ -1,9 +1,12 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:flux/core/blocs/session/session_cubit.dart';
|
||||
import 'package:flux/features/operations/blocs/operations_cubit.dart';
|
||||
import 'package:flux/features/operations/models/operation_model.dart';
|
||||
import 'package:flux/features/operations/ui/widgets/customer_section.dart';
|
||||
import 'package:flux/features/operations/ui/widgets/details_section.dart'; // ASSICURATI DEL PATH
|
||||
import 'package:flux/features/operations/ui/widgets/details_section.dart';
|
||||
import 'package:flux/features/operations/ui/widgets/staff_section.dart';
|
||||
import 'package:get_it/get_it.dart'; // ASSICURATI DEL PATH
|
||||
// import 'package:flux/features/attachments/ui/operation_files_section.dart';
|
||||
|
||||
class OperationFormScreen extends StatefulWidget {
|
||||
@@ -44,10 +47,26 @@ class _OperationFormScreenState extends State<OperationFormScreen> {
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
context.read<OperationsCubit>().initOperationForm(
|
||||
final cubit = context.read<OperationsCubit>();
|
||||
final currentLoggedStaff = GetIt.I
|
||||
.get<SessionCubit>()
|
||||
.state
|
||||
.currentStaffMember!;
|
||||
|
||||
// 1. Diciamo al Cubit di prepararsi
|
||||
cubit.initOperationForm(
|
||||
existingOperation: widget.existingOperation,
|
||||
operationId: widget.operationId,
|
||||
staffId: currentLoggedStaff.id,
|
||||
staffDisplayName: currentLoggedStaff.name,
|
||||
);
|
||||
|
||||
// 2. IL TRUCCO MAGICO:
|
||||
// Se abbiamo passato existingOperation, il Cubit si è appena aggiornato.
|
||||
// Lo stato è già pronto, quindi sincronizziamo i controller SUBITO!
|
||||
if (cubit.state.currentOperation != null) {
|
||||
_syncTextControllers(cubit.state.currentOperation!);
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -240,6 +259,8 @@ class _OperationFormScreenState extends State<OperationFormScreen> {
|
||||
return Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
StaffSection(currentOp: currentOp),
|
||||
const Divider(height: 50),
|
||||
_buildSectionTitle('Cliente & Riferimento'),
|
||||
CustomerSection(currentOp: currentOp),
|
||||
const SizedBox(height: 16),
|
||||
|
||||
Reference in New Issue
Block a user