fix(android): mostrar sólo inspecciones listas para campo

This commit is contained in:
2026-09-11 11:52:46 -03:00
parent acdf9c8ccd
commit 89219b1cbe
@@ -34,6 +34,7 @@ import com.korexlabs.dhinspeccion.data.VisitSummary
@Composable @Composable
fun MobileHomeScreen(model: MainViewModel) { fun MobileHomeScreen(model: MainViewModel) {
val session = model.session ?: return val session = model.session ?: return
val fieldVisits = model.visits.filter { it.status != "DRAFT" }
Column(Modifier.fillMaxSize().padding(top = 28.dp)) { Column(Modifier.fillMaxSize().padding(top = 28.dp)) {
Row( Row(
@@ -77,7 +78,7 @@ fun MobileHomeScreen(model: MainViewModel) {
Column(Modifier.weight(1f)) { Column(Modifier.weight(1f)) {
Text("Trabajo planificado desde oficina", fontWeight = FontWeight.Bold) Text("Trabajo planificado desde oficina", fontWeight = FontWeight.Bold)
Text( Text(
"Acá aparecen las inspecciones asignadas desde el tablero. La visita se inicia únicamente al llegar al lugar.", "Acá aparecen las inspecciones ya planificadas y asignadas desde el tablero. La visita se inicia únicamente al llegar al lugar.",
style = MaterialTheme.typography.bodySmall, style = MaterialTheme.typography.bodySmall,
) )
} }
@@ -85,15 +86,15 @@ fun MobileHomeScreen(model: MainViewModel) {
} }
} }
if (model.busy && model.visits.isEmpty()) { if (model.busy && fieldVisits.isEmpty()) {
Box(Modifier.fillMaxSize(), contentAlignment = Alignment.Center) { CircularProgressIndicator() } Box(Modifier.fillMaxSize(), contentAlignment = Alignment.Center) { CircularProgressIndicator() }
} else if (model.visits.isEmpty()) { } else if (fieldVisits.isEmpty()) {
Box(Modifier.fillMaxSize().padding(24.dp), contentAlignment = Alignment.Center) { Box(Modifier.fillMaxSize().padding(24.dp), contentAlignment = Alignment.Center) {
Column(horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.spacedBy(10.dp)) { Column(horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.spacedBy(10.dp)) {
Icon(Icons.Filled.Assignment, contentDescription = null, tint = MaterialTheme.colorScheme.secondary) Icon(Icons.Filled.Assignment, contentDescription = null, tint = MaterialTheme.colorScheme.secondary)
Text("No tenés inspecciones asignadas", fontWeight = FontWeight.Bold) Text("No tenés inspecciones listas para campo", fontWeight = FontWeight.Bold)
Text( Text(
"Cuando una inspección sea planificada y asignada desde el tablero, aparecerá en esta pantalla.", "Cuando una inspección quede planificada y asignada desde el tablero, aparecerá en esta pantalla.",
style = MaterialTheme.typography.bodyMedium, style = MaterialTheme.typography.bodyMedium,
) )
Button(onClick = { model.loadVisits() }, enabled = !model.busy) { Text("Actualizar lista") } Button(onClick = { model.loadVisits() }, enabled = !model.busy) { Text("Actualizar lista") }
@@ -104,7 +105,7 @@ fun MobileHomeScreen(model: MainViewModel) {
Modifier.fillMaxSize().padding(horizontal = 16.dp, vertical = 10.dp), Modifier.fillMaxSize().padding(horizontal = 16.dp, vertical = 10.dp),
verticalArrangement = Arrangement.spacedBy(10.dp), verticalArrangement = Arrangement.spacedBy(10.dp),
) { ) {
items(model.visits, key = { it.id }) { visit -> items(fieldVisits, key = { it.id }) { visit ->
MobileVisitCard(visit) { model.openVisit(visit.id) } MobileVisitCard(visit) { model.openVisit(visit.id) }
} }
item { Spacer(Modifier.height(24.dp)) } item { Spacer(Modifier.height(24.dp)) }