This commit is contained in:
2026-01-13 12:36:57 +03:00
commit ebe1f5bd00
29 changed files with 2295 additions and 0 deletions

50
modules/KKC/app.php Normal file
View File

@@ -0,0 +1,50 @@
<?php
namespace API;
trait app
{
public function appUser($params)
{
//WHERE [ip]='".$_SERVER['REMOTE_ADDR']."'
$query = "SELECT TOP 1 [id]
,[ip]
,[user_desc]
,[isAdmin]
,[isBan]
FROM [SITE].[dbo].[kkc_users]
WHERE [ip]='".$_SERVER['REMOTE_ADDR']."'
AND isBan <> 1";
select($query);
}
public function appHeadersById($params)
{
if ($params['isAdmin']) {
$query = "SELECT *
FROM [SITE].[dbo].[kkc_headers]
ORDER BY id";
} else {
$query = "SELECT * FROM [SITE].[dbo].[get_headers_by_user_id] ('".$params['id_user']."')";
}
select($query);
}
public function appAllSubheaders($params)
{
$query = "SELECT *
FROM [SITE].[dbo].[kkc_headers]
WHERE isHeader is not null
and idSubHeader is null
";
select($query);
}
public function appVisits($params)
{
$query = "SELECT count([isVisit]) countVisits
FROM [SITE].[dbo].[kkc_stat]
where [isVisit]=1";
select($query);
}
}

300
modules/KKC/dashboard.php Normal file
View File

@@ -0,0 +1,300 @@
<?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);
}
}
}

256
modules/KKC/mega_report.php Normal file
View File

