summaryrefslogtreecommitdiff
path: root/lib/vendors/contacts-table/add-contact-dialog.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'lib/vendors/contacts-table/add-contact-dialog.tsx')
-rw-r--r--lib/vendors/contacts-table/add-contact-dialog.tsx81
1 files changed, 63 insertions, 18 deletions
diff --git a/lib/vendors/contacts-table/add-contact-dialog.tsx b/lib/vendors/contacts-table/add-contact-dialog.tsx
index 5376583a..22c557b4 100644
--- a/lib/vendors/contacts-table/add-contact-dialog.tsx
+++ b/lib/vendors/contacts-table/add-contact-dialog.tsx
@@ -8,6 +8,13 @@ import { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, Dialog
import { Button } from "@/components/ui/button"
import { Input } from "@/components/ui/input"
import {
+ Select,
+ SelectContent,
+ SelectItem,
+ SelectTrigger,
+ SelectValue,
+} from "@/components/ui/select"
+import {
Form,
FormControl,
FormField,
@@ -29,6 +36,20 @@ interface AddContactDialogProps {
export function AddContactDialog({ vendorId }: AddContactDialogProps) {
const [open, setOpen] = React.useState(false)
+ // 담당업무 옵션
+ const taskOptions = [
+ { value: "회사대표", label: "회사대표 President/Director" },
+ { value: "영업관리", label: "영업관리 Sales Management" },
+ { value: "설계/기술", label: "설계/기술 Engineering/Design" },
+ { value: "구매", label: "구매 Procurement" },
+ { value: "납기/출하/운송", label: "납기/출하/운송 Delivery Control" },
+ { value: "PM/생산관리", label: "PM/생산관리 PM/Manufacturing" },
+ { value: "품질관리", label: "품질관리 Quality Management" },
+ { value: "세금계산서/납품서관리", label: "세금계산서/납품서관리 Shipping Doc. Management" },
+ { value: "A/S 관리", label: "A/S 관리 A/S Management" },
+ { value: "FSE", label: "FSE(야드작업자) Field Service Engineer" }
+ ]
+
// react-hook-form 세팅
const form = useForm<CreateVendorContactSchema>({
resolver: zodResolver(createVendorContactSchema),
@@ -37,6 +58,8 @@ export function AddContactDialog({ vendorId }: AddContactDialogProps) {
vendorId,
contactName: "",
contactPosition: "",
+ contactDepartment: "",
+ contactTask: "",
contactEmail: "",
contactPhone: "",
isPrimary: false,
@@ -88,7 +111,7 @@ export function AddContactDialog({ vendorId }: AddContactDialogProps) {
name="contactName"
render={({ field }) => (
<FormItem>
- <FormLabel>Contact Name</FormLabel>
+ <FormLabel>담당자명</FormLabel>
<FormControl>
<Input placeholder="예: 홍길동" {...field} />
</FormControl>
@@ -102,7 +125,7 @@ export function AddContactDialog({ vendorId }: AddContactDialogProps) {
name="contactPosition"
render={({ field }) => (
<FormItem>
- <FormLabel>Position / Title</FormLabel>
+ <FormLabel>직급</FormLabel>
<FormControl>
<Input placeholder="예: 과장" {...field} />
</FormControl>
@@ -113,12 +136,12 @@ export function AddContactDialog({ vendorId }: AddContactDialogProps) {
<FormField
control={form.control}
- name="contactEmail"
+ name="contactDepartment"
render={({ field }) => (
<FormItem>
- <FormLabel>Email</FormLabel>
+ <FormLabel>부서</FormLabel>
<FormControl>
- <Input placeholder="name@company.com" {...field} />
+ <Input placeholder="예: 영업부" {...field} />
</FormControl>
<FormMessage />
</FormItem>
@@ -127,36 +150,58 @@ export function AddContactDialog({ vendorId }: AddContactDialogProps) {
<FormField
control={form.control}
- name="contactPhone"
+ name="contactTask"
+ render={({ field }) => (
+ <FormItem>
+ <FormLabel>담당업무</FormLabel>
+ <Select onValueChange={field.onChange} value={field.value || undefined}>
+ <FormControl>
+ <SelectTrigger>
+ <SelectValue placeholder="담당업무를 선택하세요" />
+ </SelectTrigger>
+ </FormControl>
+ <SelectContent>
+ {taskOptions.map((option) => (
+ <SelectItem key={option.value} value={option.value}>
+ {option.label}
+ </SelectItem>
+ ))}
+ </SelectContent>
+ </Select>
+ <FormMessage />
+ </FormItem>
+ )}
+ />
+
+ <FormField
+ control={form.control}
+ name="contactEmail"
render={({ field }) => (
<FormItem>
- <FormLabel>Phone</FormLabel>
+ <FormLabel>이메일</FormLabel>
<FormControl>
- <Input placeholder="010-1234-5678" {...field} />
+ <Input placeholder="name@company.com" {...field} />
</FormControl>
<FormMessage />
</FormItem>
)}
/>
- {/* 단순 checkbox */}
<FormField
control={form.control}
- name="isPrimary"
+ name="contactPhone"
render={({ field }) => (
<FormItem>
- <div className="flex items-center space-x-2 mt-2">
- <input
- type="checkbox"
- checked={field.value}
- onChange={(e) => field.onChange(e.target.checked)}
- />
- <FormLabel>Is Primary?</FormLabel>
- </div>
+ <FormLabel>전화번호</FormLabel>
+ <FormControl>
+ <Input placeholder="010-1234-5678" {...field} />
+ </FormControl>
<FormMessage />
</FormItem>
)}
/>
+
+
</div>
<DialogFooter>