230 lines
7.5 KiB
JavaScript
230 lines
7.5 KiB
JavaScript
var express = require('express');
|
|
var router = express.Router();
|
|
|
|
var options = require('./dbconfig');
|
|
|
|
//
|
|
// Postgresql
|
|
//
|
|
var Pool = require('pg').Pool;
|
|
var config = {
|
|
user: 'matjaz',
|
|
password: 'mesnjak',
|
|
database: 'supervizor',
|
|
host: 'server.dev',
|
|
port: 5432,
|
|
max: 10,
|
|
idleTimeoutMillis: 30000,
|
|
};
|
|
var pool = new Pool(config);
|
|
|
|
router.get('/:davcna/:id?', function (req, res, next) {
|
|
req.setTimeout(0);
|
|
if(!req.params.id) req.params.id = 0;
|
|
var odgovor = {
|
|
title: 'Naš denar',
|
|
stran: req.params.id,
|
|
next: parseInt(req.params.id) + 1,
|
|
prev: parseInt(req.params.id) - 1,
|
|
davcna: req.params.davcna,
|
|
sifrapu: -1,
|
|
narociladelez_organ: -1,
|
|
rtr: {},
|
|
};
|
|
var stevec = 0;
|
|
var vseZahteve = 15;
|
|
|
|
pool.query('SELECT sum(vsota_prejemkov) STOLPIC, leto, mesec FROM dupu WHERE davcna_stevilka = $1 GROUP BY leto, mesec', [req.params.davcna], function (err, transResult) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
var date = new Date();
|
|
var mesec = date.getMonth() + 1;
|
|
var leto = date.getFullYear();
|
|
var vsehMesecev = (leto - 2003) * 12 + mesec;
|
|
var stolpci = [];
|
|
for (var i = 0; i < vsehMesecev; i++) {
|
|
stolpci.push(0);
|
|
}
|
|
for (var j = 0; j < transResult.rows.length; j++) {
|
|
stolpci[(transResult.rows[j].leto - 2003) * 12 + transResult.rows[j].mesec-1] = transResult.rows[j].stolpic;
|
|
}
|
|
odgovor.transakcije = stolpci;
|
|
stevec++;
|
|
console.log("1");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
});
|
|
|
|
pool.query('SELECT kreditojemalec_naziv, kreditojemalec_sedez, davcna, posta, postna_st, kreditodajalec, st_pogodbe, znesek_eur, vrsta_posla, (extract(day FROM datum_pogodbe) || \'.\' || extract(month from datum_pogodbe) || \'.\' || extract(year from datum_pogodbe)) DATUM, zavarovanje_vrsta, zavarovanje_predmet FROM dutb WHERE davcna = $1 ORDER BY datum_pogodbe', [req.params.davcna], function (err, dutbResult) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.dutb = dutbResult.rows;
|
|
stevec++;
|
|
console.log("2");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
});
|
|
|
|
pool.query('select distinct (extract(day FROM datum) || \'.\' || extract(month from datum) || \'.\' || extract(year from datum)) DATUM_TECAJNICE, uradni_tecaj tocke, datum from tecajnica where znak = ( select znak from delnice where davcna = $1 LIMIT 1 ) order by tecajnica.datum asc;', [req.params.davcna], function (err, tecajnica) {
|
|
if(err) {
|
|
throw err
|
|
}
|
|
odgovor.tecajnica = tecajnica.rows
|
|
stevec++
|
|
console.log("3")
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor)
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT * FROM lokacija WHERE davcna_stevilka = $1 LIMIT 1', [req.params.davcna], function (err, lokacijaZS) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.lokacijaZS = lokacijaZS.rows;
|
|
stevec++;
|
|
console.log("4");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
});
|
|
|
|
pool.query('SELECT kreditodajalec, sum(znesek_eur) ZNESEK FROM dutb WHERE davcna = $1 GROUP BY KREDITODAJALEC', [req.params.davcna], function (err, dutbDelezi) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.dutbdelez = dutbDelezi.rows;
|
|
stevec++;
|
|
console.log("5");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT zavezanec, naziv, naslov, razred, (extract(day FROM dolg_na_dan) || \'.\' || extract(month FROM dolg_na_dan) || \'.\' || extract(year FROM dolg_na_dan)) datum_veljavnosti FROM furs WHERE zavezanec = $1 ORDER BY dolg_na_dan DESC', [req.params.davcna], function (err, neplacniki) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.neplacniki = neplacniki.rows;
|
|
stevec++;
|
|
console.log("6");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
});
|
|
|
|
pool.query('SELECT * FROM evidence WHERE davcna = $1 ORDER BY leto DESC', [req.params.davcna], function (err, evidence) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.evidence = evidence.rows;
|
|
stevec++;
|
|
console.log("7")
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor)
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT organ, SUM(globa) globa FROM evidence WHERE davcna = $1 GROUP BY organ', [req.params.davcna], function (err, evidence_graf) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.grafEvidence = evidence_graf.rows;
|
|
stevec++;
|
|
console.log("8")
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor)
|
|
}
|
|
});
|
|
|
|
pool.query('SELECT * FROM prs WHERE substring(ma, 1,7) = (select substring(ma, 1,7) FROM prs WHERE davcna = $1 LIMIT 1)', [req.params.davcna], function (err, podruznice) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.podruznice = podruznice.rows;
|
|
stevec++;
|
|
console.log("9");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT id, (extract(day FROM uppd.datum) || \'.\' || extract(month FROM uppd.datum) || \'.\' || extract(year FROM uppd.datum)) DATUM_TRANSAKCIJE, stranka, sedez_stranke, matst_stranke, prejemnik, sedez_prejemnika, znesek, val, namen_nakazila FROM uppd WHERE substring(matst_stranke, 1, 7) = (select substring(ma, 1, 7) FROM prs WHERE prs.davcna = $1 LIMIT 1) ORDER BY datum DESC', [req.params.davcna], function (err, uppd) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.uppd = uppd.rows;
|
|
stevec++;
|
|
console.log("10");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
});
|
|
|
|
pool.query('SELECT organ, maticna, davcna, sifra_pu, naslov, posta, tip_omejitve, ps_naziv, drzava, ps_maticna, ps_davcna, mid, ps_naslov, ps_posta, (extract(day FROM datum_od) || \'.\' || extract(month from datum_od) || \'.\' || extract(year from datum_od)) DATUM_OD, (extract(day FROM datum_do) || \'.\' || extract(month from datum_do) || \'.\' || extract(year from datum_do)) DATUM_DO FROM omejitve WHERE ps_davcna = $1', [req.params.davcna], function (err, omejitve) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.omejitve = omejitve.rows;
|
|
stevec++;
|
|
console.log("11");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT * FROM prs WHERE davcna = $1 LIMIT 1', [req.params.davcna], function (err, subjekt_ZS) {
|
|
if(err) {
|
|
throw err;
|
|
}
|
|
odgovor.subjektZS = subjekt_ZS.rows;
|
|
stevec++;
|
|
console.log("12");
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor);
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT *, (extract(day FROM datum_objave) || \'.\' || extract(month FROM datum_objave) || \'.\' || extract(year FROM datum_objave)) datum FROM narocila WHERE davcna_ponudnika = $1 ORDER BY datum_objave DESC', [req.params.davcna], function (err, narocila) {
|
|
if(err) {
|
|
throw err
|
|
}
|
|
odgovor.narocila = narocila.rows
|
|
stevec++
|
|
console.log("13")
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor)
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT sum(vrednost_brez_ddv) znesek, narocnik FROM narocila WHERE davcna_ponudnika = $1 GROUP BY narocnik ORDER BY znesek DESC LIMIT 5', [req.params.davcna], function (err, narocila) {
|
|
if(err) {
|
|
throw err
|
|
}
|
|
odgovor.narociladelez_podj = narocila.rows
|
|
stevec++
|
|
console.log("14")
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor)
|
|
}
|
|
})
|
|
|
|
pool.query('SELECT sum(vrednost_brez_ddv) znesek FROM narocila WHERE davcna_ponudnika = $1', [req.params.davcna], function(err, vsotanarocil){
|
|
if(err) {
|
|
throw err
|
|
}
|
|
odgovor.vsotanarocil=vsotanarocil.rows[0].znesek
|
|
stevec++
|
|
console.log("15")
|
|
if(stevec == vseZahteve) {
|
|
res.render('podj', odgovor)
|
|
}
|
|
})
|
|
});
|
|
|
|
module.exports = router;
|