aaaaaaaaaaaa

Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
2026-05-02 10:22:47 +02:00
parent ac97e47771
commit 1721b2ff89
32 changed files with 454 additions and 1031 deletions

View File

@@ -2,7 +2,6 @@ import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flux/features/operations/blocs/operations_cubit.dart';
import 'package:flux/features/operations/models/operation_model.dart';
import 'package:flux/features/operations/utils/operation_actions.dart';
import 'package:go_router/go_router.dart';
// Importa i tuoi modelli e cubit
@@ -139,15 +138,6 @@ class _OperationsScreenState extends State<OperationsScreen> {
),
),
),
if (operation.isBozza)
const Chip(
label: Text(
"BOZZA",
style: TextStyle(fontSize: 10, color: Colors.white),
),
backgroundColor: Colors.orange,
visualDensity: VisualDensity.compact,
),
],
),
subtitle: Column(
@@ -155,21 +145,14 @@ class _OperationsScreenState extends State<OperationsScreen> {
children: [
const SizedBox(height: 4),
Text(
"Pratica: ${operation.number}${operation.createdAt?.day}/${operation.createdAt?.month}/${operation.createdAt?.year}",
"Pratica: ${operation.reference}${operation.createdAt?.day}/${operation.createdAt?.month}/${operation.createdAt?.year}",
),
const SizedBox(height: 8),
// I nostri mini-chip per i servizi attivati
Wrap(
spacing: 6,
Row(
children: [
if (operation.al > 0 || operation.mnp > 0)
_miniBadge("📞 Tel", Colors.blue),
if (operation.energyOperations.isNotEmpty)
_miniBadge("⚡ Energy", Colors.green),
if (operation.finOperations.isNotEmpty)
_miniBadge("💰 Fin", Colors.purple),
if (operation.entertainmentOperations.isNotEmpty)
_miniBadge("📺 Ent", Colors.red),
Text(operation.type),
const SizedBox(width: 8),
_buildOperationStatus(operation.status),
],
),
],
@@ -187,22 +170,31 @@ class _OperationsScreenState extends State<OperationsScreen> {
);
}
Widget _miniBadge(String text, Color color) {
return Container(
padding: const EdgeInsets.symmetric(horizontal: 6, vertical: 2),
decoration: BoxDecoration(
color: color.withValues(alpha: 0.1),
borderRadius: BorderRadius.circular(4),
border: Border.all(color: color.withValues(alpha: 0.5)),
),
child: Text(
text,
style: TextStyle(
color: color,
fontSize: 10,
fontWeight: FontWeight.bold,
),
),
Widget _buildOperationStatus(OperationStatus status) {
Color color;
switch (status) {
case OperationStatus.canceled || OperationStatus.ko:
color = Colors.grey.shade800;
break;
case OperationStatus.waitingforaction || OperationStatus.draft:
color = Colors.orange;
break;
case OperationStatus.ok:
color = Colors.green;
break;
case OperationStatus.waitingfordeployment ||
OperationStatus.waitingforsupport:
color = Colors.blue;
break;
}
return Chip(
label: Text("BOZZA", style: TextStyle(fontSize: 10, color: Colors.white)),
backgroundColor: color,
visualDensity: VisualDensity.compact,
);
}
void startNewOperation(BuildContext context) {
context.pushNamed('operation-form');
}
}