- <tr title=...> 의 lock 메시지 hover 툴팁이 다음 행 위로 떠다니던 문제 해결 — title 제거. - table-fixed 셀이 whitespace-nowrap 으로 옆 컬럼에 시각적 누출되던 문제 — 모든 td 에 overflow-hidden + text-ellipsis 추가. - 컬럼 폭 확장: 발주번호 100→112, 발주일 82→100, 합계 100→110, 상태 72→78. - 좌측 패널 최소폭 560→640 으로 키워 업체 컬럼이 화면에 꽉 차게 한다.
This commit is contained in:
@@ -446,7 +446,7 @@ export default function AdminOrdersPage() {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* 2분할 레이아웃 — 모바일은 stack, lg 이상은 좌-우 분할 */}
|
{/* 2분할 레이아웃 — 모바일은 stack, lg 이상은 좌-우 분할 */}
|
||||||
<div className="grid grid-cols-1 lg:grid-cols-[minmax(560px,1fr)_minmax(0,1.4fr)] gap-3 lg:min-h-[calc(100vh-200px)]">
|
<div className="grid grid-cols-1 lg:grid-cols-[minmax(640px,1fr)_minmax(0,1.3fr)] gap-3 lg:min-h-[calc(100vh-200px)]">
|
||||||
{/* 좌측: 발주 리스트 */}
|
{/* 좌측: 발주 리스트 */}
|
||||||
<div className="bg-white border border-slate-200 rounded-xl overflow-hidden flex flex-col">
|
<div className="bg-white border border-slate-200 rounded-xl overflow-hidden flex flex-col">
|
||||||
<div className="px-3 py-2 bg-slate-50 border-b border-slate-200 text-xs font-semibold text-slate-600 flex items-center justify-between gap-2">
|
<div className="px-3 py-2 bg-slate-50 border-b border-slate-200 text-xs font-semibold text-slate-600 flex items-center justify-between gap-2">
|
||||||
@@ -524,11 +524,11 @@ export default function AdminOrdersPage() {
|
|||||||
disabled={allRequestedCount === 0}
|
disabled={allRequestedCount === 0}
|
||||||
className="accent-emerald-600 cursor-pointer disabled:opacity-30" />
|
className="accent-emerald-600 cursor-pointer disabled:opacity-30" />
|
||||||
</th>
|
</th>
|
||||||
<th className="text-left px-2 py-2 text-[11px] w-[100px]">발주번호</th>
|
<th className="text-left px-2 py-2 text-[11px] w-[112px]">발주번호</th>
|
||||||
<th className="text-left px-2 py-2 text-[11px] w-[82px]">발주일</th>
|
<th className="text-left px-2 py-2 text-[11px] w-[100px]">발주일</th>
|
||||||
<th className="text-left px-2 py-2 text-[11px]">업체</th>
|
<th className="text-left px-2 py-2 text-[11px]">업체</th>
|
||||||
<th className="text-right px-2 py-2 text-[11px] w-[100px]">합계</th>
|
<th className="text-right px-2 py-2 text-[11px] w-[110px]">합계</th>
|
||||||
<th className="text-center px-2 py-2 text-[11px] w-[72px]">상태</th>
|
<th className="text-center px-2 py-2 text-[11px] w-[78px]">상태</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@@ -544,7 +544,6 @@ export default function AdminOrdersPage() {
|
|||||||
key={o.OBJID}
|
key={o.OBJID}
|
||||||
onClick={() => setActiveId(o.OBJID)}
|
onClick={() => setActiveId(o.OBJID)}
|
||||||
className={`border-t border-slate-100 cursor-pointer ${active ? "bg-emerald-50/60" : lockedByMeRow ? "bg-emerald-50/30 hover:bg-emerald-50/50" : lockedByOtherUser ? "bg-rose-50/30 hover:bg-rose-50/60" : "hover:bg-slate-50"}`}
|
className={`border-t border-slate-100 cursor-pointer ${active ? "bg-emerald-50/60" : lockedByMeRow ? "bg-emerald-50/30 hover:bg-emerald-50/50" : lockedByOtherUser ? "bg-rose-50/30 hover:bg-rose-50/60" : "hover:bg-slate-50"}`}
|
||||||
title={lockedByMeRow ? "✏️ 내가 수정 중" : lockedByOtherUser ? `🔒 ${o.EDITING_BY_NAME} 님이 수정 중` : ""}
|
|
||||||
>
|
>
|
||||||
<td className="px-1.5 py-2 text-center" onClick={(e) => e.stopPropagation()}>
|
<td className="px-1.5 py-2 text-center" onClick={(e) => e.stopPropagation()}>
|
||||||
<input
|
<input
|
||||||
@@ -555,19 +554,19 @@ export default function AdminOrdersPage() {
|
|||||||
className="accent-emerald-600 cursor-pointer disabled:opacity-30 disabled:cursor-not-allowed"
|
className="accent-emerald-600 cursor-pointer disabled:opacity-30 disabled:cursor-not-allowed"
|
||||||
/>
|
/>
|
||||||
</td>
|
</td>
|
||||||
<td className="px-2 py-2 font-semibold text-slate-800 whitespace-nowrap text-xs tabular-nums">
|
<td className="px-2 py-2 font-semibold text-slate-800 whitespace-nowrap overflow-hidden text-ellipsis text-xs tabular-nums">
|
||||||
{lockedByMeRow && <span className="mr-0.5 text-emerald-700">✏️</span>}
|
{lockedByMeRow && <span className="mr-0.5 text-emerald-700">✏️</span>}
|
||||||
{lockedByOtherUser && <span className="mr-0.5 text-rose-600">🔒</span>}
|
{lockedByOtherUser && <span className="mr-0.5 text-rose-600">🔒</span>}
|
||||||
{o.ORDER_NO}
|
{o.ORDER_NO}
|
||||||
</td>
|
</td>
|
||||||
<td className="px-2 py-2 text-slate-600 whitespace-nowrap text-xs tabular-nums">{o.ORDER_DATE}</td>
|
<td className="px-2 py-2 text-slate-600 whitespace-nowrap overflow-hidden text-ellipsis text-xs tabular-nums">{o.ORDER_DATE}</td>
|
||||||
<td className="px-2 py-2 font-bold text-sm text-slate-900 truncate">
|
<td className="px-2 py-2 font-bold text-sm text-slate-900 overflow-hidden">
|
||||||
{o.COMPANY_NAME}
|
<div className="truncate">{o.COMPANY_NAME}</div>
|
||||||
{lockedByMeRow && <div className="text-[10px] font-bold text-emerald-700 truncate">✏️ 내가 수정 중</div>}
|
{lockedByMeRow && <div className="text-[10px] font-bold text-emerald-700 truncate">✏️ 내가 수정 중</div>}
|
||||||
{lockedByOtherUser && <div className="text-[10px] font-bold text-rose-600 truncate">🔒 {o.EDITING_BY_NAME}</div>}
|
{lockedByOtherUser && <div className="text-[10px] font-bold text-rose-600 truncate">🔒 {o.EDITING_BY_NAME}</div>}
|
||||||
</td>
|
</td>
|
||||||
<td className="px-2 py-2 text-right tabular-nums font-bold whitespace-nowrap text-xs">₩{fmt(o.TOTAL_AMOUNT)}</td>
|
<td className="px-2 py-2 text-right tabular-nums font-bold whitespace-nowrap overflow-hidden text-xs">₩{fmt(o.TOTAL_AMOUNT)}</td>
|
||||||
<td className="px-2 py-2 text-center">
|
<td className="px-2 py-2 text-center overflow-hidden">
|
||||||
<span className={`inline-block px-1.5 py-0.5 rounded text-[10px] font-semibold border whitespace-nowrap ${STATUS_COLOR[o.STATUS] ?? "bg-slate-100 text-slate-500 border-slate-200"}`}>
|
<span className={`inline-block px-1.5 py-0.5 rounded text-[10px] font-semibold border whitespace-nowrap ${STATUS_COLOR[o.STATUS] ?? "bg-slate-100 text-slate-500 border-slate-200"}`}>
|
||||||
{STATUS_LABEL[o.STATUS] ?? o.STATUS}
|
{STATUS_LABEL[o.STATUS] ?? o.STATUS}
|
||||||
</span>
|
</span>
|
||||||
|
|||||||
Reference in New Issue
Block a user