mirror of
https://github.com/tdurieux/anonymous_github.git
synced 2026-07-02 03:55:33 +02:00
feat: include pr number in stat
This commit is contained in:
+20
-11
@@ -15,6 +15,7 @@ import router from "./routes";
|
|||||||
import AnonymizedRepositoryModel from "./database/anonymizedRepositories/anonymizedRepositories.model";
|
import AnonymizedRepositoryModel from "./database/anonymizedRepositories/anonymizedRepositories.model";
|
||||||
import { conferenceStatusCheck, repositoryStatusCheck } from "./schedule";
|
import { conferenceStatusCheck, repositoryStatusCheck } from "./schedule";
|
||||||
import { startWorker } from "./queue";
|
import { startWorker } from "./queue";
|
||||||
|
import AnonymizedPullRequestModel from "./database/anonymizedPullRequests/anonymizedPullRequests.model";
|
||||||
|
|
||||||
function indexResponse(req: express.Request, res: express.Response) {
|
function indexResponse(req: express.Request, res: express.Response) {
|
||||||
if (
|
if (
|
||||||
@@ -101,18 +102,26 @@ export default async function start() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
apiRouter.get("/stat", async (_, res) => {
|
apiRouter.get("/stat", async (_, res) => {
|
||||||
const nbRepositories =
|
const [nbRepositories, nbUsers, nbPageViews, nbPullRequests] =
|
||||||
await AnonymizedRepositoryModel.estimatedDocumentCount();
|
await Promise.all([
|
||||||
|
AnonymizedRepositoryModel.estimatedDocumentCount(),
|
||||||
|
AnonymizedRepositoryModel.distinct("owner").count(),
|
||||||
|
AnonymizedRepositoryModel.collection
|
||||||
|
.aggregate([
|
||||||
|
{
|
||||||
|
$group: { _id: null, total: { $sum: "$pageView" } },
|
||||||
|
},
|
||||||
|
])
|
||||||
|
.toArray(),
|
||||||
|
AnonymizedPullRequestModel.estimatedDocumentCount(),
|
||||||
|
]);
|
||||||
|
|
||||||
const nbUsers = (await AnonymizedRepositoryModel.distinct("owner")).length;
|
res.json({
|
||||||
const nbPageViews = await AnonymizedRepositoryModel.collection
|
nbRepositories,
|
||||||
.aggregate([
|
nbUsers,
|
||||||
{
|
nbPageViews: nbPageViews[0].total,
|
||||||
$group: { _id: null, total: { $sum: "$pageView" } },
|
nbPullRequests,
|
||||||
},
|
});
|
||||||
])
|
|
||||||
.toArray();
|
|
||||||
res.json({ nbRepositories, nbUsers, nbPageViews: nbPageViews[0].total });
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// web view
|
// web view
|
||||||
|
|||||||
Reference in New Issue
Block a user