aggiornamento cataloghi, search
This commit is contained in:
@@ -30,29 +30,33 @@ module.exports.findAllIdApp = async function () {
|
||||
const myfind = {};
|
||||
|
||||
const myquery = [
|
||||
{
|
||||
$sort: { DataOra: -1 } // Prima ordina per DataOra in modo decrescente
|
||||
},
|
||||
{
|
||||
$group: {
|
||||
_id: "$IdStatoProdotto",
|
||||
record: { $max: "$DataOra" }
|
||||
_id: "$IdStatoProdotto", // Raggruppa per IdStatoProdotto
|
||||
latestRecord: { $first: "$$ROOT" } // Prendi il primo record per ogni gruppo (cioè il più recente)
|
||||
}
|
||||
},
|
||||
{
|
||||
$lookup: {
|
||||
from: 't_web_statiprodottos',
|
||||
localField: '_id',
|
||||
localField: '_id', // Usa _id che è l'IdStatoProdotto
|
||||
foreignField: 'IdStatoProdotto',
|
||||
as: 'record'
|
||||
}
|
||||
},
|
||||
{
|
||||
$replaceRoot: { newRoot: { $arrayElemAt: ["$record", 0] } }
|
||||
$replaceRoot: { newRoot: { $arrayElemAt: ["$record", 0] } } // Estrai il primo (e unico) record dal risultato di $lookup
|
||||
},
|
||||
{
|
||||
$sort: { IdStatoProdotto: 1 }
|
||||
$sort: { IdStatoProdotto: 1 } // Ordina per IdStatoProdotto, se necessario
|
||||
}
|
||||
];
|
||||
|
||||
return await T_WEB_StatiProdotto.aggregate(myquery);
|
||||
const rec = await T_WEB_StatiProdotto.aggregate(myquery);
|
||||
return rec;
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user