Compare commits

..

No commits in common. "b5003f30d288e57ee23caae1f5396f8f180be215" and "3bf8cb065af0d50aa7f6de48bb19bd0473a70a88" have entirely different histories.

13 changed files with 25 additions and 90 deletions

View File

@ -46,11 +46,6 @@
.code_list .result .List_Codes >div:nth-child(7){
font-size: 14px;
}
.standard_code_modal .head >span:nth-child(1),.standard_code_modal .result .list_item >div:nth-child(1){width: 12%;}
.standard_code_modal .head >span:nth-child(2),.standard_code_modal .result .list_item >div:nth-child(2){width: 15%;}
.standard_code_modal .head >span:nth-child(3),.standard_code_modal .result .list_item >div:nth-child(3){width: 10%;}
.standard_code_result{
max-height: 520px;
overflow-y: auto;

View File

@ -5,7 +5,7 @@ import Row from "react-bootstrap/Row";
import * as EgovNet from "api/egovFetch";
function DownloadModal({closeFn}){
function DownloadModal({size, show, onHide,}){
const [tab, setTab] = useState(10);
const [subTabsVisible, setSubTabsVisible] = useState(false);
const [listData, setListData] = useState([]);
@ -28,7 +28,7 @@ function DownloadModal({closeFn}){
}, [tab]);
return(
<>
<Modal size={size} show={show} onHide={onHide}>
<Modal.Header closeButton>
<Modal.Title id="example-modal-sizes-title-lg">통합다운로드</Modal.Title>
</Modal.Header>
@ -57,18 +57,18 @@ function DownloadModal({closeFn}){
<Nav.Item><Nav.Link className={`${tab === 90 ? 'active' : ''}`} onClick={() => {setTab(90)}}>K-Water</Nav.Link></Nav.Item>
</Nav>
)}
<div className="board_list standard_code_modal download_list">
<div className="board_list code_list">
<div className="head">
<span>구분</span>
<span>코드</span>
<span>다운로드</span>
</div>
<div className={"result"}>
<div className={"result download_list"}>
{listData.filter(item => {
return item;
}).map(item => {
return (
<div className="list_item">
<div className="list_item List_Codes">
<div className="mainCategory">{item.groupNm}</div>
<div className="middleCategory">{item.groupCurCd}</div>
<div className="kcscCd">
@ -80,8 +80,8 @@ function DownloadModal({closeFn}){
</div>
</div>
</Modal.Body>
<Modal.Footer><Button onClick={closeFn}>닫기</Button></Modal.Footer>
</>
<Modal.Footer><Button onClick={onHide}>닫기</Button></Modal.Footer>
</Modal>
)
}

View File

@ -1,47 +0,0 @@
import React, {useEffect, useState} from "react";
import {Button, Modal, Nav} from "react-bootstrap";
import Col from "react-bootstrap/Col";
import Row from "react-bootstrap/Row";
import * as EgovNet from "api/egovFetch";
function HistoryModal({closeFn, standardCode}){
return(
<>
<Modal.Header closeButton>
<Modal.Title id="example-modal-sizes-title-lg">개정이력</Modal.Title>
</Modal.Header>
<Modal.Body>
<div>코드 : {standardCode.kcscCd}</div>
<div className="board_list standard_code_modal">
<div className="head">
<span>고시일</span>
<span>기준코드</span>
<span>신구건설기준비교</span>
</div>
<div className={"result"}>
{standardCode.historyList.filter(history => {
return history;
}).map(history => {
return (
<div className="list_item">
<div className="mainCategory">{history.rvsnYmd.split('T')[0]}</div>
<div className="middleCategory">
<Button size={"sm"} variant={"outline-secondary"}>다운로드</Button>
</div>
<div className="kcscCd">
<Button size={"sm"} variant={"outline-secondary"}>다운로드</Button>
</div>
</div>
)
})}
</div>
</div>
</Modal.Body>
<Modal.Footer><Button onClick={closeFn}>닫기</Button></Modal.Footer>
</>
)
}
export default HistoryModal;

View File

@ -4,11 +4,7 @@ import Row from "react-bootstrap/Row";
import FavoriteIcon from "./FavoriteIcon";
import Button from "react-bootstrap/Button";
function StandardCodeList({listData, filterData, getHistoryModal}) {
function historyBtn(item){
getHistoryModal(item);
}
function StandardCodeList({listData, filterData}) {
return (
<div className={"result standard_code_result"}>
@ -25,7 +21,7 @@ function StandardCodeList({listData, filterData, getHistoryModal}) {
<div className="kcscCd">{item.kcscCd}</div>
<div className="groupNm">{item.groupNm}<br/><span className={"text-danger"}>{item.rvsnRemark}</span></div>
<div className="Revisionhistory">
<Button size={"sm"} variant={"outline-secondary"} onClick={()=>{historyBtn(item)}}>개정 이력</Button>
<Button size={"sm"} variant={"outline-secondary"}>개정 이력</Button>
</div>
<div className="fille">
<Row className={"justify-content-start"}>
@ -45,9 +41,7 @@ function StandardCodeList({listData, filterData, getHistoryModal}) {
className={buttonClass}
value={history.docEr==='E'?'제':'개'}
onClick={()=>{
const rvsnYmd = new Date(history.rvsnYmd)
rvsnYmd.setHours(rvsnYmd.getHours()+9)
window.open("/standardCode/viewer/"+history.kcscCd+":"+rvsnYmd.toISOString().split('T')[0]);
window.open("/standardCode/viewer/"+history.kcscCd+":"+history.rvsnYmd.split('T')[0]);
}}
/>
<br/>

View File

@ -7,8 +7,6 @@ import StandardCodeSearchForm from "./StandardCodeSearchForm";
import Loading from "components/Loading";
import StandardCodeList from "./StandardCodeList";
import URL from "constants/url";
import Modal from "react-bootstrap/Modal";
import HistoryModal from "./HistoryModal";
function StandardCodePage({}) {
const {listCode} = useParams();
@ -17,7 +15,6 @@ function StandardCodePage({}) {
const [filterData, setFilterData] = useState('');
const [resultCnt, setResultCnt] = useState(0);
const [remarkCnt, setRemarkCnt] = useState(0);
const [modalContent, setModalContent] = useState([]);
const [show, setShow] = useState(false);
function close() {
@ -48,13 +45,8 @@ function StandardCodePage({}) {
function downloadModal(){
setShow(true);
setModalContent(<DownloadModal closeFn={close}/>)
}
function historyModal(item){
setShow(true);
setModalContent(<HistoryModal closeFn={close} standardCode={item}/>)
}
return (
<div className="">
@ -88,13 +80,11 @@ function StandardCodePage({}) {
</div>
{
listLoading?(<Loading/>):(
<StandardCodeList listData={listData} filterData={filterData} getHistoryModal={historyModal}/>
<StandardCodeList listData={listData} filterData={filterData}/>
)
}
</div>
<Modal size={"lg"} show={show} onHide={close}>
{modalContent}
</Modal>
<DownloadModal size={"lg"} show={show} onHide={close}/>
</div>
</div>
</div>

View File

@ -1,7 +1,7 @@
import React, { useState, useEffect, useCallback } from 'react';
import { useLocation, useParams } from 'react-router-dom';
import SbItem from './SbItem'
import Loading from 'components/Loading'
import Loading from '../../../components/Loading'
import BookmarkModal from './BookmarkModal';
import {SbContainer} from './Sb.style'
import {VwDiv, VwPtag} from './Vw.style'
@ -10,9 +10,9 @@ import Row from 'react-bootstrap/Row';
import Col from 'react-bootstrap/Col';
import Modal from 'react-bootstrap/Modal';
import * as EgovNet from 'api/egovFetch';
import {getLocalItem} from "utils/storage";
import CODE from "constants/code";
import {parseJwt} from "utils/parseJwt";
import {getLocalItem} from "../../../utils/storage";
import CODE from "../../../constants/code";
import {parseJwt} from "../../../utils/parseJwt";
function CodeViewer(props) {
const [treeLoading, setTreeLoading] = useState(true);
@ -94,12 +94,15 @@ function CodeViewer(props) {
const getCodeInfo = useCallback((docCode) => {
console.groupCollapsed("EgovMain.getCodeInfo()");
EgovNet.requestFetch(
'/standardCode/code-info?docCode='+docCode,
'/standardCode/getCodeInfo.do',
{
method: "GET",
method: "POST",
headers: {
'Content-type': 'application/json'
}
},
body: JSON.stringify({
docCode: docCode
})
},
(resp) => {
const docInfo = resp.result.docInfo;

View File

@ -110,7 +110,7 @@ import AdminLogsFileDownloadStatus from 'pages/admin/logs/FileDownloadStatus';
//
import CodeViewer from 'pages/standardCode/viewer/CodeViewer';
import CodeViewer from 'pages/standardCode/viewer/viewer';
import StandardCodePage from "../pages/standardCode/list/StandardCodePage";
import StandardCodeInfo from "../pages/standardCode/info/StandardCodeInfo";

View File

@ -99,8 +99,8 @@ public class StandardCodeController extends BaseController {
@ApiResponse(responseCode = "200", description = "조회 성공"),
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
})
@GetMapping(value = "/code-info", consumes = MediaType.APPLICATION_JSON_VALUE)
public ResultVO getCodeInfo(StandardCodeVO param, @AuthenticationPrincipal LoginVO user)
@PostMapping(value = "/getCodeInfo.do", consumes = MediaType.APPLICATION_JSON_VALUE)
public ResultVO getCodeInfo(@RequestBody StandardCodeVO param, @AuthenticationPrincipal LoginVO user)
throws Exception {
ResultVO resultVO = new ResultVO();
Map<String, Object> resultMap = new HashMap<>();