#7710 - clone with ticket packaging #2878

Merged
jgallego merged 2 commits from 7710-cloneWithTicketPackaging into dev 2024-08-23 13:41:40 +00:00
Owner
https://gitea.verdnatura.es/verdnatura/salix-front/pulls/640
jgallego added 1 commit 2024-08-23 08:59:51 +00:00
gitea/salix/pipeline/pr-dev This commit looks good Details
340515968b
feat: refs #7710 test fixed
jgallego requested review from jsegarra 2024-08-23 09:00:10 +00:00
jsegarra reviewed 2024-08-23 09:05:51 +00:00
@ -0,0 +19,4 @@
arg: 'negative',
type: 'boolean',
required: true,
description: 'Whether to invert quantities (for credit notes)'
Member

Siguiendo con el patrón del campo anterior.
Se asume que si es true: Whether...

Siguiendo con el patrón del campo anterior. Se asume que si es true: Whether...
jsegarra requested changes 2024-08-23 09:15:55 +00:00
Dismissed
jsegarra left a comment
Member

Hay que tener en cuenta el resto de sistemas como por ejemplo Lilum, ya que también usa en TicketSaleMoreActions el método refund

He actualizado la descripción de la PR

Hay que tener en cuenta el resto de sistemas como por ejemplo Lilum, ya que también usa en TicketSaleMoreActions el método refund He actualizado la descripción de la PR
@ -0,0 +49,4 @@
try {
const filter = {where: {ticketFk: {inq: ticketsIds}}};
const [sales, services, ticketPackaging] = await Promise.all([
Member

Si una promesa falla...la siguientes fallaran.
Propuesta, usar allSettled

Si una promesa falla...la siguientes fallaran. Propuesta, usar allSettled
Author
Owner

No lo sabia, he preguntado a chatgpt, las diferencias, no tengo claro que en este caso nos aporte algo, PERO decidelo tu leyendo esto que tendras mas criterio

Promise.all puede ser adecuado si deseas abortar todo el proceso tan pronto como una promesa falle. Esto puede ser útil para asegurarte de que, si hay un error temprano, no continúas con acciones que dependen de ese estado.

Promise.allSettled sería útil si prefieres recopilar los resultados o errores de todas las promesas y luego decidir cómo proceder. Esto es útil cuando fallas en una parte del proceso no deben impedirte completar otras partes.

No lo sabia, he preguntado a chatgpt, las diferencias, no tengo claro que en este caso nos aporte algo, PERO decidelo tu leyendo esto que tendras mas criterio > Promise.all puede ser adecuado si deseas abortar todo el proceso tan pronto como una promesa falle. Esto puede ser útil para asegurarte de que, si hay un error temprano, no continúas con acciones que dependen de ese estado. > Promise.allSettled sería útil si prefieres recopilar los resultados o errores de todas las promesas y luego decidir cómo proceder. Esto es útil cuando fallas en una parte del proceso no deben impedirte completar otras partes.
Member

en realidad queremos que si una falle el resto también.
Lo había planteado al revés. dejamos Promises.all

en realidad queremos que si una falle el resto también. Lo había planteado al revés. dejamos Promises.all
@ -0,0 +55,4 @@
models.TicketPackaging.find(filter, myOptions)
]);
const salesIds = sales.map(sale => sale.id);
Member

Propuesta:
const salesIds = sales.map(({id})=> id);

Y podria servir para las otras 2 más

O incluso en la linea 52 en vez de hacer [sales, services, ticketPackaging] podrías usar ese map para cada elemento del array

Por ejemplo:

` const results = await Promise.allSettled([
models.Sale.find(filter, myOptions),
models.TicketService.find(filter, myOptions),
models.TicketPackaging.find(filter, myOptions)
]);

const [salesIds, servicesIds, ticketPackagingIds] = results.map(result =>
    result.value.map(({ id }) => id) 
);`
Propuesta: `const salesIds = sales.map(({id})=> id);` Y podria servir para las otras 2 más O incluso en la linea 52 en vez de hacer `[sales, services, ticketPackaging]` podrías usar ese map para cada elemento del array Por ejemplo: ` const results = await Promise.allSettled([ models.Sale.find(filter, myOptions), models.TicketService.find(filter, myOptions), models.TicketPackaging.find(filter, myOptions) ]); const [salesIds, servicesIds, ticketPackagingIds] = results.map(result => result.value.map(({ id }) => id) );`
jsegarra requested changes 2024-08-23 09:24:50 +00:00
Dismissed
jsegarra left a comment
Member

Has revisado las ACLS?
image

Has revisado las ACLS? ![image](/attachments/4b69cbce-5e1b-4873-b5ac-ac3487f797af)
@ -84,3 +84,2 @@
try {
const filterRef = {where: {refFk: refFk}};
const tickets = await models.Ticket.find(filterRef, myOptions);
const tickets = await models.Ticket.find({where: {refFk: refFk}}, myOptions);
Member

Si la clave tiene el mismo nombre que la variable del valor, basta con hacer {where:{refFk}

Si la clave tiene el mismo nombre que la variable del valor, basta con hacer `{where:{refFk}`
jgallego added 1 commit 2024-08-23 12:28:48 +00:00
gitea/salix/pipeline/pr-dev This commit looks good Details
32d36cda21
feat: refs #7710 pr revision
jgallego requested review from jsegarra 2024-08-23 13:27:42 +00:00
jsegarra reviewed 2024-08-23 13:32:21 +00:00
@ -0,0 +1,24 @@
DELETE FROM `salix`.`ACL`
Member

Entiendo que con estos DELETES quitamos permisos a 2 roles

Entiendo que con estos DELETES quitamos permisos a 2 roles
jsegarra approved these changes 2024-08-23 13:32:48 +00:00
jgallego merged commit 638a43d3e6 into dev 2024-08-23 13:41:40 +00:00
jgallego deleted branch 7710-cloneWithTicketPackaging 2024-08-23 13:41:40 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: verdnatura/salix#2878
No description provided.