P0 셀프서비스 결정론 리포트 — 적산·물질수지 폐합·cleaning 마스크 (+ P1 온라인 스펙) #1

Open
windpacer wants to merge 43 commits from feat/p0-selfservice-report into main
2 changed files with 3 additions and 12 deletions
Showing only changes of commit 56df27c85f - Show all commits

View File

@@ -301,8 +301,7 @@ function pbRenderPoints(res) {
<td>${item.controllerId}</td>
<td style="${statusStyle}">${statusLabel}</td>
<td style="white-space:nowrap">
<span style="cursor:pointer;font-size:14px" onclick="pbToggleOne(${item.id}, ${!item.isActive})" title="${item.isActive ? '비활성화' : '활성화'}">${item.isActive ? '🟢' : '🔴'}</span>
<button class="btn-b btn-sm" style="margin-left:6px;color:var(--red,#e55);border-color:var(--red,#e55)" onclick="pbDeleteOne(${item.id})">🗑 삭제</button>
<button class="btn-b btn-sm" style="color:var(--red,#e55);border-color:var(--red,#e55)" onclick="pbDeleteOne(${item.id})">🗑 삭제</button>
</td>
</tr>`;
}).join('');
@@ -325,14 +324,6 @@ function pbUpdateBulkBar() {
bar.hidden = checked.length === 0;
}
async function pbToggleOne(id, active) {
const res = await pbApi(`/api/hc900/tags/${id}/active`, 'PUT', active);
if (res) {
pbRefresh();
pbLoadSummary();
}
}
async function pbDeleteOne(id) {
if (!confirm('이 태그를 비활성화하고 realtime_table에서 제거합니다. 계속하시겠습니까?')) return;
const res = await pbApi(`/api/pointbuilder/${id}`, 'DELETE');

View File

@@ -313,8 +313,8 @@
<th style="width:85px">데이터 타입</th>
<th style="width:85px">Modbus</th>
<th style="width:50px">컨트롤러</th>
<th style="width:75px">등록/상태</th>
<th style="width:110px">관리</th>
<th style="width:120px">등록/상태</th>
<th style="width:80px">관리</th>
</tr>
</thead>
<tbody id="pb-points-tbody">