|
|
@@ -1,40 +1,141 @@
|
|
|
<?php
|
|
|
|
|
|
|
|
|
+// sql table: 'temp_DEALS_STATUS'
|
|
|
class ColumnDealsStatus {
|
|
|
|
|
|
- public static function get_table() {
|
|
|
- return 'temp_DEALS_STATUS';
|
|
|
- }
|
|
|
-
|
|
|
- public static function get_drop_query() {
|
|
|
- return "DROP TABLE IF EXISTS `" . self::get_table() . "`;";
|
|
|
+ function reinstall() {
|
|
|
+ global $A_STATUS_L2_SQL;
|
|
|
+ if (empty($A_STATUS_L2_SQL)) throw new Exception('Config Error: variable "$A_STATUS_L2_SQL" not exists!');
|
|
|
+
|
|
|
+ DB::getPDO()->execSql(" DROP PROCEDURE IF EXISTS `update_deals_status` ");
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ CREATE DEFINER=`root`@`localhost` PROCEDURE `update_deals_status`()
|
|
|
+ BEGIN
|
|
|
+ DROP TABLE IF EXISTS `temp_DEALS_STATUS`;
|
|
|
+
|
|
|
+ CREATE TABLE IF NOT EXISTS `temp_DEALS_STATUS` (
|
|
|
+ `ID_DEALS` int(11) NOT NULL,
|
|
|
+ `ID_BILLING_USERS` int(11) NOT NULL,
|
|
|
+ `A_CREATE_DATE` date NOT NULL DEFAULT '0000-00-00',
|
|
|
+ `DEALS_ACTIVE` int(1) NOT NULL DEFAULT '0',
|
|
|
+ `DEALS_BLOCKED` int(1) NOT NULL DEFAULT '0',
|
|
|
+ `P_DEALDATE_TERM` date NOT NULL DEFAULT '0000-00-00',
|
|
|
+ `DEAL_TYPE` enum('UMOWA', 'ANEKS', 'INNE', '') NOT NULL DEFAULT '',
|
|
|
+ `DATA_WYK_PODLACZENIA` date NOT NULL DEFAULT '0000-00-00',
|
|
|
+ `SERVICES_STATUS` varchar(255) NOT NULL DEFAULT '',
|
|
|
+ `SERVICES_S_ADDRESS_STREET` varchar(255) NOT NULL DEFAULT '',
|
|
|
+ KEY `ID_DEALS` (`ID_DEALS`),
|
|
|
+ KEY `ID_BILLING_USERS` (`ID_BILLING_USERS`),
|
|
|
+ KEY `DEALS_ACTIVE` (`DEALS_ACTIVE`)
|
|
|
+ ) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
+
|
|
|
+ INSERT INTO `temp_DEALS_STATUS` (`ID_DEALS`, `ID_BILLING_USERS`, `A_CREATE_DATE`, `SERVICES_STATUS`, `P_DEALDATE_TERM`, `SERVICES_S_ADDRESS_STREET`)
|
|
|
+ select d.`ID`
|
|
|
+ , d.`ID_BILLING_USERS`
|
|
|
+ , NOW() as A_CREATE_DATE
|
|
|
+ , GROUP_CONCAT({$A_STATUS_L2_SQL}) as SERVICES_STATUS
|
|
|
+ , d.`P_DEALDATE_TERM`
|
|
|
+ , GROUP_CONCAT( DISTINCT
|
|
|
+ CASE SV.`NAME_LIST_SERVICES`
|
|
|
+ WHEN 'USERS2' THEN (select `S_ADDRESS_STREET` from `SES_USERS2_A` as ses_a where ses_a.`ID_SERVICES`=SV.`ID`)
|
|
|
+ WHEN 'TV' THEN (select `S_ADDRESS_STREET` from `SES_TV_A` as ses_a where ses_a.`ID_SERVICES`=SV.`ID`)
|
|
|
+ END
|
|
|
+ ) as SERVICES_S_ADDRESS_STREET
|
|
|
+ from `DEALS_TABLE` as d
|
|
|
+ left join `SERVICES` as SV on (SV.`ID_DEALS_TABLE`=d.`ID`)
|
|
|
+ where
|
|
|
+ SV.`NAME_LIST_SERVICES` not in('EMAIL','WWW_MASS')
|
|
|
+ group by d.`ID`;
|
|
|
+
|
|
|
+ -- update DEALS_ACTIVE and DEALS_BLOCKED
|
|
|
+
|
|
|
+ UPDATE `temp_DEALS_STATUS` set `DEALS_ACTIVE` = 1 where `SERVICES_STATUS` like '%NORMAL%';
|
|
|
+
|
|
|
+ UPDATE `temp_DEALS_STATUS` set `DEALS_BLOCKED` = 1 where `SERVICES_STATUS` like '%OFF_SOFT%' and `DEALS_ACTIVE` = 0;
|
|
|
+
|
|
|
+ -- update DATA_WYK_PODLACZENIA `run_update_data_wyk_podlaczenia_query`
|
|
|
+
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DEAL_TYPE` = 'UMOWA'
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and d.ID_OFFERS_ON != '' and d.ID_OFFERS_OFF = ''
|
|
|
+ ;
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DEAL_TYPE` = 'ANEKS'
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and d.ID_OFFERS_ON != '' and d.ID_OFFERS_OFF != ''
|
|
|
+ ;
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DEAL_TYPE` = 'INNE'
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and t.DEAL_TYPE not in ( 'UMOWA', 'ANEKS' )
|
|
|
+ ;
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join (
|
|
|
+ (
|
|
|
+ select a.T_WHEN_CONNECTED, s.ID_DEALS_TABLE, a.ID_BILLING_USERS
|
|
|
+ from SES_USERS2_A a
|
|
|
+ join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ where a.T_WHEN_CONNECTED > 0
|
|
|
+ )
|
|
|
+ union
|
|
|
+ (
|
|
|
+ select a.T_WHEN_CONNECTED, s.ID_DEALS_TABLE, a.ID_BILLING_USERS
|
|
|
+ from SES_TV_A a
|
|
|
+ join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ where a.T_WHEN_CONNECTED > 0
|
|
|
+ )
|
|
|
+ union
|
|
|
+ (
|
|
|
+ select a.T_WHEN_CONNECTED, s.ID_DEALS_TABLE, a.ID_BILLING_USERS
|
|
|
+ from SES_VOIP_A a
|
|
|
+ join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ where a.T_WHEN_CONNECTED > 0
|
|
|
+ )
|
|
|
+ order by T_WHEN_CONNECTED asc
|
|
|
+ limit 1
|
|
|
+ ) x on ( x.ID_BILLING_USERS = t.ID_BILLING_USERS and x.ID_DEALS_TABLE = t.ID_DEALS )
|
|
|
+ set t.`DATA_WYK_PODLACZENIA` = x.T_WHEN_CONNECTED
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and t.`DEAL_TYPE` = 'UMOWA'
|
|
|
+ ;
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DATA_WYK_PODLACZENIA` = IF( d.USTALONA_DATA_PODLACZENIA > 0, d.USTALONA_DATA_PODLACZENIA, d.P_DEALDATE )
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and t.`DEAL_TYPE` = 'ANEKS'
|
|
|
+ ;
|
|
|
+ UPDATE `DEALS_TABLE` d
|
|
|
+ join `temp_DEALS_STATUS` t on ( d.ID = t.ID_DEALS )
|
|
|
+ set d.`DATA_WYK_PODLACZENIA` = t.DATA_WYK_PODLACZENIA
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ ;
|
|
|
+
|
|
|
+ END
|
|
|
+ ");
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ CREATE EVENT IF NOT EXISTS `_DEALS_TABLE__update_deals_status_every_day_event`
|
|
|
+ ON SCHEDULE EVERY 1 DAY STARTS '2019-01-01 04:00:00'
|
|
|
+ ON COMPLETION NOT PRESERVE ENABLE
|
|
|
+ DO BEGIN
|
|
|
+ call `update_deals_status`();
|
|
|
+ END
|
|
|
+ ");
|
|
|
}
|
|
|
|
|
|
- public static function get_create_query() {
|
|
|
- return "CREATE TABLE IF NOT EXISTS `" . self::get_table() . "` (
|
|
|
- `ID_DEALS` int(11) NOT NULL,
|
|
|
- `ID_BILLING_USERS` int(11) NOT NULL,
|
|
|
- `A_CREATE_DATE` date NOT NULL DEFAULT '0000-00-00',
|
|
|
- `DEALS_ACTIVE` int(1) NOT NULL DEFAULT '0',
|
|
|
- `DEALS_BLOCKED` int(1) NOT NULL DEFAULT '0',
|
|
|
- `P_DEALDATE_TERM` date NOT NULL DEFAULT '0000-00-00',
|
|
|
- `SERVICES_STATUS` varchar(255) NOT NULL DEFAULT '',
|
|
|
- `SERVICES_S_ADDRESS_STREET` varchar(255) NOT NULL DEFAULT '',
|
|
|
- KEY `ID_DEALS` (`ID_DEALS`),
|
|
|
- KEY `ID_BILLING_USERS` (`ID_BILLING_USERS`),
|
|
|
- KEY `DEALS_ACTIVE` (`DEALS_ACTIVE`)
|
|
|
- ) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
- ";
|
|
|
- }
|
|
|
|
|
|
public static function get_update_query($userID = null) {
|
|
|
$sqlUserID = '';
|
|
|
if ($userID > 0) {
|
|
|
- $sqlUserID = " and `ID_BILLING_USERS`='{$userID}' ";
|
|
|
+ $sqlUserID = " and `ID_BILLING_USERS` = '{$userID}' ";
|
|
|
}
|
|
|
- return "UPDATE `" . self::get_table() . "` set
|
|
|
- `DEALS_ACTIVE`=1
|
|
|
+ return "
|
|
|
+ UPDATE `temp_DEALS_STATUS` set
|
|
|
+ `DEALS_ACTIVE` = 1
|
|
|
where `SERVICES_STATUS` like '%NORMAL%'
|
|
|
{$sqlUserID}
|
|
|
";
|
|
|
@@ -43,16 +144,111 @@ class ColumnDealsStatus {
|
|
|
public static function get_update_blocked_query($userID = null) {
|
|
|
$sqlUserID = '';
|
|
|
if ($userID > 0) {
|
|
|
- $sqlUserID = " and `ID_BILLING_USERS`='{$userID}' ";
|
|
|
+ $sqlUserID = " and `ID_BILLING_USERS` = '{$userID}' ";
|
|
|
}
|
|
|
- return "UPDATE `" . self::get_table() . "` set
|
|
|
+ return "
|
|
|
+ UPDATE `temp_DEALS_STATUS` set
|
|
|
`DEALS_BLOCKED`=1
|
|
|
where `SERVICES_STATUS` like '%OFF_SOFT%'
|
|
|
- and `DEALS_ACTIVE`=0
|
|
|
+ and `DEALS_ACTIVE` = 0
|
|
|
{$sqlUserID}
|
|
|
";
|
|
|
}
|
|
|
|
|
|
+ public static function run_update_data_wyk_podlaczenia_query($userID = null) {
|
|
|
+ $sqlUserID = '';
|
|
|
+ if ($userID > 0) {
|
|
|
+ $sqlUserID = " and t.`ID_BILLING_USERS` = '{$userID}' ";
|
|
|
+ }
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DEAL_TYPE` = 'UMOWA'
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and d.ID_OFFERS_ON != '' and d.ID_OFFERS_OFF = ''
|
|
|
+ {$sqlUserID}
|
|
|
+ ");
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DEAL_TYPE` = 'ANEKS'
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and d.ID_OFFERS_ON != '' and d.ID_OFFERS_OFF != ''
|
|
|
+ {$sqlUserID}
|
|
|
+ ");
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DEAL_TYPE` = 'INNE'
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and t.DEAL_TYPE not in ( 'UMOWA', 'ANEKS' )
|
|
|
+ {$sqlUserID}
|
|
|
+ ");
|
|
|
+ // DB::getPDO()->execSql("
|
|
|
+ // UPDATE `temp_DEALS_STATUS` t
|
|
|
+ // set t.`DATA_WYK_PODLACZENIA` = (
|
|
|
+ // select a.T_WHEN_CONNECTED
|
|
|
+ // from SES_USERS2_A a
|
|
|
+ // join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ // where a.ID_BILLING_USERS = t.ID_BILLING_USERS
|
|
|
+ // and s.ID_DEALS_TABLE = t.ID_DEALS
|
|
|
+ // and a.T_WHEN_CONNECTED > 0
|
|
|
+ // order by a.T_WHEN_CONNECTED asc
|
|
|
+ // limit 1
|
|
|
+ // )
|
|
|
+ // where t.`DEALS_ACTIVE` = 1
|
|
|
+ // and t.`DEAL_TYPE` = 'UMOWA'
|
|
|
+ // {$sqlUserID}
|
|
|
+ // ");
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join (
|
|
|
+ (
|
|
|
+ select a.T_WHEN_CONNECTED, s.ID_DEALS_TABLE, a.ID_BILLING_USERS
|
|
|
+ from SES_USERS2_A a
|
|
|
+ join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ where a.T_WHEN_CONNECTED > 0
|
|
|
+ )
|
|
|
+ union
|
|
|
+ (
|
|
|
+ select a.T_WHEN_CONNECTED, s.ID_DEALS_TABLE, a.ID_BILLING_USERS
|
|
|
+ from SES_TV_A a
|
|
|
+ join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ where a.T_WHEN_CONNECTED > 0
|
|
|
+ )
|
|
|
+ union
|
|
|
+ (
|
|
|
+ select a.T_WHEN_CONNECTED, s.ID_DEALS_TABLE, a.ID_BILLING_USERS
|
|
|
+ from SES_VOIP_A a
|
|
|
+ join SERVICES s on ( s.ID = a.ID_SERVICES )
|
|
|
+ where a.T_WHEN_CONNECTED > 0
|
|
|
+ )
|
|
|
+ order by T_WHEN_CONNECTED asc
|
|
|
+ limit 1
|
|
|
+ ) x on ( x.ID_BILLING_USERS = t.ID_BILLING_USERS and x.ID_DEALS_TABLE = t.ID_DEALS )
|
|
|
+ set t.`DATA_WYK_PODLACZENIA` = x.T_WHEN_CONNECTED
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and t.`DEAL_TYPE` = 'UMOWA'
|
|
|
+ {$sqlUserID}
|
|
|
+ ");
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ UPDATE `temp_DEALS_STATUS` t
|
|
|
+ join `DEALS_TABLE` d on ( d.ID = t.ID_DEALS )
|
|
|
+ set t.`DATA_WYK_PODLACZENIA` = IF( d.USTALONA_DATA_PODLACZENIA > 0, d.USTALONA_DATA_PODLACZENIA, d.P_DEALDATE )
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ and t.`DEAL_TYPE` = 'ANEKS'
|
|
|
+ {$sqlUserID}
|
|
|
+ ");
|
|
|
+
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ UPDATE `DEALS_TABLE` d
|
|
|
+ join `temp_DEALS_STATUS` t on ( d.ID = t.ID_DEALS )
|
|
|
+ set d.`DATA_WYK_PODLACZENIA` = t.DATA_WYK_PODLACZENIA
|
|
|
+ where t.`DEALS_ACTIVE` = 1
|
|
|
+ {$sqlUserID}
|
|
|
+ ");
|
|
|
+ }
|
|
|
+
|
|
|
public static function get_insert_query($userID = null) {
|
|
|
global $A_STATUS_L2_SQL;// @from .config.php
|
|
|
if (empty($A_STATUS_L2_SQL)) {
|
|
|
@@ -100,12 +296,13 @@ class ColumnDealsStatus {
|
|
|
SV.`NAME_LIST_SERVICES` not in('EMAIL')
|
|
|
group by d.`ID`
|
|
|
*/
|
|
|
-// TODO: dodac adresy z pozostalych uslug VOIP, TVCP, etc...
|
|
|
+ // TODO: dodac adresy z pozostalych uslug VOIP, TVCP, etc...
|
|
|
$sqlUserID = '';
|
|
|
if ($userID > 0) {
|
|
|
$sqlUserID = " and SV.`ID_BILLING_USERS`='{$userID}' ";
|
|
|
}
|
|
|
- return "INSERT INTO `" . self::get_table() . "` (`ID_DEALS`, `ID_BILLING_USERS`, `A_CREATE_DATE`, `SERVICES_STATUS`, `P_DEALDATE_TERM`, `SERVICES_S_ADDRESS_STREET`)
|
|
|
+ return "
|
|
|
+ INSERT INTO `temp_DEALS_STATUS` (`ID_DEALS`, `ID_BILLING_USERS`, `A_CREATE_DATE`, `SERVICES_STATUS`, `P_DEALDATE_TERM`, `SERVICES_S_ADDRESS_STREET`)
|
|
|
select d.`ID`
|
|
|
, d.`ID_BILLING_USERS`
|
|
|
, '" . date("Y-m-d") . "' as A_CREATE_DATE
|
|
|
@@ -128,14 +325,14 @@ class ColumnDealsStatus {
|
|
|
|
|
|
public static function get_last_update() {
|
|
|
$db = DB::getDB();
|
|
|
- $_table = self::get_table();
|
|
|
- if (empty($_SESSION["{$_table}_COLUMN"]['_last_update'])) {
|
|
|
- $_SESSION["{$_table}_COLUMN"]['_last_update'] = '';
|
|
|
+ $tableName = 'temp_DEALS_STATUS';
|
|
|
+ if (empty($_SESSION["{$tableName}_COLUMN"]['_last_update'])) {
|
|
|
+ $_SESSION["{$tableName}_COLUMN"]['_last_update'] = '';
|
|
|
$sql = "SELECT td.`A_CREATE_DATE` from `temp_DEALS_STATUS` as td limit 1";
|
|
|
$res = $db->query($sql, false);
|
|
|
if ($res) {
|
|
|
if ($r = $db->fetch($res)) {
|
|
|
- $_SESSION["{$_table}_COLUMN"]['_last_update'] = $r->A_CREATE_DATE;
|
|
|
+ $_SESSION["{$tableName}_COLUMN"]['_last_update'] = $r->A_CREATE_DATE;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -143,45 +340,47 @@ class ColumnDealsStatus {
|
|
|
}
|
|
|
|
|
|
public static function set_last_update( $date ) {
|
|
|
- $_SESSION[self::get_table().'_COLUMN']['_last_update'] = $date;
|
|
|
+ $tableName = 'temp_DEALS_STATUS';
|
|
|
+ $_SESSION["{$tableName}_COLUMN"]['_last_update'] = $date;
|
|
|
}
|
|
|
|
|
|
public static function is_updated() {
|
|
|
- if (self::get_last_update() >= date("Y-m-d")) {
|
|
|
- return true;
|
|
|
- }
|
|
|
- return false;
|
|
|
+ return (self::get_last_update() >= date("Y-m-d"));
|
|
|
}
|
|
|
|
|
|
- public static function run_update( $force = false, &$dbg_msgs = array() ) {
|
|
|
- $run = false;
|
|
|
- if ($force) {
|
|
|
- $run = true;
|
|
|
- } else {
|
|
|
- $run = ! self::is_updated();
|
|
|
- }
|
|
|
+ public static function run_update( $force = false ) {
|
|
|
+ $run = ($force) ? true : !self::is_updated();
|
|
|
if ($run) {
|
|
|
- $db = DB::getDB();
|
|
|
-
|
|
|
- $sql = self::get_drop_query();
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
-
|
|
|
- $sql = self::get_create_query();
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
+ DB::getPDO()->execSql(" DROP TABLE IF EXISTS `temp_DEALS_STATUS` ");
|
|
|
+
|
|
|
+ DB::getPDO()->execSql("
|
|
|
+ CREATE TABLE IF NOT EXISTS `temp_DEALS_STATUS` (
|
|
|
+ `ID_DEALS` int(11) NOT NULL,
|
|
|
+ `ID_BILLING_USERS` int(11) NOT NULL,
|
|
|
+ `A_CREATE_DATE` date NOT NULL DEFAULT '0000-00-00',
|
|
|
+ `DEALS_ACTIVE` int(1) NOT NULL DEFAULT '0',
|
|
|
+ `DEALS_BLOCKED` int(1) NOT NULL DEFAULT '0',
|
|
|
+ `P_DEALDATE_TERM` date NOT NULL DEFAULT '0000-00-00',
|
|
|
+ `DEAL_TYPE` enum('UMOWA', 'ANEKS', 'INNE', '') NOT NULL DEFAULT '',
|
|
|
+ `DATA_WYK_PODLACZENIA` date NOT NULL DEFAULT '0000-00-00',
|
|
|
+ `SERVICES_STATUS` varchar(255) NOT NULL DEFAULT '',
|
|
|
+ `SERVICES_S_ADDRESS_STREET` varchar(255) NOT NULL DEFAULT '',
|
|
|
+ KEY `ID_DEALS` (`ID_DEALS`),
|
|
|
+ KEY `ID_BILLING_USERS` (`ID_BILLING_USERS`),
|
|
|
+ KEY `DEALS_ACTIVE` (`DEALS_ACTIVE`)
|
|
|
+ ) ENGINE=MyISAM DEFAULT CHARSET=latin2;
|
|
|
+ ");
|
|
|
|
|
|
$sql = self::get_insert_query();
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
|
|
|
$sql = self::get_update_query();
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
|
|
|
$sql = self::get_update_blocked_query();
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
+
|
|
|
+ self::run_update_data_wyk_podlaczenia_query();
|
|
|
|
|
|
$date = date("Y-m-d");
|
|
|
self::set_last_update($date);
|
|
|
@@ -190,31 +389,20 @@ class ColumnDealsStatus {
|
|
|
}
|
|
|
|
|
|
public static function run_update_for_user($userID) {
|
|
|
- $db = DB::getDB();
|
|
|
- $dbg_msgs = array();
|
|
|
-
|
|
|
- $_table = self::get_table();
|
|
|
- $sql = "delete from `{$_table}` where `ID_BILLING_USERS`='{$userID}'";
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
- $dbg_msgs[] = "affected: " . $db->affected_rows();
|
|
|
+ DB::getPDO()->execSql(" DELETE from `temp_DEALS_STATUS` where `ID_BILLING_USERS` = :id_user ", [ ':id_user' => $userID ]);
|
|
|
|
|
|
$sql = self::get_insert_query($userID);
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
- $dbg_msgs[] = "affected: " . $db->affected_rows();
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
|
|
|
$sql = self::get_update_query($userID);
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
- $dbg_msgs[] = "affected: " . $db->affected_rows();
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
|
|
|
$sql = self::get_update_blocked_query($userID);
|
|
|
- $dbg_msgs[] = $sql;
|
|
|
- $db->query($sql, false);
|
|
|
- $dbg_msgs[] = "affected: " . $db->affected_rows();
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
+
|
|
|
+ $sql = self::run_update_data_wyk_podlaczenia_query($userID);
|
|
|
+ DB::getPDO()->execSql($sql);
|
|
|
|
|
|
- IF(V::get('DBG_DEALS','',$_GET)){echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;"> (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($dbg_msgs);echo'</pre>';}
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
@@ -223,8 +411,9 @@ class ColumnDealsStatus {
|
|
|
|
|
|
// read from cache if not force
|
|
|
if (!$force) {
|
|
|
- if (!empty($_SESSION[self::get_table().'_COLUMN']['_stats_by_month_cache'])) {
|
|
|
- foreach ($_SESSION[self::get_table().'_COLUMN']['_stats_by_month_cache'] as $k => $v) {
|
|
|
+ $tableName = 'temp_DEALS_STATUS';
|
|
|
+ if (!empty($_SESSION["{$tableName}_COLUMN"]['_stats_by_month_cache'])) {
|
|
|
+ foreach ($_SESSION["{$tableName}_COLUMN"]['_stats_by_month_cache'] as $k => $v) {
|
|
|
$deals_stats[$k] = $v;
|
|
|
}
|
|
|
return $deals_stats;
|
|
|
@@ -234,13 +423,14 @@ class ColumnDealsStatus {
|
|
|
$loop_limit = 12;
|
|
|
|
|
|
// fetch months, count
|
|
|
- $sql = "select
|
|
|
+ $sql = "
|
|
|
+ select
|
|
|
IF(substr(td.`P_DEALDATE_TERM`, 1, 7) < '" . date('Y-m') . "-00'
|
|
|
, '0000-00'
|
|
|
, substr(td.`P_DEALDATE_TERM`, 1, 7)
|
|
|
) as deal_term_month
|
|
|
, count(1) as cnt
|
|
|
- from `" . self::get_table() . "` as td
|
|
|
+ from `temp_DEALS_STATUS` as td
|
|
|
where td.`DEALS_ACTIVE`=1
|
|
|
group by deal_term_month
|
|
|
order by deal_term_month asc
|
|
|
@@ -262,9 +452,10 @@ class ColumnDealsStatus {
|
|
|
if ($k_month == '0000-00') {
|
|
|
$sqlWhereTerm = "substr(td.`P_DEALDATE_TERM`, 1, 7)<'" . date('Y-m') . "-00'";
|
|
|
}
|
|
|
- $sql = "select
|
|
|
+ $sql = "
|
|
|
+ select
|
|
|
sum( (u.`ABONAMENT_VALUE` * (100 + u.`VAT`))/100 ) as suma
|
|
|
- from `" . self::get_table() . "` as td
|
|
|
+ from `temp_DEALS_STATUS` as td
|
|
|
left join `SERVICES` as u on (u.`ID_DEALS_TABLE`=td.`ID_DEALS`)
|
|
|
where
|
|
|
{$sqlWhereTerm}
|
|
|
@@ -282,9 +473,10 @@ class ColumnDealsStatus {
|
|
|
|
|
|
if (V::get('DBG_DEALS', '', $_GET)){echo'<pre style="max-height:200px;overflow:auto;border:1px solid red;text-align:left;">deals_stats (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($deals_stats);echo'</pre>';}
|
|
|
// save in cache
|
|
|
- $_SESSION[self::get_table().'_COLUMN']['_stats_by_month_cache'] = array();
|
|
|
+ $tableName = 'temp_DEALS_STATUS';
|
|
|
+ $_SESSION["$tableName}_COLUMN"]['_stats_by_month_cache'] = array();
|
|
|
foreach ($deals_stats as $k => $v) {
|
|
|
- $_SESSION[self::get_table().'_COLUMN']['_stats_by_month_cache'][$k] = $v;
|
|
|
+ $_SESSION["$tableName}_COLUMN"]['_stats_by_month_cache'][$k] = $v;
|
|
|
}
|
|
|
|
|
|
return $deals_stats;
|