🔧 jobResult aggregate query first draft
This commit is contained in:
@@ -173,14 +173,26 @@ export default class JobQueueService extends Service {
|
|||||||
return await JobResult.aggregate([
|
return await JobResult.aggregate([
|
||||||
{
|
{
|
||||||
$group: {
|
$group: {
|
||||||
_id: "$status",
|
_id: {
|
||||||
// data: { $push: "$$ROOT._id" },
|
sessionId: "$sessionId",
|
||||||
|
status: "$status",
|
||||||
|
},
|
||||||
|
earliestTimestamp: { $min: "$timestamp" },
|
||||||
count: { $sum: 1 },
|
count: { $sum: 1 },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
{ $sort: { timestamp: -1 } },
|
$group: {
|
||||||
{ $skip: 0 },
|
_id: "$_id.sessionId",
|
||||||
|
statuses: {
|
||||||
|
$push: {
|
||||||
|
status: "$_id.status",
|
||||||
|
earliestTimestamp: "$earliestTimestamp",
|
||||||
|
count: "$count",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
]);
|
]);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -243,7 +255,7 @@ export default class JobQueueService extends Service {
|
|||||||
id: ctx.params.id,
|
id: ctx.params.id,
|
||||||
status: "failed",
|
status: "failed",
|
||||||
failedReason: job.failedReason,
|
failedReason: job.failedReason,
|
||||||
sessionId: job.returnvalue.sessionId,
|
sessionId: job.data.params.sessionId,
|
||||||
timestamp: job.timestamp,
|
timestamp: job.timestamp,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ import {
|
|||||||
getMimeType,
|
getMimeType,
|
||||||
} from "../utils/file.utils";
|
} from "../utils/file.utils";
|
||||||
import { convertXMLToJSON } from "./xml.utils";
|
import { convertXMLToJSON } from "./xml.utils";
|
||||||
|
const { MoleculerError } = require("moleculer").Errors;
|
||||||
const fse = require("fs-extra");
|
const fse = require("fs-extra");
|
||||||
const Unrar = require("unrar");
|
const Unrar = require("unrar");
|
||||||
interface RarFile {
|
interface RarFile {
|
||||||
@@ -367,7 +368,9 @@ export const extractFromArchive = async (filePath: string) => {
|
|||||||
console.error(
|
console.error(
|
||||||
"Error inferring filetype for comicinfo.xml extraction."
|
"Error inferring filetype for comicinfo.xml extraction."
|
||||||
);
|
);
|
||||||
throw new Error("Cannot infer filetype");
|
throw new MoleculerError({}, 500, "FILETYPE_INFERENCE_ERROR", {
|
||||||
|
data: { message: "Cannot infer filetype."},
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user