LAST_REFERER = $_SERVER['HTTP_REFERER']; if (($this->REFERER=V::get('REFERER','',$_POST))=='') $this->REFERER = $_SERVER['HTTP_REFERER']; try { if (!($ID_BILLS_RK = V::get('ID_BILLS_RK',0,$_GET,'int'))) throw new Exception("Błąd parametru"); if ($result = DB::getPDO()->fetchall("select * from BILLS_RK where ID='{$ID_BILLS_RK}' and L_APPOITMENT_USER='".User::getLogin()."'")) $this->RK = $result[0]; else throw new Exception("Dostęp zabroniony"); if ($result = DB::getPDO()->fetchall("select * from BILLING_OWNER where ID='{$this->RK['ID_BILLING_OWNER']}'")) $this->BO = $result[0]; else throw new Exception("Błąd spójności danych"); } catch (Exception $e) { SE_Layout::gora(); SE_Layout::menu(); SE_Layout::alert('danger',$e->getMessage()); ?>
importRemote("L1"); } private function importRemote($source) { if ($source == "L1") { $REMOTE_ID_BILLING_USERS = DB::getPDO()->fetchValue("select ID_BILLING_USERS from ADMIN_USERS where ID='".User::getID()."'"); if (!$REMOTE_ID_BILLING_USERS) return false; // $query = "select '".User::getID()."' as ID_ADMIN_USERS, '{$BO}' as ID_BILLING_OWNER, bkp.ID as REMOTE_ID, bkp.ID_BILLIN } } private function initialize() { SE_Layout::gora(); SE_Layout::menu(); try { $lastDate = DB::getPDO()->fetchValue("select max(RK_DATE_TO) from BILLS_RK where A_STATUS='OFF_HARD' and ID_BILLING_OWNER='{$this->RK['ID_BILLING_OWNER']}' and L_APPOITMENT_USER='".User::getLogin()."'"); if (!$lastRK=($lastDate)) $lastDate = '2015-12-31'; $minTS = strtotime($lastDate . " + 1 day"); $minDate = date("Y-m-d", $minTS); $firstTS = strtotime(date("Y-m", strtotime($minDate))); $nierozliczone = false; if ($ID_BILLING_USERS = DB::getPDO()->fetchValue("select ID_BILLING_USERS from ADMIN_USERS where ID='".User::getID()."'")) { //$ID_BILLING_USERS= $maxMonth = DB::getPDO(931)->fetchValue("select substring(min(DATE),1,7) from (select min(bkp.BILL_DATE) as DATE from BILLING_NUMBERS bn join BILLS_KP bkp on bn.ID=bkp.ID_BILLING_NUMBERS join BILLING_USERS bu on bn.ID_BILLING_USERS=bu.ID where bkp.ID_BILLS_RK_POS is null and bu.BILLING_OWNER='{$this->RK['ID_BILLING_OWNER']}' and bn.U_ID='{$ID_BILLING_USERS}' union select min(bkw.BILL_DATE) as DATE from BILLING_NUMBERS bn join BILLS_KW bkw on bn.ID=bkw.ID_BILLING_NUMBERS join BILLING_USERS bu on bn.ID_BILLING_USERS=bu.ID where bkw.ID_BILLS_RK_POS is null and bu.BILLING_OWNER='{$this->RK['ID_BILLING_OWNER']}' and bn.U_ID='{$ID_BILLING_USERS}') as r1"); if (!$nierozliczone=$maxMonth) $maxMonth = date("Y-m"); } else $maxMonth = date("Y-m"); $maxTS = strtotime($maxMonth); if ($firstTS > $maxTS) throw new Exception("poprzedni raport kasowy zawiera już okres do końca bieżącego miesiąca."); $months = Array($maxMonth); while ($maxTS > $firstTS) { $maxTS = strtotime($maxMonth. " -1 month"); $maxMonth = date("Y-m", $maxTS); $months[] = $maxMonth; } $saldo = DB::getPDO()->fetchValue("select coalesce(RK_FINAL_BALANCE,0) from BILLS_RK where A_STATUS='OFF_HARD' and ID_BILLING_OWNER='{$this->RK['ID_BILLING_OWNER']}' and L_APPOITMENT_USER='".User::getLogin()."' order by ID desc limit 1"); $numer = DB::getPDO()->fetchValue("select coalesce(max(RK_NUMBER),0)+1 from BILLS_RK where A_STATUS='OFF_HARD' and ID_BILLING_OWNER='{$this->RK['ID_BILLING_OWNER']}' and L_APPOITMENT_USER='".User::getLogin()."'"); if (($month = V::get('MONTH','',$_POST))!='') { if (!in_array($month, $months)) throw new Exception("niedopuszczalny miesiąc raportu (abuse - wysłano do administratora informację na temat próby nielegalnego dostępu do danych!)"); if ($minTS > strtotime($month)) $startDate = $minDate; else $startDate = date("Y-m-d", strtotime($month)); $sqlObj = new stdClass(); $sqlObj->ID = $this->RK['ID']; $sqlObj->A_STATUS = 'NORMAL'; $sqlObj->ID_ADMIN_USERS = User::getID(); $sqlObj->RK_NUMBER = $numer; $sqlObj->RK_MONTH = $month; $sqlObj->RK_DATE_FROM = $startDate; $sqlObj->RK_STARTING_BALANCE = $saldo; $affected = DB::getDB()->UPDATE_OBJ('BILLS_RK', $sqlObj); if ($affected) { SE_Layout::alert('success','Pomyślnie zainicjalizowano raport kasowy.'); ?>