@@ -0,0 +1,256 @@
<?php
namespace API;
trait mega_report
{
public function getAllData($params)
{
$query = "SELECT
distinct
ctr.REPORT_ID ID
,HEAT_NUMBER
,DS_HM_LADLE_NUMBER [КЧ]
,HM_LADLE_CYCLE [Стойкость КЧ]
,DS_SHIFT_TEAM [Бригада ДС]
,FIRSTDS_Si [Si до ДС]
,FIRSTDS_S [S до ДС]
,FIRSTDS_P [P до ДС]
,FIRSTDS_Mn [Mn до ДС]
,HM_TEMP [T чугуна]
,HM_WEIGHT [Вес чугуна]
,convert(varchar, cast(CYCLE as smalldatetime),108) as [Цикл ДС]
,BRIGADA [№ бригады]
,STOIKOST [Стойкость конв.]
,MARKA [Марка стали]
,convert(varchar, cast(DT as datetime),104)+' '+convert(varchar, cast(DT as datetime),108) [Начало плавки]
,convert(varchar, cast(DTEnd as datetime),104)+' '+convert(varchar, cast(DTEnd as datetime),108) [Конец плавки]
,convert(varchar, cast(Cycl as smalldatetime),108) [Цикл плавки]
,BOF_HM_Weight [Вес чугуна]
,SCRAP_Weight [Вес лома]
,HEAT_Weight [Вес плавки]
,Si [Si чуг]
,CTR.S [S чуг]
,P [P чуг]
,Mn [Mn чуг]
,BOF_HM_Temp [T чугуна]
,C_p [C стали]
,S_p [S стали]
,P_p [P стали]
,Mn_p [Mn стали]
,HEAT_Temp [T стали]
,CTR.MgO [MgO шлака]
,CTR.FeO [FeO шлака]
,Bass [Основность шлака]
,LF_TREATMENTNO [№ обработки]
,LF_PLANTNO [Позиция]
,LF_LADLENO [№ сталь ковша]
,LF_MRESISTANCELADLE [Стойкость сталь ковша]
,LF_BRIGADANO [Бригада]
,LF_MTEMPERATUREBEFORE [Темп. приб]
,LF_LASTMEASTEMP [Темп. конечная]
,LF_HEATTIME [Время обраб.]
,LF_ARCONTIME [Время нагрева]
,LF_C
,LF_Mn
,LF_Si
,LF_S
,LF_P
,LF_Al
,LF_Nb
,LF_V
,LF_B
,LF_Cr
,LF_Ni
,LF_Cu
,lf.Al2O3 [Al2O3 шлак]
,lf.CaO [CaO шлак]
,lf.FeO [FeO шлак]
,lf.MgO [MgO шлак]
,lf.MnO [MnO шлак]
,lf.P2O5 [P2O5 шлак]
,lf.S [S шлак]
,lf.SiO2 [SiO2 шлак]
,CCM_ccm [Мнлз]
,CCM_TREATMENTNO [№ обр.]
,CCM_Br [Бригада]
,CCM_sech1 [Сечение Р1]
,CCM_sech2 [Сечение Р2]
,CCM_Cikl [Цикл]
,CCM_avgSpeedR1 [Скорость Р1 (сред)]
,CCM_avgSpeedR2 [Скорость Р2 (сред)]
,CCM_powder_str1 [Тип ШОС Р1]
,CCM_powder_str2 [Тип ШОС Р2]
,CCM_HEAT_IN_CAST [Серия/Плавка в серии]
,CCM_tund [Промковш/Плавка в промковше]
FROM Level3_KKC.dbo.BOF_CCM_TOTAL_REPORT CTR
left join (SELECT distinct lf1.[SLAGANALYSISID]
,lf1.[HEATNO]
,lf1.[ANALYSISDATE]
,lf1.[VALUEELEM1] as Al2O3
,lf1.[VALUEELEM2] as CaO
,lf1.[VALUEELEM3] as FeO
,lf1.[VALUEELEM4] as MgO
,lf1.[VALUEELEM5] as MnO
,lf1.[VALUEELEM6] as P2O5
,lf1.[VALUEELEM7] as S
,lf1.[VALUEELEM8] as SiO2
FROM [Level3_KKC].[dbo].[QLC_PRO_SLAGANALYSISHEADER_VD_L3] lf1
inner join [Level3_KKC].[dbo].[QLC_PRO_SLAGANALYSISHEADER_VD_L3] lf2 on
lf1.[SLAGANALYSISID]=lf2.[SLAGANALYSISID]
where lf1.[PLANTNO] IN (3,4)
and lf1.[SAMPLENO]=(select max([SAMPLENO]) from [Level3_KKC].[dbo].[QLC_PRO_SLAGANALYSISHEADER_VD_L3] where [HEATNO]=lf1.[HEATNO] and [PLANTNO] IN (3,4))) lf
on lf.HEATNO=HEAT_NUMBER
Where DT>='".$params['dateStart']."' and DT <='".$params['dateEnd']."'
--and BOF_AGGREGATE_ID = 1
order by HEAT_NUMBER,CCM_ccm,CCM_TREATMENTNO,LF_TREATMENTNO";
select($query);
}
public function getSteelData($params)
{
$query = "SELECT distinct
hm.[HEAT_NUMBER]
,[Name] [Установка]
,convert(varchar, cast(ANALYSISDATE as datetime),108) as 'Время'
,[Sample_number] [№]
,[value_1] Fe
,[value_2] P
,[value_3] S
,[value_4] Al
,[value_5] Cu
,[value_6] Cr
,[value_7] N
,[value_8] V
,[value_9] Nb
,[value_10] Ti
,[value_11] Sn
,[value_12] C
,[value_13] Mo
,[value_14] Si
,[value_15] W
,[value_16] Ni
,[value_17] Mn
,[value_18] Pb
,[value_19] Sb
,[value_20] B
,[value_21] Zr
,[value_22] Co
,[value_23] [As]
,[value_24] Zn
,[value_25] Ca
from(
(select distinct HEAT_NUMBER
FROM Level3_KKC.dbo.BOF_CCM_TOTAL_REPORT
Where DT>='".$params['dateStart']."' and DT <='".$params['dateEnd']."')) tr
left join [ANA_Operator].[dbo].[ANA_ALL_TRU] hm
on tr.HEAT_NUMBER=hm.Heat_number
where Sample_number<>0
and (Name IN ('LF', 'CCM1', 'CCM2', 'VD', 'BOF1', 'BOF2','AS1','AS2', 'DS', 'RL', 'ВАК'))
order by hm.HEAT_NUMBER, hm.Sample_number, Name";
select($query);
}
public function getHmData($params)
{
$query = "SELECT distinct
hm.[HEAT_NUMBER]
,[Name] [Установка]
,convert(varchar, cast(ANALYSISDATE as datetime),108) as 'Время'
,[Sample_number] [№]
,[value_1] C
,[value_2] Si
,[value_3] Mn
,[value_4] P
,[value_5] S
,[value_6] Cr
,[value_7] Mo
,[value_8] Ni
,[value_9] V
,[value_10] Al
,[value_11] Cu
,[value_12] Ti
,[value_13] Nb
,[value_14] W
,[value_15] [As]
,[value_16] Sn
,[value_17] Co
,[value_18] Pb
,[value_19] B
,[value_20] Sb
,[value_21] Bi
,[value_22] Zn
,[value_23] Ce
,[value_24] Fe
from(
(select distinct HEAT_NUMBER
FROM Level3_KKC.dbo.BOF_CCM_TOTAL_REPORT
Where DT>='".$params['dateStart']."' and DT <='".$params['dateEnd']."')) tr
left join [ANA_Operator].[dbo].[ANA_CHUGUN_ALL_TRU] hm
on tr.HEAT_NUMBER=hm.Heat_number
where Sample_number<>0
and (Name IN ('LF', 'CCM1', 'CCM2', 'VD', 'BOF1', 'BOF2', 'DS', 'RL', 'ВАК'))
order by hm.HEAT_NUMBER, hm.Sample_number, Name";
select($query);
}
public function getSlgData($params)
{
$query = "SELECT distinct
hm.[HEAT_NUMBER]
,[Name] [Установка]
,convert(varchar, cast(ANALYSISDATE as datetime),108) as 'Время'
,[Sample_number] [№]
,[value_1] Al2O3
,[value_2] CaO
,[value_3] MgO
,[value_4] MnO
,[value_5] P
,[value_6] S
,[value_7] SiO2
,[value_8] Fe
,[value_9] FeOp
,[value_10] Fe2O3p
,[value_11] P2O5p
,[value_12] [Основнось]
from(
(select distinct HEAT_NUMBER
FROM Level3_KKC.dbo.BOF_CCM_TOTAL_REPORT
Where DT>='".$params['dateStart']."' and DT <='".$params['dateEnd']."')) tr
left join
(select * from (select heatno as HEAT_NUMBER
, sampleno as Sample_number
,ANALYSISDATE, 'LF' as Name
,[VALUEELEM1] as value_1
,[VALUEELEM2] as value_2
,[VALUEELEM4] as value_3
,[VALUEELEM5] as value_4
,'' as value_5
,[VALUEELEM7] as value_6
,[VALUEELEM8] as value_7
,'' as value_8
,[VALUEELEM3] as value_9
,'' as value_10
,[VALUEELEM6] as value_11
,'' as value_12
from [Level3_KKC].[dbo].[QLC_PRO_SLAGANALYSISHEADER_VD_L3] where [PLANTNO] IN (3,4)
union all
SELECT Heat_number as HEAT_NUMBER
, Sample_number as Sample_number
,ANALYSISDATE as 'ДАТА', name
, value_1
, value_2
, value_3
, value_4
, value_5
, value_6
, value_7
, value_8
, value_9
, value_10
, value_11
, value_12
FROM [ANA_Operator].[dbo].[ANA_SLG_ALL_TRU])a) hm
on tr.HEAT_NUMBER=hm.Heat_number
where Sample_number<>0
order by hm.HEAT_NUMBER, hm.Sample_number, Name";
select($query);
}
}