Initial commit

This commit is contained in:
meusinfirmary
2025-04-22 14:31:37 +07:00
commit b7e852126c
115 changed files with 23188 additions and 0 deletions

View File

@ -0,0 +1,37 @@
const Helper = require('../library/LibHelper');
const DriversModels = require('../models/DriversModels');
const LibJwt = require('../library/LibJwt');
const response = require('../config/response');
class AuthDriverMiddleware {
static async initialize(req, res, next) {
let apiRes = {};
try {
const tokenData = await LibJwt.verifyToken(req.headers['x-api-key']);
if (tokenData.type !== 'success') {
apiRes = JSON.parse(JSON.stringify(response[401]));
apiRes.meta.message += Helper.setErrMsg(': ' + tokenData.message);
return res.status(200).json(apiRes);
}
const phoneDevice = await DriversModels.getDeviceByImei(tokenData.data.device_id);
if (phoneDevice.length < 1) {
apiRes = JSON.parse(JSON.stringify(response[401]));
apiRes.meta.message += Helper.setErrMsg(': your session has expired');
return res.status(200).json(apiRes);
}
if (phoneDevice[0].is_login !== DriversModels.IS_LOGIN) {
apiRes = JSON.parse(JSON.stringify(response[401]));
apiRes.meta.message += Helper.setErrMsg(': your session has expired');
return res.status(200).json(apiRes);
}
req.auth = JSON.parse(JSON.stringify(tokenData.data));
next();
} catch (e) {
apiRes = JSON.parse(JSON.stringify(response[401]));
apiRes.meta.message += Helper.setErrMsg(': ' + e.message);
return res.status(200).json(apiRes);
}
}
}
module.exports = AuthDriverMiddleware.initialize;