From fab5847f95aa9afb6af5eea35eebced5f15fe86b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EC=84=9D=20=EC=B5=9C?= Date: Tue, 24 Oct 2023 11:06:12 +0900 Subject: [PATCH] =?UTF-8?q?=EB=AC=B8=EB=8B=A8=20=EB=82=B4=EC=9A=A9=20?= =?UTF-8?q?=EB=B3=B4=EA=B8=B0=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94=EA=B0=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../TnDocumentContentRepository.java | 4 +- .../service/StandardCodeService.java | 2 +- .../standardCode/service/StandardCodeVO.java | 2 +- .../src/pages/standardCode/BookmarkModal.js | 66 ++++++++++++------- .../src/pages/standardCode/viewer.js | 19 ++++-- 5 files changed, 60 insertions(+), 33 deletions(-) diff --git a/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/repository/TnDocumentContentRepository.java b/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/repository/TnDocumentContentRepository.java index 32c4a7c..6776d12 100644 --- a/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/repository/TnDocumentContentRepository.java +++ b/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/repository/TnDocumentContentRepository.java @@ -10,7 +10,7 @@ import java.util.List; public interface TnDocumentContentRepository extends JpaRepository { - @Query(value = "select * from get_recent_full_context_by_content(:docCode, :contentPoint)", nativeQuery = true) - public List getRecentFullContextByContent(String docCode, String contentPoint); + @Query(value = "select * from get_recent_full_context_by_content(:docCode, :docPart)", nativeQuery = true) + public List getRecentFullContextByContent(String docCode, String docPart); } diff --git a/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeService.java b/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeService.java index 4ab137f..913b425 100644 --- a/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeService.java +++ b/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeService.java @@ -19,6 +19,6 @@ public class StandardCodeService { } public List selectStandardCodeDocument(StandardCodeVO param) { - return tnDocumentContentRepository.getRecentFullContextByContent(param.getDocCode(), param.getContentPoint()); + return tnDocumentContentRepository.getRecentFullContextByContent(param.getDocCode(), param.getDocPart()); } } diff --git a/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeVO.java b/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeVO.java index c58705c..4647fa5 100644 --- a/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeVO.java +++ b/egovframe-template-simple-backend-contribution/src/main/java/egovframework/dbnt/kcsc/standardCode/service/StandardCodeVO.java @@ -7,5 +7,5 @@ import lombok.Setter; @Setter public class StandardCodeVO { private String docCode; - private String contentPoint; + private String docPart; } diff --git a/egovframe-template-simple-react-contribution/src/pages/standardCode/BookmarkModal.js b/egovframe-template-simple-react-contribution/src/pages/standardCode/BookmarkModal.js index 1a56d31..f1b3a91 100644 --- a/egovframe-template-simple-react-contribution/src/pages/standardCode/BookmarkModal.js +++ b/egovframe-template-simple-react-contribution/src/pages/standardCode/BookmarkModal.js @@ -1,27 +1,50 @@ -import { React, useState } from "react"; +import {React, useCallback, useEffect, useState} from "react"; import Modal from "react-bootstrap/Modal"; -import Button from "react-bootstrap/Button"; import * as EgovNet from "../../api/egovFetch"; +import {VwDiv} from "./Sb.style"; -const BookmarkModal = ({state, docCode, docPart}) => { - const [show, setShow] = useState(state); +const BookmarkModal = ({docCode, docPart}) => { const [modalTitle, setModalTitle] = useState(); const [modalBody, setModalBody] = useState(); - const handleClose = () => setShow(false); - const handleShow = () => setShow(true); - /*EgovNet.requestFetch( - "", - "", - (resp) => { - setModalTitle(); - setModalBody(); - }, - (resp) => { - console.log("err response : ", resp); - } - );*/ + + const getModalContent = useCallback(() => { + EgovNet.requestFetch( + '/standardCode/getCodeDetailInfo.do', + { + method: "POST", + headers: { + 'Content-type': 'application/json' + }, + body: JSON.stringify({ + docCode: docCode, + docPart: docPart + }) + }, + (resp) => { + setModalTitle(docCode + " " + docPart); + let bodyTag = [] + if(resp.result.document.length>0){ + resp.result.document.forEach(function (item, index){ + const isTitle = item.full_content.includes(item.group_title); + bodyTag.push( + + ) + }) + } + setModalBody(bodyTag); + }, + (resp) => { + console.log("err response : ", resp); + } + ); + }) + + useEffect(() => { + getModalContent(); + }, []); + return ( - + <> {modalTitle} @@ -30,12 +53,7 @@ const BookmarkModal = ({state, docCode, docPart}) => { {modalBody} - - - - + ); } export default BookmarkModal \ No newline at end of file diff --git a/egovframe-template-simple-react-contribution/src/pages/standardCode/viewer.js b/egovframe-template-simple-react-contribution/src/pages/standardCode/viewer.js index becf828..c3dc320 100644 --- a/egovframe-template-simple-react-contribution/src/pages/standardCode/viewer.js +++ b/egovframe-template-simple-react-contribution/src/pages/standardCode/viewer.js @@ -5,6 +5,7 @@ import BookmarkModal from './BookmarkModal'; import {SbContainer, VwDiv, VwPtag} from './Sb.style' import Row from 'react-bootstrap/Row'; import Col from 'react-bootstrap/Col'; +import Modal from 'react-bootstrap/Modal'; import * as EgovNet from 'api/egovFetch'; function CodeViewer(props) { @@ -15,9 +16,12 @@ function CodeViewer(props) { const [docSummary, setDocSummary] = useState(); const [docDetail, setDocDetail] = useState(); - + const [show, setShow] = useState(false); const [bookMarkModal, setBookMarkModal] = useState(); + const handleClose = () => setShow(false); + const handleShow = () => setShow(true); + console.group("viewer"); console.log("[Start] viewer ------------------------------"); console.log("viewer [props] : ", props); @@ -118,8 +122,9 @@ function CodeViewer(props) { const docPartMap = new Map(); for(let i=0; i'+ + ''+ ''+ ''); } @@ -158,8 +163,10 @@ function CodeViewer(props) { }else{ const bookmarkList = el.getElementsByClassName("bookmark") for(let bookmark of bookmarkList){ - bookmark.onclick = () => { - setBookMarkModal()/*docCode={} docPart={}*/ + bookmark.onclick = (e) => { + handleShow(); + const params = e.currentTarget.dataset + setBookMarkModal() } } } @@ -191,7 +198,9 @@ function CodeViewer(props) { {docDetail} - {bookMarkModal} + + {bookMarkModal} + ); }