const router = require('express').Router(); const api_admin_router = require('./admin_api'); const checkLogin = require('../middleware/checkLogin'); const field = require('../maps/field') const c_user = require("../controller/account"); const code = require("../maps/rcodeMap"); const progress = require("../maps/progress"); const paramsCheck = require("../middleware/paramsCheck"); // 管理员主页 router.get('/', checkLogin(field.adminType,'view'), function(req, res, next) { res.send('respond with a resource'); }); // 管理员登陆页 router.get('/login', function(req, res, next) { res.send('respond with a resource'); }); // 登陆接口 router.post('/login', paramsCheck({ post:{ account:{required:true}, passwd:{required:true} }}), async (req,res)=>{ try{ let results = await c_user.login(field.adminType,req.body.account,req.body.passwd); req.session[progress.adminSessionField] = results; res.json({ rcode: code.ok, data: results }) }catch (error) { if (error.rcode !== code.customError) { console.log(error); console.log.error(`login error ${error.message||error.msg}`); } res.json({ rcode: error.rcode || code.serverError, msg: error.msg || error.message }); } }) // 退出登陆 router.post('/logout', async (req,res)=>{ try{ req.session[progress.adminSessionField] = null; res.json({ rcode: code.ok, }) }catch (error) { if (error.rcode !== code.customError) { console.log(error); console.log.error(`logout error ${error.message||error.msg}`); } res.json({ rcode: error.rcode || code.serverError, msg: error.msg || error.message }); } }); // 后台相关接口 router.use('/api',checkLogin(field.adminType),api_admin_router) module.exports = router;