feat:
脚本文件
This commit is contained in:
parent
fb7684326e
commit
276ca85bc3
22
src/patch_email_find.ts
Normal file
22
src/patch_email_find.ts
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
import {initMongoDB} from "./setMongodb";
|
||||||
|
import {ctor} from "./global";
|
||||||
|
|
||||||
|
async function start() {
|
||||||
|
await initMongoDB();
|
||||||
|
|
||||||
|
let emails = await G.mongodb.collection("email").find({
|
||||||
|
title: {$regex: "wzry"}
|
||||||
|
}).toArray();
|
||||||
|
|
||||||
|
for (let i = 0; i < emails.length; i++) {
|
||||||
|
console.log();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ctor();
|
||||||
|
start().then(() => {
|
||||||
|
setInterval(() => {
|
||||||
|
console.log(new Date().format("MM-dd hh:mm:ss"));
|
||||||
|
}, 1000)
|
||||||
|
console.log("逻辑执行完成...等待退出!!!");
|
||||||
|
});
|
43
src/path_20231220.ts
Normal file
43
src/path_20231220.ts
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
import {ctor} from "./global";
|
||||||
|
import {initMongoDB} from "./setMongodb";
|
||||||
|
|
||||||
|
async function start() {
|
||||||
|
await initMongoDB()
|
||||||
|
|
||||||
|
let datas = await G.mongodb.collection("event").find(
|
||||||
|
{type: {$in: ["yangchengmubiao100", "yangchengmubiao101"]}}
|
||||||
|
).toArray();
|
||||||
|
|
||||||
|
for (let i = 0; i < datas.length; i++) {
|
||||||
|
let add = 0;
|
||||||
|
let data = datas[i];
|
||||||
|
if (!Array.isArray(data.taskval)) continue;
|
||||||
|
let taskval: { [taskid: string]: number } = {};
|
||||||
|
for (let i = 0; i < data.taskval.length; i++) {
|
||||||
|
if (data.taskval[i] === null) continue;
|
||||||
|
|
||||||
|
if (typeof data.taskval[i] == "number") {
|
||||||
|
add = data.taskval[i];
|
||||||
|
} else {
|
||||||
|
taskval = Object.assign(taskval, data.taskval[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (let taskid in taskval) {
|
||||||
|
taskval[taskid] = (taskval[taskid] || 0) + add;
|
||||||
|
}
|
||||||
|
await G.mongodb.collection("event").updateOne(
|
||||||
|
{uid: data.uid, type: data.type}, {$set: {taskval: taskval}}
|
||||||
|
)
|
||||||
|
console.log(`修复玩家${data.uid}人才计划数据完成...`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ctor();
|
||||||
|
start().then(() => {
|
||||||
|
setInterval(() => {
|
||||||
|
console.log(new Date().format("MM-dd hh:mm:ss"));
|
||||||
|
}, 1000)
|
||||||
|
console.log("逻辑执行完成...等待退出!!!");
|
||||||
|
});
|
||||||
|
|
||||||
|
|
@ -1,35 +1,47 @@
|
|||||||
import {MongoClient} from "mongodb";
|
|
||||||
import * as ramda from 'ramda'
|
|
||||||
import fs from "fs";
|
import fs from "fs";
|
||||||
|
import {MongoClient} from "mongodb";
|
||||||
|
|
||||||
let R = ramda
|
|
||||||
|
|
||||||
async function start() {
|
async function start() {
|
||||||
|
let mongodbUrl = "mongodb://blacklagoon:lffu2bD%5eGn2%5eE%2bE7@blacklagoon-mongo-secondary.pro.g123-cpp.com:3717,blacklagoon-mongo-primary.pro.g123-cpp.com:3717?replicaSet=mgset-351738825"
|
||||||
//连接mongodb
|
//连接mongodb
|
||||||
let client = await MongoClient.connect('mongodbUrl');
|
let client = await MongoClient.connect(mongodbUrl);
|
||||||
|
|
||||||
console.log('链接成功')
|
console.log('链接成功');
|
||||||
|
|
||||||
let a: any = {}
|
let user2email: { [uid: string]: { [title: string]: { prize: any, get_num: number, unget_num: number } } } = {};
|
||||||
|
for (let i = 1; i < 49; i++) {
|
||||||
for (let i = 1; i < 20; i++) {
|
|
||||||
let dbName = `blacklagoon_s${i}`
|
let dbName = `blacklagoon_s${i}`
|
||||||
console.log(dbName)
|
console.log(dbName)
|
||||||
let mongodb = client.db(dbName);
|
|
||||||
a[dbName] = {};
|
|
||||||
(await mongodb.collection('email').find({type: 'gm', uid: 'system'}).toArray()).map(i => {
|
|
||||||
a[dbName][i.title] = R.compose(R.map(i => ({[i[0]]: i.length})), R.values, R.filter(i => i.length > 1), R.groupBy(i => i))(i.prizelist)
|
|
||||||
console.log(a[dbName][i.title])
|
|
||||||
})
|
|
||||||
console.log(dbName, '查询完成')
|
|
||||||
}
|
|
||||||
|
|
||||||
fs.writeFileSync('tab.json', JSON.stringify(a, null, 2))
|
let mongodb = client.db(dbName);
|
||||||
|
let emails = await mongodb.collection("email").find({
|
||||||
|
title: {$regex: "wzry"}
|
||||||
|
}).toArray();
|
||||||
|
|
||||||
|
for (let i = 0; i < emails.length; i++) {
|
||||||
|
let email = emails[i];
|
||||||
|
if (!email.prizeData?.prize) continue;
|
||||||
|
if (!user2email[email.uid]) {
|
||||||
|
user2email[email.uid] = {};
|
||||||
|
}
|
||||||
|
if (!user2email[email.uid][email.title]) {
|
||||||
|
user2email[email.uid][email.title] = {
|
||||||
|
prize: email.prizeData.prize,
|
||||||
|
get_num: 0,
|
||||||
|
unget_num: 0,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (email.prizeData.isGet) {
|
||||||
|
user2email[email.uid][email.title].get_num += 1;
|
||||||
|
} else {
|
||||||
|
user2email[email.uid][email.title].unget_num += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fs.writeFileSync('email.json', JSON.stringify(user2email, null, 2))
|
||||||
}
|
}
|
||||||
|
|
||||||
//定义全局变量
|
|
||||||
// ctor();
|
|
||||||
//启动服务
|
|
||||||
start().then(() => {
|
start().then(() => {
|
||||||
process.exit()
|
process.exit()
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user