const rCode = require('../map/rcodeMap'); const log = require('../logger').logger('resultHandle','info'); // 计算耗时 res.queryTime function comTime(res,msg){ let time = new Date() - res.queryTime; log.info(`[queryInfo] ${msg} Time consuming: ${time}ms`); } function success(res,data) { comTime(res,'success'); res.json({ code: rCode.OK, data: data }) } function searchSuccess(res, data, total, page, limit) { comTime(res,'searchSuccess'); res.json({ code: rCode.OK, data: data, total: total, count: data.length, page: page, limit: limit }) } function ServerError(res,code,msg) { comTime(res,'ServerError'); log.error(`result to server error ${msg}`); res.json({ code: code?code:rCode.ServerError, msg: msg }) } function paramFail(res,msg) { comTime(res,'paramFail'); res.json({ code: rCode.NotParam, msg: msg }) } function notLogin(res,msg) { comTime(res,'notLogin'); res.json({ code: rCode.NotLogin, msg: msg }) } function notPermission(res,msg) { comTime(res); res.json({ code: rCode.NotPermission, msg: msg }) } function customError(res,msg) { comTime(res,'customError'); res.json({ code: rCode.CustomError, msg: msg }) } function controlError(res,err,msg) { let errorCode,errorMsg; if(msg){ errorMsg = msg } if(err){ console.log(err); if(err.eCode){ errorCode = err.eCode; } if(!msg && err.eMsg){ errorMsg = err.eMsg; }else if(msg){ errorMsg = msg; }else{ errorMsg = err.message; } } if(!errorCode){ errorCode = rCode.ServerError } if(!errorMsg){ errorMsg = 'server error 9999' } switch (errorCode) { case rCode.OK: success(res,errorMsg); break; case rCode.NotParam: paramFail(res,errorMsg); break; case rCode.NotLogin: notLogin(res,errorMsg); break; case rCode.NotPermission: notPermission(res,errorMsg); break; case rCode.CustomError: customError(res,errorMsg); break; case rCode.Timeout: case rCode.NotFound: case rCode.ApiError: case rCode.SaveError: case rCode.DataRepeat: case rCode.ServerError: default: ServerError(res,errorCode,errorMsg); } } module.exports = { success, searchSuccess, ServerError, notLogin, paramFail, controlError, }