fix: 거주지/장애인 상세 목록 반영
parent
2d5c549f59
commit
e21993241c
@ -1,132 +1,117 @@
|
|||||||
import Board from '../board/Board';
|
import Paper from '@mui/material/Paper';
|
||||||
import { useCallback, useEffect, useMemo, useState } from 'react';
|
import Table from '@mui/material/Table';
|
||||||
import { findJudge, findJudgeDetails } from 'apis/judge';
|
import TableBody from '@mui/material/TableBody';
|
||||||
import {
|
import TableCell, { tableCellClasses } from '@mui/material/TableCell';
|
||||||
Box,
|
import TableContainer from '@mui/material/TableContainer';
|
||||||
Checkbox,
|
import TableHead from '@mui/material/TableHead';
|
||||||
IconButton,
|
import TableRow from '@mui/material/TableRow';
|
||||||
Table,
|
import { styled } from '@mui/material/styles';
|
||||||
TableBody,
|
import { Divider, Grid } from '@mui/material';
|
||||||
TableCell,
|
import PropTypes from 'prop-types';
|
||||||
TableContainer,
|
|
||||||
TableHead,
|
|
||||||
TablePagination,
|
|
||||||
TableSortLabel,
|
|
||||||
TableRow,
|
|
||||||
Toolbar,
|
|
||||||
Tooltip,
|
|
||||||
Typography
|
|
||||||
} from '@mui/material';
|
|
||||||
import { visuallyHidden } from '@mui/utils';
|
|
||||||
|
|
||||||
// project imports
|
const StyledTableCell = styled(TableCell)(({ theme }) => ({
|
||||||
import MainCard from 'ui-component/cards/MainCard';
|
[`&.${tableCellClasses.head}`]: {
|
||||||
|
backgroundColor: theme.palette.common.black,
|
||||||
|
color: theme.palette.common.white
|
||||||
|
},
|
||||||
|
[`&.${tableCellClasses.body}`]: {
|
||||||
|
// fontSize: 14
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
const ModalJudgeDetail = ({ totData, judgeData, colNames }) => {
|
const StyledTableRow = styled(TableRow)(({ theme }) => ({
|
||||||
// const [rowData, setRowData] = useState({});
|
'&:nth-of-type(odd)': {
|
||||||
//
|
backgroundColor: theme.palette.action.hover
|
||||||
// const [totalCount, setTotalCount] = useState(0);
|
},
|
||||||
// const [rowsState, setRowsState] = useState({
|
// hide last border
|
||||||
// page: 0,
|
'&:last-child td, &:last-child th': {
|
||||||
// pageSize: 20,
|
border: 0
|
||||||
// rows: []
|
}
|
||||||
// // loading: false
|
}));
|
||||||
// });
|
|
||||||
// const [rows, setRows] = useState([]);
|
|
||||||
//
|
|
||||||
// const columns = [];
|
|
||||||
//
|
|
||||||
// const tableHeader = null;
|
|
||||||
|
|
||||||
/*
|
const ModalJudgeDetail = ({ totJudgeUserData, judgeData, simsaUser }) => {
|
||||||
const search = useCallback(() => {
|
const totLabel = ['부과', '서손', '미부과', '계'];
|
||||||
const params = {
|
|
||||||
msDatagb,
|
|
||||||
msSdate,
|
|
||||||
msEdate,
|
|
||||||
msChasu,
|
|
||||||
msuTeam
|
|
||||||
};
|
|
||||||
|
|
||||||
findJudgeDetails(params).then((response) => {
|
|
||||||
if (response && response.data) {
|
|
||||||
console.log(response.data);
|
|
||||||
const totUserList = response.data?.totUserList;
|
|
||||||
const resultList = response.data?.resultList;
|
|
||||||
setRows(() => {
|
|
||||||
resultList.map((m) => {
|
|
||||||
let result = { ...m };
|
|
||||||
const users = [...m.simsa];
|
|
||||||
delete result.simsa;
|
|
||||||
users.map((u) => {
|
|
||||||
result = { ...result, [u.NAME]: u.msResult };
|
|
||||||
return result;
|
|
||||||
});
|
|
||||||
return result;
|
|
||||||
|
|
||||||
// return users.map((u) => ({ ...result, [u.NAME]: u.msResult }));
|
|
||||||
});
|
|
||||||
Object.keys(rows[0]).forEach((k) => {
|
|
||||||
columns.push(k);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// Object.keys(gridRows[0]).forEach((k) => {
|
|
||||||
// // console.log(k, v);
|
|
||||||
// columns.push({ headerName: k, headerAlign: 'center', field: k, align: 'center' });
|
|
||||||
// });
|
|
||||||
// setColdef(columns);
|
|
||||||
|
|
||||||
// for (const k in gridRows[0]) {
|
|
||||||
// columns.push({ headerName: k, headerAlign: 'center', field: k, align: 'center' });
|
|
||||||
// }
|
|
||||||
|
|
||||||
setTotalCount(rows.length);
|
|
||||||
setRowsState((prevState) => ({ ...prevState, rows }));
|
|
||||||
// apiRef.current.forceUpdate(); // .updateRowData([]);
|
|
||||||
// apiRef.current.updateRowData([]);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}, [msDatagb, msSdate, msEdate, msChasu, msuTeam]);
|
|
||||||
*/
|
|
||||||
|
|
||||||
const init = useMemo(() => {
|
|
||||||
console.log(totData, judgeData, colNames);
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
// useEffect(() => {
|
|
||||||
// // if (isInit.current) {
|
|
||||||
// // isInit.current = false;
|
|
||||||
// // return;
|
|
||||||
// // }
|
|
||||||
// init();
|
|
||||||
// // }, [rowsState.page, rowsState.pageSize, selectedYear, searchTxt]);
|
|
||||||
// }, []);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<MainCard content={false}>
|
<Paper sx={{ width: '100%', overflow: 'hidden' }}>
|
||||||
<TableContainer>
|
<TableContainer sx={{ maxHeight: 440 }}>
|
||||||
<Table sx={{ minWidth: 650 }} size="small" aria-label="a dense table">
|
<Table stickyHeader aria-label="sticky table">
|
||||||
<TableHead>
|
<TableHead>
|
||||||
<TableRow>
|
<TableRow>
|
||||||
{colNames.map((name, idx) => (
|
{/* <StyledTableCell align="center" style={{ minWidth: 80 }} hidden> */}
|
||||||
<TableCell sx={{ pl: 3 }}>{name}</TableCell>
|
{/* 민원코드 */}
|
||||||
|
{/* </StyledTableCell> */}
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
접수번호
|
||||||
|
</StyledTableCell>
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
차량번호
|
||||||
|
</StyledTableCell>
|
||||||
|
{simsaUser.map((u) => (
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
{u.NAME}
|
||||||
|
</StyledTableCell>
|
||||||
))}
|
))}
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
결과
|
||||||
|
</StyledTableCell>
|
||||||
</TableRow>
|
</TableRow>
|
||||||
</TableHead>
|
</TableHead>
|
||||||
<TableBody>
|
<TableBody>
|
||||||
|
{/* 심사 통계 */}
|
||||||
|
{totJudgeUserData.map((totData, idx) => (
|
||||||
|
<StyledTableRow hover key={idx}>
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
{totLabel[idx]}
|
||||||
|
</StyledTableCell>
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }} />
|
||||||
|
{totData.map((data) => (
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
{data}
|
||||||
|
</StyledTableCell>
|
||||||
|
))}
|
||||||
|
</StyledTableRow>
|
||||||
|
))}
|
||||||
|
</TableBody>
|
||||||
|
<TableBody sx={{ mt: 3 }}>
|
||||||
|
<Grid item xs={12}>
|
||||||
|
<Divider />
|
||||||
|
<Divider />
|
||||||
|
</Grid>
|
||||||
|
{/* 접수번호별 심사 결과 */}
|
||||||
{judgeData.map((row) => (
|
{judgeData.map((row) => (
|
||||||
<TableRow hover key={row.scSeq}>
|
<StyledTableRow hover key={row.msSeq}>
|
||||||
<TableCell sx={{ pl: 3 }} component="th" scope="row">
|
{/* <StyledTableCell>{row.msMaincode}</StyledTableCell> */}
|
||||||
{row.scSeq}
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
</TableCell>
|
{row.msSeq}
|
||||||
<TableCell align="right">{row.scCarnum}</TableCell>
|
</StyledTableCell>
|
||||||
</TableRow>
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
{row.msCarnum}
|
||||||
|
</StyledTableCell>
|
||||||
|
|
||||||
|
{/* 심사위원별 심사결과 */}
|
||||||
|
{row.simsa.map((r) => (
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
{r.msuResult}
|
||||||
|
</StyledTableCell>
|
||||||
|
))}
|
||||||
|
|
||||||
|
{/* 최종심사결과 */}
|
||||||
|
<StyledTableCell align="center" style={{ width: 180 }}>
|
||||||
|
{row.simsa[0].msResult}
|
||||||
|
</StyledTableCell>
|
||||||
|
</StyledTableRow>
|
||||||
))}
|
))}
|
||||||
</TableBody>
|
</TableBody>
|
||||||
</Table>
|
</Table>
|
||||||
</TableContainer>
|
</TableContainer>
|
||||||
</MainCard>
|
</Paper>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
ModalJudgeDetail.propTypes = {
|
||||||
|
totJudgeUserData: PropTypes.array.isRequired,
|
||||||
|
judgeData: PropTypes.array.isRequired,
|
||||||
|
simsaUser: PropTypes.array.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
export default ModalJudgeDetail;
|
export default ModalJudgeDetail;
|
||||||
|
@ -0,0 +1,139 @@
|
|||||||
|
import Board from '../board/Board';
|
||||||
|
import { useCallback, useEffect, useMemo, useState } from 'react';
|
||||||
|
import { findJudge, findJudgeDetails } from 'apis/judge';
|
||||||
|
import {
|
||||||
|
Box,
|
||||||
|
Checkbox,
|
||||||
|
IconButton,
|
||||||
|
Table,
|
||||||
|
TableBody,
|
||||||
|
TableCell,
|
||||||
|
TableContainer,
|
||||||
|
TableHead,
|
||||||
|
TablePagination,
|
||||||
|
TableSortLabel,
|
||||||
|
TableRow,
|
||||||
|
Toolbar,
|
||||||
|
Tooltip,
|
||||||
|
Typography
|
||||||
|
} from '@mui/material';
|
||||||
|
import { visuallyHidden } from '@mui/utils';
|
||||||
|
|
||||||
|
// project imports
|
||||||
|
import MainCard from 'ui-component/cards/MainCard';
|
||||||
|
|
||||||
|
const ModalJudgeDetail = ({ totData, judgeData, simsaUser, colNames }) => {
|
||||||
|
// const [rowData, setRowData] = useState({});
|
||||||
|
//
|
||||||
|
// const [totalCount, setTotalCount] = useState(0);
|
||||||
|
// const [rowsState, setRowsState] = useState({
|
||||||
|
// page: 0,
|
||||||
|
// pageSize: 20,
|
||||||
|
// rows: []
|
||||||
|
// // loading: false
|
||||||
|
// });
|
||||||
|
// const [rows, setRows] = useState([]);
|
||||||
|
//
|
||||||
|
// const columns = [];
|
||||||
|
//
|
||||||
|
// const tableHeader = null;
|
||||||
|
|
||||||
|
/*
|
||||||
|
const search = useCallback(() => {
|
||||||
|
const params = {
|
||||||
|
msDatagb,
|
||||||
|
msSdate,
|
||||||
|
msEdate,
|
||||||
|
msChasu,
|
||||||
|
msuTeam
|
||||||
|
};
|
||||||
|
|
||||||
|
findJudgeDetails(params).then((response) => {
|
||||||
|
if (response && response.data) {
|
||||||
|
console.log(response.data);
|
||||||
|
const totUserList = response.data?.totUserList;
|
||||||
|
const resultList = response.data?.resultList;
|
||||||
|
setRows(() => {
|
||||||
|
resultList.map((m) => {
|
||||||
|
let result = { ...m };
|
||||||
|
const users = [...m.simsa];
|
||||||
|
delete result.simsa;
|
||||||
|
users.map((u) => {
|
||||||
|
result = { ...result, [u.NAME]: u.msResult };
|
||||||
|
return result;
|
||||||
|
});
|
||||||
|
return result;
|
||||||
|
|
||||||
|
// return users.map((u) => ({ ...result, [u.NAME]: u.msResult }));
|
||||||
|
});
|
||||||
|
Object.keys(rows[0]).forEach((k) => {
|
||||||
|
columns.push(k);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
// Object.keys(gridRows[0]).forEach((k) => {
|
||||||
|
// // console.log(k, v);
|
||||||
|
// columns.push({ headerName: k, headerAlign: 'center', field: k, align: 'center' });
|
||||||
|
// });
|
||||||
|
// setColdef(columns);
|
||||||
|
|
||||||
|
// for (const k in gridRows[0]) {
|
||||||
|
// columns.push({ headerName: k, headerAlign: 'center', field: k, align: 'center' });
|
||||||
|
// }
|
||||||
|
|
||||||
|
setTotalCount(rows.length);
|
||||||
|
setRowsState((prevState) => ({ ...prevState, rows }));
|
||||||
|
// apiRef.current.forceUpdate(); // .updateRowData([]);
|
||||||
|
// apiRef.current.updateRowData([]);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}, [msDatagb, msSdate, msEdate, msChasu, msuTeam]);
|
||||||
|
*/
|
||||||
|
|
||||||
|
const init = useMemo(() => {
|
||||||
|
console.log(totData, judgeData, simsaUser, colNames);
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
// useEffect(() => {
|
||||||
|
// // if (isInit.current) {
|
||||||
|
// // isInit.current = false;
|
||||||
|
// // return;
|
||||||
|
// // }
|
||||||
|
// init();
|
||||||
|
// // }, [rowsState.page, rowsState.pageSize, selectedYear, searchTxt]);
|
||||||
|
// }, []);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<MainCard content={false}>
|
||||||
|
<TableContainer>
|
||||||
|
<Table sx={{ minWidth: 850, width: 1000 }} size="small" aria-label="a dense table">
|
||||||
|
<TableHead>
|
||||||
|
<TableRow key="-1">
|
||||||
|
<TableCell sx={{ pl: 3, visibility: false }}>민원코드</TableCell>
|
||||||
|
<TableCell sx={{ pl: 3 }}>접수번호</TableCell>
|
||||||
|
<TableCell sx={{ pl: 3 }}>차량번호</TableCell>
|
||||||
|
{simsaUser.map((u, idx) => (
|
||||||
|
<TableCell sx={{ pl: 3 }}>{u.NAME}</TableCell>
|
||||||
|
))}
|
||||||
|
</TableRow>
|
||||||
|
</TableHead>
|
||||||
|
<TableBody>
|
||||||
|
{judgeData.map((row) => (
|
||||||
|
<TableRow hover key={row.msSeq}>
|
||||||
|
<TableCell sx={{ pl: 3 }} component="th" scope="row">
|
||||||
|
{row.msMaincode}
|
||||||
|
</TableCell>
|
||||||
|
<TableCell>{row.msSeq}</TableCell>
|
||||||
|
<TableCell>{row.msCarnum}</TableCell>
|
||||||
|
{row.simsa.map((r) => (
|
||||||
|
<TableCell>{r.msuResult}</TableCell>
|
||||||
|
))}
|
||||||
|
</TableRow>
|
||||||
|
))}
|
||||||
|
</TableBody>
|
||||||
|
</Table>
|
||||||
|
</TableContainer>
|
||||||
|
</MainCard>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
export default ModalJudgeDetail;
|
Loading…
Reference in New Issue