update
This commit is contained in:
@ -7,21 +7,25 @@ class SAPAccountAdapter extends Adapter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* ================= LIST ================= */
|
/* ================= LIST ================= */
|
||||||
|
/* ================= LIST + PAGINATION ================= */
|
||||||
async queryList(req, callback) {
|
async queryList(req, callback) {
|
||||||
var apires = this.getApiResultDefined();
|
var apires = this.getApiResultDefined();
|
||||||
try {
|
try {
|
||||||
|
let limit = parseInt(req.query.limit) || 10;
|
||||||
|
let offset = parseInt(req.query.offset) || 0;
|
||||||
let keyword = req.query.keyword || "";
|
let keyword = req.query.keyword || "";
|
||||||
|
|
||||||
|
/* ===== QUERY TOTAL ROW ===== */
|
||||||
let qry = `
|
let qry = `
|
||||||
SELECT *
|
SELECT *
|
||||||
FROM tbl_sap_connections
|
FROM tbl_sap_connections
|
||||||
WHERE deleted_at IS NULL
|
WHERE deleted_at IS NULL
|
||||||
AND (
|
AND (
|
||||||
host LIKE '%${keyword}%'
|
host LIKE '%${keyword}%'
|
||||||
OR sap_user LIKE '%${keyword}%'
|
OR sap_user LIKE '%${keyword}%'
|
||||||
OR ket_sap LIKE '%${keyword}%'
|
OR ket_sap LIKE '%${keyword}%'
|
||||||
)
|
)
|
||||||
ORDER BY id ASC
|
`;
|
||||||
`;
|
|
||||||
|
|
||||||
db.query(qry, [], function (err, result) {
|
db.query(qry, [], function (err, result) {
|
||||||
if (err) {
|
if (err) {
|
||||||
@ -29,9 +33,49 @@ class SAPAccountAdapter extends Adapter {
|
|||||||
apires.meta.message = err.toString();
|
apires.meta.message = err.toString();
|
||||||
callback("err", apires);
|
callback("err", apires);
|
||||||
} else {
|
} else {
|
||||||
apires.success = true;
|
if (result.length > 0) {
|
||||||
apires.data = result;
|
let pagination = result.length / limit;
|
||||||
callback(null, apires);
|
if (!Number.isInteger(pagination)) {
|
||||||
|
pagination = Math.floor(result.length / limit) + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
apires.success = true;
|
||||||
|
apires.data.push({
|
||||||
|
totalpage: pagination,
|
||||||
|
totalrows: result.length,
|
||||||
|
});
|
||||||
|
|
||||||
|
/* ===== QUERY DATA WITH LIMIT ===== */
|
||||||
|
let qryData = `
|
||||||
|
SELECT *
|
||||||
|
FROM tbl_sap_connections
|
||||||
|
WHERE deleted_at IS NULL
|
||||||
|
AND (
|
||||||
|
host LIKE '%${keyword}%'
|
||||||
|
OR sap_user LIKE '%${keyword}%'
|
||||||
|
OR ket_sap LIKE '%${keyword}%'
|
||||||
|
)
|
||||||
|
ORDER BY id ASC
|
||||||
|
LIMIT ${offset}, ${limit}
|
||||||
|
`;
|
||||||
|
|
||||||
|
db.query(qryData, [], function (err, resultData) {
|
||||||
|
if (err) {
|
||||||
|
apires.meta.code = 500;
|
||||||
|
apires.meta.message = err.toString();
|
||||||
|
callback("err", apires);
|
||||||
|
} else {
|
||||||
|
apires.data.push({
|
||||||
|
results: JSON.parse(JSON.stringify(resultData)),
|
||||||
|
});
|
||||||
|
callback(null, apires);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
apires.meta.code = 200;
|
||||||
|
apires.meta.message = "Record Not Found";
|
||||||
|
callback(null, apires);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
@ -164,6 +208,44 @@ class SAPAccountAdapter extends Adapter {
|
|||||||
callback("error", apires);
|
callback("error", apires);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ================= DETAIL ================= */
|
||||||
|
async queryDetail(req, callback) {
|
||||||
|
var apires = this.getApiResultDefined();
|
||||||
|
try {
|
||||||
|
const id = req.params.id;
|
||||||
|
|
||||||
|
let qry = `
|
||||||
|
SELECT *
|
||||||
|
FROM tbl_sap_connections
|
||||||
|
WHERE id = ?
|
||||||
|
AND deleted_at IS NULL
|
||||||
|
LIMIT 1
|
||||||
|
`;
|
||||||
|
|
||||||
|
db.query(qry, [id], function (err, result) {
|
||||||
|
if (err) {
|
||||||
|
apires.meta.code = 500;
|
||||||
|
apires.meta.message = err.toString();
|
||||||
|
callback("err", apires);
|
||||||
|
} else {
|
||||||
|
if (result.length > 0) {
|
||||||
|
apires.success = true;
|
||||||
|
apires.data = result[0];
|
||||||
|
} else {
|
||||||
|
apires.meta.code = 200;
|
||||||
|
apires.meta.message = "Record Not Found";
|
||||||
|
apires.data = null;
|
||||||
|
}
|
||||||
|
callback(null, apires);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (err) {
|
||||||
|
apires.meta.code = 500;
|
||||||
|
apires.meta.message = err.toString();
|
||||||
|
callback("error", apires);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = SAPAccountAdapter;
|
module.exports = SAPAccountAdapter;
|
||||||
|
|||||||
@ -63,3 +63,19 @@ exports.delete = (req, res) => {
|
|||||||
sapaccountadapter.sendResponse(502, apireshandler, res);
|
sapaccountadapter.sendResponse(502, apireshandler, res);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* ================= DETAIL ================= */
|
||||||
|
exports.detail = (req, res) => {
|
||||||
|
try {
|
||||||
|
sapaccountadapter.queryDetail(req, function (err, data) {
|
||||||
|
let statusCode = data != null ? data.meta.code : 200;
|
||||||
|
if (err) statusCode = 500;
|
||||||
|
sapaccountadapter.sendResponse(statusCode, data, res);
|
||||||
|
});
|
||||||
|
} catch (err) {
|
||||||
|
apireshandler.meta.code = 502;
|
||||||
|
apireshandler.meta.message =
|
||||||
|
" [24] : SAP Account detail, " + err.toString();
|
||||||
|
sapaccountadapter.sendResponse(502, apireshandler, res);
|
||||||
|
}
|
||||||
|
};
|
||||||
@ -7,5 +7,6 @@ router.get("/list", [jwtauth], sapcontroller.list);
|
|||||||
router.post("/create", [jwtauth], sapcontroller.create);
|
router.post("/create", [jwtauth], sapcontroller.create);
|
||||||
router.put("/update/:id", [jwtauth], sapcontroller.update);
|
router.put("/update/:id", [jwtauth], sapcontroller.update);
|
||||||
router.delete("/delete/:id", [jwtauth], sapcontroller.delete);
|
router.delete("/delete/:id", [jwtauth], sapcontroller.delete);
|
||||||
|
router.get("/detail/:id", [jwtauth], sapcontroller.detail);
|
||||||
|
|
||||||
module.exports = router;
|
module.exports = router;
|
||||||
|
|||||||
Reference in New Issue
Block a user