|
@@ -0,0 +1,481 @@
|
|
|
|
|
+<?php
|
|
|
|
|
+
|
|
|
|
|
+Lib::loadClass('RouteBase');
|
|
|
|
|
+Lib::loadClass('ProcesHelper');
|
|
|
|
|
+
|
|
|
|
|
+class Route_UrlAction_RaportyKasowe extends RouteBase {
|
|
|
|
|
+
|
|
|
|
|
+ private $REFERER, $LAST_REFERER;
|
|
|
|
|
+ private $RK, $BO;
|
|
|
|
|
+
|
|
|
|
|
+ public function handleAuth() {
|
|
|
|
|
+ if (!User::logged()) {
|
|
|
|
|
+ throw new HttpException('Unauthorized', 401);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ $this->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());
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="text-align:center">
|
|
|
|
|
+ <a href="<?php echo $this->REFERER?>" class="btn btn-primary">Powrót</a>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ SE_Layout::dol();
|
|
|
|
|
+ die();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ 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 = '2004-06-30';
|
|
|
|
|
+ $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.');
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="text-align:center">
|
|
|
|
|
+ <form method="post">
|
|
|
|
|
+ <input type="hidden" name="REFERER" value="<?php echo $this->REFERER?>"/>
|
|
|
|
|
+ <button type="submit" class="btn btn-primary">Edytuj</button>
|
|
|
|
|
+ <a href="<?php echo $this->REFERER?>" class="btn btn-default">Powrót</a>
|
|
|
|
|
+ </form>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ }
|
|
|
|
|
+ else {
|
|
|
|
|
+ SE_Layout::alert('warning','Wystąpił nieznany błąd podczas inicjalizowania raportu kasowego.');
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="text-align:center">
|
|
|
|
|
+ <a href="<?php echo $this->REFERER?>" class="btn btn-primary">Powrót</a>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="margin-top:20px">
|
|
|
|
|
+ <form class="form-horizontal" method="post">
|
|
|
|
|
+ <legend>Inicjalizacja raportu kasowego</legend>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-3 control-label">Operator</label>
|
|
|
|
|
+ <div class="col-sm-9" style="margin-top:7px;"><?php echo $this->BO['name1']?></div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-3 control-label">Nr kasy</label>
|
|
|
|
|
+ <div class="col-sm-9" style="margin-top:7px;"><?php echo User::getID()?></div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-3 control-label">Numer raportu</label>
|
|
|
|
|
+ <div class="col-sm-9" style="margin-top:7px;"><?php echo $numer?></div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-3 control-label">Końcowa data poprzedniego raportu</label>
|
|
|
|
|
+ <div class="col-sm-9" style="margin-top:7px;"><?php echo ($lastRK?$lastDate:"brak")?></div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-3 control-label">Miesiąc, którego dotyczy raport</label>
|
|
|
|
|
+ <div class="col-sm-2">
|
|
|
|
|
+ <select class="form-control" name="MONTH">
|
|
|
|
|
+ <?php foreach ($months as $month) echo "<option value='{$month}'>{$month}</option>"?>
|
|
|
|
|
+ </select>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <?php if ($nierozliczone) echo '<div class="col-sm-7" style="margin-top:7px;">(znaleziono w L1 nierozliczone dokumenty kasowe z miesiąca '.$months[0].')</div>'?>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-3 control-label">Saldo początkowe</label>
|
|
|
|
|
+ <div class="col-sm-9" style="margin-top:7px;"><?php echo number_format($saldo, 2, ',', ' ') . " PLN"?></div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <div class="col-sm-offset-3 col-sm-9">
|
|
|
|
|
+ <button type="submit" class="btn btn-primary">Zapisz</button>
|
|
|
|
|
+ <a href="<?php echo $this->REFERER?>" class="btn btn-default">Anuluj</a>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <input type="hidden" name="REFERER" value="<?php echo $this->REFERER?>"/>
|
|
|
|
|
+ </form>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ }
|
|
|
|
|
+ } catch (Exception $e) {
|
|
|
|
|
+ SE_Layout::alert('danger', "Inicjalizacja nowego raportu kasowe" . $e->getMessage());
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="text-align:center">
|
|
|
|
|
+ <a href="<?php echo $this->REFERER?>" class="btn btn-primary">Powrót</a>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ }
|
|
|
|
|
+ SE_Layout::dol();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private function edit() {
|
|
|
|
|
+ SE_Layout::gora();
|
|
|
|
|
+ SE_Layout::menu();
|
|
|
|
|
+ $docs = DB::getPDO()->fetchall("select * from BILLS_RK_POS where ID_BILLS_RK='{$this->RK['ID']}'");
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="margin-top:20px">
|
|
|
|
|
+ <form class="form-horizontal" method="post">
|
|
|
|
|
+ <legend>
|
|
|
|
|
+ Edycja raportu kasowego nr <?=$this->RK['RK_NUMBER']?> :: <?=$this->RK['RK_MONTH']?>
|
|
|
|
|
+ <span class="pull-right">
|
|
|
|
|
+ <?php echo "Nr kasy: " . User::getID() . " :: " . $this->BO['name1']?>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </legend>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <div class="col-sm-12">
|
|
|
|
|
+ <input type="submit" class="btn btn-default btn-sm" name="action" value="Dodaj KP"/>
|
|
|
|
|
+ <input type="submit" class="btn btn-default btn-sm" name="action" value="Dodaj KW"/>
|
|
|
|
|
+ <?php if (DB::getPDO()->fetchValue("select ID_BILLING_USERS from ADMIN_USERS where ID='".User::getID()."'")) echo '<input type="submit" class="btn btn-default btn-sm" name="action" value="Importuj z L1"/>'?>
|
|
|
|
|
+ <input type="hidden" name="_task" value="edit">
|
|
|
|
|
+ <input type="hidden" name="REFERER" value="<?php echo $this->REFERER?>"/>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <div class="col-sm-12">
|
|
|
|
|
+ <table class="table table-bordered table-hover table-striped">
|
|
|
|
|
+ <thead>
|
|
|
|
|
+ <tr style="text-align:center; background-color:lightgray"><td width="1">Lp.</td><td>Data</td><td>Numer</td><td>Tytułem</td><td>Kontrahent</td><td>Przychód</td><td>Rozchód</td></tr>
|
|
|
|
|
+ </thead>
|
|
|
|
|
+ <tbody>
|
|
|
|
|
+<?php
|
|
|
|
|
+ if ($docs) {
|
|
|
|
|
+ } else echo '<tr style="text-align:center"><td colspan="7">Brak dokumentów</td></tr>';
|
|
|
|
|
+?>
|
|
|
|
|
+ </tbody>
|
|
|
|
|
+ <table>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group" style="text-align:center">
|
|
|
|
|
+ <div class="col-sm-12">
|
|
|
|
|
+ <button type="submit" class="btn btn-default" name="action" value="<?=($docs?"close":"reinitialize")?>"><?=($docs?"Zamknij":"Reinicjalizuj")?> raport</button>
|
|
|
|
|
+ <a href="<?php echo $this->REFERER?>" class="btn btn-primary">Powrót</a>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </form>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ SE_Layout::dol();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public function editAction() {
|
|
|
|
|
+ switch (V::get('action','',$_POST)) {
|
|
|
|
|
+ case "Dodaj KP":
|
|
|
|
|
+ case "Dodaj KW":
|
|
|
|
|
+ $this->addDoc();
|
|
|
|
|
+ break;
|
|
|
|
|
+ case "Importuj z L1":
|
|
|
|
|
+ $this->importL1();
|
|
|
|
|
+ break;
|
|
|
|
|
+ case "reinitialize":
|
|
|
|
|
+ $this->reinitialize();
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
|
|
+ SE_Layout::gora();
|
|
|
|
|
+ SE_Layout::menu();
|
|
|
|
|
+ SE_Layout::alert('danger', "Wykryto abuse! Wysłano informację do administratora.");
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="text-align:center">
|
|
|
|
|
+ <form method="post" action="<?php echo $this->LAST_REFERER?>">
|
|
|
|
|
+ <input type="hidden" name="REFERER" value="<?php echo $this->REFERER?>"/>
|
|
|
|
|
+ <button type="submit" class="btn btn-primary">Powrót</button>
|
|
|
|
|
+ </form>
|
|
|
|
|
+</div>
|
|
|
|
|
+<?php
|
|
|
|
|
+ SE_Layout::dol();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private function addDoc() {
|
|
|
|
|
+ echo V::kwotaSlownie("1111111.11");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private function importL1() {
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private function add() {
|
|
|
|
|
+ SE_Layout::gora();
|
|
|
|
|
+ SE_Layout::menu();
|
|
|
|
|
+?>
|
|
|
|
|
+<div class="container" style="margin-top:20px">
|
|
|
|
|
+ <form class="form-horizontal" method="post">
|
|
|
|
|
+ <legend>
|
|
|
|
|
+ Edycja raportu kasowego nr <?php echo $this->RK['RK_NUMBER']?>
|
|
|
|
|
+ <span class="pull-right">
|
|
|
|
|
+ <?php echo "Nr kasy: " . User::getID()?>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </legend>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-sm-12 control-label" style="text-align:left"><h4>Nowy dokument</h4></label>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="form-group">
|
|
|
|
|
+ <label class="col-xs-12 col-sm-3 col-md-2 control-label">Data dokumentu</label>
|
|
|
|
|
+ <div class="col-xs-12 col-sm-9 col-md-10">
|
|
|
|
|
+ <div class="input-group">
|
|
|
|
|
+ <input type="text" id="DOC_DATE" class="form-control se_type-date" name="DOC_DATE" value="<?php echo date("Y-m-d")?>" maxlength="10"/>
|
|
|
|
|
+ <span class="input-group-addon">
|
|
|
|
|
+ <span class="glyphicon glyphicon-calendar">
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </form>
|
|
|
|
|
+</div>
|
|
|
|
|
+<script>
|
|
|
|
|
+console.log(document.getElementById('DOC_DATE'));
|
|
|
|
|
+jQuery(document.getElementById('DOC_DATE')).parent().datetimepicker({
|
|
|
|
|
+format: 'YYYY-MM-DD'
|
|
|
|
|
+, locale: 'pl'
|
|
|
|
|
+, showTodayButton: true
|
|
|
|
|
+, minDate: '2017-01-01'
|
|
|
|
|
+, maxDate: '2017-01-03'
|
|
|
|
|
+});
|
|
|
|
|
+</script>
|
|
|
|
|
+<?php
|
|
|
|
|
+ SE_Layout::dol();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private function reinitialize() {
|
|
|
|
|
+ $sqlObj = new stdClass();
|
|
|
|
|
+ $sqlObj->ID = $this->RK['ID'];
|
|
|
|
|
+ $sqlObj->A_STATUS = 'WAITING';
|
|
|
|
|
+ $sqlObj->ID_ADMIN_USERS = "NULL";
|
|
|
|
|
+ $sqlObj->RK_NUMBER = "NULL";
|
|
|
|
|
+ $sqlObj->RK_MONTH = "NULL";
|
|
|
|
|
+ $sqlObj->RK_DATE_FROM = "NULL";
|
|
|
|
|
+ $sqlObj->RK_STARTING_BALANCE = "NULL";
|
|
|
|
|
+ DB::getDB()->UPDATE_OBJ('BILLS_RK', $sqlObj);
|
|
|
|
|
+ $this->initialize();
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+ public function defaultAction() {
|
|
|
|
|
+ switch ($this->RK['A_STATUS']) {
|
|
|
|
|
+ case "WAITING":
|
|
|
|
|
+ $this->initialize();
|
|
|
|
|
+ break;
|
|
|
|
|
+ case "NORMAL":
|
|
|
|
|
+ $this->edit();
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
|
|
+ SE_Layout::alert('danger', "Błędny status rekordu.");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ public function reinstallAction() {
|
|
|
|
|
+ $this->reinstall();
|
|
|
|
|
+ die('OK');
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public function reinstall() {
|
|
|
|
|
+ $sqlList = array();
|
|
|
|
|
+/* $sqlList['InstallLayerTable'] = <<<SQL
|
|
|
|
|
+CREATE TABLE IF NOT EXISTS `WMS_LAYERS` (
|
|
|
|
|
+ `ID` int(11) NOT NULL AUTO_INCREMENT,
|
|
|
|
|
+ `the_geom` polygon NOT NULL,
|
|
|
|
|
+ `ID_PROJECT` int(11) NOT NULL,
|
|
|
|
|
+ `LAYER_NAME` varchar(100) NOT NULL,
|
|
|
|
|
+ `LAYER_TYPE` enum('GeoTIFF','QGIS') NOT NULL DEFAULT 'GeoTIFF',
|
|
|
|
|
+ `OLD_LAYER_TYPE` enum('GeoTIFF','QGIS') NOT NULL,
|
|
|
|
|
+ `LAYER_DESC` text NOT NULL,
|
|
|
|
|
+ `ID_WMS_MAPS` int(11) NOT NULL,
|
|
|
|
|
+ `OLD_ID_WMS_MAPS` int(11) NOT NULL,
|
|
|
|
|
+ `FILE_NAME` varchar(255) NOT NULL,
|
|
|
|
|
+ `FILE_STATUS` enum('NONE','TO_GENERATE','IN_PROGRESS','GENERATED','ERROR') NOT NULL DEFAULT 'NONE',
|
|
|
|
|
+ `FILE_STATUS_INFO` varchar(255) NOT NULL,
|
|
|
|
|
+ `EPSG` int(11) NOT NULL,
|
|
|
|
|
+ `EXTENT` varchar(100) NOT NULL,
|
|
|
|
|
+ `MAP_STATUS` enum('ACTIVE','INACTIVE') NOT NULL DEFAULT 'INACTIVE',
|
|
|
|
|
+ `FILE_MD5` varchar(32) NOT NULL,
|
|
|
|
|
+ `A_RECORD_CREATE_DATE` datetime NOT NULL,
|
|
|
|
|
+ `A_RECORD_CREATE_AUTHOR` varchar(40) NOT NULL,
|
|
|
|
|
+ `A_RECORD_UPDATE_DATE` varchar(18) NOT NULL,
|
|
|
|
|
+ `A_RECORD_UPDATE_AUTHOR` varchar(40) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_DATE` datetime NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_USER` varchar(40) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_PERIOD` varchar(30) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_INFO` varchar(200) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_TYPE` enum('','ARRANGED','TO_ARRANGE','CANCELLED','TO_CANCEL','RELATE','WAIT') NOT NULL,
|
|
|
|
|
+ `A_PROBLEM` enum('','WARNING','PROBLEM','SERIOUS','UNVERIFIED') NOT NULL,
|
|
|
|
|
+ `A_PROBLEM_DESC` varchar(200) NOT NULL,
|
|
|
|
|
+ `A_PROBLEM_DATE` datetime NOT NULL,
|
|
|
|
|
+ `A_STATUS` enum('DELETED','MONITOR','NORMAL','OFF_HARD','OFF_SOFT','WAITING','WARNING') NOT NULL DEFAULT 'WAITING',
|
|
|
|
|
+ `A_STATUS_INFO` varchar(100) NOT NULL,
|
|
|
|
|
+ `A_STATUS_LASTCHANGE_DATE` datetime NOT NULL,
|
|
|
|
|
+ `A_ADM_COMPANY` varchar(100) NOT NULL,
|
|
|
|
|
+ `A_CLASSIFIED` varchar(100) NOT NULL,
|
|
|
|
|
+ `SYNC_SQIX_STATUS` varchar(100) NOT NULL,
|
|
|
|
|
+ PRIMARY KEY (`ID`)
|
|
|
|
|
+) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
|
|
+SQL;
|
|
|
|
|
+
|
|
|
|
|
+ $sqlList['InstallLayerHistTable'] = <<<SQL
|
|
|
|
|
+CREATE TABLE IF NOT EXISTS `WMS_LAYERS_HIST` (
|
|
|
|
|
+ `ID` int(11) NOT NULL AUTO_INCREMENT,
|
|
|
|
|
+ `ID_USERS2` int(11) NOT NULL,
|
|
|
|
|
+ `the_geom` text,
|
|
|
|
|
+ `ID_PROJECT` varchar(20) DEFAULT 'N/S;',
|
|
|
|
|
+ `LAYER_NAME` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `LAYER_TYPE` varchar(10) DEFAULT 'N/S;',
|
|
|
|
|
+ `OLD_LAYER_TYPE` varchar(10) DEFAULT 'N/S;',
|
|
|
|
|
+ `LAYER_DESC` varchar(10000) DEFAULT 'N/S;',
|
|
|
|
|
+ `ID_WMS_MAPS` varchar(20) DEFAULT 'N/S;',
|
|
|
|
|
+ `OLD_ID_WMS_MAPS` varchar(20) DEFAULT 'N/S;',
|
|
|
|
|
+ `FILE_NAME` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `FILE_STATUS` varchar(20) DEFAULT 'N/S;',
|
|
|
|
|
+ `FILE_STATUS_INFO` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `EPSG` varchar(10) DEFAULT 'N/S;',
|
|
|
|
|
+ `EXTENT` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `MAP_STATUS` varchar(20) DEFAULT 'N/S;',
|
|
|
|
|
+ `FILE_MD5` varchar(32) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_CREATE_DATE` varchar(30) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_CREATE_AUTHOR` varchar(40) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_UPDATE_DATE` varchar(18) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_UPDATE_AUTHOR` varchar(40) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_DATE` varchar(30) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_USER` varchar(40) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_PERIOD` varchar(30) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_INFO` varchar(200) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_TYPE` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_PROBLEM` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_PROBLEM_DESC` varchar(200) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_PROBLEM_DATE` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_STATUS` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_STATUS_INFO` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_STATUS_LASTCHANGE_DATE` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_ADM_COMPANY` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_CLASSIFIED` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `SYNC_SQIX_STATUS` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ PRIMARY KEY (`ID`)
|
|
|
|
|
+) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
|
|
+SQL;
|
|
|
|
|
+
|
|
|
|
|
+ $sqlList['InstallMapTable'] = <<<SQL
|
|
|
|
|
+CREATE TABLE IF NOT EXISTS `WMS_MAPS` (
|
|
|
|
|
+ `ID` int(11) NOT NULL AUTO_INCREMENT,
|
|
|
|
|
+ `MAP_NAME` varchar(100) NOT NULL,
|
|
|
|
|
+ `MAP_DESC` text NOT NULL,
|
|
|
|
|
+ `MAP_STATUS` enum('NONE','TO_GENERATE','IN_PROGRESS','GENERATED','ERROR') NOT NULL DEFAULT 'NONE',
|
|
|
|
|
+ `MAP_STATUS_INFO` varchar(255) NOT NULL,
|
|
|
|
|
+ `MAP_URL` varchar(100) NOT NULL,
|
|
|
|
|
+ `MAP_FILE` varchar(100) NOT NULL,
|
|
|
|
|
+ `A_RECORD_CREATE_DATE` datetime NOT NULL,
|
|
|
|
|
+ `A_RECORD_CREATE_AUTHOR` varchar(40) NOT NULL,
|
|
|
|
|
+ `A_RECORD_UPDATE_DATE` varchar(18) NOT NULL,
|
|
|
|
|
+ `A_RECORD_UPDATE_AUTHOR` varchar(40) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_DATE` datetime NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_USER` varchar(40) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_PERIOD` varchar(30) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_INFO` varchar(200) NOT NULL,
|
|
|
|
|
+ `L_APPOITMENT_TYPE` enum('','ARRANGED','TO_ARRANGE','CANCELLED','TO_CANCEL','RELATE','WAIT') NOT NULL,
|
|
|
|
|
+ `A_PROBLEM` enum('','WARNING','PROBLEM','SERIOUS','UNVERIFIED') NOT NULL,
|
|
|
|
|
+ `A_PROBLEM_DESC` varchar(200) NOT NULL,
|
|
|
|
|
+ `A_PROBLEM_DATE` datetime NOT NULL,
|
|
|
|
|
+ `A_STATUS` enum('DELETED','MONITOR','NORMAL','OFF_HARD','OFF_SOFT','WAITING','WARNING') NOT NULL DEFAULT 'WAITING',
|
|
|
|
|
+ `A_STATUS_INFO` varchar(100) NOT NULL,
|
|
|
|
|
+ `A_STATUS_LASTCHANGE_DATE` datetime NOT NULL,
|
|
|
|
|
+ `A_ADM_COMPANY` varchar(100) NOT NULL,
|
|
|
|
|
+ `A_CLASSIFIED` varchar(100) NOT NULL,
|
|
|
|
|
+ `SYNC_SQIX_STATUS` varchar(100) NOT NULL,
|
|
|
|
|
+ PRIMARY KEY (`ID`)
|
|
|
|
|
+) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
|
|
+SQL;
|
|
|
|
|
+
|
|
|
|
|
+ $sqlList['InstallMapHistTable'] = <<<SQL
|
|
|
|
|
+CREATE TABLE IF NOT EXISTS `WMS_MAPS_HIST` (
|
|
|
|
|
+ `ID` int(11) NOT NULL AUTO_INCREMENT,
|
|
|
|
|
+ `ID_USERS2` int(11) NOT NULL,
|
|
|
|
|
+ `MAP_NAME` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `MAP_DESC` varchar(10000) NOT NULL DEFAULT 'N/S;',
|
|
|
|
|
+ `MAP_STATUS` varchar(20) NOT NULL DEFAULT 'N/S;',
|
|
|
|
|
+ `MAP_STATUS_INFO` varchar(255) NOT NULL DEFAULT 'N/S;',
|
|
|
|
|
+ `MAP_URL` varchar(100) NOT NULL DEFAULT 'N/S;',
|
|
|
|
|
+ `MAP_FILE` varchar(100) NOT NULL DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_CREATE_DATE` varchar(30) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_CREATE_AUTHOR` varchar(40) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_UPDATE_DATE` varchar(18) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_RECORD_UPDATE_AUTHOR` varchar(40) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_DATE` varchar(30) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_USER` varchar(40) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_PERIOD` varchar(30) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_INFO` varchar(200) DEFAULT 'N/S;',
|
|
|
|
|
+ `L_APPOITMENT_TYPE` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_PROBLEM` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_PROBLEM_DESC` varchar(200) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_PROBLEM_DATE` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_STATUS` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_STATUS_INFO` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_STATUS_LASTCHANGE_DATE` varchar(255) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_ADM_COMPANY` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `A_CLASSIFIED` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ `SYNC_SQIX_STATUS` varchar(100) DEFAULT 'N/S;',
|
|
|
|
|
+ PRIMARY KEY (`ID`)
|
|
|
|
|
+) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
|
|
+SQL;
|
|
|
|
|
+*/
|
|
|
|
|
+ $db = DB::getDB();
|
|
|
|
|
+ if ($db->has_errors()) {
|
|
|
|
|
+ throw new Exception("DB Errors: " . implode("\n<br>", $db->get_errors()));
|
|
|
|
|
+ }
|
|
|
|
|
+ foreach ($sqlList as $sqlName => $sql) {
|
|
|
|
|
+ $res = $db->query($sql);
|
|
|
|
|
+ if ($db->has_errors()) {
|
|
|
|
|
+ throw new Exception("DB Errors at sql '{$sqlName}': " . implode("\n<br>", $db->get_errors()));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+}
|