create logger

This commit is contained in:
Rizki
2026-02-13 10:37:13 +07:00
parent 034d99ff19
commit 9d4e4a98b2
2 changed files with 136 additions and 35 deletions

View File

@ -7,6 +7,9 @@ const baseurlsap = "http://" + process.env.HOSTSAP + "/sapapi/index.php/api";
const apikeysap = "befea63a-7c47-4323-afea-968a3168fe0a";
const request = require("request");
const SAPAdapter = require("../adapter/sapadapter.js");
const sapadapter = new SAPAdapter();
function buildPipeString(length, mapping = {}) {
const arr = Array(length).fill("");
Object.keys(mapping).forEach((index) => {
@ -188,38 +191,92 @@ exports.setUpdateStatusProld = (req, res) => {
pradapter.sendResponse(statusCode, data, res);
} else {
var rsdata = JSON.parse(JSON.stringify(data));
console.log('PR Data =>', rsdata.data[0])
// console.log(rsdata["data"]);
let pr_type="PRTL";
let x_pr_type="X";
let pr_no = "00010";
let pr_qtyacc ="01";
let pr_date = rsdata.data[0]['prdateYmd']; //Ymd
let pr_budget = "00"+rsdata.data[0]['glaccount'];
let pr_costcenter = rsdata.data[0]['costcenter'];
let pr_profitcenter = "TIL1A01";//rsdata.data[0]['profitcenter'];
let pr_shorttext =rsdata.data[0]['description'];
let pr_qtyitem =rsdata.data[0]['qty'];
let pr_unititem =rsdata.data[0]['unit'];
let pr_priceitem =rsdata.data[0]['netprice'];
// 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_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 resuri={
'method': 'POST',
// '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,
'headers': {
'Content-Type': 'application/json',
'x-api-key' : process.env.SAP_API_KEY
},
// form: formjson,
};
console.log("PR Data =>", rsdata.data[0]);
// console.log(rsdata["data"]);
let pr_type = "PRTL";
let x_pr_type = "X";
let pr_no = "00010";
let pr_qtyacc = "01";
let pr_date = rsdata.data[0]["prdateYmd"]; //Ymd
let pr_budget = "00" + rsdata.data[0]["glaccount"];
let pr_costcenter = rsdata.data[0]["costcenter"];
let pr_profitcenter = "TIL1A01"; //rsdata.data[0]['profitcenter'];
let pr_shorttext = rsdata.data[0]["description"];
let pr_qtyitem = rsdata.data[0]["qty"];
let pr_unititem = rsdata.data[0]["unit"];
let pr_priceitem = rsdata.data[0]["netprice"];
// 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_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 resuri = {
"method": "POST",
// '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,
"headers": {
"Content-Type": "application/json",
"x-api-key": process.env.SAP_API_KEY,
},
// 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) {
// 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) {
apireshandler.message = error.toString();
pradapter.sendResponse(400, apireshandler, res);
@ -235,12 +292,13 @@ exports.setUpdateStatusProld = (req, res) => {
});
errcode = errcode.substring(0, errcode.length - 2);
errmsg = errmsg.substring(0, errmsg.length - 3);
if (errcode.length > 0) {
pradapter.queryUpdateSapMessage(req, errmsg, function(err, data) {
apireshandler.meta.code = errcode;
apireshandler.meta.message = "Failed to Create PR SAP";
pradapter.sendResponse(200, apireshandler, res);
})
pradapter.queryUpdateSapMessage(req, errmsg, function (err, data) {
apireshandler.meta.code = errcode;
apireshandler.meta.message = "Failed to Create PR SAP";
pradapter.sendResponse(200, apireshandler, res);
});
} else {
pradapter.queryUpdateStatusPr(req, resdata["NUMBER"], errmsg, function (err, data) {
let statusCode = data != null ? data.meta.code : 200;