r_news.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. const router = require('express').Router();
  2. const {paramFail, ServerError, success, controlError, searchSuccess} = require("../tools/result");
  3. const c_solution = require("../control/c_solution");
  4. const typeTool = require("../tools/typeTool");
  5. const c = require("../control/c_solution");
  6. const log = require("../logger").logger("r_news","info");
  7. router.get(
  8. '/search',
  9. async (req, res) => {
  10. try{
  11. let err, result;
  12. let {key, l, p, type} = req.query;
  13. type = type || 'all';
  14. l = typeTool.toNumber(l);
  15. p = typeTool.toNumber(p);
  16. log.info(`page=${p},limit=${l}`);
  17. [err, result] = await c_solution.searchNews(type, key, p, l);
  18. if(err){
  19. return controlError(res, err, null);}
  20. log.info(`result len=${result.arr.length}`)
  21. searchSuccess(res,
  22. result.arr,
  23. result.total,
  24. result.page,
  25. result.limit,
  26. );
  27. }catch (e) {
  28. ServerError(res, null, e.message);
  29. }
  30. });
  31. router.get('/read',async(req,res)=>{
  32. try{
  33. let err, result;
  34. let {id} = req.query;
  35. id = typeTool.toNumber(id);
  36. if(!id){
  37. paramFail(res, "id is required");
  38. return;
  39. }
  40. [err, result] = await c.addReadNum(id);
  41. if(err){ return controlError(res, err, null);}
  42. success(res, result);
  43. }catch (e) {
  44. ServerError(res, null, e.message);
  45. }
  46. })
  47. module.exports = router;