3.5.0: «Qué va a pasar» se explica con una carpeta, y una barra dice por dónde va
Munka, con el plan de Diana Méndez delante: «se lee mucho pero se entiende poco», «lo de ordenar por año y por mes, ¿me toca seleccionar uno a uno o lo hace todo?», y quería una barra para saber por dónde va y si hace falta algo. - Una frase arriba y un solo botón, «Aplicar los N cambios»: un clic lo hace todo, en orden. - Tres fichas, una por paso, con cambios, peso y cuántos quedan sin marcar; se pulsa una y se ve. - Un ejemplo animado: la fila más representativa del paso como dos ramas de carpetas, «Ahora» y «Después», y lo que se mueve vuela de una a otra; debajo, la frase y el porqué. «Otro ejemplo» recorre las filas. - La lista, corta: de dónde → a dónde y la cuenta; el motivo solo con «ver por qué». Lo que no va solo queda aparte y contado (cosméticos «01 - Celular» → «01- Celular», y dudosos), con «marcar los cosméticos». - Al aplicar, el servidor cuenta archivo a archivo (/api/aplicando) y la interfaz lo sondea: barra, qué se mueve ahora, y al acabar qué se hizo, qué falló y qué queda sin hacer. - Los avisos van plegados bajo «N cosas que conviene mirar antes de aplicar». Pruebas: probar 19, prueba_orden 33, prueba_funcional 30 (comprueba que el avance acaba en tantas de tantas), prueba_ventana 18. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Este commit está contenido en:
@@ -235,11 +235,13 @@ def p_aplicar():
|
||||
assert not r['errores'], r['errores']
|
||||
assert r['movimientos'] > 0, 'no movió nada'
|
||||
LOTES['orden'] = r['lote']
|
||||
av = get('/api/aplicando')
|
||||
assert av['lote'] == r['lote'] and av['fin'] and av['unidades'] == av['unidades_total'] > 0 and av['movidos'] == r['movimientos'], av
|
||||
despues = arbol()
|
||||
assert sorted(os.path.basename(x) for x in antes) == sorted(os.path.basename(x) for x in despues), 'se perdió algún archivo'
|
||||
assert '10- Octubre' in os.listdir(os.path.join(RAIZ, '2026')), 'el mes sigue en minúsculas: %s' % os.listdir(os.path.join(RAIZ, '2026'))
|
||||
assert not any('thumbs.db' in x and '_para borrar' not in x for x in despues), 'la basura sigue fuera'
|
||||
return '%d movimientos, sin errores, «10- octubre» pasó a «10- Octubre»' % r['movimientos']
|
||||
return '%d movimientos, sin errores, «10- octubre» pasó a «10- Octubre»; el avance acabó en %d de %d' % (r['movimientos'], av['unidades'], av['unidades_total'])
|
||||
|
||||
|
||||
def p_deshacer():
|
||||
|
||||
Referencia en una nueva incidencia
Block a user