| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- const router = require('express').Router();
- const {paramFail, ServerError, success, controlError, searchSuccess} = require("../tools/result");
- const c = require("../control/c_solution");
- const typeTool = require("../tools/typeTool_cjs");
- const log = require("../logger").logger("r_solution","info");
- /**
- * 加载解决方案
- * @param key query 解决方案类别
- * @param p query 页码
- * @param l query 每页数量
- */
- router.get('/load',
- async (req, res) => {
- try{
- let err, result;
- let {key, l, p} = req.query;
- if(!key){
- paramFail(res, "key is required");
- return;
- }
- log.info(key);
- [err, result] = await c.loadSolution(key, p, l);
- if(err){ return controlError(res, err, null);}
- success(res, result);
- }catch (e) {
- ServerError(res, null, e.message);
- }
- });
- router.get(
- '/search',
- async (req, res) => {
- try{
- let err, result;
- let {key, l, p, type} = req.query;
- type = type || 'all';
- l = typeTool.toNumber(l);
- p = typeTool.toNumber(p);
- log.info(`page=${p},limit=${l}`);
- [err, result] = await c.searchSolution(type, key, p, l);
- if(err){
- return controlError(res, err, null);}
- log.info(`result len=${result.arr.length}`)
- searchSuccess(res,
- result.arr,
- result.total,
- result.page,
- result.limit,
- );
- }catch (e) {
- ServerError(res, null, e.message);
- }
- });
- router.get('/:id', async (req, res) => {
- try{
- let err, result;
- let {id} = req.params;
- id = typeTool.toNumber(id);
- if(!id){
- paramFail(res, "id is required");
- return;
- }
- log.info(`get solution info ${id}`);
- [err, result] = await c.getSolutionInfo(id);
- if(err){ return controlError(res, err, null);}
- success(res, result);
- }catch (e) {
- ServerError(res, null, e.message);
- }
- });
- module.exports = router;
|