refactor: refs #7950 Created cmr model #3180
|
@ -2,7 +2,7 @@ const {Report, Email} = require('vn-print');
|
|||
|
||||
module.exports = Self => {
|
||||
Self.printReport = async function(ctx, id, reportName) {
|
||||
const args = Object.assign({}, ctx.args);
|
||||
const args = Object.assign({id}, ctx.args);
|
||||
guillermo marked this conversation as resolved
|
||||
const params = {lang: ctx.req.getLocale()};
|
||||
|
||||
delete args.ctx;
|
||||
|
|
|
@ -53,8 +53,7 @@ module.exports = Self => {
|
|||
if (hasDmsCmr.length)
|
||||
throw new UserError('This ticket already has a cmr saved');
|
||||
|
||||
Object.assign(ctx.args, {id: ticket.$cmrFk});
|
||||
const response = await models.Cmr.print(ctx, myOptions);
|
||||
const response = await models.Cmr.print(ctx, ticket.$cmrFk, myOptions);
|
||||
jgallego marked this conversation as resolved
Outdated
jgallego
commented
el $ no el solem gastar, si no te un objectiu clar jo meu pensaria be antes de gastarlo, @alexm com ho veus ? el $ no el solem gastar, si no te un objectiu clar jo meu pensaria be antes de gastarlo, @alexm com ho veus ?
guillermo
commented
El problema es que ara com es un model, te que accedir de una altra forma, ticket.cmrFk ja no val. Es pot gastar ticket.cmrFk().id, pero ticket.$cmrFk es mes curt El problema es que ara com es un model, te que accedir de una altra forma, ticket.cmrFk ja no val.
Es pot gastar ticket.cmrFk().id, pero ticket.$cmrFk es mes curt
alexm
commented
Mai havia vist ticket.$cmrFk si funciona i es natiu de loopback supose que abant Mai havia vist ticket.$cmrFk si funciona i es natiu de loopback supose que abant
|
||||
const pdfStream = Readable.from(Buffer.from(response[0]));
|
||||
guillermo marked this conversation as resolved
Outdated
jgallego
commented
ho he comentat en Juan i m'ha dit lo mateix, que si es natiu de loopback avant. ho he comentat en Juan i m'ha dit lo mateix, que si es natiu de loopback avant.
**Pero** que l'objecte ctx no hi ha que alterarlo.
guillermo
commented
Entonces com li pase el id? Es que es un param que va per URL, crec que en el seu moment no vaig trovar altra forma... Entonces com li pase el id? Es que es un param que va per URL, crec que en el seu moment no vaig trovar altra forma...
alexm
commented
En este cas seria En este cas seria `await models.Cmr.print(ctx, ticket.$cmrFk); `
Son els parametres que te el back https://gitea.verdnatura.es/verdnatura/salix/src/commit/90e7ab1ec1d18366c7b1a394ddfaa03e90c01d52/modules/route/back/methods/cmr/print.js#L36
guillermo
commented
Ya lo comprobé en su momento y no pude, lo he vuelto a comprobar por si acaso y lo mismo: const response = await models.Cmr.print(ctx, ticket.$cmrFk, myOptions);
Ya lo comprobé en su momento y no pude, lo he vuelto a comprobar por si acaso y lo mismo:
const response = await models.Cmr.print(ctx, ticket.$cmrFk, myOptions);
```
1) ticket saveCmr() should save cmr
- Error: Required properties not found [id]
```
alexm
commented
Se pot posar en
Se pot posar en https://gitea.verdnatura.es/verdnatura/salix/src/commit/6ab431f8efec6e80495451332064c6eeb8b6684f/loopback/common/methods/vn-model/printService.js#L5
`const args = Object.assign({id}, ctx.args);`
jgallego
commented
Cuidao @guillermo el assign tal com l'has posat actualiza l'objecte ctx, que es el que no volem. Cuidao @guillermo el assign tal com l'has posat actualiza l'objecte ctx, que es el que no volem.
Amb la proposata d'Alex es crea uno nou, gasta ixa opcio.
|
||||
const data = {
|
||||
workerFk: ctx.req.accessToken.userId,
|
||||
|
|
bajar el id a params.
He revisado el código, y habiamos visto printEmail, en printReport no se hace.
Por lo que el cambio es correcto.
Además, he probado a poner
params.id = id;
y da error, ya que no es lo mismo.