From 3cfbe6b3c7897a314c85ff15af213fa7b6200700 Mon Sep 17 00:00:00 2001 From: KimJi-An Date: Thu, 14 Nov 2024 08:05:28 +0900 Subject: [PATCH 1/3] =?UTF-8?q?feat:=20=EA=B7=BC=EB=A1=9C=EA=B3=84?= =?UTF-8?q?=EC=95=BD=EC=84=9C=20=EC=9E=91=EC=84=B1=20=EC=99=84=EB=A3=8C=20?= =?UTF-8?q?=EC=8B=9C=20=ED=95=B4=EB=8B=B9=20=EC=A7=80=EC=9B=90=EC=9E=90?= =?UTF-8?q?=EC=9D=98=20=EA=B3=84=EC=95=BD=ED=95=98=EA=B8=B0=20=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EB=B9=84=ED=99=9C=EC=84=B1=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/apis/applicants/mocks/applicants.mock.ts | 2 ++ src/assets/translator/Applicants/applicantsData.ts | 6 ++++-- .../applicantsPage/ApplicantList/ApplicantsTable.tsx | 11 +++++++++-- src/types/index.d.ts | 1 + 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/apis/applicants/mocks/applicants.mock.ts b/src/apis/applicants/mocks/applicants.mock.ts index dd81e5b..376e76b 100644 --- a/src/apis/applicants/mocks/applicants.mock.ts +++ b/src/apis/applicants/mocks/applicants.mock.ts @@ -20,6 +20,7 @@ export const applicantList = [ applyId: 1, applicantNation: '베트남', koreanLanguageLevel: '중급', + contractExistence: false, }, { userId: 2, @@ -28,5 +29,6 @@ export const applicantList = [ applyId: 2, applicantNation: '베트남', koreanLanguageLevel: '고급', + contractExistence: false, }, ]; diff --git a/src/assets/translator/Applicants/applicantsData.ts b/src/assets/translator/Applicants/applicantsData.ts index 4d3641c..9de0a43 100644 --- a/src/assets/translator/Applicants/applicantsData.ts +++ b/src/assets/translator/Applicants/applicantsData.ts @@ -13,6 +13,7 @@ export const applicantsData = { buttons: { view_resume: '지원서', create_contract: '계약하기', + complete_contract: '계약완료', }, }, [Languages.VE]: { @@ -25,8 +26,9 @@ export const applicantsData = { korean_language_level: 'Trình độ tiếng Hàn', }, buttons: { - view_resume: 'Hồ sơ ứng tuyển', - create_contract: 'Ký hợp đồng', + view_resume: 'Hồ sơ ứng viên', + create_contract: 'Tạo hợp đồng', + complete_contract: 'Hoàn thành hợp đồng', }, }, }; diff --git a/src/pages/applicantsPage/ApplicantList/ApplicantsTable.tsx b/src/pages/applicantsPage/ApplicantList/ApplicantsTable.tsx index c6147ed..672d1e0 100644 --- a/src/pages/applicantsPage/ApplicantList/ApplicantsTable.tsx +++ b/src/pages/applicantsPage/ApplicantList/ApplicantsTable.tsx @@ -66,8 +66,15 @@ export default function ApplicantsTable({ applicantList }: Props) { > {t('applicants.buttons.view_resume')} - diff --git a/src/types/index.d.ts b/src/types/index.d.ts index 54d13d0..aec017f 100644 --- a/src/types/index.d.ts +++ b/src/types/index.d.ts @@ -14,6 +14,7 @@ export type ApplicantData = { applyId: number; applicantNation: string; koreanLanguageLevel: string; + contractExistence: boolean; }; export type ForeignerData = { From fa7fda9255cdb4fe67d8ec3e870978fa145f3256 Mon Sep 17 00:00:00 2001 From: KimJi-An Date: Thu, 14 Nov 2024 14:18:14 +0900 Subject: [PATCH 2/3] Merge remote-tracking branch 'upstream/Weekly' into feat/#151 From 4c29df5e42a489c021987e295ed3f46237b7c469 Mon Sep 17 00:00:00 2001 From: YIMSEBIN Date: Thu, 14 Nov 2024 15:12:14 +0900 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20=EA=B7=BC=EB=A1=9C=EC=9E=90=20?= =?UTF-8?q?=EB=A7=88=EC=9D=B4=ED=8E=98=EC=9D=B4=EC=A7=80=20=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EB=B9=84=ED=99=9C=EC=84=B1=ED=99=94=20=EB=B0=8F=20?= =?UTF-8?q?=ED=8F=B4=EB=8D=94=EA=B5=AC=EC=A1=B0=20=EC=A0=95=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../EmployeeMyPage/employeeMyPageData.ts | 14 +++++----- .../employee/components}/ButtonGroup.tsx | 28 +++++++++++++------ .../employee/components}/EmployeeProfile.tsx | 0 .../employee/components}/MyRecruitCard.tsx | 11 ++++---- .../employee/components}/MyRecruitList.tsx | 0 .../employee/components}/ProfileSection.tsx | 0 src/pages/myPage/employee/EmployeeMyPage.tsx | 4 +-- 7 files changed, 35 insertions(+), 22 deletions(-) rename src/features/{employee/myPage => myPage/employee/components}/ButtonGroup.tsx (69%) rename src/features/{employee/myPage => myPage/employee/components}/EmployeeProfile.tsx (100%) rename src/features/{employee/myPage => myPage/employee/components}/MyRecruitCard.tsx (94%) rename src/features/{employee/myPage => myPage/employee/components}/MyRecruitList.tsx (100%) rename src/features/{employee/myPage => myPage/employee/components}/ProfileSection.tsx (100%) diff --git a/src/assets/translator/EmployeeMyPage/employeeMyPageData.ts b/src/assets/translator/EmployeeMyPage/employeeMyPageData.ts index 5b64c36..aaa741d 100644 --- a/src/assets/translator/EmployeeMyPage/employeeMyPageData.ts +++ b/src/assets/translator/EmployeeMyPage/employeeMyPageData.ts @@ -5,18 +5,18 @@ export const employeeMyPageData = { REGISTER_RESUME: '이력서 등록', REGISTER_SIGN: '사인 등록', REGISTER_VISA: '외국인 번호 및 비자 등록', - UPDATE_RESUME: '이력서 수정', - UPDATE_SIGN: '사인 수정', - UPDATE_VISA: '외국인 번호 및 비자 수정', + COMPLETE_RESUME: '이력서 등록 완료', + COMPLETE_SIGN: '사인 등록 완료', + COMPLETE_VISA: '외국인 번호 및 비자 등록 완료', MYRECRUITLIST: '내가 지원한 공고', }, [Languages.VE]: { REGISTER_RESUME: 'Đăng ký hồ sơ', REGISTER_SIGN: 'Đăng ký chữ ký', - REGISTER_VISA: 'Đăng ký số người nước ngoài và visa', - UPDATE_RESUME: 'Cập nhật hồ sơ', - UPDATE_SIGN: 'Cập nhật chữ ký', - UPDATE_VISA: 'Cập nhật số người nước ngoài và visa', + REGISTER_VISA: 'Đăng ký số nước ngoài và visa', + COMPLETE_RESUME: 'Hoàn thành đăng ký hồ sơ', + COMPLETE_SIGN: 'Hoàn thành đăng ký chữ ký', + COMPLETE_VISA: 'Hoàn thành đăng ký số nước ngoài và visa', MYRECRUITLIST: 'Công việc tôi đã ứng tuyển', }, }; diff --git a/src/features/employee/myPage/ButtonGroup.tsx b/src/features/myPage/employee/components/ButtonGroup.tsx similarity index 69% rename from src/features/employee/myPage/ButtonGroup.tsx rename to src/features/myPage/employee/components/ButtonGroup.tsx index 56ff9e5..6e7f470 100644 --- a/src/features/employee/myPage/ButtonGroup.tsx +++ b/src/features/myPage/employee/components/ButtonGroup.tsx @@ -5,6 +5,7 @@ import { Button, Icon, Typo } from '@/components/common'; import { useTranslation } from 'react-i18next'; import { useGetRequiredFieldCheck } from '@/apis/recruitmentsDetail/useRequiredFieldCheck'; import { type RequiredFieldCheckProps } from '@/pages/recruit/RecruitType'; +import { css } from '@emotion/react'; export default function ButtonGroup() { const { t } = useTranslation(); @@ -21,34 +22,40 @@ export default function ButtonGroup() { return ( { navigate(ROUTE_PATH.RESUME); }} + disabled={resumeExistence} > - {resumeExistence ? t('employeeMyPage.UPDATE_RESUME') : t('employeeMyPage.REGISTER_RESUME')} + {resumeExistence ? t('employeeMyPage.COMPLETE_RESUME') : t('employeeMyPage.REGISTER_RESUME')} {resumeExistence ? : } { navigate(ROUTE_PATH.REGISTERSIGN); }} + disabled={signExistence} > - {signExistence ? t('employeeMyPage.UPDATE_SIGN') : t('employeeMyPage.REGISTER_SIGN')} + {signExistence ? t('employeeMyPage.COMPLETE_SIGN') : t('employeeMyPage.REGISTER_SIGN')} {signExistence ? : } { navigate(ROUTE_PATH.REGISTER_VISA); }} + disabled={visaExistence} > {visaExistence && foreignerIdNumberExistence - ? t('employeeMyPage.UPDATE_VISA') + ? t('employeeMyPage.COMPLETE_VISA') : t('employeeMyPage.REGISTER_VISA')} {visaExistence && foreignerIdNumberExistence ? : } @@ -71,10 +78,15 @@ const ActiveButton = styled(Button)` border-radius: 0; border: 0; color: #000; +`; + +export const deactiveButtonStyle = css``; + +export const activateButtonStyle = css` + ${deactiveButtonStyle}; transition: background-color 0.3s, - background-image 0.3s; // 배경 색상과 이미지 애니메이션 - + background-image 0.3s; &:hover { * { color: #fff; diff --git a/src/features/employee/myPage/EmployeeProfile.tsx b/src/features/myPage/employee/components/EmployeeProfile.tsx similarity index 100% rename from src/features/employee/myPage/EmployeeProfile.tsx rename to src/features/myPage/employee/components/EmployeeProfile.tsx diff --git a/src/features/employee/myPage/MyRecruitCard.tsx b/src/features/myPage/employee/components/MyRecruitCard.tsx similarity index 94% rename from src/features/employee/myPage/MyRecruitCard.tsx rename to src/features/myPage/employee/components/MyRecruitCard.tsx index e363547..67a05d1 100644 --- a/src/features/employee/myPage/MyRecruitCard.tsx +++ b/src/features/myPage/employee/components/MyRecruitCard.tsx @@ -36,22 +36,23 @@ type Props = { }; type DownloadContractProps = { - imageUrl: string; - imageUrlV: string; + url: string; + urlV: string; }; export default function MyRecruitCard({ myRecruit }: Props) { const { image, title, area, status, applyId } = myRecruit; const buttonStyle = getStateStyle(status); const navigate = useNavigate(); + const { data: imgURLs } = useGetContractImg(applyId); // 근로계약서 이미지 다운로드 const downloadContract = () => { - const { data: imgURLs } = useGetContractImg(applyId); const imgData: DownloadContractProps = imgURLs; const link = document.createElement('a'); - link.href = imgData.imageUrlV; + link.href = imgData.urlV; link.download = 'downloaded_image'; + console.log(imgData); document.body.appendChild(link); link.click(); document.body.removeChild(link); @@ -59,7 +60,6 @@ export default function MyRecruitCard({ myRecruit }: Props) { return (