vratiDirApstraktne().'/DApstraktneKlase.class.php'); class DDokument extends DSifarnik { var $vrstaDokumenta; function DDokument(&$Db, $vrstaDokumenta = 0) { $this->DSifarnik($Db); $this->vrstaDokumenta = $vrstaDokumenta; } function Snimi() { $broj=$this->Parametri["Post"]["Broj"]; $datumKreiranja=date(); $idKorisnik=$_SESSION["DKorisnik"]->VratiIdKorisnika(); $idDokument = $this->Parametri["Post"]["idDokument"]; $this->IzvrsiUpit("update Dokument set broj = '$broj', datumKreiranja='$datumKreiranja', idKorisnik=$idKorisnik where idDokument = $idDokument"); } function VratiStatusDokumenta() { $izabrani=$this->Parametri["Get"]["idk"]; return $this->IzvrsiSql("select sd.idStatusVrsteDokumenta from Dokument d join StatusDokumenta sd on d.idDokument = sd.idDokument and sd.datum = (select max(datum) from StatusDokumenta sd1 where sd1.idDokument = sd.idDokument) join Klijent k on k.idKlijent = d.idKupac join StatusVrsteDokumenta s on sd.idStatusVrsteDokumenta = s.idStatusVrsteDokumenta where d.idDokument = $izabrani"); } function VratiIdKupca($idDokument) { $qid=$this->IzvrsiSql("select idKupac from Dokument where idDokument=$idDokument"); return $qid[0][0]; } function Dodaj() { if (!isset($this->Parametri["Post"]["Broj"])) { $this->Parametri["Post"]["Broj"]=0; } $broj=$this->Parametri["Post"]["Broj"]; $datumKreiranja=date('Y-m-d H:i:s'); $idKorisnik=$_SESSION["DKorisnik"]->VratiIdKorisnika(); $idProdavac=$this->Parametri["Post"]["idProdavac"]; $idKupac=$this->Parametri["Post"]["idKupac"]; $this->IzvrsiUpit("insert into Dokument(idDokument, broj, datumKreiranja, idKorisnik, idVrstaDokumenta, idKupac, idProdavac) select coalesce(max(idDokument) + 1, 1), '$broj', '$datumKreiranja', $idKorisnik, $this->vrstaDokumenta, $idKupac, $idProdavac from Dokument"); $qid=$this->IzvrsiSql('select max(idDokument) from Dokument'); $idDokument=$qid[0][0]; $this->Parametri["Post"]["IdDokument"]=$idDokument; $this->PromeniStatus(1); if(isset($this->Parametri["Post"]["Poreklo"])) { $this->IzvrsiUpit('insert into PorekloDokumenta(idDokument, poreklo) values($idDokument, $this->Parametri["Post"]["Poreklo"]'); } return $idDokument; } function brisi() { $idDokument = $this->Parametri["Get"]["idk"]; $this->IzvrsiUpit("DELETE from PorekloDokumenta WHERE idDokument = $idDokument"); $this->IzvrsiUpit("DELETE from Dokument WHERE idDokument = $idDokument"); $this->IzvrsiUpit("DELETE from StatusDokumenta where idDokument = $idDokument"); } function PromeniStatus($idStatusDokumenta = -1) { if($idStatusDokumenta == -1) { $idStatusDokumenta = $this->Parametri["Post"]["idStatusDokumenta"]; } $idDokument = $this->Parametri["Post"]["IdDokument"]; //echo $idDokument; $komentar = '';//$this->Parametri["Post"]["Komentar"]; $idKorisnik=$_SESSION["DKorisnik"]->VratiIdKorisnika(); if(isset($idStatusDokumenta)) { $this->IzvrsiUpit("insert into StatusDokumenta(idDokument, idStatusVrsteDokumenta, datum, komentar, idKorisnik) select $idDokument, $idStatusDokumenta, now(), '$komentar', $idKorisnik "); } } function VratiListuStatusa() { $idDokument = $this->Parametri["Get"]["idk"]; $rezultat = $this->IzvrsiSQL("select s.idStatusVrsteDokumenta, s.naziv, d.idDokument, d.broj, sd.datum, sd.komentar, sd.idKorisnik from StatusVrsteDokumenta s left join StatusDokumenta sd on s.idStatusVrsteDokumenta = sd.idStatusVrsteDokumenta and sd.idDokument = $idDokument left join Dokument d on sd.idDokument = d.idDokument order by s.idStatusVrsteDokumenta, sd.datum "); return $rezultat; } function VratiPrava($idProces,$idStatus) { global $DAplikacija; $niz=$_SESSION["DKorisnik"]->Vrati(); $idProcesa = $idProces; $idStatusDokumenta = $idStatus; $dozvoljeneProcesAktivnosti=$this->IzvrsiSql(" select p.idaktivnost, p.idprocesaktivnost, a.naziv, a.ikonica, a.metod, a.js, a.listaJsParametara from ProcesAktivnost p, KorisnikProcesAktivnost k, Aktivnost a where p.idprocesaktivnost = k.idprocesaktivnost and p.idProces=$idProcesa and a.idaktivnost=p.idaktivnost and k.idkorisnik in($niz) and p.idProcesAktivnost in (select idProcesAktivnost from TranzicijaStatusaDokumenta where idStatusVrsteDokumenta = $idStatusDokumenta and idVrstaDokumenta = $this->vrstaDokumenta) "); if ($dozvoljeneProcesAktivnosti=='') { $dozvoljeneProcesAktivnosti=0; } return $dozvoljeneProcesAktivnosti; } function vratiBrojStampiZaProdavca($idProdavca,$datumOd,$datumDo) { $rezultat=$this->IzvrsiSql("select count(*) from DnevnikRada d join Klijent k on d.idKorisnik = k.idKorisnik and k.idKlijent = $idProdavca and idProcesAktivnost in (118,119) and datum between '$datumOd' and '$datumDo'"); return $rezultat[0][0]; } function vratiBrojMejlovaZaProdavca($idProdavca,$datumOd,$datumDo) { $rezultat=$this->IzvrsiSql("select count(*) from DnevnikRada d join Klijent k on d.idKorisnik = k.idKorisnik and k.idKlijent = $idProdavca and idProcesAktivnost in (10000) and datum between '$datumOd' and '$datumDo'"); return $rezultat[0][0]; } } ?>