Compare commits
No commits in common. "8ea8a97301e45389ada47c3cbc4207aa213b51a4" and "f502ca35240d895efe94fc09d43095555de6c97b" have entirely different histories.
8ea8a97301
...
f502ca3524
|
|
@ -37,7 +37,7 @@ function SchedulesDetail(props) {
|
||||||
const deleteBoardURL = `/admin/committee/progress-status/${drftSeq}`;
|
const deleteBoardURL = `/admin/committee/progress-status/${drftSeq}`;
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,9 +30,6 @@ const useStyles = makeStyles(() => ({
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const StyledDiv = styled.div`
|
const StyledDiv = styled.div`
|
||||||
|
|
||||||
margin-bottom: 100px;
|
|
||||||
|
|
||||||
.f_select.w_250 {
|
.f_select.w_250 {
|
||||||
@media only screen and (max-width: 768px) {
|
@media only screen and (max-width: 768px) {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
@ -51,13 +48,6 @@ const StyledDiv = styled.div`
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.right_col {
|
|
||||||
position: absolute;
|
|
||||||
right: 0px;
|
|
||||||
top: 0px;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
`;
|
`;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,11 +9,174 @@ import Paper from '@mui/material/Paper';
|
||||||
|
|
||||||
import ListSubheader from '@mui/material/ListSubheader';
|
import ListSubheader from '@mui/material/ListSubheader';
|
||||||
|
|
||||||
import * as EgovNet from 'api/egovFetch';
|
|
||||||
|
|
||||||
import ReferenceCodePopupDialogCotentsHeader from './ReferenceCodePopupDialogCotentsHeader';
|
import ReferenceCodePopupDialogCotentsHeader from './ReferenceCodePopupDialogCotentsHeader';
|
||||||
import ReferenceCodePopupDialogCotentsListItem from './ReferenceCodePopupDialogCotentsListItem';
|
import ReferenceCodePopupDialogCotentsListItem from './ReferenceCodePopupDialogCotentsListItem';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const data = [
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 00 00",
|
||||||
|
codeName: '설계기준',
|
||||||
|
depth: 1,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 10 00",
|
||||||
|
codeName: '공통편',
|
||||||
|
depth: 2,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 10 00",
|
||||||
|
codeName: '공통편',
|
||||||
|
depth: 3,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 00 00",
|
||||||
|
codeName: '공통 설계기준',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 20 00",
|
||||||
|
codeName: '지반 설계 기준',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 12 00 00",
|
||||||
|
codeName: '건설측량 설계기준',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 14 00 00",
|
||||||
|
codeName: '구조 설계기준',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 17 00 00",
|
||||||
|
codeName: '내진 설계기준',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 20 00",
|
||||||
|
codeName: '시설물편',
|
||||||
|
depth: 3,
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "TEST 17 00 00",
|
||||||
|
codeName: 'test',
|
||||||
|
depth: 4,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
]
|
||||||
|
},
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
codeTitle: "KDS 10 20 00",
|
||||||
|
codeName: '시설물편',
|
||||||
|
depth: 2,
|
||||||
|
children: [
|
||||||
|
]
|
||||||
|
},
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{ codeTitle: "KCS 20 00 00", codeName: '표준시방서', depth: 1, },
|
||||||
|
{ codeTitle: "SMCS 40 00 00", codeName: '서울시 전문시방서', depth: 1, },
|
||||||
|
{ codeTitle: "EXCS 50 00 00", codeName: '고속도로공사 전문시방서', depth: 1, },
|
||||||
|
{ codeTitle: "KRCCS 60 00 00", codeName: '농업생산기반시설 전문시방서', depth: 1, },
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
const FireNav = styled(List)({
|
const FireNav = styled(List)({
|
||||||
'& .MuiListItemButton-root': {
|
'& .MuiListItemButton-root': {
|
||||||
paddingLeft: 0,
|
paddingLeft: 0,
|
||||||
|
|
@ -31,37 +194,12 @@ const FireNav = styled(List)({
|
||||||
|
|
||||||
export default function ReferenceCodePopupDialogCotents() {
|
export default function ReferenceCodePopupDialogCotents() {
|
||||||
|
|
||||||
const [StandardCodeList, setSelectedValue] = React.useState(null);
|
const [selectedValue, setSelectedValue] = React.useState('a');
|
||||||
|
|
||||||
const [standardCodeList, setStandardCodeList] = React.useState(null);
|
|
||||||
|
|
||||||
const handleChange = (event) => {
|
const handleChange = (event) => {
|
||||||
setSelectedValue(event.target.value);
|
setSelectedValue(event.target.value);
|
||||||
};
|
};
|
||||||
|
|
||||||
React.useEffect(function () {
|
|
||||||
getStandardCodeList();
|
|
||||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
const requestOptions = {
|
|
||||||
method: "GET",
|
|
||||||
headers: {
|
|
||||||
'Content-type': 'application/json'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const getStandardCodeList = () => {
|
|
||||||
|
|
||||||
EgovNet.requestFetch(`/admin/committee/progress-status/standard-code-api/list`,
|
|
||||||
requestOptions,
|
|
||||||
function (resp) {
|
|
||||||
console.log('%o', resp);
|
|
||||||
setStandardCodeList(resp.result.items);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
@ -86,21 +224,22 @@ export default function ReferenceCodePopupDialogCotents() {
|
||||||
<FireNav
|
<FireNav
|
||||||
sx={{ my: 0, }}
|
sx={{ my: 0, }}
|
||||||
component="nav" disablePadding>
|
component="nav" disablePadding>
|
||||||
|
<ListItemButton component="a" href="#customized-list">
|
||||||
<ListItemText
|
<ListItemText
|
||||||
sx={{ my: 0 }}
|
sx={{ my: 0 }}
|
||||||
primary="문서번호 또는 코드명을 선택 하시면 하위 문서를 검색 하실 수 있습니다"
|
primary="문서번호 또는 코드명을 선택 하시면 하위 문서를 검색 하실 수 있습니다"
|
||||||
primaryTypographyProps={{
|
primaryTypographyProps={{
|
||||||
backgroundColor: '#fafafa',
|
backgroundColor: '#ffffff',
|
||||||
color: '#333333',
|
color: '#333333',
|
||||||
border: '1px solid #eaeaea',
|
border: '1px solid #333333',
|
||||||
fontSize: 15,
|
fontSize: 15,
|
||||||
fontWeight: 'bold',
|
fontWeight: 'medium',
|
||||||
letterSpacing: 0,
|
letterSpacing: 0,
|
||||||
padding: '10px',
|
padding: '10px',
|
||||||
borderRadius: '6px',
|
borderRadius: '6px',
|
||||||
marginBottom: '20px',
|
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
</ListItemButton>
|
||||||
|
|
||||||
<List
|
<List
|
||||||
sx={{ width: '100%' }}
|
sx={{ width: '100%' }}
|
||||||
|
|
@ -122,7 +261,7 @@ export default function ReferenceCodePopupDialogCotents() {
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
<ReferenceCodePopupDialogCotentsListItem
|
<ReferenceCodePopupDialogCotentsListItem
|
||||||
data={standardCodeList}
|
data={data}
|
||||||
/>
|
/>
|
||||||
</List>
|
</List>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ export default function ReferenceCodePopupDialogCotentsHeader() {
|
||||||
fontSize: ' 16px',
|
fontSize: ' 16px',
|
||||||
display: 'grid',
|
display: 'grid',
|
||||||
gridAutoFlow: 'row',
|
gridAutoFlow: 'row',
|
||||||
gridTemplateColumns: 'auto 175px 60px',
|
gridTemplateColumns: 'auto 160px 90px',
|
||||||
gap: 1,
|
gap: 1,
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
|
||||||
|
|
@ -59,10 +59,10 @@ const ItemComponent = (props) => {
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<Item
|
<Item
|
||||||
sx={{paddingLeft: `${Number(Number(item.docLevel)-1) * 20}px`,}}
|
sx={{paddingLeft: `${Number(Number(item.depth)-1) * 20}px`,}}
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
item.children && 0 < item.children.length
|
item.children && item.children.length > 0
|
||||||
?
|
?
|
||||||
<span>
|
<span>
|
||||||
{
|
{
|
||||||
|
|
@ -76,17 +76,11 @@ const ItemComponent = (props) => {
|
||||||
:
|
:
|
||||||
<span> <InsertDriveFileOutlinedIcon sx={{ color: '#777777', height: '30px;'}} /> </span>
|
<span> <InsertDriveFileOutlinedIcon sx={{ color: '#777777', height: '30px;'}} /> </span>
|
||||||
}
|
}
|
||||||
{item.groupTitle}
|
{item.codeTitle}
|
||||||
</Item>
|
</Item>
|
||||||
<Item>{item.groupNm}</Item>
|
<Item>{item.codeName}</Item>
|
||||||
<Item sx={{textAlign: 'center'}}>
|
<Item sx={{textAlign: 'center'}}>
|
||||||
{
|
|
||||||
item.children && 0 < item.children.length
|
|
||||||
?
|
|
||||||
<span>-</span>
|
|
||||||
:
|
|
||||||
<button type="button" class="btn btn_blue_h31 px-1">선택</button>
|
<button type="button" class="btn btn_blue_h31 px-1">선택</button>
|
||||||
}
|
|
||||||
</Item>
|
</Item>
|
||||||
</Box>
|
</Box>
|
||||||
</ListItemButton>
|
</ListItemButton>
|
||||||
|
|
@ -94,7 +88,6 @@ const ItemComponent = (props) => {
|
||||||
{
|
{
|
||||||
item.children &&
|
item.children &&
|
||||||
item.children.map(function(item, index) {
|
item.children.map(function(item, index) {
|
||||||
console.log('thkim 2024-03-21 11:29 %o', item);
|
|
||||||
return (
|
return (
|
||||||
<ItemComponent item={item} index={index} openSelf={open} />
|
<ItemComponent item={item} index={index} openSelf={open} />
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -1,24 +1,12 @@
|
||||||
import React, { useState, useEffect } from 'react';
|
import React, { useState, useEffect } from 'react';
|
||||||
import { Link, useLocation, useNavigate } from 'react-router-dom';
|
import { Link, useLocation, useNavigate } from 'react-router-dom';
|
||||||
|
|
||||||
import styled from "styled-components";
|
|
||||||
|
|
||||||
|
|
||||||
import * as EgovNet from 'api/egovFetch';
|
import * as EgovNet from 'api/egovFetch';
|
||||||
import URL from 'constants/url';
|
import URL from 'constants/url';
|
||||||
import CODE from 'constants/code';
|
import CODE from 'constants/code';
|
||||||
|
|
||||||
import { default as EgovLeftNav } from 'components/leftmenu/EgovLeftNavAdmin';
|
import { default as EgovLeftNav } from 'components/leftmenu/EgovLeftNavAdmin';
|
||||||
|
|
||||||
const StyledDiv = styled.div`
|
|
||||||
.right_col {
|
|
||||||
position: absolute;
|
|
||||||
right: 0px;
|
|
||||||
top: 0px;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
`;
|
|
||||||
|
|
||||||
function SchedulesDetail(props) {
|
function SchedulesDetail(props) {
|
||||||
console.group("EgovAdminScheduleDetail");
|
console.group("EgovAdminScheduleDetail");
|
||||||
console.log("[Start] EgovAdminScheduleDetail ------------------------------");
|
console.log("[Start] EgovAdminScheduleDetail ------------------------------");
|
||||||
|
|
@ -72,7 +60,7 @@ function SchedulesDetail(props) {
|
||||||
const deleteBoardURL = `/schedule/${schdulId}`;
|
const deleteBoardURL = `/schedule/${schdulId}`;
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
@ -102,7 +90,7 @@ function SchedulesDetail(props) {
|
||||||
console.log("------------------------------EgovAdminScheduleDetail [End]");
|
console.log("------------------------------EgovAdminScheduleDetail [End]");
|
||||||
console.groupEnd("EgovAdminScheduleDetail");
|
console.groupEnd("EgovAdminScheduleDetail");
|
||||||
return (
|
return (
|
||||||
<StyledDiv className="container">
|
<div className="container">
|
||||||
<div className="c_wrap">
|
<div className="c_wrap">
|
||||||
{/* <!-- Location --> */}
|
{/* <!-- Location --> */}
|
||||||
<div className="location">
|
<div className="location">
|
||||||
|
|
@ -179,7 +167,7 @@ function SchedulesDetail(props) {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</StyledDiv>
|
</div>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,6 @@ const useStyles = makeStyles(() => ({
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const StyledDiv = styled.div`
|
const StyledDiv = styled.div`
|
||||||
margin-bottom: 70px;
|
|
||||||
.org-under-id {
|
.org-under-id {
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
@media only screen and (max-width: 768px) {
|
@media only screen and (max-width: 768px) {
|
||||||
|
|
@ -52,12 +51,6 @@ const StyledDiv = styled.div`
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.right_col {
|
|
||||||
position: absolute;
|
|
||||||
right: 0px;
|
|
||||||
top: 0px;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
`;
|
`;
|
||||||
|
|
||||||
function SchedulesEdit(props) {
|
function SchedulesEdit(props) {
|
||||||
|
|
@ -259,7 +252,7 @@ function SchedulesEdit(props) {
|
||||||
}
|
}
|
||||||
if (formData.get('schdulBgnde') > formData.get('schdulEndde')) {
|
if (formData.get('schdulBgnde') > formData.get('schdulEndde')) {
|
||||||
alert("종료일시는 시작일시보다 앞 설 수 없습니다.");
|
alert("종료일시는 시작일시보다 앞 설 수 없습니다.");
|
||||||
return false;
|
//return false;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
@ -293,7 +286,7 @@ function SchedulesEdit(props) {
|
||||||
const deleteBoardURL = `/schedule/${schdulId}`;
|
const deleteBoardURL = `/schedule/${schdulId}`;
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -155,7 +155,7 @@ function CommitteeCodeMgt(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -218,7 +218,7 @@ function PopupEditor(props) {
|
||||||
const deleteBoardURL = `/contents/api/popup-manage/${popupId}`;
|
const deleteBoardURL = `/contents/api/popup-manage/${popupId}`;
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
@ -247,7 +247,7 @@ function PopupEditor(props) {
|
||||||
const deleteFileURL = `/contents/api/popup-manage/file/${fileSeq}`;
|
const deleteFileURL = `/contents/api/popup-manage/file/${fileSeq}`;
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -223,7 +223,7 @@ function StandardResearchEditor(props) {
|
||||||
const deleteBoardURL = `/contents/standard-research/${rsId}`;
|
const deleteBoardURL = `/contents/standard-research/${rsId}`;
|
||||||
|
|
||||||
const requestOptions = {
|
const requestOptions = {
|
||||||
method: "POST",
|
method: "DELETE",
|
||||||
headers: {
|
headers: {
|
||||||
'Content-type': 'application/json',
|
'Content-type': 'application/json',
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3650,11 +3650,6 @@ cjs-module-lexer@^1.0.0:
|
||||||
resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz"
|
resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz"
|
||||||
integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==
|
integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==
|
||||||
|
|
||||||
classnames@^2.2.5:
|
|
||||||
version "2.5.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.5.1.tgz#ba774c614be0f016da105c858e7159eae8e7687b"
|
|
||||||
integrity sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==
|
|
||||||
|
|
||||||
classnames@^2.2.6, classnames@^2.3.2:
|
classnames@^2.2.6, classnames@^2.3.2:
|
||||||
version "2.3.2"
|
version "2.3.2"
|
||||||
resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz"
|
resolved "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz"
|
||||||
|
|
@ -3909,11 +3904,6 @@ cosmiconfig@^7.0.0:
|
||||||
path-type "^4.0.0"
|
path-type "^4.0.0"
|
||||||
yaml "^1.10.0"
|
yaml "^1.10.0"
|
||||||
|
|
||||||
countup.js@^2.8.0:
|
|
||||||
version "2.8.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/countup.js/-/countup.js-2.8.0.tgz#64951f2df3ede28839413d654d8fef28251c32a8"
|
|
||||||
integrity sha512-f7xEhX0awl4NOElHulrl4XRfKoNH3rB+qfNSZZyjSZhaAoUk6elvhH+MNxMmlmuUJ2/QNTWPSA7U4mNtIAKljQ==
|
|
||||||
|
|
||||||
cross-spawn@^7.0.2, cross-spawn@^7.0.3:
|
cross-spawn@^7.0.2, cross-spawn@^7.0.3:
|
||||||
version "7.0.3"
|
version "7.0.3"
|
||||||
resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
|
resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz"
|
||||||
|
|
@ -4630,11 +4620,6 @@ enhanced-resolve@^5.10.0:
|
||||||
graceful-fs "^4.2.4"
|
graceful-fs "^4.2.4"
|
||||||
tapable "^2.2.0"
|
tapable "^2.2.0"
|
||||||
|
|
||||||
enquire.js@^2.1.6:
|
|
||||||
version "2.1.6"
|
|
||||||
resolved "https://registry.yarnpkg.com/enquire.js/-/enquire.js-2.1.6.tgz#3e8780c9b8b835084c3f60e166dbc3c2a3c89814"
|
|
||||||
integrity sha512-/KujNpO+PT63F7Hlpu4h3pE3TokKRHN26JYmQpPyjkRD/N57R7bPDNojMXdi7uveAKjYB7yQnartCxZnFWr0Xw==
|
|
||||||
|
|
||||||
entities@^2.0.0:
|
entities@^2.0.0:
|
||||||
version "2.2.0"
|
version "2.2.0"
|
||||||
resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz"
|
resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz"
|
||||||
|
|
@ -6890,13 +6875,6 @@ json-stable-stringify-without-jsonify@^1.0.1:
|
||||||
resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz"
|
resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz"
|
||||||
integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
|
integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
|
||||||
|
|
||||||
json2mq@^0.2.0:
|
|
||||||
version "0.2.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/json2mq/-/json2mq-0.2.0.tgz#b637bd3ba9eabe122c83e9720483aeb10d2c904a"
|
|
||||||
integrity sha512-SzoRg7ux5DWTII9J2qkrZrqV1gt+rTaoufMxEzXbS26Uid0NwaJd123HcoB80TgubEppxxIGdNxCx50fEoEWQA==
|
|
||||||
dependencies:
|
|
||||||
string-convert "^0.2.0"
|
|
||||||
|
|
||||||
json5@^1.0.2:
|
json5@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz"
|
resolved "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz"
|
||||||
|
|
@ -8585,13 +8563,6 @@ react-copy-to-clipboard@^5.1.0:
|
||||||
copy-to-clipboard "^3.3.1"
|
copy-to-clipboard "^3.3.1"
|
||||||
prop-types "^15.8.1"
|
prop-types "^15.8.1"
|
||||||
|
|
||||||
react-countup@^6.5.3:
|
|
||||||
version "6.5.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/react-countup/-/react-countup-6.5.3.tgz#e892aa3eab2d6ba9c3cdba30bf4ed6764826d848"
|
|
||||||
integrity sha512-udnqVQitxC7QWADSPDOxVWULkLvKUWrDapn5i53HE4DPRVgs+Y5rr4bo25qEl8jSh+0l2cToJgGMx+clxPM3+w==
|
|
||||||
dependencies:
|
|
||||||
countup.js "^2.8.0"
|
|
||||||
|
|
||||||
react-csv@^2.2.2:
|
react-csv@^2.2.2:
|
||||||
version "2.2.2"
|
version "2.2.2"
|
||||||
resolved "https://registry.npmjs.org/react-csv/-/react-csv-2.2.2.tgz"
|
resolved "https://registry.npmjs.org/react-csv/-/react-csv-2.2.2.tgz"
|
||||||
|
|
@ -8810,17 +8781,6 @@ react-scripts@5.0.1:
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
fsevents "^2.3.2"
|
fsevents "^2.3.2"
|
||||||
|
|
||||||
react-slick@^0.30.2:
|
|
||||||
version "0.30.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/react-slick/-/react-slick-0.30.2.tgz#b28e992f9c519bb516a0af8d37e82cb59fee08ce"
|
|
||||||
integrity sha512-XvQJi7mRHuiU3b9irsqS9SGIgftIfdV5/tNcURTb5LdIokRA5kIIx3l4rlq2XYHfxcSntXapoRg/GxaVOM1yfg==
|
|
||||||
dependencies:
|
|
||||||
classnames "^2.2.5"
|
|
||||||
enquire.js "^2.1.6"
|
|
||||||
json2mq "^0.2.0"
|
|
||||||
lodash.debounce "^4.0.8"
|
|
||||||
resize-observer-polyfill "^1.5.0"
|
|
||||||
|
|
||||||
react-smooth@^2.0.5:
|
react-smooth@^2.0.5:
|
||||||
version "2.0.5"
|
version "2.0.5"
|
||||||
resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-2.0.5.tgz"
|
resolved "https://registry.npmjs.org/react-smooth/-/react-smooth-2.0.5.tgz"
|
||||||
|
|
@ -9046,11 +9006,6 @@ requires-port@^1.0.0:
|
||||||
resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz"
|
resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz"
|
||||||
integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==
|
integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==
|
||||||
|
|
||||||
resize-observer-polyfill@^1.5.0:
|
|
||||||
version "1.5.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464"
|
|
||||||
integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==
|
|
||||||
|
|
||||||
resolve-cwd@^3.0.0:
|
resolve-cwd@^3.0.0:
|
||||||
version "3.0.0"
|
version "3.0.0"
|
||||||
resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz"
|
resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz"
|
||||||
|
|
@ -9396,11 +9351,6 @@ slash@^4.0.0:
|
||||||
resolved "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz"
|
resolved "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz"
|
||||||
integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==
|
integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==
|
||||||
|
|
||||||
slick-carousel@^1.8.1:
|
|
||||||
version "1.8.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/slick-carousel/-/slick-carousel-1.8.1.tgz#a4bfb29014887bb66ce528b90bd0cda262cc8f8d"
|
|
||||||
integrity sha512-XB9Ftrf2EEKfzoQXt3Nitrt/IPbT+f1fgqBdoxO3W/+JYvtEOW6EgxnWfr9GH6nmULv7Y2tPmEX3koxThVmebA==
|
|
||||||
|
|
||||||
sockjs@^0.3.24:
|
sockjs@^0.3.24:
|
||||||
version "0.3.24"
|
version "0.3.24"
|
||||||
resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz"
|
resolved "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz"
|
||||||
|
|
@ -9531,11 +9481,6 @@ stop-iteration-iterator@^1.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
internal-slot "^1.0.4"
|
internal-slot "^1.0.4"
|
||||||
|
|
||||||
string-convert@^0.2.0:
|
|
||||||
version "0.2.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/string-convert/-/string-convert-0.2.1.tgz#6982cc3049fbb4cd85f8b24568b9d9bf39eeff97"
|
|
||||||
integrity sha512-u/1tdPl4yQnPBjnVrmdLo9gtuLvELKsAoRapekWggdiQNvvvum+jYF329d84NAa660KQw7pB2n36KrIKVoXa3A==
|
|
||||||
|
|
||||||
string-length@^4.0.1:
|
string-length@^4.0.1:
|
||||||
version "4.0.2"
|
version "4.0.2"
|
||||||
resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz"
|
resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz"
|
||||||
|
|
|
||||||
|
|
@ -112,42 +112,4 @@ public class AdminCommitteeController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Operation(
|
|
||||||
summary = "'진행현황 관리' 페이지에서 등록 또는 수정 시 '기준코드' 목록 불러오는 API",
|
|
||||||
description = "관리자 단에서 '위원회관리' > '진행현황 관리' 페이지에서 하단 '등록' 버튼 누른 후 '기준코드'에서 보여질 기준코드 목록 불러오는 API",
|
|
||||||
tags = {"AdminCommitteeController"}
|
|
||||||
)
|
|
||||||
@ApiResponses(value = {
|
|
||||||
@ApiResponse(responseCode = "200", description = "조회 성공")
|
|
||||||
})
|
|
||||||
@GetMapping(value = "/progress-status/standard-code-api/list")
|
|
||||||
public ResultVO getCommitteeProgressStatusStandardCodeApiList(
|
|
||||||
HttpServletRequest request,
|
|
||||||
@AuthenticationPrincipal LoginVO user
|
|
||||||
)
|
|
||||||
throws Exception {
|
|
||||||
|
|
||||||
ResultVO resultVO = new ResultVO();
|
|
||||||
|
|
||||||
try {
|
|
||||||
resultVO = adminCommitteeProgressStatusService.getCommitteeProgressStatusStandardCodeApiList(resultVO, request, user);
|
|
||||||
} catch (Exception e) {
|
|
||||||
resultVO.setResultCode(ResponseCode.FAILED.getCode());
|
|
||||||
resultVO.setResultMessage(e.getMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
System.out.println(
|
|
||||||
"\n--------------------------------------------------------------\n" +
|
|
||||||
request.getRequestURI() + " OUT:" +
|
|
||||||
"\n--------------------------------------------------------------\n" +
|
|
||||||
"resultVO.toString():" + "\n" +
|
|
||||||
resultVO.toString() + "\n" +
|
|
||||||
"\n--------------------------------------------------------------\n"
|
|
||||||
);
|
|
||||||
|
|
||||||
return resultVO;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -146,7 +146,7 @@ public class SchedulesApiController {
|
||||||
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
||||||
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
|
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
|
||||||
})
|
})
|
||||||
@PostMapping(value = "/schedule/{scheduleId}")
|
@DeleteMapping(value = "/schedule/{scheduleId}")
|
||||||
public ResultVO deleteSchedule
|
public ResultVO deleteSchedule
|
||||||
(
|
(
|
||||||
@AuthenticationPrincipal LoginVO user,
|
@AuthenticationPrincipal LoginVO user,
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,5 @@ public interface AdminCommitteeProgressStatusService {
|
||||||
public ResultVO deleteCommitteeProgressStatus(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long drftSeq) throws Exception;
|
public ResultVO deleteCommitteeProgressStatus(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long drftSeq) throws Exception;
|
||||||
|
|
||||||
public ResultVO getCommitteeProgressStatusDetail(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long drftSeq) throws Exception;
|
public ResultVO getCommitteeProgressStatusDetail(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long drftSeq) throws Exception;
|
||||||
public ResultVO getCommitteeProgressStatusStandardCodeApiList(ResultVO resultVO, HttpServletRequest request, LoginVO user) throws Exception;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -17,17 +17,12 @@ import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||||
import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
import org.egovframe.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.util.StringUtils;
|
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.json.simple.JSONArray;
|
|
||||||
import org.json.simple.JSONObject;
|
|
||||||
import org.json.simple.parser.JSONParser;
|
|
||||||
|
|
||||||
@Service("adminCommitteeProgressStatusService")
|
@Service("adminCommitteeProgressStatusService")
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class AdminCommitteeProgressStatusServiceImpl extends EgovAbstractServiceImpl implements AdminCommitteeProgressStatusService {
|
public class AdminCommitteeProgressStatusServiceImpl extends EgovAbstractServiceImpl implements AdminCommitteeProgressStatusService {
|
||||||
|
|
@ -250,99 +245,4 @@ public class AdminCommitteeProgressStatusServiceImpl extends EgovAbstractService
|
||||||
return resultVO;
|
return resultVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public ResultVO getCommitteeProgressStatusStandardCodeApiList(ResultVO resultVO, HttpServletRequest request, LoginVO user) throws Exception {
|
|
||||||
|
|
||||||
System.out.println("\n--------------------------------------------------------------\n" +
|
|
||||||
request.getRequestURI() + " IN:" +
|
|
||||||
"\n--------------------------------------------------------------\n" +
|
|
||||||
"user.getEmail():" + "\n" +
|
|
||||||
user.getEmail() + "\n" +
|
|
||||||
"\n--------------------------------------------------------------\n");
|
|
||||||
long startTime = System.currentTimeMillis();
|
|
||||||
List<Map<String, Object>> standardCodeList = tnCmtDraftRepository.getCommitteeProgressStatusStandardCodeApiList();
|
|
||||||
Map<Integer, List<Map<String, Object>>> nodeMap = new HashMap<>();
|
|
||||||
|
|
||||||
// nodeMap 초기화
|
|
||||||
for (int i = 1; i <= 6; i++) {
|
|
||||||
nodeMap.put(i, new ArrayList<>());
|
|
||||||
}
|
|
||||||
|
|
||||||
// docLevel 별로 데이터 분류
|
|
||||||
for (Map<String, Object> standardCode : standardCodeList) {
|
|
||||||
int nDocLevel = (int) standardCode.get("doc_level");
|
|
||||||
nodeMap.get(nDocLevel).add(standardCode);
|
|
||||||
}
|
|
||||||
|
|
||||||
JSONArray items = buildJsonTree(nodeMap, 1, null); // 재귀 호출 시작 (루트 노드부터)
|
|
||||||
|
|
||||||
Map<String, Object> dto = new HashMap<>();
|
|
||||||
dto.put("items", items);
|
|
||||||
resultVO.setResult(dto);
|
|
||||||
resultVO.setResultCode(ResponseCode.SUCCESS.getCode());
|
|
||||||
resultVO.setResultMessage(ResponseCode.SUCCESS.getMessage());
|
|
||||||
|
|
||||||
long endTime = System.currentTimeMillis();
|
|
||||||
long elapsedTime = endTime - startTime;
|
|
||||||
System.out.println("처리 시간: " + elapsedTime + "ms");
|
|
||||||
|
|
||||||
return resultVO;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private JSONArray buildJsonTree(Map<Integer, List<Map<String, Object>>> nodeMap, int docLevel, Integer upperParentgroupSeq) {
|
|
||||||
JSONArray items = new JSONArray();
|
|
||||||
List<Map<String, Object>> currentNodes = nodeMap.get(docLevel);
|
|
||||||
|
|
||||||
for (Map<String, Object> node : currentNodes) {
|
|
||||||
Integer groupSeq = (Integer) node.get("group_seq");
|
|
||||||
Integer parentGroupSeq = (Integer) node.get("parent_group_seq");
|
|
||||||
JSONObject item = new JSONObject();
|
|
||||||
if( upperParentgroupSeq == null || upperParentgroupSeq.equals( parentGroupSeq) ) {
|
|
||||||
String kcscCd = (String)node.get("kcsc_cd");
|
|
||||||
String groupFullCd = (String) node.get("group_full_cd");
|
|
||||||
item.put("docLevel", node.get("doc_level"));
|
|
||||||
item.put("groupTitle", makeCode(kcscCd, groupFullCd, docLevel));
|
|
||||||
item.put("groupNm", node.get("group_nm"));
|
|
||||||
item.put("groupSeq", groupSeq);
|
|
||||||
if (nodeMap.containsKey(docLevel + 1)) { // 자식 노드 존재 여부 확인
|
|
||||||
item.put("children", buildJsonTree(nodeMap, docLevel + 1, groupSeq)); // 재귀 호출
|
|
||||||
} else {
|
|
||||||
item.put("children", new JSONArray());
|
|
||||||
}
|
|
||||||
|
|
||||||
items.add(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return items;
|
|
||||||
}
|
|
||||||
|
|
||||||
private String makeCode(String kcscCd, String groupFullCd, int docLevel) {
|
|
||||||
if( docLevel < 3 ) {
|
|
||||||
int codeLength = groupFullCd.length();
|
|
||||||
String firstWord = kcscCd.split(" ")[0]; // 공백을 기준으로 문자열을 분리하고 첫 번째 요소를 가져옴
|
|
||||||
|
|
||||||
if (codeLength == 2) {
|
|
||||||
return String.format("%s %s %s", firstWord, groupFullCd, "00 00");
|
|
||||||
} else {
|
|
||||||
return String.format("%s %s %s", spaceEveryTwoChars(firstWord), groupFullCd, "00");
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
return kcscCd;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String spaceEveryTwoChars(String input) {
|
|
||||||
StringBuilder result = new StringBuilder();
|
|
||||||
for (int i = 0; i < input.length(); i++) {
|
|
||||||
result.append(input.charAt(i));
|
|
||||||
if ((i + 1) % 2 == 0 && i != input.length() - 1) { // 짝수 번째 문자이고 마지막 문자가 아닌 경우
|
|
||||||
result.append(" "); // 띄어쓰기 추가
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return result.toString();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -464,7 +464,7 @@ public class AdminConfigController extends BaseController {
|
||||||
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
||||||
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
|
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
|
||||||
})
|
})
|
||||||
@PostMapping(value = "/committee-code-mgt/{orgId}")
|
@DeleteMapping(value = "/committee-code-mgt/{orgId}")
|
||||||
public ResultVO deleteSchedule
|
public ResultVO deleteSchedule
|
||||||
(
|
(
|
||||||
@AuthenticationPrincipal LoginVO user,
|
@AuthenticationPrincipal LoginVO user,
|
||||||
|
|
|
||||||
|
|
@ -167,7 +167,7 @@ public class PopUpApiController {
|
||||||
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
||||||
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"),
|
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"),
|
||||||
})
|
})
|
||||||
@PostMapping(value = "/contents/api/popup-manage/{popupId}")
|
@DeleteMapping(value = "/contents/api/popup-manage/{popupId}")
|
||||||
public ResultVO contentsApiPopUpManageDelete
|
public ResultVO contentsApiPopUpManageDelete
|
||||||
(
|
(
|
||||||
@AuthenticationPrincipal LoginVO user,
|
@AuthenticationPrincipal LoginVO user,
|
||||||
|
|
@ -282,7 +282,7 @@ public class PopUpApiController {
|
||||||
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
||||||
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"),
|
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"),
|
||||||
})
|
})
|
||||||
@PostMapping(value = "/contents/api/popup-manage/file/{fileSeq}")
|
@DeleteMapping(value = "/contents/api/popup-manage/file/{fileSeq}")
|
||||||
public ResultVO deleteFileContentsApiPopUpManage
|
public ResultVO deleteFileContentsApiPopUpManage
|
||||||
(
|
(
|
||||||
@AuthenticationPrincipal LoginVO user,
|
@AuthenticationPrincipal LoginVO user,
|
||||||
|
|
|
||||||
|
|
@ -164,7 +164,7 @@ public class AdminStandardResearchController {
|
||||||
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
@ApiResponse(responseCode = "200", description = "등록 성공"),
|
||||||
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"),
|
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님"),
|
||||||
})
|
})
|
||||||
@PostMapping(value = "/contents/standard-research/{rsId}")
|
@DeleteMapping(value = "/contents/standard-research/{rsId}")
|
||||||
public ResultVO contentsStandardResearchDelete
|
public ResultVO contentsStandardResearchDelete
|
||||||
(
|
(
|
||||||
@AuthenticationPrincipal LoginVO user,
|
@AuthenticationPrincipal LoginVO user,
|
||||||
|
|
|
||||||
|
|
@ -282,26 +282,4 @@ public interface TnCmtDraftRepository extends JpaRepository<TnCmtDraft, Long> {
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
@Query(value =
|
|
||||||
"select\n" +
|
|
||||||
" tdg.group_seq,\n" +
|
|
||||||
" tdg.kcsc_cd,\n" +
|
|
||||||
" tdg.group_cur_cd,\n" +
|
|
||||||
" tdg.group_nm,\n" +
|
|
||||||
" tdg.group_full_cd,\n" +
|
|
||||||
" tdg.doc_level,\n" +
|
|
||||||
" tdg.parent_group_seq\n" +
|
|
||||||
"from\n" +
|
|
||||||
" tn_document_group tdg\n" +
|
|
||||||
" left join tc_code_item tci on tdg.item_cd = tci.item_cd\n" +
|
|
||||||
"where\n" +
|
|
||||||
" tdg.use_yn = 'Y' and\n" +
|
|
||||||
" tdg.item_cd <> '00'\n" +
|
|
||||||
"order by \n" +
|
|
||||||
" tdg.group_full_cd\n" +
|
|
||||||
"limit 10000",
|
|
||||||
nativeQuery = true)
|
|
||||||
List<Map<String, Object>> getCommitteeProgressStatusStandardCodeApiList( );
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,6 @@ Globals.Allow.Origin = http://localhost:3000
|
||||||
spring.devtools.livereload.enabled=true
|
spring.devtools.livereload.enabled=true
|
||||||
#Datasource Configuration
|
#Datasource Configuration
|
||||||
spring.sql.init.encoding=utf-8
|
spring.sql.init.encoding=utf-8
|
||||||
|
|
||||||
spring.servlet.multipart.max-file-size=20MB
|
|
||||||
spring.servlet.multipart.max-request-size=50MB
|
|
||||||
|
|
||||||
#maximum-pool-size: CPU core count
|
#maximum-pool-size: CPU core count
|
||||||
spring.datasource.hikari.maximum-pool-size=4
|
spring.datasource.hikari.maximum-pool-size=4
|
||||||
#postgresql
|
#postgresql
|
||||||
|
|
|
||||||
|
|
@ -1,44 +0,0 @@
|
||||||
# ??? ? ?? ?? properties ?? ?? ? ?? ??.
|
|
||||||
|
|
||||||
# Access-Control-Allow-Origin
|
|
||||||
Globals.Allow.Origin = https://back.dbnt.co.kr
|
|
||||||
|
|
||||||
server.port=50688
|
|
||||||
|
|
||||||
spring.devtools.livereload.enabled=false
|
|
||||||
server.error.path=/errors
|
|
||||||
|
|
||||||
logging.level.org.apache.tomcat: info
|
|
||||||
logging.level.org.apache.catalina: info
|
|
||||||
|
|
||||||
spring.servlet.multipart.max-file-size=20MB
|
|
||||||
spring.servlet.multipart.max-request-size=50MB
|
|
||||||
|
|
||||||
#Datasource Configuration
|
|
||||||
spring.sql.init.encoding=utf-8
|
|
||||||
#maximum-pool-size: CPU core count
|
|
||||||
spring.datasource.hikari.maximum-pool-size=4
|
|
||||||
#postgresql
|
|
||||||
spring.datasource.driverClassName=org.postgresql.Driver
|
|
||||||
spring.datasource.url=jdbc:postgresql://127.0.0.1:5432/kcsc
|
|
||||||
spring.datasource.username=dbnt0031
|
|
||||||
spring.datasource.password=dbnt0928!
|
|
||||||
|
|
||||||
#jpa
|
|
||||||
spring.jpa.show-sql=false
|
|
||||||
spring.jpa.generate-ddl=false
|
|
||||||
spring.jpa.hibernate.naming.physical-strategy = org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
|
|
||||||
spring.jpa.properties.hibernate.proc.param_null_passing=true
|
|
||||||
|
|
||||||
# MyBatis
|
|
||||||
mybatis.mapper-locations: mybatisMapper/*.xml
|
|
||||||
mybatis.configuration.map-underscore-to-camel-case=true
|
|
||||||
mybatis.type-aliases-package=com.dbnt.kcscbackend.**.entity
|
|
||||||
logging.level.com.atoz_develop.mybatissample.repository=info
|
|
||||||
|
|
||||||
# File Config
|
|
||||||
Globals.posblAtchFileSize=5242880
|
|
||||||
Globals.fileStorePath=/kcscUploadFiles
|
|
||||||
Globals.addedOptions=false
|
|
||||||
|
|
||||||
kcsc.opensearch.url=http://192.168.0.89:8090
|
|
||||||
|
|
@ -12,9 +12,6 @@ server.error.path=/errors
|
||||||
logging.level.org.apache.tomcat: info
|
logging.level.org.apache.tomcat: info
|
||||||
logging.level.org.apache.catalina: info
|
logging.level.org.apache.catalina: info
|
||||||
|
|
||||||
spring.servlet.multipart.max-file-size=20MB
|
|
||||||
spring.servlet.multipart.max-request-size=50MB
|
|
||||||
|
|
||||||
#Datasource Configuration
|
#Datasource Configuration
|
||||||
spring.sql.init.encoding=utf-8
|
spring.sql.init.encoding=utf-8
|
||||||
#maximum-pool-size: CPU core count
|
#maximum-pool-size: CPU core count
|
||||||
|
|
|
||||||
|
|
@ -11,9 +11,6 @@ server.error.path=/errors
|
||||||
logging.level.org.apache.tomcat: info
|
logging.level.org.apache.tomcat: info
|
||||||
logging.level.org.apache.catalina: info
|
logging.level.org.apache.catalina: info
|
||||||
|
|
||||||
spring.servlet.multipart.max-file-size=20MB
|
|
||||||
spring.servlet.multipart.max-request-size=50MB
|
|
||||||
|
|
||||||
#Datasource Configuration
|
#Datasource Configuration
|
||||||
spring.sql.init.encoding=utf-8
|
spring.sql.init.encoding=utf-8
|
||||||
#maximum-pool-size: CPU core count
|
#maximum-pool-size: CPU core count
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue