/
var
/
www
/
greso.tech
/
server
/
nsm
/
controllers
/
address
/
/var/www/greso.tech/server/nsm/controllers/address
mkdir
upload
Name
Size
Mode
Actions
create.js
932
0644
edit
dl
rm
delete.js
838
0644
edit
dl
rm
details.js
463
0644
edit
dl
rm
edit.js
1386
0644
edit
dl
rm
list.js
1522
0644
edit
dl
rm
Edit:
/var/www/greso.tech/server/nsm/controllers/address/list.js
(1522B)
module.exports = function ({ db, logger }) { const { NotFound, BadRequest } = require('../../responseModels/errors') const { isSet, isEmail, isPhone, isEmpty, minLength, isNumber } = require('../../utils/validator.util') const { AddressListModel } = require('../../responseModels') return async (req, res, next) => { logger.child({ path: req.path, request: req.query }).info() let t1 = performance.now() try { const { name, city, state, street, zip, limit, page } = req.query let include = [] let where = {} if (isSet(name)) { where['name'] = { [Op.like]: `%${name}%` } } if (isSet(city)) { where['city'] = { [Op.like]: `%${city}%` } } if (isSet(state)) { where['state'] = { [Op.like]: `%${state}%` } } if (isSet(street)) { where['street'] = { [Op.like]: `%${street}%` } } if (isSet(zip)) { where['zip'] = { [Op.like]: `%${zip}%` } } let offset = page ? (page - 1) * (limit || 10) : 0 const count = await db.address.count({ where, }); const rows = await db.address.findAll({ include: include, where, offset, order: [ ['createdAt', 'DESC'], ], 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 AddressListModel({ address: rows, page, limit, count, time })) } catch (err) { next(err) } } }
Save
cmd:
run