/** * 搜索接口。 * * author: Sand * since: 12/15/2016 */ "use strict"; let express = require('express'); let router = express.Router(); let ControllerUtil = require("../../util/controller.util.js"); let MySqlSearcher = require('../../models/search/mysql.searcher'); /** * 搜索API。 * * 参数: * target: all/doctor/session/message * keyword: 关键字 * page: 第几页,从1开始,当target为all时无效 * size: 页大小,当target为all时无效 * * URL: * /search?target=all&keyword=张&page */ router.get("/", function (req, res) { ControllerUtil.checkRequestQueryParams(req, ['user_id', 'target', 'keyword']); let userId = req.query.user_id; let target = req.query.target; let keyword = req.query.keyword; let page = req.query.page; let size = req.query.size; page = page ? parseInt(page) - 1 : 0; size = size ? parseInt(size) : 10; let searcher = new MySqlSearcher(); ControllerUtil.regModelEventHandler(searcher, res); if(target == 'all'){ searcher.searchAll(userId, keyword); } else if(target == 'doctor'){ searcher.searchDoctors(keyword, page, size) } else if(target == 'sessions'){ searcher.searchSessions(userId, keyword, page, size); } else if(target == 'message'){ searcher.searchMessages(userId, keyword, page, size); } }); module.exports = router;