tuain-ecosystem-lib
Version:
Servicio de gestión mensajería instantanea de la plataforma Tuain
52 lines (43 loc) • 1.06 kB
JavaScript
const { ObjectId } = require('mongodb');
const common = require('./common');
function findByStore(storeId) {
return { storeId: ObjectId(storeId) };
}
function findByDevice(deviceId) {
return { deviceId: ObjectId(deviceId) };
}
function findBySerial(serial) {
return { serial };
}
function findByFullSerial(fullSerial) {
return { fullSerial };
}
function findByThirdParty(thirdPartyId, thirdPartyRole) {
return {
thirdParties: {
$elemMatch: { thirdPartyId: ObjectId(thirdPartyId), thirdPartyRole },
},
};
}
function findTerminals(terminalIds) {
const query = {};
if (Array.isArray(terminalIds)) {
const terminalIdsObj = terminalIds.map(item => ObjectId(item));
Object.assign(query, { _id: { $in: terminalIdsObj } });
}
return query;
}
function removeThirdParty(thirdPartyRole) {
return { $pull: { thirdParties: { thirdPartyRole } } };
}
module.exports = {
...common,
ObjectId,
findTerminals,
findByStore,
findBySerial,
findByFullSerial,
findByDevice,
findByThirdParty,
removeThirdParty,
};