const express = require('express'); const _ = require('lodash'); const { query, body } = require('express-validator'); const { onSuccess, fill } = require('../../../utils'); const { limit } = require('../../config'); const SysUser = require('../../../db/fuxi/sys_user'); const { Op } = require('sequelize'); const router = express.Router(); async function fillSingle(data) { return data; } /** * showdoc * @catalog v1/用户 * @title 用户列表 * @description 用户列表接口 * @method GET * @url /master/user/ * @param uname 0 string 用户名 * @return {"code":0, "count":1, "data": []} * @return_param id string id * @return_param nickName integer 用户名 * @return_param phoneNmber integer 手机号 * @remark * @number */ router.get('/', async (req, res) => { const { page = 0, uname } = req.query; const where = _.omit(req.query, ['page']); if (uname) { where.login = { [Op.like]: `%${uname}` }; } const info = onSuccess(); info.data = await SysUser.findAll({ where, limit, offset: page * limit }); info.data = await fill(info.data, fillSingle); if (!page) { info.count = await SysUser.count({ where }); } res.send(info); }); /** * showdoc * @catalog v1/用户 * @title 用户详情 * @description * @method GET * @url /master/user/:id * @param :id 1 STRING 详情ID * @return {"code":0, "data": {}} * @return_param id string id * @return_param nickName integer 用户名 * @return_param phoneNmber integer 手机号 * @remark * @number */ router.get('/:id', async (req, res) => { let data = await SysUser.findOne({ where: req.params }); data = await fill(data, fillSingle); res.send(onSuccess(data)); }); module.exports = router;