vratiDirProcesi().'/Faktura/DFaktura.class.php'); class DFakturaKupca extends DFaktura { function DFakturaKupca(&$Db) { $this->DFaktura($Db); $this->Stranicenje=1; } function DodeliFilter() { $idKlijent=$_SESSION["DKorisnik"]->vratiIdVezaLicniPodaci(); $filter .= " and d.idKupac=$idKlijent and sd.idStatusVrsteDokumenta<>1"; $u=new utill(); if ($u->PostojiParametar($this->Parametri,'filterOd')) { if ($u->VratiParametar($this->Parametri,'filterOd')=='') { $pocetakMeseca =date("Y-m-d",mktime(0, 0, 0, date("m"), date("01"), date("Y"))) ; $this->Parametri["Post"]["filterOd"]=$pocetakMeseca; } else { $this->Parametri["Post"]["filterOd"]=$this->EU2MySql($u->VratiParametar($this->Parametri,'filterOd')); } if ($u->VratiParametar($this->Parametri,'filterDo')=='') { $DanasnjiDan =date("Y-m-d"); $this->Parametri["Post"]["filterDo"]=$DanasnjiDan; } else { $this->Parametri["Post"]["filterDo"]=$this->EU2MySql($u->VratiParametar($this->Parametri,'filterDo')); } $od=$this->Parametri["Post"]["filterOd"]; $do=$this->Parametri["Post"]["filterDo"]; $filter .=" and d.datumKreiranja between '$od' and '$do'"; } if ($u->PostojiParametar($this->Parametri,'filterBrojDokumenta')==true) { if ($u->VratiParametar($this->Parametri,'filterBrojDokumenta')!='') { $broj = $u->VratiParametar($this->Parametri,'filterBrojDokumenta'); $filter .= " and d.broj = '$broj'"; } } if ($u->PostojiParametar($this->Parametri,'filterStatus')==true) { if ($u->VratiParametar($this->Parametri,'filterStatus')!='') { $status = $u->VratiParametar($this->Parametri,'filterStatus'); $filter .= " sd.idStatusVrsteDokumenta = $status"; } } if ($u->PostojiParametar($this->Parametri,'filterSifraRobe')==true) { if ($u->VratiParametar($this->Parametri,'filterSifraRobe')!='') { $sifraRobe = $u->VratiParametar($this->Parametri,'filterSifraRobe'); $filter .= " and exists(select 0 from StavkaFakture sf1 where sf1.idFaktura = f.idFaktura and sf1.idProizvod = $sifraRobe)"; } } if ($u->PostojiParametar($this->Parametri,'filterNazivRobe')==true) { if ($u->VratiParametar($this->Parametri,'filterNazivRobe')!='') { $nazivRobe = $u->VratiParametar($this->Parametri,'filterNazivRobe'); $filter .= " and exists(select 0 from StavkaFakture sf1 join Proizvod pr1 on sf1.idProizvod = pr1.idProizvod where sf1.idFaktura = f.idFaktura and pr1.naziv like '%$nazivRobe%')"; } } $this->Filter=$filter; } function DodeliSqlString() { $this->SqlString=" select d.idDokument, k.naziv, d.broj, d.idKupac, sd.idStatusVrsteDokumenta, s.naziv as StatusFakture, d.datumKreiranja, d.broj, f.PDV, f.slovima, f.datumPlacanja, d.idProdavac, k1.naziv as nazivProdavca from Faktura f join Dokument d on f.idFaktura = d.idDokument join Klijent k on k.idKlijent = d.idKupac join Klijent k1 on k1.idKlijent=d.idProdavac join StatusDokumenta sd on f.idFaktura = sd.idDokument and sd.datum = (select max(datum) from StatusDokumenta sd1 where sd1.idDokument = sd.idDokument) join StatusVrsteDokumenta s on sd.idStatusVrsteDokumenta = s.idStatusVrsteDokumenta"; } function vratiBrojStavkiZaProdavca($idProdavac,$datumOd,$datumDo) { $rezultat=$this->IzvrsiSql(" select count(*) from StavkaFakture s join Faktura p on s.idFaktura = p.idFaktura join Dokument d on p.idFaktura = d.idDokument where d.idProdavac = $idProdavac and d.datumKreiranja between '$datumOd' and '$datumDo'"); return $rezultat[0][0]; } function vratiJedinstveneKupce($idProdavac,$datumOd,$datumDo) { $rezultat=$this->IzvrsiSql("select distinct d.idKupac from Faktura p join Dokument d on p.idFaktura=d.iddokument where d.idProdavac = $idProdavac and d.datumKreiranja between '$datumOd' and '$datumDo'"); return $this->VratiKolonu($rezultat,'idKupac'); } } ?>