-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelper.php
156 lines (132 loc) · 4.21 KB
/
helper.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<!--
TSJ модуль показаний расхода воды.
Версия mod_tsj_waters_total Февраль 2013
Автор RVP
Copyright (C) 2011 joomla-umnik
Лицензия GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
Официальный сайт http://joomlaforum.ru/
-->
<?php
defined('_JEXEC') or die('Direct Access to this location is not allowed.');
$dir_absolute_path=preg_replace('#[/\\\\]+#', '/', dirname(__FILE__));
class ModTSJwatersTotalHelper extends JViewLegacy {
public $db = null;
private $first = 1;
public function setFirst($f)
{
$first = $f;
}
public function getFirst()
{
return $first;
}
/**
* Returns params of water counters.
*
* @return JTable A database object
* @since 2.5
*/
public function getComParams()
{
$params = array();
//Подключение к бд joomla
$db = JFactory::getDBO();
$db->setQuery( "SELECT cfg_value FROM #__tsj_cfg WHERE cfg_name = 'water_startDay';" );
$row =& $db->loadResult();
$params['water_startDay'] = $row;
$db->setQuery( "SELECT cfg_value FROM #__tsj_cfg WHERE cfg_name = 'water_stopDay';" );
$row =& $db->loadResult();
$params['water_stopDay'] = $row;
return $params;
}
public function getdata_water1s($waterTotal, $start_day, $stop_day) {
//Подключение к бд joomla
$db = JFactory::getDBO();
//Вывод таблицы расхода воды за предыдущий месяц
$query = 'SELECT
ac.account_num,
wd.date_in,
wd.data_hot_c1,
wd.data_cold_c1,
wd.data_hot_c2,
wd.data_cold_c2,
wd.data_hot_c3,
wd.data_cold_c3
FROM #__tsj_account AS ac,
#__tsj_water_data AS wd,
#__tsj_water_office AS wo
WHERE wd.office_counter_id = wo.office_counter_id
AND ac.account_id = wo.account_id
AND wd.date_in > LAST_DAY( DATE_SUB( CURDATE( ) , INTERVAL 2 MONTH ) ) + INTERVAL '.$start_day.' DAY
AND wd.date_in < DATE_ADD( LAST_DAY( CURDATE( ) - INTERVAL 1 MONTH ) , INTERVAL 1 DAY ) + INTERVAL '.$start_day.' DAY
ORDER BY ac.account_id';
$db->setQuery($query);
$data_water1s = $db->loadObjectlist();
return $data_water1s;
}
public function getdata_water2s($waterTotal, $start_day, $stop_day) {
//Подключение к бд joomla
$db = JFactory::getDBO();
//Вывод таблицы расхода воды за текущий месяц
$query = 'SELECT
ac.account_num,
wd.date_in,
wd.data_hot_c1,
wd.data_cold_c1,
wd.data_hot_c2,
wd.data_cold_c2,
wd.data_hot_c3,
wd.data_cold_c3
FROM #__tsj_account AS ac,
#__tsj_water_data AS wd,
#__tsj_water_office AS wo
WHERE wd.office_counter_id = wo.office_counter_id
AND ac.account_id = wo.account_id
AND wd.date_in > LAST_DAY(CURDATE()) + INTERVAL '.$start_day.' DAY - INTERVAL 1 MONTH
AND wd.date_in < DATE_ADD(LAST_DAY(CURDATE()), INTERVAL 1 DAY)
ORDER BY ac.account_id';
$db->setQuery($query);
$data_water2s = $db->loadObjectlist();
return $data_water2s;
}
public function getdata_water3s($waterTotal, $start_day, $stop_day) {
//Подключение к бд joomla
$db = JFactory::getDBO();
//Выбираем из какой таблицы будем вытаскивать данные
$query = 'SELECT '
.'DISTINCT *'
.'FROM #__tsj_account AS ac'
// .'LEFT JOIN #__tsj_water_office AS wo'
// .'ON ac.account_id = wo.account_id'
;
$db->setQuery($query);
$data_water3s = $db->loadObjectlist();
return $data_water3s;
}
public function getdata_water4s($waterTotal, $start_day, $stop_day) {
//Подключение к бд joomla
$db = JFactory::getDBO();
$startd = date('Y-m-d',strtotime($start_day));
$stopd = date('Y-m-d',strtotime($stop_day));
//Вывод таблицы расхода воды за предыдущий месяц
$query = "SELECT
ac.account_num,
wd.date_in,
wd.data_hot_c1,
wd.data_cold_c1,
wd.data_hot_c2,
wd.data_cold_c2,
wd.data_hot_c3,
wd.data_cold_c3
FROM #__tsj_account AS ac,
#__tsj_water_data AS wd,
#__tsj_water_office AS wo
WHERE wd.office_counter_id = wo.office_counter_id
AND ac.account_id = wo.account_id
AND wd.date_in >= '".$startd."' AND wd.date_in <= '".$stopd."'
ORDER BY ac.account_id";
$db->setQuery($query);
$data_water1s = $db->loadObjectlist();
return $data_water1s;
}
}