summaryrefslogtreecommitdiff
path: root/lib/rfq-last
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rfq-last')
-rw-r--r--lib/rfq-last/table/rfq-table-columns.tsx6
-rw-r--r--lib/rfq-last/table/rfq-table-toolbar-actions.tsx4
-rw-r--r--lib/rfq-last/vendor-response/editor/quotation-items-table.tsx30
-rw-r--r--lib/rfq-last/vendor-response/editor/vendor-response-editor.tsx5
-rw-r--r--lib/rfq-last/vendor/vendor-detail-dialog.tsx21
5 files changed, 32 insertions, 34 deletions
diff --git a/lib/rfq-last/table/rfq-table-columns.tsx b/lib/rfq-last/table/rfq-table-columns.tsx
index 6976e1c5..62f14579 100644
--- a/lib/rfq-last/table/rfq-table-columns.tsx
+++ b/lib/rfq-last/table/rfq-table-columns.tsx
@@ -337,7 +337,8 @@ export function getRfqColumns({
cell: ({ row }) => {
const received = row.original.quotationReceivedCount || 0;
const total = row.original.vendorCount || 0;
- return `${received}/${total}`;
+ // return `${received}/${total}`;
+ return <Badge variant="outline">{received}</Badge>;
},
size: 100,
},
@@ -698,7 +699,8 @@ export function getRfqColumns({
cell: ({ row }) => {
const received = row.original.quotationReceivedCount || 0;
const total = row.original.vendorCount || 0;
- return `${received}/${total}`;
+ // return `${received}/${total}`;
+ return <Badge variant="outline">{received}</Badge>;
},
size: 100,
},
diff --git a/lib/rfq-last/table/rfq-table-toolbar-actions.tsx b/lib/rfq-last/table/rfq-table-toolbar-actions.tsx
index a6dc1ad4..7216c4d0 100644
--- a/lib/rfq-last/table/rfq-table-toolbar-actions.tsx
+++ b/lib/rfq-last/table/rfq-table-toolbar-actions.tsx
@@ -216,7 +216,7 @@ export function RfqTableToolbarActions<TData>({
)}
</>
)}
- <Button
+ {/* <Button
variant="outline"
size="sm"
className="flex items-center gap-2"
@@ -224,7 +224,7 @@ export function RfqTableToolbarActions<TData>({
>
<FileDown className="h-4 w-4" />
엑셀 다운로드
- </Button>
+ </Button> */}
</div>
diff --git a/lib/rfq-last/vendor-response/editor/quotation-items-table.tsx b/lib/rfq-last/vendor-response/editor/quotation-items-table.tsx
index 266ba39b..281316eb 100644
--- a/lib/rfq-last/vendor-response/editor/quotation-items-table.tsx
+++ b/lib/rfq-last/vendor-response/editor/quotation-items-table.tsx
@@ -406,7 +406,7 @@ export default function QuotationItemsTable({ prItems, decimalPlaces = 2 }: Quot
// 저장 버튼 클릭 핸들러
const handleSaveDetail = () => {
- setValue(`quotationItems.${index}.deviationReason`, localDeviationReason)
+ setValue(`quotationItems.${index}.deviationReason`, localTechnicalCompliance ? "" : localDeviationReason)
setValue(`quotationItems.${index}.itemRemark`, localItemRemark)
setValue(`quotationItems.${index}.technicalCompliance`, localTechnicalCompliance)
setValue(`quotationItems.${index}.alternativeProposal`, localAlternativeProposal)
@@ -430,7 +430,7 @@ export default function QuotationItemsTable({ prItems, decimalPlaces = 2 }: Quot
<div className="space-y-4">
{/* PR 아이템 정보 */}
- <Card>
+ {/* <Card>
<CardHeader className="pb-3">
<CardTitle className="text-base">PR 아이템 정보</CardTitle>
</CardHeader>
@@ -466,7 +466,7 @@ export default function QuotationItemsTable({ prItems, decimalPlaces = 2 }: Quot
</div>
)}
</CardContent>
- </Card>
+ </Card> */}
{/* 제조사 정보 */}
{/* <Card>
@@ -534,17 +534,19 @@ export default function QuotationItemsTable({ prItems, decimalPlaces = 2 }: Quot
/>
</div>
)}
-
- <div className="space-y-2">
- <Label htmlFor={`deviationReason-${index}`}>편차 사유</Label>
- <Textarea
- id={`deviationReason-${index}`}
- value={localDeviationReason}
- onChange={(e) => setLocalDeviationReason(e.target.value)}
- placeholder="요구사항과 다른 부분이 있는 경우 사유를 입력하세요"
- className="min-h-[80px]"
- />
- </div>
+
+ {!localTechnicalCompliance && (
+ <div className="space-y-2">
+ <Label htmlFor={`deviationReason-${index}`}>편차 사유</Label>
+ <Textarea
+ id={`deviationReason-${index}`}
+ value={localDeviationReason}
+ onChange={(e) => setLocalDeviationReason(e.target.value)}
+ placeholder="요구사항과 다른 부분이 있는 경우 사유를 입력하세요"
+ className="min-h-[80px]"
+ />
+ </div>
+ )}
</CardContent>
</Card>
diff --git a/lib/rfq-last/vendor-response/editor/vendor-response-editor.tsx b/lib/rfq-last/vendor-response/editor/vendor-response-editor.tsx
index b7e67881..abd2b516 100644
--- a/lib/rfq-last/vendor-response/editor/vendor-response-editor.tsx
+++ b/lib/rfq-last/vendor-response/editor/vendor-response-editor.tsx
@@ -466,6 +466,11 @@ export default function VendorResponseEditor({
<form onSubmit={(e) => {
e.preventDefault() // 기본 submit 동작 방지
handleFormSubmit(false)
+ }}
+ onKeyDown={(e) => {
+ if (e.key === 'Enter') {
+ e.preventDefault() // 엔터 키로 인한 폼 제출 방지
+ }
}}>
<div className="space-y-6">
{/* 헤더 정보 */}
diff --git a/lib/rfq-last/vendor/vendor-detail-dialog.tsx b/lib/rfq-last/vendor/vendor-detail-dialog.tsx
index 181e33c8..9c112efa 100644
--- a/lib/rfq-last/vendor/vendor-detail-dialog.tsx
+++ b/lib/rfq-last/vendor/vendor-detail-dialog.tsx
@@ -93,14 +93,14 @@ const getStatusConfig = (status: string) => {
icon: <AlertCircle className="h-4 w-4" />,
color: "text-orange-600",
bgColor: "bg-orange-50",
- variant: "warning" as const,
+ variant: "secondary" as const,
};
case "최종확정":
return {
icon: <Shield className="h-4 w-4" />,
color: "text-indigo-600",
bgColor: "bg-indigo-50",
- variant: "success" as const,
+ variant: "default" as const,
};
case "취소":
return {
@@ -183,11 +183,10 @@ export function VendorResponseDetailDialog({
<div className="flex-1 overflow-y-auto px-6 ">
<Tabs defaultValue="overview" className="mb-2">
- <TabsList className="grid w-full grid-cols-4">
+ <TabsList className="grid w-full grid-cols-3">
<TabsTrigger value="overview">개요</TabsTrigger>
<TabsTrigger value="quotation">견적정보</TabsTrigger>
<TabsTrigger value="items">품목상세</TabsTrigger>
- <TabsTrigger value="attachments">첨부파일</TabsTrigger>
</TabsList>
{/* 개요 탭 */}
@@ -775,7 +774,7 @@ export function VendorResponseDetailDialog({
</TabsContent>
{/* 첨부파일 탭 */}
- <TabsContent value="attachments" className="space-y-4">
+ {/* <TabsContent value="attachments" className="space-y-4">
{attachments.length > 0 ? (
<Card>
<CardHeader>
@@ -802,16 +801,6 @@ export function VendorResponseDetailDialog({
</div>
</div>
<div className="flex items-center gap-2">
- {/* <Button
- variant="ghost"
- size="sm"
- onClick={() => {
- // 파일 미리보기 로직
- console.log("Preview file:", file.filePath);
- }}
- >
- <Eye className="h-4 w-4" />
- </Button> */}
<Button
variant="ghost"
size="sm"
@@ -837,7 +826,7 @@ export function VendorResponseDetailDialog({
</CardContent>
</Card>
)}
- </TabsContent>
+ </TabsContent> */}
</Tabs>
</div>