Files
_api_server_vue/modules/KKC/dashboard.php
2026-01-13 12:36:57 +03:00

301 lines
10 KiB
PHP

<?php
namespace API;
trait dashboard
{
////////////////////////////STAT/////////////////////////////////////////
public function dashboardStat($params)
{
$query = "SELECT
convert(varchar, date, 104)+' '+convert(varchar, cast(date as datetime),108) as date
,ip
,user_desc
,title
,path
FROM [SITE].[dbo].[kkc_stat] s
INNER JOIN [SITE].[dbo].[kkc_users] u
ON s.id_user=u.id
where [isVisit] is null
and date>='".$params['dateStart']."' and date <='".$params['dateEnd']." 23:59:59'
order by date desc";
select($query);
}
public function dashboardStatCounts($params)
{
$query = "SELECT
count(id) as visit_counts
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1
and DATEDIFF(day, date, GETDATE()) = 0
union all
SELECT
count(id) as visit_counts
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1
and DATEDIFF(day, date, GETDATE()) = 1
union all
SELECT
count(id) as visit_counts
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1
and DATEDIFF(day, date, GETDATE()) <= 7
union all
SELECT
count(id) as visit_counts
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1
and DATEDIFF(month, date, GETDATE()) = 0
union all
SELECT
count(id) as visit_counts
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1
and DATEDIFF(month, date, GETDATE()) = 1
union all
SELECT
count(id) as visit_counts
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1";
select($query);
}
////////////////////////////ITEMS/////////////////////////////////////////
public function dashboardItemsAllHeaders($params)
{
$query = "SELECT *
FROM [SITE].[dbo].[kkc_headers]
ORDER BY id";
select($query);
}
public function dashboardItemsAdd($params)
{
$convName = iconv('UTF-8', 'windows-1251', $params['data']['name']);
global $conn;
$query = "SET NOCOUNT ON
DECLARE @insert_id int
INSERT INTO [SITE].[dbo].[kkc_headers]
VALUES(".$params['data']['idSubHeader'].",
".$params['data']['parent'].",
'$convName',
'".$params['data']['path']."',
'".$params['data']['pathFrame']."',
".$params['data']['isFrame'].",
".$params['data']['isHeader'].")
SELECT SCOPE_IDENTITY() as insert_id;
SET @insert_id=(SELECT SCOPE_IDENTITY())";
$result = sqlsrv_query($conn, $query);
sqlsrv_fetch($result);
if ($params['data']['isFrame']===1) {
$id_insert = sqlsrv_get_field($result, 0);
$query = "UPDATE [SITE].[dbo].[kkc_headers]
SET path='".$params['data']['path']."'+'$id_insert'
WHERE id=$id_insert";
$result = sqlsrv_query($conn, $query);
sqlsrv_fetch($result);
}
}
public function dashboardItemsEdit($params)
{
$convName = iconv('UTF-8', 'windows-1251', $params['data']['name']);
$query = "UPDATE [SITE].[dbo].[kkc_headers]
SET name='$convName',
path='".$params['data']['path']."',
pathFrame='".$params['data']['pathFrame']."'
WHERE id=".$params['data']['id']."";
update($query);
}
public function dashboardItemsDelete($params)
{
$query = "DELETE [SITE].[dbo].[kkc_groups_roles]
WHERE id_header in
(select id from [SITE].[dbo].[kkc_headers]
where idSubHeader=".$params['data']['id'].")
DELETE [SITE].[dbo].[kkc_groups_roles]
WHERE id_header=".$params['data']['id']."
DELETE [SITE].[dbo].[kkc_headers]
WHERE id=".$params['data']['id']."
OR idSubHeader=".$params['data']['id']."
";
delete($query);
}
////////////////////////////USERS/////////////////////////////////////////
public function dashboardUsers($params)
{
$query = "SELECT [id]
,[ip]
,[user_desc]
,[isAdmin]
,[isBan]
FROM [SITE].[dbo].[kkc_users]";
select($query);
}
public function dashboardUsersWithoutAdmin($params)
{
$query = "SELECT [id]
,[ip]
,[user_desc]
,[isAdmin]
,[isBan]
FROM [SITE].[dbo].[kkc_users]
WHERE isAdmin=0 and isBan=0";
select($query);
}
public function dashboardGroups($params)
{
$query = "SELECT
g.id,
g.name,
users.id as user_id,
users.user_desc as user_name,
users.ip as user_ip,
users.isAdmin as isAdmin
FROM [SITE].[dbo].[kkc_groups] g
inner join [SITE].[dbo].[kkc_users_groups] ug on
g.id=ug.group_id
inner join [SITE].[dbo].[kkc_users] users on
ug.user_id=users.id";
select($query);
}
public function dashboardUsersAdmin($params)
{
$query = "UPDATE [SITE].[dbo].[kkc_users]
SET isAdmin='".$params['data']['value']."'
WHERE id=".$params['data']['id']."";
update($query);
}
public function dashboardUsersBan($params)
{
$query = "UPDATE [SITE].[dbo].[kkc_users]
SET isBan='".$params['data']['value']."'
WHERE id=".$params['data']['id']."";
update($query);
}
public function dashboardUsersAdd($params)
{
$name = iconv('UTF-8', 'windows-1251', $params['data']['user_desc']);
$query = "INSERT INTO [SITE].[dbo].[kkc_users]
VALUES('".$params['data']['ip']."',
'$name',
0,0)";
insert($query);
}
public function dashboardUsersEdit($params)
{
$name = iconv('UTF-8', 'windows-1251', $params['data']['user_desc']);
$query = "UPDATE [SITE].[dbo].[kkc_users]
SET [user_desc]='$name',
ip='".$params['data']['ip']."'
WHERE id=".$params['data']['id']."";
update($query);
}
public function dashboardUsersDelete($params)
{
$query = "DELETE [SITE].[dbo].[kkc_users]
WHERE id=".$params['data']['id']."
DELETE [SITE].[dbo].[kkc_users_groups]
WHERE [user_id]=".$params['data']['id']."";
delete($query);
}
////////////////////////////////GROUPS//////////////////////////////////////////////////
public function dashboardGroupsAll($params)
{
$query = "SELECT g.id,
g.name,
count(ug.id) as group_count
FROM [SITE].[dbo].[kkc_groups] g
left join [SITE].[dbo].[kkc_users_groups] ug on
g.id=ug.group_id
left join [SITE].[dbo].[kkc_users] users on
ug.user_id=users.id
group by g.id, g.name";
select($query);
}
public function dashboardUsersGroupsAdd($params)
{
$name = iconv('UTF-8', 'windows-1251', $params['data']['name']);
$query = "INSERT INTO [SITE].[dbo].[kkc_groups]
VALUES('$name')";
insert($query);
}
public function dashboardUsersGroupsEdit($params)
{
$name = iconv('UTF-8', 'windows-1251', $params['data']['name']);
$query = "UPDATE [SITE].[dbo].[kkc_groups]
SET [name]='$name'
WHERE id=".$params['data']['id']."";
update($query);
}
public function dashboardUsersGroupsDelete($params)
{
$query = "DELETE [SITE].[dbo].[kkc_groups]
WHERE id=".$params['data']['id']."
DELETE [SITE].[dbo].[kkc_users_groups]
WHERE [group_id]=".$params['data']['id']."
DELETE [SITE].[dbo].[kkc_groups_roles]
WHERE [id_group]=".$params['data']['id']."
";
delete($query);
}
////////////////////////////////ROLES//////////////////////////////////////////////////
public function dashboardRoles($params)
{
$query = "SELECT [id]
,[id_group]
,[id_header]
FROM [SITE].[dbo].[kkc_groups_roles]";
select($query);
}
public function dashboardGroupsCheckUser($params)
{
$query = "INSERT INTO [SITE].[dbo].[kkc_users_groups]
VALUES(".$params['data']['userID'].",
".$params['data']['groupID'].")";
insert($query);
}
public function dashboardGroupsUnCheckUser($params)
{
$query = "DELETE [SITE].[dbo].[kkc_users_groups]
WHERE [user_id] =".$params['data']['userID']."
AND [group_id]=".$params['data']['groupID']."";
delete($query);
}
public function dashboardRolesDel($params)
{
$query = "DELETE [SITE].[dbo].[kkc_groups_roles]
WHERE [id_group] =".$params['data']['groupId']."";
delete($query);
}
public function dashboardRolesAdd($params)
{
foreach ($params['data']['values'] as $key => $value) {
$query = "INSERT INTO [SITE].[dbo].[kkc_groups_roles]
VALUES(".$params['data']['groupId'].",
".$value['id'].")";
insert($query);
}
}
}