salix/back/methods/user-config/getUserConfig.js

44 lines
1.3 KiB
JavaScript

module.exports = function(Self) {
Self.remoteMethodCtx('getUserConfig', {
description: 'returns the information from UserConfig model for the active user',
accepts: [],
returns: {
type: 'object',
root: true
},
http: {
path: `/getUserConfig`,
verb: 'get'
}
});
Self.getUserConfig = async(ctx, options) => {
const models = Self.app.models;
const myOptions = {};
if (typeof options == 'object')
Object.assign(myOptions, options);
let userConfig = await models.UserConfig.findOne({
where: {userFk: ctx.req.accessToken.userId}
}, myOptions);
const companyFilter = {where: {code: 'VNL'}};
const company = await models.Company.findOne(companyFilter, myOptions);
const warehouseFilter = {where: {code: 'ALG'}};
const warehouse = await models.Warehouse.findOne(warehouseFilter, myOptions);
if (!userConfig) {
let newConfig = {
warehouseFk: warehouse.id,
companyFk: company.id,
userFk: ctx.req.accessToken.userId
};
userConfig = await models.UserConfig.create(newConfig, myOptions);
}
return userConfig;
};
};