This commit is contained in:
Rizki
2026-01-07 14:08:01 +07:00
parent 93ab4646bb
commit 9b1d94348e

View File

@ -1,7 +1,7 @@
const db=require('../config/dbproc.js'); const db = require("../config/dbproc.js");
const Adapter=require('./dbadapter.js'); const Adapter = require("./dbadapter.js");
const fs = require("fs"); const fs = require("fs");
const baseUrl = process.env.URLPDFFILE;
class BastAdapter extends Adapter { class BastAdapter extends Adapter {
constructor() { constructor() {
@ -25,22 +25,20 @@ class BastAdapter extends Adapter{
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
if (result.length > 0) { if (result.length > 0) {
let pagination = result.length / limit; let pagination = result.length / limit;
if (!Number.isInteger(pagination)) { if (!Number.isInteger(pagination)) {
pagination=(Math.floor(result.length / limit))+1; pagination = Math.floor(result.length / limit) + 1;
} }
// let pagination = Adapter.getPagination(result.length, limit); // let pagination = Adapter.getPagination(result.length, limit);
apires.success = true; apires.success = true;
apires.data.push({ apires.data.push({
"totalpage": pagination, "totalpage": pagination,
"totalrows": result.length "totalrows": result.length,
}); });
qry = "select * from vw_bastactivitylist "; qry = "select * from vw_bastactivitylist ";
qry = qry + "where activityname like '%" + keyword + "%' "; qry = qry + "where activityname like '%" + keyword + "%' ";
@ -50,31 +48,27 @@ class BastAdapter extends Adapter{
// qry = qry + "order by _idx asc limit " + offset + ", " + limit; // qry = qry + "order by _idx asc limit " + offset + ", " + limit;
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
apires.data.push({ apires.data.push({
"results": JSON.parse(JSON.stringify(result)) "results": JSON.parse(JSON.stringify(result)),
}); });
callback(null, apires); callback(null, apires);
} }
}); });
} } else {
else{
apires.meta.code = 200; apires.meta.code = 200;
apires.meta.message = "Record Not Found"; apires.meta.message = "Record Not Found";
callback(null, apires); callback(null, apires);
} }
} }
}); });
} } catch (err) {
catch(err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -95,22 +89,20 @@ class BastAdapter extends Adapter{
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
if (result.length > 0) { if (result.length > 0) {
let pagination = result.length / limit; let pagination = result.length / limit;
if (!Number.isInteger(pagination)) { if (!Number.isInteger(pagination)) {
pagination=(Math.floor(result.length / limit))+1; pagination = Math.floor(result.length / limit) + 1;
} }
// let pagination = Adapter.getPagination(result.length, limit); // let pagination = Adapter.getPagination(result.length, limit);
apires.success = true; apires.success = true;
apires.data.push({ apires.data.push({
"totalpage": pagination, "totalpage": pagination,
"totalrows": result.length "totalrows": result.length,
}); });
// qry = "select * from vw_bastactivitylist "; // qry = "select * from vw_bastactivitylist ";
@ -121,31 +113,27 @@ class BastAdapter extends Adapter{
qry = qry + "order by _idx asc limit " + offset + ", " + limit; qry = qry + "order by _idx asc limit " + offset + ", " + limit;
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
apires.data.push({ apires.data.push({
"results": JSON.parse(JSON.stringify(result)) "results": JSON.parse(JSON.stringify(result)),
}); });
callback(null, apires); callback(null, apires);
} }
}); });
} } else {
else{
apires.meta.code = 200; apires.meta.code = 200;
apires.meta.message = "Record Not Found"; apires.meta.message = "Record Not Found";
callback(null, apires); callback(null, apires);
} }
} }
}); });
} } catch (err) {
catch(err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -160,28 +148,24 @@ class BastAdapter extends Adapter{
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
if (result.length > 0) { if (result.length > 0) {
apires.success = true; apires.success = true;
apires.data = JSON.parse(JSON.stringify(result)); apires.data = JSON.parse(JSON.stringify(result));
} } else {
else{
apires.meta.code = 200; apires.meta.code = 200;
apires.meta.message = "Record Not Found"; apires.meta.message = "Record Not Found";
} }
callback(null, apires); callback(null, apires);
} }
}); });
} } catch (err) {
catch(err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -206,50 +190,84 @@ class BastAdapter extends Adapter{
// qry = qry + "description='"+description+"',idxvendor='"+idxvendor+"',vendorcode='"+vendorcode+"',vendorname='"+vendorname+"',"; // qry = qry + "description='"+description+"',idxvendor='"+idxvendor+"',vendorcode='"+vendorcode+"',vendorname='"+vendorname+"',";
// qry = qry + "totalpo='"+totalpo+"',povendornumber='"+povendornumber+"',filedoctemplate='"+filedoctemplate+"',status='"+status+"',"; // qry = qry + "totalpo='"+totalpo+"',povendornumber='"+povendornumber+"',filedoctemplate='"+filedoctemplate+"',status='"+status+"',";
// qry = qry + "statusdescription='"+statusdescription+"',laststatusupdate=now(),iby='"+nik+"',idt=now()"; // qry = qry + "statusdescription='"+statusdescription+"',laststatusupdate=now(),iby='"+nik+"',idt=now()";
let qry = "insert into tbl_bast set idxpo='"+idxpo+"',bastnumber='"+bastnumber+"',bastdates='"+bastdates+"',"; let qry =
qry = qry + "description='"+description+"',idxvendor='"+idxvendor+"',vendorcode='"+vendorcode+"',vendorname='"+vendorname+"',"; "insert into tbl_bast set idxpo='" +
qry = qry + "totalpo='"+totalpo+"',povendornumber='"+povendornumber+"',filepdf='"+filedoctemplate+"',ismergedoc=1,status='"+status+"',"; idxpo +
qry = qry + "statusdescription='"+statusdescription+"',laststatusupdate=now(),iby='"+nik+"',idt=now()"; "',bastnumber='" +
bastnumber +
"',bastdates='" +
bastdates +
"',";
qry =
qry +
"description='" +
description +
"',idxvendor='" +
idxvendor +
"',vendorcode='" +
vendorcode +
"',vendorname='" +
vendorname +
"',";
qry =
qry +
"totalpo='" +
totalpo +
"',povendornumber='" +
povendornumber +
"',filepdf='" +
filedoctemplate +
"',ismergedoc=1,status='" +
status +
"',";
qry =
qry +
"statusdescription='" +
statusdescription +
"',laststatusupdate=now(),iby='" +
nik +
"',idt=now()";
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
var idxheader = result.insertId; var idxheader = result.insertId;
// qry ="insert into tbl_bastdetail(idxheader,idxpoboq,description,qty,units,poamount,iby,idt) "; // qry ="insert into tbl_bastdetail(idxheader,idxpoboq,description,qty,units,poamount,iby,idt) ";
// qry = qry + "select '"+idxheader+"', _idx , description, qty, units, poamount, '"+nik+"',now() "; // qry = qry + "select '"+idxheader+"', _idx , description, qty, units, poamount, '"+nik+"',now() ";
// qry = qry + "from tbl_poboq where _idx in("+idxpoboq+")"; // qry = qry + "from tbl_poboq where _idx in("+idxpoboq+")";
qry ="insert into tbl_bastdetail(idxheader,idxpoboq,description,qty,units,poamount,iby,idt) "; qry =
qry = qry + "select '"+idxheader+"', _idx , description, qty, units, poamount, '"+nik+"',now() "; "insert into tbl_bastdetail(idxheader,idxpoboq,description,qty,units,poamount,iby,idt) ";
qry =
qry +
"select '" +
idxheader +
"', _idx , description, qty, units, poamount, '" +
nik +
"',now() ";
qry = qry + "from tbl_poboq where _idx in(" + idxpoboq + ")"; qry = qry + "from tbl_poboq where _idx in(" + idxpoboq + ")";
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
apires.success = true; apires.success = true;
apires.data = JSON.parse(JSON.stringify(result)); apires.data = JSON.parse(JSON.stringify(result));
apires.meta.code = 200; apires.meta.code = 200;
callback(null, apires); callback(null, apires);
} }
}); });
} }
}); });
} } catch (err) {
catch(err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -261,30 +279,59 @@ class BastAdapter extends Adapter{
let bastdates = req.body.bastdates; let bastdates = req.body.bastdates;
let description = req.body.description; let description = req.body.description;
let qry =
let qry = "update tbl_bast set status=1,statusdescription='Upload Handover',bastdateshandover='"+bastdates+"',descriptionhandover='"+description+"',"; "update tbl_bast set status=1,statusdescription='Upload Handover',bastdateshandover='" +
qry +="filehandoversign='"+filehandoversign+"',uby='"+nik+"',udt=now() where _idx='"+idxbast+"'"; bastdates +
"',descriptionhandover='" +
description +
"',";
qry +=
"filehandoversign='" +
filehandoversign +
"',uby='" +
nik +
"',udt=now() where _idx='" +
idxbast +
"'";
// let qry = "update tbl_bast set filehandoversign='"+filehandoversign+"',uby='"+nik+"',udt=now() where _idx='"+idxbast+"'"; // let qry = "update tbl_bast set filehandoversign='"+filehandoversign+"',uby='"+nik+"',udt=now() where _idx='"+idxbast+"'";
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else let qryHistory =
{ "insert into tbl_bastfilehistory set statusdescription='Upload Handover', bastdateshandover='" +
bastdates +
"',descriptionhandover='" +
description +
"', filehandoversign='" +
filehandoversign +
"',iby='" +
nik +
"',idt=now(), idxbast='" +
idxbast +
"'";
db.query(qryHistory, [], function (err, result, fields) {
if (err) {
apires.meta["message"] = err.toString();
apires.meta["code"] = 500;
callback("err", apires);
} else {
apires.success = true; apires.success = true;
apires.meta.code = 200; apires.meta.code = 200;
callback(null, apires); callback(null, apires);
} }
}); });
} }
catch(err) { });
} catch (err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -302,53 +349,47 @@ class BastAdapter extends Adapter{
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
if (result.length > 0) { if (result.length > 0) {
let pagination = result.length / limit; let pagination = result.length / limit;
if (!Number.isInteger(pagination)) { if (!Number.isInteger(pagination)) {
pagination=(Math.floor(result.length / limit))+1; pagination = Math.floor(result.length / limit) + 1;
} }
// let pagination = Adapter.getPagination(result.length, limit); // let pagination = Adapter.getPagination(result.length, limit);
apires.success = true; apires.success = true;
apires.data.push({ apires.data.push({
"totalpage": pagination, "totalpage": pagination,
"totalrows": result.length "totalrows": result.length,
}); });
qry = "select * from vw_bast "; qry = "select * from vw_bast ";
qry = qry + "where description like '%" + keyword + "%' "; qry = qry + "where description like '%" + keyword + "%' ";
qry = qry + "order by _idx asc limit " + offset + ", " + limit; qry = qry + "order by _idx asc limit " + offset + ", " + limit;
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
apires.data.push({ apires.data.push({
"results": JSON.parse(JSON.stringify(result)) "results": JSON.parse(JSON.stringify(result)),
}); });
callback(null, apires); callback(null, apires);
} }
}); });
} } else {
else{
apires.meta.code = 200; apires.meta.code = 200;
apires.meta.message = "Record Not Found"; apires.meta.message = "Record Not Found";
callback(null, apires); callback(null, apires);
} }
} }
}); });
} } catch (err) {
catch(err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -363,23 +404,32 @@ class BastAdapter extends Adapter{
// console.log(qry); // console.log(qry);
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else let qryHistory = `select statusdescription, bastdateshandover, descriptionhandover, CONCAT('${baseUrl}?route=bast&name=', filehandoversign) AS filehandoversign, iby, idt from tbl_bastfilehistory where idxbast = ${result[0]._idx} order by _idx desc`;
{ db.query(qryHistory, [], function (err, resultHistory, fields) {
console.log(err);
console.log(resultHistory);
if (err) {
apires.meta["message"] = err.toString();
apires.meta["code"] = 500;
callback("err", apires);
} else {
result[0].history_handover = resultHistory;
apires.data.push({ apires.data.push({
"results": JSON.parse(JSON.stringify(result)) "results": JSON.parse(JSON.stringify(result)),
}); });
callback(null, apires); callback(null, apires);
} }
}); });
} }
catch(err) { });
} catch (err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
@ -391,16 +441,23 @@ class BastAdapter extends Adapter{
var statusdescription = req.body.statusdescription; var statusdescription = req.body.statusdescription;
var nik = req.body.nik; var nik = req.body.nik;
var qry = "update tbl_bast set filehandover='"+filehandover+"',status='" + status +"',statusdescription='" + statusdescription +"',uby='"+nik+"',udt=now() "; var qry =
"update tbl_bast set filehandover='" +
filehandover +
"',status='" +
status +
"',statusdescription='" +
statusdescription +
"',uby='" +
nik +
"',udt=now() ";
qry = qry + "where _idx='" + idxbast + "'"; qry = qry + "where _idx='" + idxbast + "'";
db.query(qry, [], function (err, result, fields) { db.query(qry, [], function (err, result, fields) {
if (err) { if (err) {
apires.meta['message'] = err.toString(); apires.meta["message"] = err.toString();
apires.meta['code'] = 500; apires.meta["code"] = 500;
callback('err',apires); callback("err", apires);
} } else {
else
{
apires.success = true; apires.success = true;
apires.data = JSON.parse(JSON.stringify(result)); apires.data = JSON.parse(JSON.stringify(result));
callback(null, apires); callback(null, apires);
@ -409,11 +466,9 @@ class BastAdapter extends Adapter{
} catch (err) { } catch (err) {
apires.meta.code = 500; apires.meta.code = 500;
apires.meta.message = err.toString(); apires.meta.message = err.toString();
callback('error',apires); callback("error", apires);
} }
} }
} }
module.exports = BastAdapter; module.exports = BastAdapter;