app2-api/modules/notification/user_device.service.js

45 lines
1.0 KiB
JavaScript
Raw Normal View History

2019-10-17 16:59:18 +00:00
const moment = require('moment');
const { Expo } = require('expo-server-sdk');
const { generateService, parseParamsToFindOptions } = require('../../helpers/service.helper');
const models = require('../../core/models');
const extraMethods = {
2019-10-21 18:23:06 +00:00
isValidPushToken: (token) => {
return Expo.isExpoPushToken(token);
},
afterFetchAll: (result, params, context) => {
if (!result.count) {
return result;
}
let rows = result.rows.map(row => row.toJSON());
return {
count: result.count,
rows: rows
}
},
2019-10-17 16:59:18 +00:00
getPushToken: (params) => {
return models.UserDevice.findOne({
where: params,
});
},
2023-04-20 12:20:09 +00:00
_getActiveDeviceIds: async (offset = 0, limit = 10) => {
return models.UserDevice.findAndCountAll({
where: {
valid: 1,
},
raw: true,
limit: limit,
offset: offset,
});
},
2019-10-17 16:59:18 +00:00
};
module.exports = generateService(models.UserDevice, extraMethods);