tweak report migration script
parent
833f1e4e57
commit
ed65ce39bc
|
@ -1,8 +1,4 @@
|
|||
db.report2.drop();
|
||||
db.report2.createIndex({room:1,score:-1},{partialFilterExpression:{open:true},name:'best_open'});
|
||||
db.report2.createIndex({'inquiry.mod':1},{partialFilterExpression:{'inquiry.mod':{$exists:true}}});
|
||||
db.report2.createIndex({user:1});
|
||||
db.report2.createIndex({'atoms.by':1});
|
||||
|
||||
db.report.aggregate(
|
||||
[
|
||||
|
@ -21,12 +17,17 @@ db.report.aggregate(
|
|||
var reports = group.reports;
|
||||
var first = reports[0];
|
||||
|
||||
var atoms = reports.map(r => ({
|
||||
by: r.createdBy,
|
||||
at: r.createdAt,
|
||||
text: r.text,
|
||||
score: 30
|
||||
}));
|
||||
var atoms = [];
|
||||
reports.forEach(r => {
|
||||
var same = atoms.find(a => a.by === r.createdBy);
|
||||
if (same) same.text += '\n\n' + r.text;
|
||||
else atoms.push({
|
||||
by: r.createdBy,
|
||||
at: r.createdAt,
|
||||
text: r.text,
|
||||
score: 30
|
||||
});
|
||||
});
|
||||
|
||||
var report = {
|
||||
_id: first._id,
|
||||
|
@ -38,7 +39,12 @@ db.report.aggregate(
|
|||
open: !first.processedBy
|
||||
};
|
||||
if (first.processedBy)
|
||||
report.processedBy = first.processedBy;
|
||||
report.processedBy = first.processedBy;
|
||||
|
||||
db.report2.insert(report);
|
||||
});
|
||||
|
||||
db.report2.createIndex({room:1,score:-1},{partialFilterExpression:{open:true},name:'best_open'});
|
||||
db.report2.createIndex({'inquiry.mod':1},{partialFilterExpression:{'inquiry.mod':{$exists:true}}});
|
||||
db.report2.createIndex({user:1});
|
||||
db.report2.createIndex({'atoms.by':1});
|
||||
|
|
Loading…
Reference in New Issue