'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, };