add comment

This commit is contained in:
2026-02-22 13:59:27 +03:00
parent e72c6f761f
commit b884c04b86
2 changed files with 215 additions and 0 deletions

View File

@@ -14,6 +14,7 @@ trait PRB_FileControl
0, 0,
'$name', '$name',
'$filePATH', '$filePATH',
'',
'".$params['data']['item']['uploadIP']."', '".$params['data']['item']['uploadIP']."',
'".$params['data']['date']." $time')"; '".$params['data']['date']." $time')";
insert($query); insert($query);
@@ -24,6 +25,7 @@ trait PRB_FileControl
[isCompleted] [isCompleted]
,[file_name] ,[file_name]
,[file_path] ,[file_path]
,[comment]
,convert(varchar, [upload_date],104)+' - '+convert(varchar, [upload_date],108) as [Дата загрузки] ,convert(varchar, [upload_date],104)+' - '+convert(varchar, [upload_date],108) as [Дата загрузки]
,[id] ,[id]
FROM [Production].[dbo].[PRB_FileControl] FROM [Production].[dbo].[PRB_FileControl]
@@ -39,6 +41,15 @@ trait PRB_FileControl
WHERE id=".$params['data']['id'].""; WHERE id=".$params['data']['id']."";
update($query); update($query);
} }
public function setComment($params)
{
$query = "UPDATE [Production].[dbo].[PRB_FileControl]
SET comment='".$params['data']['comment']."'
WHERE id=".$params['data']['id']."";
update($query);
}
public function setHistory($params) public function setHistory($params)
{ {
$query = "INSERT INTO [Production].[dbo].[PRB_FileLog] VALUES ( $query = "INSERT INTO [Production].[dbo].[PRB_FileLog] VALUES (

View File

@@ -0,0 +1,204 @@
<?php
$old_client_ip = array(
'10.129.32.45', // Клиент ОТК ККЦ
'10.129.32.54', // Клиент помощника диспетчера
'10.129.14.100', // УКП ПК мастеров
'10.129.14.22', // ГПУ МНЛЗ
'192.168.65.24', // Газорезка МНЛЗ№1
'10.129.14.6', // ОТК отделки (сменный мастер)
'10.129.14.9' // Отделка Бригадир
);
if (in_array($_SERVER['REMOTE_ADDR'], $old_client_ip)) {
$serverName = '192.168.76.100';
$Database = 'Production';
$UID = 'dimagenius';
$PWD = 'dimagenius';
ini_set('display_errors', 'on');
$connectionInfo = array('Database' => $Database, 'UID' => $UID, 'PWD' => $PWD);
$conn = sqlsrv_connect($serverName, $connectionInfo);
if ($conn) {
header('Content-Type:text/html; charset=UTF-8', true, 200);
} else {
header('Content-Type:text/html; charset=UTF-8', true, 301);
if (($errors = sqlsrv_errors()) != null) {
foreach ($errors as $error) {
echo "SQLSTATE: " . $error['SQLSTATE'] . "<br />";
echo "code: " . $error['code'] . "<br />";
echo "message: " . iconv('windows-1251', 'UTF-8', $error['message']) . "<br />";
}
}
}
// Получаем текущую дату в формате YYYY-MM-DD
$today = date('Y-m-d');
// Обработка выбранной даты из формы
$selected_date = isset($_POST['selected_date']) ? $_POST['selected_date'] : $today;
// Формируем SQLзапрос с учётом выбранной даты
if ($selected_date) {
$sql = "SELECT
[isCompleted],
[file_name],
[comment],
[file_path],
CONVERT(varchar, [upload_date], 104) + ' - ' + CONVERT(varchar, [upload_date], 108) AS [upload_date],
[id]
FROM [Production].[dbo].[PRB_FileControl]
WHERE CONVERT(date, [upload_date]) = CONVERT(date, ?)
AND [isCompleted] = 1
ORDER BY upload_date DESC";
$params = array($selected_date);
} else {
// Если дата не выбрана, показываем данные за последний день
$sql = "SELECT
[isCompleted],
[file_name],
[comment],
[file_path],
CONVERT(varchar, [upload_date], 104) + ' - ' + CONVERT(varchar, [upload_date], 108) AS [upload_date],
[id]
FROM [Production].[dbo].[PRB_FileControl]
WHERE DATEDIFF(day, [upload_date], GETDATE()) <= 0
AND [isCompleted] = 1
ORDER BY upload_date DESC";
$params = array();
}
$stmt = sqlsrv_query($conn, $sql, $params);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
// Проверяем, есть ли данные
$has_rows = sqlsrv_has_rows($stmt);
?>
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>ПРБ: файловый менеджер</title>
<!-- Автообновление страницы каждые 5 минут (300 секунд) -->
<meta http-equiv="refresh" content="300">
</head>
<body>
<!-- Форма с календарём (по умолчанию — текущая дата) -->
<div style="margin: 20px; text-align: center;">
<form method="POST">
<label for="selected_date">Выберите дату: </label>
<input type="date" id="selected_date" name="selected_date"
value="<?php echo htmlspecialchars($selected_date); ?>"
required>
<button type="submit">Показать файлы</button>
</form>
</div>
<?php
if ($has_rows) {
// Выводим таблицу, если есть данные
echo "<table border='1px' class='styled-table'>";
echo "<caption><h3>ПРБ: файловый менеджер</h3></caption>";
echo "<thead>";
echo "<tr>";
echo "<th>Имя файла</th>";
echo "<th>Примечание</th>";
echo "<th>Дата загрузки</th>";
echo "<th>Ссылка</th>";
echo "</tr>";
echo "</thead>";
echo "<tbody>";
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$link = str_replace("C:\\xampp\\htdocs\\", "http://192.168.76.100:81//", iconv('windows-1251', 'UTF-8', $row['file_path']));
echo "<tr class='active-row'>";
echo "<td>" . iconv('windows-1251', 'UTF-8', $row['file_name']) . "</td>";
echo "<td>" . iconv('windows-1251', 'UTF-8', $row['comment']) . "</td>";
echo "<td>" . iconv('windows-1251', 'UTF-8', $row['upload_date']) . "</td>";
echo '<td><a href="' . $link . '" target="_blank">Скачать</a></td>';
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
} else {
// Выводим сообщение, если данных нет
echo '<div class="no-data-message">';
echo '<p>За выбранную дату (<strong>' . htmlspecialchars($selected_date) . '</strong>) файлы не найдены.</p>';
echo '<p>Попробуйте выбрать другую дату или проверить наличие загруженных файлов.</p>';
echo '</div>';
}
} else {
header('Location: http://192.168.76.100:81/projects/_VUE/#/PRB_FileControl');
}
?>
</body>
</html>
<style>
.styled-table {
margin-top: 20px;
margin-left: auto;
margin-right: auto;
border-collapse: collapse;
font-size: 0.9em;
font-family: sans-serif;
min-width: 600px;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}
.styled-table thead tr {
background-color: #9b638d;
color: #ffffff;
text-align: left;
}
.styled-table th,
.styled-table td {
padding: 12px 15px;
}
.styled-table tbody tr {
border-bottom: 1px solid #dddddd;
}
.styled-table tbody tr:nth-of-type(even) {
background-color: #f3f3f3;
}
.styled-table tbody tr:last-of-type {
border-bottom: 1px solid rgba(0, 0, 0, 0.51);
}
/* Стили для формы календаря */
form {
display: inline-flex;
align-items: center;
gap: 10px;
}
button {
padding: 8px 16px;
background-color: #9b638d;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
}
button:hover {
background-color: #e608ae;
}
.no-data-message {
margin: 40px auto;
padding: 20px;
max-width: 600px;
text-align: center;
background-color: #fff3cd;
border-left: 4px solid #9b638d;
}
</style>