재이용실적 등록, 지도점검 등록 권한 설정 추가

This commit is contained in:
jyha00
2025-07-23 17:58:07 +09:00
parent accc3e0ef1
commit bcdefaa828
6 changed files with 28 additions and 9 deletions
@@ -44,6 +44,7 @@ import { useTranslation } from "react-i18next";
export default function Page() {
const {
auth,
code,
rainChkgdn,
rswtChkgdn,
@@ -64,6 +65,7 @@ export default function Page() {
} = useWrStore((state) => {
return state;
});
const { regAuthrtYn, mdfcnAuthrtYn, delAuthrtYn } = auth;
const [isRegExcel, setIsRegExcel] = useState(false);
const [updateRainDetail, setUpdateRainDetail] = useState<rainChkZodType[]>(
[]
@@ -301,6 +303,7 @@ export default function Page() {
onClick={() => {
clickDelete(deleteIdx, selFcltDiv);
}}
disabled={delAuthrtYn === 'N'}
>
삭제
</Button>
@@ -313,6 +316,7 @@ export default function Page() {
onClick={() => {
chkUpdateTable(selFcltDiv);
}}
disabled={mdfcnAuthrtYn === 'N'}
>
저장
</Button>
@@ -330,6 +334,7 @@ export default function Page() {
onClick={() => {
setIsRegExcel(!isRegExcel);
}}
disabled={regAuthrtYn === 'N'}
>
결과등록
</Button>
@@ -354,6 +359,7 @@ export default function Page() {
pageNation={rainPageNation}
onPageChange={rainPageChange}
pageCount={rainChkgdn.rainChkCount}
readonly={mdfcnAuthrtYn === 'N'}
/>
) : (
<RswtChkgdTable
@@ -380,6 +386,7 @@ export default function Page() {
type={selFcltDiv}
obj={isModal.data}
setIsModal={(open) => setIsModal((prev) => ({ ...prev, open }))}
readonly={mdfcnAuthrtYn === 'N' ? false : true}
/>
}
></UiModal>
@@ -38,10 +38,11 @@ import { useTranslation } from "react-i18next";
import { headMakeprfmnc } from "../chkgdnReg/TableHead";
export default function PrfmncPrfmncReg() {
const { prfmnc, prfmncHasuInit, prfmnRegData, prfmncHasuNmSearch } = useWrStore(
const { auth, prfmnc, prfmncHasuInit, prfmnRegData, prfmncHasuNmSearch } = useWrStore(
(state) => state
);
const { pbnstPrfmncHeadList, monthHeadList, prfmncRes, prfmncResCount } = prfmnc;
const { regAuthrtYn, mdfcnAuthrtYn } = auth;
const [bdstTable, setbdstTable] = useState<FcPrfType[]>();
const [searchTxt, setSearchTxt] = useState<string>();
const [isExcelOpen, setIsExcelOPen] = useState<{
@@ -92,7 +93,7 @@ export default function PrfmncPrfmncReg() {
searchYear,
pbnstRuseFcltId
) as unknown as PrfType
,searchYear
, searchYear
);
};
@@ -259,6 +260,7 @@ export default function PrfmncPrfmncReg() {
onClick={() => {
onSave();
}}
disabled={mdfcnAuthrtYn === 'N'}
>
저장
</Button>
@@ -272,6 +274,7 @@ export default function PrfmncPrfmncReg() {
setIsExcelOPen({ ...isExcelOpen, isModal: true });
}
}}
disabled={regAuthrtYn === 'N'}
>
파일등록
</Button>
@@ -321,7 +324,7 @@ export default function PrfmncPrfmncReg() {
{headMakeprfmnc(monthHeadList, [])}
</TableHeader>
<TableBody key={prfmnc.pageKey + 'pageKey'}>
{InputTableBody(inputData ?? [], monthHeadList, setInputData)}
{InputTableBody(inputData ?? [], monthHeadList, setInputData, mdfcnAuthrtYn === 'N' ? false : true)}
</TableBody>
</Table>
</ScrollArea>
+3 -1
View File
@@ -95,7 +95,8 @@ export const chRowspanTable = (
) => void,
toggleSelection: (pk: number, checked: boolean) => void,
selectedIds: number[],
handleCellClick: (index: number, headId: string) => void
handleCellClick: (index: number, headId: string) => void,
disable? : boolean
) => {
let order = 0
// rowspan된 셀 렌더링 여부 추적용
@@ -138,6 +139,7 @@ export const chRowspanTable = (
onCheckedChange={(checked) =>
toggleSelection(row.chkgdnSn, checked === true)
}
disabled={disable}
></Checkbox>
) : key === "order" ? (
++order
@@ -8,7 +8,7 @@ import { Button } from "@common/components/ui";
import React, { useEffect, useState } from "react";
import type { z } from "zod";
export default function ChkgdModal({ type, obj, setIsModal }: { type: string; obj: any, setIsModal: (open: boolean) => void }) {
export default function ChkgdModal({ type, obj, setIsModal, readonly }: { type: string; obj: any, setIsModal: (open: boolean) => void, readonly: boolean }) {
const {
rainChkgdn,
rswtChkgdn,
@@ -247,7 +247,7 @@ export default function ChkgdModal({ type, obj, setIsModal }: { type: string; ob
}
></Title>
{!rainChkSttn.isSttn ? (
<Button className="mt-8 mr-7" onClick={allDataUpdate}>
<Button className="mt-8 mr-7" onClick={allDataUpdate} disabled={!readonly}>
저장
</Button>
) : (
@@ -274,6 +274,7 @@ export default function ChkgdModal({ type, obj, setIsModal }: { type: string; ob
setChGuidData={(data) => {
setChGuidData(data);
}}
readonly={readonly}
/>
<div className="card-header">
<h3 className="text-2xl font-medium text-label">
@@ -288,6 +289,7 @@ export default function ChkgdModal({ type, obj, setIsModal }: { type: string; ob
setChGuidData={(data) => {
setChGuidData(data);
}}
readonly={readonly}
/>
{type !== "RNB" && polutionData !== undefined ? (
@@ -310,6 +312,7 @@ export default function ChkgdModal({ type, obj, setIsModal }: { type: string; ob
setChGuidData={(data) => {
getPolutionData(data);
}}
readonly={readonly}
/>
</React.Fragment>
);
@@ -17,12 +17,14 @@ export function GuideDetailsTable({
headList,
upheadList,
setChGuidData,
readonly
}: {
chgRes: any[];
headList: TableUpperProps[];
upheadList: chHeadType[];
type: string;
setChGuidData: (chgRes: any[]) => void;
readonly?: boolean;
}) {
const [inputData, setInputData] = useState<any[]>();
@@ -30,7 +32,6 @@ export function GuideDetailsTable({
setInputData(chgRes);
}, [chgRes]);
useEffect(() => {
setChGuidData(inputData ?? []);
@@ -43,7 +44,7 @@ export function GuideDetailsTable({
<Table variant="secondary">
<TableHeader className="font-bold">{headMakeprfmnc(headList, upheadList)}</TableHeader>
<TableBody >
{InputTableBody(inputData ?? [], headList, setInputData)}
{InputTableBody(inputData ?? [], headList, setInputData, readonly)}
</TableBody>
</Table>
</div>
@@ -25,6 +25,7 @@ export default function RainChkgdTable({
pageNation,
onPageChange,
pageCount,
readonly,
}: {
detailUp: (data: rainChkZodType[]) => void;
handleClick?: (data: any) => void;
@@ -33,6 +34,7 @@ export default function RainChkgdTable({
pageNation: number;
onPageChange: (page: number) => void;
pageCount: number;
readonly: boolean;
}) {
const { code, rainChkgdn, rainChkSttn, getRainSttnExcel } = useWrStore((state) => state);
const [makeTableData, setMakeTableData] = useState<any[]>([]);
@@ -191,7 +193,8 @@ export default function RainChkgdTable({
handleChange,
toggleSelection,
selectedIds,
handleCellClick
handleCellClick,
readonly
)}
</TableBody>
</Table>