mirror of
https://github.com/zkldi/Tachi.git
synced 2026-09-28 18:08:15 +03:00
insert usc charts
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
import fs from "fs";
|
||||
import path from "path";
|
||||
import db from "../../../src/external/mongo/db";
|
||||
|
||||
const charts = JSON.parse(fs.readFileSync(path.join(__dirname, "charts.json"), "utf-8"));
|
||||
|
||||
const map: Map<string, any> = new Map();
|
||||
|
||||
for (const chart of charts) {
|
||||
const id = `${chart.songID}-${chart.difficulty}`;
|
||||
const doc = map.get(id);
|
||||
|
||||
if (doc) {
|
||||
if (Array.isArray(doc.data.hashSHA1)) {
|
||||
doc.data.hashSHA1.push(chart.data.hashSHA1);
|
||||
} else {
|
||||
doc.data.hashSHA1 = [doc.data.hashSHA1, chart.data.hashSHA1];
|
||||
}
|
||||
|
||||
// insane hack
|
||||
chart.erasethis = true;
|
||||
} else {
|
||||
map.set(id, chart);
|
||||
}
|
||||
}
|
||||
|
||||
// works because byref
|
||||
fs.writeFileSync(
|
||||
path.join(__dirname, "deduped-charts.json"),
|
||||
JSON.stringify(charts.filter((e: any) => e.erasethis !== true))
|
||||
);
|
||||
@@ -0,0 +1,13 @@
|
||||
import fs from "fs";
|
||||
import path from "path";
|
||||
import db from "../../../src/external/mongo/db";
|
||||
|
||||
const songs = JSON.parse(fs.readFileSync(path.join(__dirname, "songs.json"), "utf-8"));
|
||||
const charts = JSON.parse(fs.readFileSync(path.join(__dirname, "deduped-charts.json"), "utf-8"));
|
||||
|
||||
(async () => {
|
||||
await db.songs.usc.remove({});
|
||||
await db.charts.usc.remove({});
|
||||
await db.songs.usc.insert(songs);
|
||||
await db.charts.usc.insert(charts);
|
||||
})();
|
||||
Reference in New Issue
Block a user