Skip to content

Commit

Permalink
feat: 지원서 질문 업데이트(#176)
Browse files Browse the repository at this point in the history
  • Loading branch information
geongyu09 authored Sep 1, 2024
2 parents 3162447 + debae30 commit b112ae4
Show file tree
Hide file tree
Showing 25 changed files with 126 additions and 39 deletions.
6 changes: 3 additions & 3 deletions frontend/app/application/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ import { CURRENT_GENERATION } from "@/src/constants";
import {
APPLICATION_DESIGN,
APPLICATION_NAVBAR_DESIGN,
} from "@/src/constants/application/27/designer";
} from "@/src/constants/application/28/designer";
import {
APPLICATION_DEVELOPER,
APPLICATION_NAVBAR_DEVELOPER,
} from "@/src/constants/application/27/developer";
} from "@/src/constants/application/28/developer";
import {
APPLICATION_MANAGER,
APPLICATION_NAVBAR_MANAGER,
} from "@/src/constants/application/27/manager";
} from "@/src/constants/application/28/manager";
import { useLocalStorage } from "@/src/hooks/useLocalstorage.hook";
import {
applicationDataAtom,
Expand Down
6 changes: 3 additions & 3 deletions frontend/components/applicant/DetailRight.component.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ import { applicantDataFinder } from "@/src/functions/finder";
import { JunctionApplicant } from "./Junction.component";
import { useAtom, useAtomValue } from "jotai";
import { applicantQuestionsAtom } from "@/src/stores/applicant";
import { APPLICANT_DEVELOPER } from "@/src/constants/applicant/27/developer";
import { APPLICANT_DESIGNER } from "@/src/constants/applicant/27/designer";
import { APPLICANT_MANAGER } from "@/src/constants/applicant/27/manager";
import { APPLICANT_DEVELOPER } from "@/src/constants/applicant/28/developer";
import { APPLICANT_DESIGNER } from "@/src/constants/applicant/28/designer";
import { APPLICANT_MANAGER } from "@/src/constants/applicant/28/manager";

interface ApplicantDetailRightProps {
data: ApplicantReq[];
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,13 @@ const ApplicationHorizontalLayout = ({
{applicationQuestion.subtitle && (
<div className="pl-6">
<Txt className="text-sm">{applicationQuestion.subtitle}</Txt>
{applicationQuestion.alert && (
<div className="mt-4">
<Txt className=" underline font-semibold">
⚠️ {applicationQuestion.alert}
</Txt>
</div>
)}
</div>
)}
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import type {
ApplicationQuestion,
ApplicationTimeline,
} from "@/src/constants/application/type";
import { dateSplicer } from "@/src/functions/date";
import { convertDay, dateSplicer } from "@/src/functions/date";
import TimelineRow from "./TimelineRow.component";
import { CURRENT_GENERATION } from "@/src/constants";
import { cn } from "@/src/utils/cn";
Expand All @@ -32,7 +32,11 @@ export const TimelineCell = ({
<Txt
typography="h6"
className="block pb-8"
>{`${startTime.getMonth()}${startTime.getDate()}일`}</Txt>
>{`${startTime.toLocaleDateString("ko-KR", {
month: "long",
day: "numeric",
weekday: "short",
})}`}</Txt>
<div className="w-full flex">
{dates.map((date, index) => (
<TimelineRow
Expand Down Expand Up @@ -73,14 +77,21 @@ const ApplicationTimelineLayout = ({
</div>
)}
{applicationQuestion.subtitle && (
<div className="pb-6">
<>
{applicationQuestion.subtitle.split("\n").map((line, index) => (
<Txt className="break-keep block" key={index}>
{line}
</Txt>
))}
</div>
</>
)}
<div className="py-6">
{applicationQuestion.alert && (
<Txt className="underline font-semibold">
⚠️ {applicationQuestion.alert}
</Txt>
)}
</div>
{time.map((time, index) => (
<div key={index}>
<TimelineCell
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ const TimelineRow = ({ date, isLast, index }: TimelineRowProps) => {
<span className="flex-1 border-l border-gray-300 translate-x-6 mb-8">
<Txt
className={cn("-translate-x-1/2 block w-fit -translate-y-6 h-2", {
"opacity-0": minimumIntegerDigits(date.getMinutes(), 2) === "30",
"opacity-0":
minimumIntegerDigits(date.getMinutes(), 2) === "30" && isLast,
})}
>
{dateString}
Expand Down
6 changes: 3 additions & 3 deletions frontend/components/application/applicationNode/Radio.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ import Txt from "@/components/common/Txt.component";
import {
APPLICATION_DESIGN,
APPLICATION_NAVBAR_DESIGN,
} from "@/src/constants/application/27/designer";
} from "@/src/constants/application/28/designer";
import {
APPLICATION_DEVELOPER,
APPLICATION_NAVBAR_DEVELOPER,
} from "@/src/constants/application/27/developer";
} from "@/src/constants/application/28/developer";
import {
APPLICATION_MANAGER,
APPLICATION_NAVBAR_MANAGER,
} from "@/src/constants/application/27/manager";
} from "@/src/constants/application/28/manager";
import {
ApplicationNode,
type ApplicationRadio,
Expand Down
2 changes: 1 addition & 1 deletion frontend/components/interview/modal/score/AvgScore.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import ScoreCell from "./ScoreCell";
import { Score } from "@/src/constants/applicant/27";
import { Score } from "@/src/constants/applicant/28";

interface AvgScoreProps {
totalAverage: number;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ScoreSequence } from "@/src/constants/applicant/27";
import { ScoreSequence } from "@/src/constants/applicant/28";
import AvgScore from "./AvgScore";
import InterviewerScores from "./InterviewerScore";
import { useState } from "react";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { FIELD_NAME, Score } from "@/src/constants/applicant/27";
import { FIELD_NAME, Score } from "@/src/constants/applicant/28";

interface InterviewerScoreProps {
interviewers: {
Expand Down
2 changes: 1 addition & 1 deletion frontend/components/interview/modal/score/MyScore.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Score } from "@/src/constants/applicant/27";
import { Score } from "@/src/constants/applicant/28";
import { useState } from "react";
import MyScoreForm from "./MyScoreForm";
import MyScoreViewer from "./MyScoreViewer";
Expand Down
2 changes: 1 addition & 1 deletion frontend/components/interview/modal/score/MyScoreForm.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import ScoreInput from "./ScoreInput";
import { useMutation, useQueryClient } from "@tanstack/react-query";
import { postScore, putScore } from "@/src/apis/score";
import { replacer } from "@/src/functions/replacer";
import { Score, ScoreKeyword } from "@/src/constants/applicant/27";
import { Score, ScoreKeyword } from "@/src/constants/applicant/28";
import { scoreObjectToList } from "@/src/functions/formatter";

interface MyScoreFormProps extends MyScoreProps {
Expand Down
2 changes: 1 addition & 1 deletion frontend/components/interview/modal/score/ScoreCell.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ScoreKeyword } from "@/src/constants/applicant/27";
import { ScoreKeyword } from "@/src/constants/applicant/28";

interface ScoreCellProps {
fieldName: ScoreKeyword;
Expand Down
2 changes: 1 addition & 1 deletion frontend/components/interview/modal/score/ScoreInput.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ScoreKeyword } from "@/src/constants/applicant/27";
import { ScoreKeyword } from "@/src/constants/applicant/28";

interface ScoreInputProps {
fieldName: ScoreKeyword;
Expand Down
2 changes: 1 addition & 1 deletion frontend/components/kanban/Navbar.component.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { KANBAN_MENU, KanbanMenu } from "@/src/constants/kanban/27";
import { KANBAN_MENU, KanbanMenu } from "@/src/constants/kanban/28";
import NavbarButton from "../common/navbar/Button";

const KanbanNavbar = () => {
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/constants/applicant/28/designer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export const APPLICANT_DESIGNER = [
{
id: 6,
title:
"본인이 계획하고 있는 진로가 무엇인가요?(IT 분야가 아니어도 괜찮습니다)",
"본인이 계획하고 있는 진로와 이를 위해 노력한 내용을 말씀해주세요.(IT 분야가 아니어도 괜찮습니다)",
type: "textarea",
value: { name: "future" },
} as ApplicantTextareaNode,
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/constants/applicant/28/manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export const APPLICANT_MANAGER = [
{
id: 6,
title:
"본인이 계획하고 있는 진로가 무엇인가요? (IT 분야가 아니어도 괜찮습니다.)",
"본인이 계획하고 있는 진로와 이를 위해 노력한 내용을 말씀해주세요.(IT 분야가 아니어도 괜찮습니다)",
type: "textarea",
value: { name: "future" },
} as ApplicantTextareaNode,
Expand Down
12 changes: 6 additions & 6 deletions frontend/src/constants/application/28.ts
Original file line number Diff line number Diff line change
Expand Up @@ -178,16 +178,16 @@ export const APPLICATION_TIMELINE: ApplicationTimeline = {
seperate: 30,
time: [
{
startTime: new Date(2024, 9, 23, 10, 0, 0),
endTime: new Date(2024, 9, 23, 21, 0, 0),
startTime: new Date(2024, 8, 23, 10, 0, 0),
endTime: new Date(2024, 8, 23, 20, 30, 0),
},
{
startTime: new Date(2024, 9, 24, 10, 0, 0),
endTime: new Date(2024, 9, 24, 21, 0, 0),
startTime: new Date(2024, 8, 24, 10, 0, 0),
endTime: new Date(2024, 8, 24, 20, 30, 0),
},
{
startTime: new Date(2024, 9, 25, 10, 0, 0),
endTime: new Date(2024, 9, 25, 21, 0, 0),
startTime: new Date(2024, 8, 25, 10, 0, 0),
endTime: new Date(2024, 8, 25, 20, 30, 0),
},
],
disableTime: [],
Expand Down
13 changes: 10 additions & 3 deletions frontend/src/constants/application/28/designer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
},
{
id: 6,
title: "본인이 계획하고 있는 진로가 무엇인가요?",
title: "본인이 계획하고 있는 진로와 이를 위해 노력한 내용을 말씀해주세요.",
subtitle: "IT 분야가 아니어도 괜찮습니다",
direction: "horizontal",
require: true,
Expand Down Expand Up @@ -73,6 +73,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
errorMessages: "개선하고 싶은 서비스를 서술해주세요.",
},
],
require: true,
},
{
id: 10,
Expand All @@ -88,6 +89,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
errorMessages: "협업에 있어서 중요하다고 생각되는 것을 입력해주세요.",
},
],
require: true,
},
{
id: 11,
Expand All @@ -103,6 +105,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
errorMessages: "깊게 빠져본 경험을 입력해주세요.",
},
],
require: true,
},
{
id: 12,
Expand All @@ -117,6 +120,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
errorMessages: "협업에 있어서 중요하다고 생각되는 것을 입력해주세요.",
},
],
require: true,
},
{
id: 13,
Expand All @@ -131,13 +135,15 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
errorMessages: "목표와 학습 계획을 입력해주세요.",
},
],
require: true,
},
{
id: 14,
title: "자신을 어필할 수 있는 포트폴리오를 업로드해 주세요.",
direction: "horizontal",
subtitle:
"지원자 분의 포트폴리오 링크 접근 권한을 열어주세요. 만약 접근 권한이 없을 경우 불이익이 있을 수 있습니다.",
alert: "최종 제출 후 포트폴리오 수정은 불가합니다.",
nodes: [
{
name: "portfolio",
Expand Down Expand Up @@ -181,7 +187,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
id: 16,
direction: "horizontal",
title:
"에코노베이션은 3학기 이상의 활동을 권장하고 있으며 매주 금요일 17시에는 주간발표가 있습니다.\n위 내용을 확인하셨으면 '확인했습니다'를 기입해주세요.",
"에코노베이션은 3학기 이상의 활동과 매주 금요일 17시 주간발표에 필수로 참여해야 합니다.\n위 내용을 확인하셨으면 '확인했습니다'를 기입해주세요.",
require: true,
nodes: [
{
Expand Down Expand Up @@ -224,6 +230,7 @@ export const APPLICATION_DESIGN: ApplicationQuestion[] = [
subtitle:
"면접은 오프라인으로 진행되며 지원서에 작성된 내용을 토대로 약 10분간 진행될 예정입니다.\n선택한 시간이 적을 경우, 지원자님의 면접이 임의 시간에 배정될 수 있습니다.\n면접이 가능한 시간대를 모두 선택해 주시기 바랍니다.",
direction: "timeline",
alert: "최종 제출 후 시간 변경은 불가합니다.",
require: false,
nodes: [
{
Expand All @@ -242,7 +249,7 @@ export const APPLICATION_NAVBAR_DESIGN = [
},
{
id: 6,
title: "본인이 계획하고 있는 진로가 무엇인가요?",
title: "본인이 계획하고 있는 진로와 이를 위해 노력한 내용을 말씀해주세요.",
},
{
id: 7,
Expand Down
4 changes: 3 additions & 1 deletion frontend/src/constants/application/28/developer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ export const APPLICATION_DEVELOPER: ApplicationQuestion[] = [
title: "자신을 어필할 수 있는 포트폴리오를 업로드해 주세요.",
subtitle:
"지원자 분의 포트폴리오 링크 접근 권한을 열어주세요. 만약 접근 권한이 없을 경우 불이익이 있을 수 있습니다.",
alert: "최종 제출 후 포트폴리오 수정은 불가합니다.",
direction: "horizontal",
nodes: [
{
Expand Down Expand Up @@ -172,7 +173,7 @@ export const APPLICATION_DEVELOPER: ApplicationQuestion[] = [
id: 14,
direction: "horizontal",
title:
"에코노베이션은 3학기 이상의 활동을 권장하고 있으며 매주 금요일 17시에는 주간발표가 있습니다.\n위 내용을 확인하셨으면 '확인했습니다'를 기입해주세요.",
"에코노베이션은 3학기 이상의 활동과 매주 금요일 17시 주간발표에 필수로 참여해야 합니다.\n위 내용을 확인하셨으면 '확인했습니다'를 기입해주세요.",
require: true,
nodes: [
{
Expand Down Expand Up @@ -216,6 +217,7 @@ export const APPLICATION_DEVELOPER: ApplicationQuestion[] = [
"면접은 오프라인으로 진행되며 지원서에 작성된 내용을 토대로 약 10분간 진행될 예정입니다.\n선택한 시간이 적을 경우, 지원자님의 면접이 임의 시간에 배정될 수 있습니다.\n면접이 가능한 시간대를 모두 선택해 주시기 바랍니다.",
direction: "timeline",
require: true,
alert: "최종 제출 후 시간 변경은 불가합니다.",
nodes: [
{
type: "timeline",
Expand Down
8 changes: 5 additions & 3 deletions frontend/src/constants/application/28/manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export const APPLICATION_MANAGER: ApplicationQuestion[] = [
},
{
id: 6,
title: "본인이 계획하고 있는 진로가 무엇인가요?",
title: "본인이 계획하고 있는 진로와 이를 위해 노력한 내용을 말씀해주세요.",
subtitle: "IT 분야가 아니어도 괜찮습니다.",
direction: "horizontal",
require: true,
Expand Down Expand Up @@ -145,6 +145,7 @@ export const APPLICATION_MANAGER: ApplicationQuestion[] = [
title: "자신을 어필할 수 있는 포트폴리오를 업로드해 주세요.",
subtitle:
"지원자 분의 포트폴리오 링크 접근 권한을 열어주세요. 만약 접근 권한이 없을 경우 불이익이 있을 수 있습니다.",
alert: "최종 제출 후 포트폴리오 수정은 불가합니다.",
direction: "horizontal",
nodes: [
{
Expand Down Expand Up @@ -207,7 +208,7 @@ export const APPLICATION_MANAGER: ApplicationQuestion[] = [
id: 15,
direction: "horizontal",
title:
"에코노베이션은 3학기 이상의 활동을 권장하고 있으며 매주 금요일 17시에는 주간발표가 있습니다.\n위 내용을 확인하셨으면 '확인했습니다'를 기입해주세요.",
"에코노베이션은 3학기 이상의 활동과 매주 금요일 17시 주간발표에 필수로 참여해야 합니다.\n위 내용을 확인하셨으면 '확인했습니다'를 기입해주세요.",
require: true,
nodes: [
{
Expand Down Expand Up @@ -250,6 +251,7 @@ export const APPLICATION_MANAGER: ApplicationQuestion[] = [
subtitle:
"면접은 오프라인으로 진행되며 지원서에 작성된 내용을 토대로 약 10분간 진행될 예정입니다.\n선택한 시간이 적을 경우, 지원자님의 면접이 임의 시간에 배정될 수 있습니다.\n면접이 가능한 시간대를 모두 선택해 주시기 바랍니다.",
direction: "timeline",
alert: "최종 제출 후 시간 변경은 불가합니다.",
require: false,
nodes: [
{
Expand All @@ -265,7 +267,7 @@ export const APPLICATION_NAVBAR_MANAGER = [
{ id: 5, title: "에코노베이션에 지원하게 된 계기는 무엇인가요?" },
{
id: 6,
title: "본인이 계획하고 있는 진로가 무엇인가요?",
title: "본인이 계획하고 있는 진로와 이를 위해 노력한 내용을 말씀해주세요.",
},
{
id: 7,
Expand Down
1 change: 1 addition & 0 deletions frontend/src/constants/application/type.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ type ApplicationQuestion = {
id: number;
title?: string;
subtitle?: string;
alert?: string;
require?: boolean;
direction:
| "vertical"
Expand Down
Loading

0 comments on commit b112ae4

Please sign in to comment.