diff options
Diffstat (limited to 'lib/vendors/contacts-table/add-contact-dialog.tsx')
| -rw-r--r-- | lib/vendors/contacts-table/add-contact-dialog.tsx | 81 |
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> |
