Files
sam-kd/juilcarlog/fetch_initial_distance.php
hskwon aca1767eb9 초기 커밋: 5130 레거시 시스템
- URL 하드코딩 → .env APP_URL 기반 동적 URL로 변경
- DB 연결 하드코딩 → .env 기반으로 변경
- MySQL strict mode DATE 오류 수정
2025-12-10 20:14:31 +09:00

97 lines
4.8 KiB
PHP

<?php
require_once($_SERVER['DOCUMENT_ROOT'] . "/session.php");
$tablename = 'juilcarlog';
require_once($_SERVER['DOCUMENT_ROOT'] . "/lib/mydb.php");
$pdo = db_connect();
$car_table = 'juilcar';
// initial_distance 컬럼이 있는지 확인
$check_column_sql = "SHOW COLUMNS FROM " . $DB . "." . $car_table . " LIKE 'initial_distance'";
$check_stmh = $pdo->query($check_column_sql);
$column_exists = $check_stmh->rowCount() > 0;
if (!$column_exists) {
// initial_distance 컬럼 추가
$add_column_sql = "ALTER TABLE " . $DB . "." . $car_table . " ADD COLUMN initial_distance DECIMAL(10,2) DEFAULT 0.00 COMMENT '최초 주행거리'";
$pdo->exec($add_column_sql);
}
// 차량 정보 불러오기 (사용자, 차종, 차량번호, 최초주행거리)
$car_sql = "SELECT
c.vehicle_number,
c.responsible_person,
c.vehicle_type,
IFNULL(c.initial_distance, 0) as initial_distance,
m.part as department,
m.position
FROM " . $DB . "." . $car_table . " c
LEFT JOIN " . $DB . ".member m ON c.responsible_person = m.name
WHERE c.is_deleted IS NULL
ORDER BY c.manufacturing_date ASC, c.purchase_date ASC";
$car_stmh = $pdo->query($car_sql);
$car_list = $car_stmh->fetchAll(PDO::FETCH_ASSOC);
?>
<div class="container-fluid">
<div class="d-flex align-items-center justify-content-center">
<div class="card w-100">
<div class="card-header text-center align-items-center">
<div class="d-flex align-items-center justify-content-center m-2">
<span class="text-center fs-5 mx-3">최초주행거리 설정</span>
</div>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-bordered table-hover">
<thead class="table-primary">
<tr>
<th class="text-center">사용자명</th>
<th class="text-center">부서</th>
<th class="text-center">직책</th>
<th class="text-center">차종</th>
<th class="text-center">차량번호</th>
<th class="text-center">최초주행거리(km)</th>
<th class="text-center">저장</th>
</tr>
</thead>
<tbody>
<?php foreach ($car_list as $car): ?>
<tr>
<td class="text-center"><?= htmlspecialchars($car['responsible_person'] ?? '', ENT_QUOTES, 'UTF-8') ?></td>
<td class="text-center"><?= htmlspecialchars($car['department'] ?? '', ENT_QUOTES, 'UTF-8') ?></td>
<td class="text-center"><?= htmlspecialchars($car['position'] ?? '', ENT_QUOTES, 'UTF-8') ?></td>
<td class="text-center"><?= htmlspecialchars($car['vehicle_type'] ?? '', ENT_QUOTES, 'UTF-8') ?></td>
<td class="text-center"><?= htmlspecialchars($car['vehicle_number'] ?? '', ENT_QUOTES, 'UTF-8') ?></td>
<td class="text-center">
<input type="number"
class="form-control text-end initial-distance-input"
data-vehicle="<?= htmlspecialchars($car['vehicle_number'] ?? '', ENT_QUOTES, 'UTF-8') ?>"
value="<?= htmlspecialchars($car['initial_distance'] ?? '0', ENT_QUOTES, 'UTF-8') ?>"
step="0.01"
min="0"
style="width: 120px;">
</td>
<td class="text-center">
<button type="button"
class="btn btn-success btn-sm save-initial-distance"
data-vehicle="<?= htmlspecialchars($car['vehicle_number'] ?? '', ENT_QUOTES, 'UTF-8') ?>">
<i class="bi bi-check"></i>
</button>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
<div class="d-flex justify-content-center mt-3">
<button type="button" id="closeInitialDistanceBtn" class="btn btn-outline-dark btn-sm">
&times; 닫기
</button>
</div>
</div>
</div>
</div>
</div>