Files
old-crm-integration/services/officeRnD/resources.js
2019-06-14 17:41:09 +02:00

62 lines
1.7 KiB
JavaScript

'use strict';
const db = require('../../models/index');
const { API } = require('../../helpers/api');
const fetchOffices = () => {
return new Promise((resolve, reject) => {
API.get('/offices')
.then((result) => {
const offices = result.data || [];
const cleanedOffices = [];
offices.forEach(office => {
cleanedOffices.push({
officeId: office['_id'],
officeName: office.name,
});
});
resolve(cleanedOffices);
})
.catch((error) => {
reject(error);
});
});
};
const fetchResources = () => {
return new Promise((resolve, reject) => {
API.get('/resources')
.then((result) => {
const resources = result.data || [];
const cleanedResources = [];
resources.forEach(resource => {
cleanedResources.push({
resourceId: resource['_id'],
resourceName: resource.name,
officeId: resource.office,
});
});
resolve(cleanedResources);
})
.catch((error) => {
reject(error);
});
});
};
const getMappingsFromDatabase = () => {
return db.officeResourceMapping.findAll();
};
const saveNewMappingToDatabase = (mapping) => {
return db.officeResourceMapping.findOrCreate({where: {...mapping}, defaults: {...mapping}});
};
module.exports = {
getMappingsFromDatabase,
fetchOffices,
fetchResources,
saveNewMappingToDatabase,
};