Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correcciones #2

Open
wants to merge 16 commits into
base: main
Choose a base branch
from
Open

Correcciones #2

wants to merge 16 commits into from

Conversation

ces1406
Copy link
Contributor

@ces1406 ces1406 commented Jan 19, 2024

Corregimos los puntos señalados:

  • Los textos literales se pasaron al string.xml
  • En el Service de Firebase, onNewToken() manda a actualizar el token del usuario en el servidor
  • La pantalla de login hace un chequeo del nombre ingresado
  • Se manejan errores de los pedidos API (Dialogs y Toasts muestran la leyenda "ha ocurrido un error de conexión")
  • No pueden seleccionarse ni pedir platos sin antes asociarse a una mesa
  • La acción "llamar mozo" realiza un pedido API
  • Si se elige "retirarse de la mesa" se chequea que no se tengan pedidos pendientes de preparación, entrega y pago
  • Se limpió el código de comentarios, variable, métodos, etc. no usados y/o comentados
  • El permiso de notificación se arregló
  • Se pasaron a privados algunos métodos en los viewmodels
  • Se unificó la forma de nombrar variables, metodos y clases en castellano
  • Al ingresar al menú principal de la aplicación un mensaje informa que primero es necesario escanear el código qr
  • El escaneo QR abre la cámara directamente al seleccionarse en el menú principal
  • La pantalla de "ver la carta de platos" tiene un botón para volver al menú principal
  • Se saca socket-io
  • La pantalla que muestra el estado de los platos tiene un botón de refrescar/actualizar

Nota: se trató de que cada commit se corresponda con una corrección (igualmente hay algunos pequeños cambios que están desfasados)

ces1406 and others added 16 commits January 17, 2024 09:26
…pantalla principal y luego volver a apretar otro boton que dice 'escanear'.
…."+"socket-io no se usa"+"metodos en viewmodels podrian ser privados"
@@ -92,7 +93,7 @@ fun InviteTicket(navCont: NavController, userViewModel: UserViewModel, tableView
val indice:Int =tableViewModel.estadoMesa.invitados.indexOfFirst{ e -> e.idCliente == userViewModel.estadoUser.idCliente}
val yo = if(indice !=-1) tableViewModel.estadoMesa.invitados[indice] else null
if (yo != null) {
Text(text ="Consumido: $"+"%,.1f".format(Locale.GERMAN,yo.total),
Text(text = stringResource(id = R.string.inviteticket_consumido)+"%,.1f".format(Locale.GERMAN,yo.total),
Copy link
Member

@emanuelandrada emanuelandrada Jan 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

el formato tiene que ser parte de la string, y stringResource interpola los valores adicionales que se pasen:

stringResource(id = R.string.inviteticket_consumido, yo.total)

Copy link
Member

@emanuelandrada emanuelandrada left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

En general está bien. Marqué unas cositas nomás pero está aprobado.

Comment on lines 52 to 54
if (idCli.isSuccessful) {
dataStore.edit { preferences ->
preferences[intPreferencesKey("idCliente")] = idCli.body()!!.idCliente
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Siempre traten de evitar usar !! a menos que estén completamente seguros de que lo que tienen no es opcional.
Siendo una respuesta del servidor, que es algo externo a la app, no se puede tener esa seguridad así que lo mejor es chequear que no sea null:

val body = idCli.body()
if (idCli.isSuccessful && body != null) {
    dataStore.edit { preferences ->
        preferences[intPreferencesKey("idCliente")] = body.idCliente

de esa manera el compilador ya se asegura que body no es null y no requiere ? ni !!.

Comment on lines 124 to 133
ExtendedFloatingActionButton(
modifier = Modifier.align(Alignment.TopEnd).padding(0.dp)
.wrapContentSize(),
onClick = { viewmodelo.getPedidosState(userViewModel.estadoUser.idMesa) },
shape = CircleShape,
containerColor = MaterialTheme.colorScheme.secondaryContainer,
contentColor = MaterialTheme.colorScheme.secondary
) {
Icon(imageVector = Icons.Rounded.Refresh, contentDescription = "")
Text(text = "Actualizar")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

)
}else {
Text(
text = "$" + "%,.1f".format(Locale.GERMAN, ped.cantidad * ped.plato.precio),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Me intriga por qué usaron Locale.GERMAN en vez de Locale.current.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants