Merge branch 'iipbs/as/dev'

This commit is contained in:
2026-09-28 11:20:57 +09:00
5 changed files with 27 additions and 21 deletions
@@ -7,15 +7,7 @@ import { SectionCollapsible } from "@/shared/ui";
import { Field, FieldError, FieldGroup } from "@/shared/ui/field";
import { findCodeLabel, useCodeList } from "@/entities/code";
import { type BnsApplyData, BnsPickerDialog } from "@/widgets/bns-picker";
import {
Button,
Input,
Table,
TableCell,
TableHead,
TableHeader,
TableRow,
} from "@common/components";
import { Input, Table, TableCell, TableHead, TableHeader, TableRow } from "@common/components";
import type { DesignCnstnRegistFormData } from "../../lib/design-cnstn-regist-schema";
@@ -69,9 +61,9 @@ function BasicInfoFormSection() {
aria-invalid={fieldState.invalid}
className="w-[40rem]"
/>
<Button type="button" onClick={() => setIsPickerOpen(true)}>
{/* <Button type="button" onClick={() => setIsPickerOpen(true)}>
사업찾기
</Button>
</Button> */}
</div>
<FieldError errors={[fieldState.error]} />
</Field>
@@ -48,8 +48,8 @@ export const REVIEW_STEP_CODES: ReviewStepCode[] = ["LOCAL", "ENV", "KECO"];
export const CHECKLIST_TAB_LABELS: Record<ReviewStepCode, string> = {
LOCAL: "자가체크",
ENV: "기술검토",
KECO: "환경청검토",
ENV: "환경청검토",
KECO: "기술검토",
};
export const REVIEW_STEP_LABELS: Record<ReviewStepCode, string> = {
@@ -50,8 +50,8 @@ export const REVIEW_STEP_CODES: ReviewStepCode[] = ["LOCAL", "ENV", "KECO"];
export const CHECKLIST_TAB_LABELS: Record<ReviewStepCode, string> = {
LOCAL: "자가체크",
ENV: "기술검토",
KECO: "환경청검토",
ENV: "환경청검토",
KECO: "기술검토",
};
export const REVIEW_STEP_LABELS: Record<ReviewStepCode, string> = {
@@ -44,8 +44,8 @@ export const REVIEW_STEP_CODES: ReviewStepCode[] = ["LOCAL", "ENV", "KECO"];
export const CHECKLIST_TAB_LABELS: Record<ReviewStepCode, string> = {
LOCAL: "자가체크",
ENV: "기술검토",
KECO: "환경청검토",
ENV: "환경청검토",
KECO: "기술검토",
};
export const REVIEW_STEP_LABELS: Record<ReviewStepCode, string> = {
@@ -57,6 +57,7 @@ function SewerBscPlanApplyDialog({ open, onOpenChange, onConfirm }: SewerBscPlan
const [sewerBscPlanSeComCd, setSewerBscPlanSeComCd] = useState("");
const [taskSeComCd, setTaskSeComCd] = useState("");
const canSidoGugunSelectable = userInfo?.dtlInstCd !== "ROLE_USER05";
const sidoFilterUserInfo =
userInfo?.dtlInstCd === "ROLE_USER04" || userInfo?.dtlInstCd === "ROLE_USER05"
? userInfo
@@ -73,13 +74,26 @@ function SewerBscPlanApplyDialog({ open, onOpenChange, onConfirm }: SewerBscPlan
useEffect(() => {
if (!open) return;
setSidoComCd("");
setSggComCd("");
setSewerBscPlanSeComCd("");
setTaskSeComCd("");
}, [open]);
const canSidoGugunSelectable = userInfo?.dtlInstCd !== "ROLE_USER05";
if (!canSidoGugunSelectable) return;
setSidoComCd("");
setSggComCd("");
}, [open, canSidoGugunSelectable]);
useEffect(() => {
if (canSidoGugunSelectable || sidoOptions.length === 0) return;
const nextSidoComCd = sidoOptions[0].adstDstrCd;
setSidoComCd((current) => (current === nextSidoComCd ? current : nextSidoComCd));
}, [canSidoGugunSelectable, sidoOptions]);
useEffect(() => {
if (canSidoGugunSelectable || !sidoComCd || gugunOptions.length === 0) return;
const nextSggComCd = gugunOptions[0].adstDstrCd;
setSggComCd((current) => current || nextSggComCd);
}, [canSidoGugunSelectable, sidoComCd, gugunOptions]);
const canConfirm =
!!sewerBscPlanSeComCd && !!taskSeComCd && (!canSidoGugunSelectable || !!sidoComCd);