first commit
This commit is contained in:
570
adapter/budgetadapter.js
Normal file
570
adapter/budgetadapter.js
Normal file
@ -0,0 +1,570 @@
|
||||
const db=require('../config/dbproc.js');
|
||||
const Adapter=require('./dbadapter.js');
|
||||
|
||||
|
||||
class BudgetAdapter extends Adapter{
|
||||
constructor(){
|
||||
super();
|
||||
}
|
||||
|
||||
|
||||
async queryBudgetList(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let limit = req.body.limit;
|
||||
let offset = req.body.offset;
|
||||
let keyword = req.body.keyword;
|
||||
|
||||
let qry = "select * from vw_budgetcapexinfo ";
|
||||
qry = qry +"where (trim(budgetid) like '%"+ keyword +"%' or trim(activityname) like '%"+ keyword +"%') order by id asc";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(result.length>0){
|
||||
let pagination = result.length / limit;
|
||||
if(!Number.isInteger(pagination)){
|
||||
pagination=(Math.floor(result.length / limit))+1;
|
||||
}
|
||||
// let pagination = Adapter.getPagination(result.length, limit);
|
||||
apires.success = true;
|
||||
apires.data.push({
|
||||
"totalpage": pagination,
|
||||
"totalrows": result.length
|
||||
});
|
||||
qry = "select * from vw_budgetcapexinfo ";
|
||||
qry = qry +"where (trim(budgetid) like '%"+ keyword +"%' or trim(activityname) like '%"+ keyword +"%') order by id asc limit " + offset + ", " + limit;
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.data.push({
|
||||
"results": JSON.parse(JSON.stringify(result))
|
||||
});
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
}
|
||||
else{
|
||||
apires.meta.code = 200;
|
||||
apires.meta.message = "Record Not Found";
|
||||
callback(null, apires);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async queryBudgetDetail(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let id = req.query.id;
|
||||
// console.log(req);
|
||||
let qry = "select * from vw_budgetcapexinfo ";
|
||||
qry = qry +"where id='"+id+"' order by id asc limit 1";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(result.length>0){
|
||||
apires.success = true;
|
||||
apires.data = JSON.parse(JSON.stringify(result));
|
||||
}
|
||||
else{
|
||||
apires.meta.code = 200;
|
||||
apires.meta.message = "Record Not Found";
|
||||
}
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
}
|
||||
catch(err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryDeleteBudget(req, callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
let id = req.body.id;
|
||||
let remarkdeleted = req.body.remarkdeleted;
|
||||
let nik = req.body.nik;
|
||||
|
||||
let qry = "update tbl_budgetcapexinfo ";
|
||||
qry = qry +"set isdeleted=1,remarkdeleted='"+remarkdeleted+"',dby='"+nik+"',ddt=now()";
|
||||
qry = qry +" where _idx='"+id+"'";
|
||||
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.success = true;
|
||||
apires.meta.message = "Deleted Success";
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryBudgetType(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let qry = "select _idx id,budgettype from tbl_budgettype ";
|
||||
qry = qry +"where isdeleted=0 order by _idx asc";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(result.length>0){
|
||||
apires.success = true;
|
||||
apires.data = JSON.parse(JSON.stringify(result));
|
||||
}
|
||||
else{
|
||||
apires.meta.code = 200;
|
||||
apires.meta.message = "Record Not Found";
|
||||
}
|
||||
callback(null, apires);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryNewBudget(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let idxbudgettype= req.body.idbudgettype;
|
||||
let budgetid = req.body.budgetid;
|
||||
let activityname = req.body.activityname;
|
||||
let amount = req.body.amount;
|
||||
let targetrfs = req.body.targetrfs;
|
||||
let months = req.body.months;
|
||||
let years = req.body.years;
|
||||
let nik = req.body.nik;
|
||||
|
||||
let qry = "insert into tbl_budgetcapexinfo ";
|
||||
qry = qry +"set idxbudgettype='"+idxbudgettype+"', budgetid='"+budgetid+"',activityname='"+activityname+"',amount='"+amount+"',months='"+months+"',";
|
||||
qry = qry +"targetrfs='"+targetrfs+"',years='"+years+"', iby='"+nik+"',idt=now()";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.success = true;
|
||||
apires.data = JSON.parse(JSON.stringify(result));
|
||||
callback(null, apires);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
async queryUpdateBudget(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let idxbudgettype= req.body.idbudgettype;
|
||||
let budgetid = req.body.budgetid;
|
||||
let activityname = req.body.activityname;
|
||||
let amount = req.body.amount;
|
||||
let targetrfs = req.body.targetrfs;
|
||||
let months = req.body.months;
|
||||
let years = req.body.years;
|
||||
let nik = req.body.nik;
|
||||
let id = req.body.id;
|
||||
|
||||
let qry = "update tbl_budgetcapexinfo ";
|
||||
qry = qry +"set idxbudgettype='"+idxbudgettype+"', budgetid='"+budgetid+"',activityname='"+activityname+"',amount='"+amount+"',months='"+months+"',";
|
||||
qry = qry +"targetrfs='"+targetrfs+"',years='"+years+"', uby='"+nik+"',udt=now() ";
|
||||
qry = qry +"where _idx='"+id+"'";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.success = true;
|
||||
apires.meta.message = "Updated Success";
|
||||
callback(null, apires);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
// === Request budget
|
||||
|
||||
async queryReqBudget(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let trxid= req.body.trxid;
|
||||
let justificationnumber= req.body.justificationnumber;
|
||||
let yearstgt= req.body.years;
|
||||
let transactiondate = req.body.transactiondate;
|
||||
let idxbudgettype= req.body.idbudgettype;
|
||||
let budgettype = req.body.budgettype;
|
||||
let idxbudgetid = req.body.idxbudgetid;
|
||||
let budgetid = req.body.budgetid;
|
||||
let activityname = req.body.activityname;
|
||||
let idcoa = req.body.idcoa;
|
||||
let glacc = req.body.coacode;
|
||||
let amount = req.body.amount;
|
||||
let targetrfs = req.body.targetrfs;
|
||||
let crdb = "K";
|
||||
let nik = req.body.nik;
|
||||
|
||||
let qry = "insert into tbl_requestbudget ";
|
||||
qry = qry +"set trxid='"+trxid+"',justificationnumber='"+justificationnumber+"',yearstgt='"+yearstgt+"',transactiondate='"+transactiondate+"',idxbudgettype='"+idxbudgettype+"',budgettype='"+budgettype+"',";
|
||||
qry = qry +"idxbudgetid='"+idxbudgetid+"',budgetid='"+budgetid+"',activityname='"+activityname+"',idcoa='"+idcoa+"',glacc='"+glacc+"',targetrfs='"+targetrfs+"',";
|
||||
qry = qry +"amount='"+amount+"',crdb='"+crdb+"',months=month(now()),years=year(now()), iby='"+nik+"',idt=now()";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.success = true;
|
||||
apires.data = JSON.parse(JSON.stringify(result));
|
||||
callback(null, apires);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryGetTrxIdReqBudget(req, callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
let nik = req.query.nik;
|
||||
let qry = "select count(_idx) totalrows,date_format(now(),'%Y%m%d') dates from tbl_requestbudget where iby='"+nik+"' and year(idt)=year(now())";
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
var resp = JSON.parse(JSON.stringify(result));
|
||||
// console.log(resp[0]['dates']);
|
||||
var ymd = resp[0]['dates'];
|
||||
ymd = ymd.toString().trim().replace("-","");
|
||||
var counter = resp[0]['totalrows']+1;
|
||||
var counterstr = ("0000000000"+counter);
|
||||
counterstr = counterstr.substring(counterstr.length-4, counterstr.length);
|
||||
var trxid = "TRX/"+ymd+"/"+nik+"/"+counterstr;
|
||||
apires.success = true;
|
||||
apires.data = trxid
|
||||
callback(null, apires);
|
||||
|
||||
}
|
||||
});
|
||||
} catch (error) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryUpdateReqBudget(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let trxid= req.body.trxid;
|
||||
let yearstgt= req.body.years;
|
||||
let transactiondate = req.body.transactiondate;
|
||||
let idxbudgettype= req.body.idbudgettype;
|
||||
let budgettype = req.body.budgettype;
|
||||
let idxbudgetid = req.body.idxbudgetid;
|
||||
let budgetid = req.body.budgetid;
|
||||
let activityname = req.body.activityname;
|
||||
let idcoa = req.body.idcoa;
|
||||
let glacc = req.body.coacode;
|
||||
let amount = req.body.amount;
|
||||
let targetrfs = req.body.targetrfs;
|
||||
let crdb = "K";
|
||||
let nik = req.body.nik;
|
||||
let idreqbudget = req.body.idreqbudget;
|
||||
|
||||
let qry = "update tbl_requestbudget ";
|
||||
qry = qry +"set trxid='"+trxid+"',yearstgt='"+yearstgt+"',transactiondate='"+transactiondate+"',idxbudgettype='"+idxbudgettype+"',budgettype='"+budgettype+"',";
|
||||
qry = qry +"idxbudgetid='"+idxbudgetid+"',budgetid='"+budgetid+"',activityname='"+activityname+"',idcoa='"+idcoa+"',glacc='"+glacc+"',targetrfs='"+targetrfs+"',";
|
||||
qry = qry +"amount='"+amount+"',crdb='"+crdb+"',uby='"+nik+"',udt=now() ";
|
||||
qry = qry +"where _idx='"+idreqbudget+"'";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.success = true;
|
||||
apires.meta.message = "Data has been updated";
|
||||
callback(null, apires);
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryDeleteReqBudget(req, callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
let id = req.body.id;
|
||||
let remarkdeleted = req.body.remarkdeleted;
|
||||
let nik = req.body.nik;
|
||||
|
||||
let qry = "update tbl_requestbudget ";
|
||||
qry = qry +"set isdeleted=1,remarkdeleted='"+remarkdeleted+"',dby='"+nik+"',ddt=now()";
|
||||
qry = qry +" where _idx='"+id+"'";
|
||||
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.success = true;
|
||||
apires.meta.message = "Deleted Success";
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryReqBudgetList(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let limit = req.body.limit;
|
||||
let offset = req.body.offset;
|
||||
let keyword = req.body.keyword;
|
||||
let nik = req.body.nik;
|
||||
|
||||
let qry = "select * from vw_requestbudget ";
|
||||
qry = qry +"where (trim(budgetid) like '%"+ keyword +"%' or trim(activityname) like '%"+ keyword +"%') ";
|
||||
qry = qry +"and iby='"+nik+"' order by id asc";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(result.length>0){
|
||||
let pagination = result.length / limit;
|
||||
if(!Number.isInteger(pagination)){
|
||||
pagination=(Math.floor(result.length / limit))+1;
|
||||
}
|
||||
// let pagination = Adapter.getPagination(result.length, limit);
|
||||
apires.success = true;
|
||||
apires.data.push({
|
||||
"totalpage": pagination,
|
||||
"totalrows": result.length
|
||||
});
|
||||
qry = "select * from vw_requestbudget ";
|
||||
qry = qry +"where (trim(budgetid) like '%"+ keyword +"%' or trim(activityname) like '%"+ keyword +"%') ";
|
||||
qry = qry +"and iby='"+nik+"' order by id asc limit " + offset + ", " + limit;
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
apires.data.push({
|
||||
"results": JSON.parse(JSON.stringify(result))
|
||||
});
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
}
|
||||
else{
|
||||
apires.meta.code = 200;
|
||||
apires.meta.message = "Record Not Found";
|
||||
callback(null, apires);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryReqBudgetDetail(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let id = req.query.id;
|
||||
// console.log(req);
|
||||
let qry = "select * from vw_requestbudget ";
|
||||
qry = qry +"where id='"+id+"' order by id asc limit 1";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(result.length>0){
|
||||
apires.success = true;
|
||||
apires.data = JSON.parse(JSON.stringify(result));
|
||||
}
|
||||
else{
|
||||
apires.meta.code = 200;
|
||||
apires.meta.message = "Record Not Found";
|
||||
}
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
}
|
||||
catch(err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
async queryBudgetListbyRequest(req,callback){
|
||||
var apires = this.getApiResultDefined();
|
||||
try {
|
||||
|
||||
let qry = "select * from vw_budgetlistbyrequest order by _idx asc";
|
||||
|
||||
// console.log(qry);
|
||||
db.query(qry,[],function(err,result,fields){
|
||||
if(err){
|
||||
apires.meta['message'] = err.toString();
|
||||
apires.meta['code'] = 500;
|
||||
callback('err',apires);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(result.length>0){
|
||||
apires.success = true;
|
||||
apires.data= JSON.parse(JSON.stringify(result));
|
||||
}
|
||||
else{
|
||||
apires.meta.code = 200;
|
||||
apires.meta.message = "Record Not Found";
|
||||
}
|
||||
callback(null, apires);
|
||||
}
|
||||
});
|
||||
|
||||
} catch (err) {
|
||||
apires.meta.code = 500;
|
||||
apires.meta.message = err.toString();
|
||||
callback('error',apires);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
module.exports = BudgetAdapter;
|
||||
Reference in New Issue
Block a user