create logger
This commit is contained in:
43
adapter/sapadapter.js
Normal file
43
adapter/sapadapter.js
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
const db = require("../config/dbproc.js");
|
||||||
|
const Adapter = require("./dbadapter.js");
|
||||||
|
|
||||||
|
class SapAdapter extends Adapter {
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
async queryInsertSapLog(req, req_type) {
|
||||||
|
var apires = this.getApiResultDefined();
|
||||||
|
try {
|
||||||
|
const {ref_code, request, request_at, request_by, response, response_at, url} = req;
|
||||||
|
|
||||||
|
let qry = `
|
||||||
|
INSERT INTO tbl_sap_log
|
||||||
|
(created_at, ref_code, request_type, request, request_at, request_by, response, response_at, url)
|
||||||
|
VALUES (NOW(), ?, ?, ?, ?, ?, ?, ?, ?)
|
||||||
|
`;
|
||||||
|
|
||||||
|
db.query(
|
||||||
|
qry,
|
||||||
|
[ref_code, req_type, request, request_at, request_by, response, response_at, url],
|
||||||
|
function (err, result) {
|
||||||
|
if (err) {
|
||||||
|
apires.meta.code = 500;
|
||||||
|
apires.meta.message = err.toString();
|
||||||
|
|
||||||
|
console.log('error saving log =>', err.toString())
|
||||||
|
} else {
|
||||||
|
apires.success = true;
|
||||||
|
apires.data = {insertId: result.insertId};
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
|
} catch (err) {
|
||||||
|
apires.meta.code = 500;
|
||||||
|
apires.meta.message = err.toString();
|
||||||
|
callback("error", apires);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = SapAdapter;
|
||||||
@ -7,6 +7,9 @@ const baseurlsap = "http://" + process.env.HOSTSAP + "/sapapi/index.php/api";
|
|||||||
const apikeysap = "befea63a-7c47-4323-afea-968a3168fe0a";
|
const apikeysap = "befea63a-7c47-4323-afea-968a3168fe0a";
|
||||||
const request = require("request");
|
const request = require("request");
|
||||||
|
|
||||||
|
const SAPAdapter = require("../adapter/sapadapter.js");
|
||||||
|
const sapadapter = new SAPAdapter();
|
||||||
|
|
||||||
function buildPipeString(length, mapping = {}) {
|
function buildPipeString(length, mapping = {}) {
|
||||||
const arr = Array(length).fill("");
|
const arr = Array(length).fill("");
|
||||||
Object.keys(mapping).forEach((index) => {
|
Object.keys(mapping).forEach((index) => {
|
||||||
@ -188,38 +191,92 @@ exports.setUpdateStatusProld = (req, res) => {
|
|||||||
pradapter.sendResponse(statusCode, data, res);
|
pradapter.sendResponse(statusCode, data, res);
|
||||||
} else {
|
} else {
|
||||||
var rsdata = JSON.parse(JSON.stringify(data));
|
var rsdata = JSON.parse(JSON.stringify(data));
|
||||||
console.log('PR Data =>', rsdata.data[0])
|
console.log("PR Data =>", rsdata.data[0]);
|
||||||
// console.log(rsdata["data"]);
|
// console.log(rsdata["data"]);
|
||||||
let pr_type="PRTL";
|
let pr_type = "PRTL";
|
||||||
let x_pr_type="X";
|
let x_pr_type = "X";
|
||||||
let pr_no = "00010";
|
let pr_no = "00010";
|
||||||
let pr_qtyacc ="01";
|
let pr_qtyacc = "01";
|
||||||
let pr_date = rsdata.data[0]['prdateYmd']; //Ymd
|
let pr_date = rsdata.data[0]["prdateYmd"]; //Ymd
|
||||||
let pr_budget = "00"+rsdata.data[0]['glaccount'];
|
let pr_budget = "00" + rsdata.data[0]["glaccount"];
|
||||||
let pr_costcenter = rsdata.data[0]['costcenter'];
|
let pr_costcenter = rsdata.data[0]["costcenter"];
|
||||||
let pr_profitcenter = "TIL1A01";//rsdata.data[0]['profitcenter'];
|
let pr_profitcenter = "TIL1A01"; //rsdata.data[0]['profitcenter'];
|
||||||
let pr_shorttext =rsdata.data[0]['description'];
|
let pr_shorttext = rsdata.data[0]["description"];
|
||||||
let pr_qtyitem =rsdata.data[0]['qty'];
|
let pr_qtyitem = rsdata.data[0]["qty"];
|
||||||
let pr_unititem =rsdata.data[0]['unit'];
|
let pr_unititem = rsdata.data[0]["unit"];
|
||||||
let pr_priceitem =rsdata.data[0]['netprice'];
|
let pr_priceitem = rsdata.data[0]["netprice"];
|
||||||
// let pr_account="00010|01||20130727||||0051331006|TIL1|TIL1A01|||||||||||TIL1A01||||||||||||||||||||||";
|
// let pr_account="00010|01||20130727||||0051331006|TIL1|TIL1A01|||||||||||TIL1A01||||||||||||||||||||||";
|
||||||
let pr_account= pr_no+"|"+pr_qtyacc+"||"+pr_date+"||||"+pr_budget+"|TIL1|"+pr_costcenter+"|||||||||||"+pr_profitcenter+"||||||||||||||||||||||";
|
let pr_account =
|
||||||
|
pr_no +
|
||||||
|
"|" +
|
||||||
|
pr_qtyacc +
|
||||||
|
"||" +
|
||||||
|
pr_date +
|
||||||
|
"||||" +
|
||||||
|
pr_budget +
|
||||||
|
"|TIL1|" +
|
||||||
|
pr_costcenter +
|
||||||
|
"|||||||||||" +
|
||||||
|
pr_profitcenter +
|
||||||
|
"||||||||||||||||||||||";
|
||||||
// let pr_item="00010|||120|Putra|testcreatePR|||||||||1603||TrackNo1|ZSRV||1|BH||20130727||20130727|||1000|1||J||||||||1603|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||D|";
|
// let pr_item="00010|||120|Putra|testcreatePR|||||||||1603||TrackNo1|ZSRV||1|BH||20130727||20130727|||1000|1||J||||||||1603|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||D|";
|
||||||
let pr_item=pr_no+"|||120|Putra|"+pr_shorttext+"|||||||||1603||TrackNo1|ZSRV||"+pr_qtyitem+"|"+pr_unititem+"||"+pr_date+"||"+pr_date+"|||"+pr_priceitem+"|1||J||||||||1603|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||D|";
|
let pr_item =
|
||||||
let resuri={
|
pr_no +
|
||||||
'method': 'POST',
|
"|||120|Putra|" +
|
||||||
|
pr_shorttext +
|
||||||
|
"|||||||||1603||TrackNo1|ZSRV||" +
|
||||||
|
pr_qtyitem +
|
||||||
|
"|" +
|
||||||
|
pr_unititem +
|
||||||
|
"||" +
|
||||||
|
pr_date +
|
||||||
|
"||" +
|
||||||
|
pr_date +
|
||||||
|
"|||" +
|
||||||
|
pr_priceitem +
|
||||||
|
"|1||J||||||||1603|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||D|";
|
||||||
|
let resuri = {
|
||||||
|
"method": "POST",
|
||||||
// 'url': baseurl+'signon',
|
// 'url': baseurl+'signon',
|
||||||
'url': process.env.SAP_API_BASE_URL+'/createPr?pr_type='+pr_type+'&x_pr_type=X&praccount[]='+pr_account+'&pritem[]='+pr_item,
|
"url":
|
||||||
'headers': {
|
process.env.SAP_API_BASE_URL +
|
||||||
'Content-Type': 'application/json',
|
"/createPr?pr_type=" +
|
||||||
'x-api-key' : process.env.SAP_API_KEY
|
pr_type +
|
||||||
|
"&x_pr_type=X&praccount[]=" +
|
||||||
|
pr_account +
|
||||||
|
"&pritem[]=" +
|
||||||
|
pr_item,
|
||||||
|
"headers": {
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
"x-api-key": process.env.SAP_API_KEY,
|
||||||
},
|
},
|
||||||
// form: formjson,
|
// form: formjson,
|
||||||
};
|
};
|
||||||
|
|
||||||
console.log('resuri', resuri);
|
const logData = {
|
||||||
|
ref_code: idxpr,
|
||||||
|
request: JSON.stringify(resuri),
|
||||||
|
request_at: new Date(),
|
||||||
|
request_by: "999999",
|
||||||
|
response: "",
|
||||||
|
response_at: "",
|
||||||
|
url:
|
||||||
|
process.env.SAP_API_BASE_URL +
|
||||||
|
"/createPr?pr_type=" +
|
||||||
|
pr_type +
|
||||||
|
"&x_pr_type=X&praccount[]=" +
|
||||||
|
pr_account +
|
||||||
|
"&pritem[]=" +
|
||||||
|
pr_item,
|
||||||
|
};
|
||||||
|
|
||||||
|
console.log("resuri", resuri);
|
||||||
request(resuri, function (error, response) {
|
request(resuri, function (error, response) {
|
||||||
// console.log('response.body', response.body)
|
// console.log('response.body', response.body)
|
||||||
|
logData.response_at = new Date();
|
||||||
|
logData.response = error ? JSON.stringify(error) : JSON.stringify(response.body);
|
||||||
|
sapadapter.queryInsertSapLog(logData, "CREATE_PR");
|
||||||
|
|
||||||
if (error) {
|
if (error) {
|
||||||
apireshandler.message = error.toString();
|
apireshandler.message = error.toString();
|
||||||
pradapter.sendResponse(400, apireshandler, res);
|
pradapter.sendResponse(400, apireshandler, res);
|
||||||
@ -235,12 +292,13 @@ exports.setUpdateStatusProld = (req, res) => {
|
|||||||
});
|
});
|
||||||
errcode = errcode.substring(0, errcode.length - 2);
|
errcode = errcode.substring(0, errcode.length - 2);
|
||||||
errmsg = errmsg.substring(0, errmsg.length - 3);
|
errmsg = errmsg.substring(0, errmsg.length - 3);
|
||||||
|
|
||||||
if (errcode.length > 0) {
|
if (errcode.length > 0) {
|
||||||
pradapter.queryUpdateSapMessage(req, errmsg, function(err, data) {
|
pradapter.queryUpdateSapMessage(req, errmsg, function (err, data) {
|
||||||
apireshandler.meta.code = errcode;
|
apireshandler.meta.code = errcode;
|
||||||
apireshandler.meta.message = "Failed to Create PR SAP";
|
apireshandler.meta.message = "Failed to Create PR SAP";
|
||||||
pradapter.sendResponse(200, apireshandler, res);
|
pradapter.sendResponse(200, apireshandler, res);
|
||||||
})
|
});
|
||||||
} else {
|
} else {
|
||||||
pradapter.queryUpdateStatusPr(req, resdata["NUMBER"], errmsg, function (err, data) {
|
pradapter.queryUpdateStatusPr(req, resdata["NUMBER"], errmsg, function (err, data) {
|
||||||
let statusCode = data != null ? data.meta.code : 200;
|
let statusCode = data != null ? data.meta.code : 200;
|
||||||
|
|||||||
Reference in New Issue
Block a user