/
var
/
www
/
greso.tech
/
server
/
nsm
/
controllers
/
company
/
email_template
/
/var/www/greso.tech/server/nsm/controllers/company/email_template
mkdir
upload
Name
Size
Mode
Actions
create.js
1355
0644
edit
dl
rm
delete.js
861
0644
edit
dl
rm
details.js
473
0644
edit
dl
rm
edit.js
1689
0644
edit
dl
rm
list.js
1412
0644
edit
dl
rm
Edit:
/var/www/greso.tech/server/nsm/controllers/company/email_template/list.js
(1412B)
module.exports = function ({ db, logger }) { const { NotFound, BadRequest } = require('../../../responseModels/errors') const { isSet, isEmail, isPhone, isEmpty, minLength, isNumber } = require('../../../utils/validator.util') const { EmailTemplateListModel } = require('../../../responseModels') const { Op } = require('sequelize') return async (req, res, next) => { logger.child({ path: req.path, request: req.query }).info() let t1 = performance.now() try { const { companyId, rootTemplateId, name, limit, page } = req.query let offset = page ? (page - 1) * (limit || 10) : 0 let where = {} if (isSet(name) && minLength(name, 1)) { where['name'] = { [Op.like]: `%${name}%` } } if (isSet(companyId)) { where['companyId'] = companyId }else{ where['companyId'] = ''; } if (isSet(rootTemplateId)) { where['rootTemplateId'] = rootTemplateId } const count = await db.emailTemplates.count(where); const rows = await db.emailTemplates.findAll({ where, offset, order: [ ['name', 'ASC'], ], limit: parseInt(limit) || 10 }) if (!rows || rows.length == 0) { throw new NotFound({ lang: req.user?.languageCode }) } const time = performance.now() - t1 return res.status(200).json(new EmailTemplateListModel({ rows, page, limit, count, time })) } catch (err) { next(err) } } }
Save
cmd:
run