This commit is contained in:
syuilo 2018-06-15 09:56:59 +09:00
parent 736d3100f6
commit 2bad6bd5ac

View file

@ -1,34 +1,32 @@
/**
* Module dependencies
*/
import DriveFile from '../../../models/drive-file'; import DriveFile from '../../../models/drive-file';
/** /**
* Get drive information * Get drive information
*
* @param {any} params
* @param {any} user
* @return {Promise<any>}
*/ */
module.exports = (params, user) => new Promise(async (res, rej) => { module.exports = (params, user) => new Promise(async (res, rej) => {
// Calculate drive usage // Calculate drive usage
const usage = ((await DriveFile const usage = await DriveFile
.aggregate([ .aggregate([{
{ $match: { 'metadata.userId': user._id } }, $match: {
{ 'metadata.userId': user._id,
'metadata.deletedAt': { $exists: false }
}
}, {
$project: { $project: {
length: true length: true
} }
}, }, {
{
$group: { $group: {
_id: null, _id: null,
usage: { $sum: '$length' } usage: { $sum: '$length' }
} }
}])
.then((aggregates: any[]) => {
if (aggregates.length > 0) {
return aggregates[0].usage;
} }
]))[0] || { return 0;
usage: 0 });
}).usage;
res({ res({
capacity: user.driveCapacity, capacity: user.driveCapacity,