67 lines
3.4 KiB
PHP
67 lines
3.4 KiB
PHP
<section class="border-b border-gray-300 p-2 shrink-0 bg-control-panel">
|
|
<span class="text-sm font-bold text-gray-700">권한 승인 대기</span>
|
|
</section>
|
|
<div class="border border-gray-300 p-4 mt-2">
|
|
<form method="get" action="<?= base_url('admin/access/approvals') ?>" class="mb-4 flex flex-wrap items-center gap-2 text-sm">
|
|
<label for="status" class="font-bold text-gray-700 shrink-0">상태</label>
|
|
<select id="status" name="status" class="border border-gray-300 rounded px-3 py-1.5 text-sm min-w-[12rem] w-48 max-w-full">
|
|
<option value="pending" <?= ($status ?? 'pending') === 'pending' ? 'selected' : '' ?>>승인 대기</option>
|
|
<option value="approved" <?= ($status ?? '') === 'approved' ? 'selected' : '' ?>>승인 완료</option>
|
|
<option value="rejected" <?= ($status ?? '') === 'rejected' ? 'selected' : '' ?>>반려</option>
|
|
</select>
|
|
<button type="submit" class="bg-btn-search text-white px-3 py-1 rounded-sm text-xs">조회</button>
|
|
</form>
|
|
<table class="w-full data-table">
|
|
<thead>
|
|
<tr>
|
|
<th>요청일</th>
|
|
<th>아이디</th>
|
|
<th>이름</th>
|
|
<th>지자체</th>
|
|
<th>요청 역할</th>
|
|
<th>상태</th>
|
|
<th>처리일</th>
|
|
<th>관리</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<?php if (empty($list)): ?>
|
|
<tr><td colspan="8" class="text-center text-gray-500 py-4">해당 상태의 요청이 없습니다.</td></tr>
|
|
<?php else: ?>
|
|
<?php foreach ($list as $row): ?>
|
|
<tr>
|
|
<td class="text-center"><?= esc($row->mar_requested_at ?? '-') ?></td>
|
|
<td class="text-center"><?= esc($row->mb_id ?? '-') ?></td>
|
|
<td class="text-center"><?= esc($row->mb_name ?? '-') ?></td>
|
|
<td class="text-center"><?= esc($row->lg_name ?? '-') ?></td>
|
|
<td class="text-center"><?= esc($roles->getLevelName((int) $row->mar_requested_level)) ?></td>
|
|
<td class="text-center">
|
|
<?php if (($row->mar_status ?? '') === 'pending'): ?>승인 대기<?php endif; ?>
|
|
<?php if (($row->mar_status ?? '') === 'approved'): ?>승인 완료<?php endif; ?>
|
|
<?php if (($row->mar_status ?? '') === 'rejected'): ?>반려<?php endif; ?>
|
|
</td>
|
|
<td class="text-center"><?= esc($row->mar_processed_at ?? '-') ?></td>
|
|
<td class="text-center">
|
|
<?php if (($row->mar_status ?? '') === 'pending'): ?>
|
|
<div class="flex items-center justify-center gap-1">
|
|
<form action="<?= base_url('admin/access/approve/' . $row->mar_idx) ?>" method="post" class="inline">
|
|
<?= csrf_field() ?>
|
|
<button type="submit" class="bg-green-600 text-white px-2 py-1 text-xs rounded">승인</button>
|
|
</form>
|
|
<form action="<?= base_url('admin/access/reject/' . $row->mar_idx) ?>" method="post" class="inline flex items-center gap-1">
|
|
<?= csrf_field() ?>
|
|
<input type="text" name="reject_reason" placeholder="반려사유(선택)" class="border border-gray-300 rounded px-2 py-1 text-xs w-28"/>
|
|
<button type="submit" class="bg-red-600 text-white px-2 py-1 text-xs rounded">반려</button>
|
|
</form>
|
|
</div>
|
|
<?php else: ?>
|
|
<span class="text-gray-500">처리완료</span>
|
|
<?php endif; ?>
|
|
</td>
|
|
</tr>
|
|
<?php endforeach; ?>
|
|
<?php endif; ?>
|
|
</tbody>
|
|
</table>
|
|
</div>
|