중간저장
parent
dc0046a3c1
commit
52e6aed96e
|
|
@ -12,15 +12,16 @@
|
||||||
"@mui/icons-material": "^5.15.6",
|
"@mui/icons-material": "^5.15.6",
|
||||||
"@mui/material": "^5.14.19",
|
"@mui/material": "^5.14.19",
|
||||||
"@mui/styles": "^5.15.3",
|
"@mui/styles": "^5.15.3",
|
||||||
|
"apexcharts": "^3.45.2",
|
||||||
"bootstrap": "^5.3.2",
|
"bootstrap": "^5.3.2",
|
||||||
"date-fns": "^3.2.0",
|
"date-fns": "^3.2.0",
|
||||||
"qs": "^6.11.0",
|
|
||||||
"prop-types": "^15.8.1",
|
"prop-types": "^15.8.1",
|
||||||
|
"qs": "^6.11.0",
|
||||||
"react": "^18.2.0",
|
"react": "^18.2.0",
|
||||||
"react-apexcharts": "^1.4.0",
|
"react-apexcharts": "^1.4.0",
|
||||||
"react-bootstrap": "^2.9.0",
|
"react-bootstrap": "^2.9.0",
|
||||||
"react-csv": "^2.2.2",
|
|
||||||
"react-copy-to-clipboard": "^5.1.0",
|
"react-copy-to-clipboard": "^5.1.0",
|
||||||
|
"react-csv": "^2.2.2",
|
||||||
"react-datepicker": "^4.8.0",
|
"react-datepicker": "^4.8.0",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.2.0",
|
||||||
"react-element-to-jsx-string": "^15.0.0",
|
"react-element-to-jsx-string": "^15.0.0",
|
||||||
|
|
|
||||||
|
|
@ -6,10 +6,14 @@ import URL from 'constants/url';
|
||||||
import {StandardCodeListModal, StandardCodeListModalTable} from './StandardCodeListModal'
|
import {StandardCodeListModal, StandardCodeListModalTable} from './StandardCodeListModal'
|
||||||
import {AiFillFileMarkdown, AiFillStar} from "react-icons/ai";
|
import {AiFillFileMarkdown, AiFillStar} from "react-icons/ai";
|
||||||
import StandardCodeSearchForm from "./StandardCodeSearchForm";
|
import StandardCodeSearchForm from "./StandardCodeSearchForm";
|
||||||
|
import Col from "react-bootstrap/Col";
|
||||||
|
import Row from "react-bootstrap/Row";
|
||||||
|
import Loading from "../../../components/Loading";
|
||||||
|
|
||||||
function StandardCodeList({}) {
|
function StandardCodeList({}) {
|
||||||
const {listCode} = useParams();
|
const {listCode} = useParams();
|
||||||
const [listData, setListData] = useState([])
|
const [listData, setListData] = useState([])
|
||||||
|
const [listLoading, setListLoading] = useState(true);
|
||||||
const [filterData, setFilterData] = useState('');
|
const [filterData, setFilterData] = useState('');
|
||||||
const [resultCnt, setResultCnt] = useState(0);
|
const [resultCnt, setResultCnt] = useState(0);
|
||||||
const [remarkCnt, setRemarkCnt] = useState(0);
|
const [remarkCnt, setRemarkCnt] = useState(0);
|
||||||
|
|
@ -39,7 +43,6 @@ function StandardCodeList({}) {
|
||||||
const body = [];
|
const body = [];
|
||||||
const head = [];
|
const head = [];
|
||||||
if (resp.length > 0) {
|
if (resp.length > 0) {
|
||||||
|
|
||||||
resp.forEach(function (item, index) {
|
resp.forEach(function (item, index) {
|
||||||
const formattedDate = item.aplcnBgngYmd.match(/\d{4}-\d{2}-\d{2}/)[0];
|
const formattedDate = item.aplcnBgngYmd.match(/\d{4}-\d{2}-\d{2}/)[0];
|
||||||
const url = "https://www.kcsc.re.kr/file/DownloadGrp/" + item.docFileGrpId;
|
const url = "https://www.kcsc.re.kr/file/DownloadGrp/" + item.docFileGrpId;
|
||||||
|
|
@ -66,7 +69,7 @@ function StandardCodeList({}) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const retrieveList = useCallback((searchCondition) => {
|
const retrieveList = useCallback((searchCondition) => {
|
||||||
if(searchCondition?.tab){
|
setListLoading(true)
|
||||||
EgovNet.requestFetch('/standardCode/standard-code-list'+EgovNet.convParams(searchCondition),
|
EgovNet.requestFetch('/standardCode/standard-code-list'+EgovNet.convParams(searchCondition),
|
||||||
{
|
{
|
||||||
method: "GET",
|
method: "GET",
|
||||||
|
|
@ -78,31 +81,34 @@ function StandardCodeList({}) {
|
||||||
setListData(resp.result.resultList);
|
setListData(resp.result.resultList);
|
||||||
setResultCnt(resp.result.resultCnt.allCnt);
|
setResultCnt(resp.result.resultCnt.allCnt);
|
||||||
setRemarkCnt(resp.result.resultCnt.remarkCnt);
|
setRemarkCnt(resp.result.resultCnt.remarkCnt);
|
||||||
|
setListLoading(false)
|
||||||
},
|
},
|
||||||
function (resp) {
|
function (resp) {
|
||||||
console.log("err response : ", resp);
|
console.log("err response : ", resp);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
|
||||||
|
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="StandardCodeList container">
|
<div className="StandardCodeList container">
|
||||||
<div className="c_wrap codeListContent">
|
<div className="c_wrap codeListContent">
|
||||||
<div className="layout">
|
<div className="layout">
|
||||||
<div className="contents NOTICE_LIST listTableDiv">
|
<div className="contents NOTICE_LIST listTableDiv">
|
||||||
<StandardCodeSearchForm param={listCode} reloadFunction={retrieveList} resultCnt={resultCnt} remarkCnt={remarkCnt}/>
|
<StandardCodeSearchForm param={listCode?listCode:'10'} reloadFunction={retrieveList} resultCnt={resultCnt} remarkCnt={remarkCnt}/>
|
||||||
<div className="board_list code_list">
|
<div className="board_list code_list">
|
||||||
<div className="head">
|
<div className="head">
|
||||||
<span>대분류</span>
|
<span>대분류</span>
|
||||||
<span>중분류</span>
|
<span>중분류</span>
|
||||||
<span>코드번호</span>
|
<span>코드번호</span>
|
||||||
<span>코드명</span>
|
<span>코드명</span>
|
||||||
<span>개정이력</span>
|
<span className={"text-start"}>개정이력</span>
|
||||||
<span>보기</span>
|
<span className={"text-start"}>보기</span>
|
||||||
<span>즐겨찾기</span>
|
<span>즐겨찾기</span>
|
||||||
</div>
|
</div>
|
||||||
|
{
|
||||||
|
listLoading?(<Loading/>):(
|
||||||
<div className="result">
|
<div className="result">
|
||||||
{listData.filter(item => {
|
{listData.filter(item => {
|
||||||
if (item.groupNm.includes(filterData)) {
|
if (item.groupNm.includes(filterData)) {
|
||||||
|
|
@ -116,13 +122,69 @@ function StandardCodeList({}) {
|
||||||
<div className="middleCategory">{item.middleCategory}</div>
|
<div className="middleCategory">{item.middleCategory}</div>
|
||||||
<div className="kcscCd">{item.kcscCd}</div>
|
<div className="kcscCd">{item.kcscCd}</div>
|
||||||
<div className="groupNm">{item.groupNm}<br/><span className={"text-danger"}>{item.rvsnRemark}</span></div>
|
<div className="groupNm">{item.groupNm}<br/><span className={"text-danger"}>{item.rvsnRemark}</span></div>
|
||||||
<div className="Revisionhistory"><a className="vieweratag" onClick={showHandling} data-groupSeq={item.groupSeq}>개정이력</a></div>
|
<div className="Revisionhistory">
|
||||||
<div className="fille"><a className="vieweratag" href={"/standardCode/viewer/" + item.kcscCd}>내용보기</a></div>
|
<Row className={"justify-content-start"}>
|
||||||
|
{item.historyList.filter(history => {
|
||||||
|
return history;
|
||||||
|
}).map(history => {
|
||||||
|
let buttonClass = "btn btn-sm docInfoBtn docInfoActive "
|
||||||
|
let pClass = "yearInfo yearInfoActive";
|
||||||
|
if(history.docEr === 'E'){
|
||||||
|
buttonClass += "btn-success "
|
||||||
|
}else{
|
||||||
|
buttonClass += "btn-primary "
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<Col xs={"auto"} className={"px-1"}>
|
||||||
|
<input type="button"
|
||||||
|
className={buttonClass}
|
||||||
|
value={history.docEr==='E'?'제':'개'}
|
||||||
|
onClick={()=>{
|
||||||
|
/*window.open("/standardCode/viewer/"+history.kcscCd+":"+history.rvsnYmd.split('T')[0]);*/
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<br/>
|
||||||
|
<p className={pClass}>{history.docYr}</p>
|
||||||
|
</Col>
|
||||||
|
)
|
||||||
|
})}
|
||||||
|
</Row>
|
||||||
|
</div>
|
||||||
|
<div className="fille">
|
||||||
|
<Row className={"justify-content-start"}>
|
||||||
|
{item.historyList.filter(history => {
|
||||||
|
return history;
|
||||||
|
}).map(history => {
|
||||||
|
let buttonClass = "btn btn-sm docInfoBtn docInfoActive "
|
||||||
|
let pClass = "yearInfo yearInfoActive";
|
||||||
|
if(history.docEr === 'E'){
|
||||||
|
buttonClass += "btn-success "
|
||||||
|
}else{
|
||||||
|
buttonClass += "btn-primary "
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<Col xs={"auto"} className={"px-1"}>
|
||||||
|
<input type="button"
|
||||||
|
className={buttonClass}
|
||||||
|
value={history.docEr==='E'?'제':'개'}
|
||||||
|
onClick={()=>{
|
||||||
|
window.open("/standardCode/viewer/"+history.kcscCd+":"+history.rvsnYmd.split('T')[0]);
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<br/>
|
||||||
|
<p className={pClass}>{history.docYr}</p>
|
||||||
|
</Col>
|
||||||
|
)
|
||||||
|
})}
|
||||||
|
</Row>
|
||||||
|
</div>
|
||||||
<div className="star"><AiFillStar/></div>
|
<div className="star"><AiFillStar/></div>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
})}
|
})}
|
||||||
</div>
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
</div>
|
</div>
|
||||||
<StandardCodeListModal size={"lg"} show={show} content={groupSeq} onClose={close} title={"개정이력"}/>
|
<StandardCodeListModal size={"lg"} show={show} content={groupSeq} onClose={close} title={"개정이력"}/>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -4,18 +4,34 @@ import Row from "react-bootstrap/Row";
|
||||||
import Col from "react-bootstrap/Col";
|
import Col from "react-bootstrap/Col";
|
||||||
import {Link} from "react-router-dom";
|
import {Link} from "react-router-dom";
|
||||||
import Button from "react-bootstrap/Button";
|
import Button from "react-bootstrap/Button";
|
||||||
|
import * as EgovNet from "../../../api/egovFetch";
|
||||||
|
|
||||||
function StandardCodeSearchForm({param, reloadFunction, resultCnt, remarkCnt}){
|
function StandardCodeSearchForm({param, reloadFunction, resultCnt, remarkCnt}){
|
||||||
|
|
||||||
const [searchCondition, setSearchCondition] = useState({
|
const [searchCondition, setSearchCondition] = useState({
|
||||||
pageIndex: 1,
|
|
||||||
tab: Number(param?.substring(0, 2)),
|
tab: Number(param?.substring(0, 2)),
|
||||||
category1: param?.substring(2, 4),
|
category1: param?.substring(2, 4),
|
||||||
category2: param?.substring(4, 6),
|
category2: param?.substring(4, 6),
|
||||||
searchWrd: ''
|
category3: param?.substring(6, 8),
|
||||||
});
|
});
|
||||||
const [subTabsVisible, setSubTabsVisible] = useState(false);
|
const [subTabsVisible, setSubTabsVisible] = useState(false);
|
||||||
|
|
||||||
|
function getSelectBoxOption(groupCd, handler){
|
||||||
|
EgovNet.requestFetch(
|
||||||
|
'/standardCode/category-option?listCode='+groupCd,
|
||||||
|
{
|
||||||
|
method: "GET",
|
||||||
|
headers: {
|
||||||
|
'Content-type': 'application/json',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handler,
|
||||||
|
function (resp) {
|
||||||
|
console.log("err response : ", resp);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if(searchCondition.tab){
|
if(searchCondition.tab){
|
||||||
if(searchCondition.tab !== 10 && searchCondition.tab !== 20){
|
if(searchCondition.tab !== 10 && searchCondition.tab !== 20){
|
||||||
|
|
@ -27,6 +43,23 @@ function StandardCodeSearchForm({param, reloadFunction, resultCnt, remarkCnt}){
|
||||||
reloadFunction(searchCondition)
|
reloadFunction(searchCondition)
|
||||||
}, [searchCondition]);
|
}, [searchCondition]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if(searchCondition.tab){
|
||||||
|
getSelectBoxOption(searchCondition.tab, (resp)=>{
|
||||||
|
debugger
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}, [searchCondition.tab]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
|
||||||
|
}, [searchCondition.category1]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
|
||||||
|
}, [searchCondition.category2]);
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div className="condition">
|
<div className="condition">
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -151,19 +151,7 @@ public class StandardCodeController extends BaseController {
|
||||||
ResultVO resultVO = new ResultVO();
|
ResultVO resultVO = new ResultVO();
|
||||||
Map<String, Object> resultMap = new HashMap<>();
|
Map<String, Object> resultMap = new HashMap<>();
|
||||||
|
|
||||||
String tab = tnDocumentInfo.getTab() != null ? tnDocumentInfo.getTab() : "";
|
tnDocumentInfo.makeListCode();
|
||||||
String category1 = tnDocumentInfo.getCategory1() != null ? tnDocumentInfo.getCategory1() : "";
|
|
||||||
String category2 = tnDocumentInfo.getCategory2() != null ? tnDocumentInfo.getCategory2() : "";
|
|
||||||
String category3 = tnDocumentInfo.getCategory3() != null ? tnDocumentInfo.getCategory3() : "";
|
|
||||||
|
|
||||||
Integer categorySeq1 = standardCodeService.selectStandardCodeGroupSeq(tab);
|
|
||||||
Integer categorySeq2 = standardCodeService.selectStandardCodeGroupSeq(tab + category1);
|
|
||||||
Integer categorySeq3 = standardCodeService.selectStandardCodeGroupSeq(tab + category1 + category2);
|
|
||||||
resultMap.put("category1List", standardCodeService.selectStandardCodeCategoryList(categorySeq1));
|
|
||||||
resultMap.put("category2List", standardCodeService.selectStandardCodeCategoryList(categorySeq2));
|
|
||||||
resultMap.put("category3List", standardCodeService.selectStandardCodeCategoryList(categorySeq3));
|
|
||||||
|
|
||||||
tnDocumentInfo.setListCode(tab + category1 + category2 + category3);
|
|
||||||
resultMap.put("resultList", standardCodeService.selectStandardCodeList(tnDocumentInfo));
|
resultMap.put("resultList", standardCodeService.selectStandardCodeList(tnDocumentInfo));
|
||||||
resultMap.put("resultCnt", standardCodeService.selectStandardCodeListCnt(tnDocumentInfo));
|
resultMap.put("resultCnt", standardCodeService.selectStandardCodeListCnt(tnDocumentInfo));
|
||||||
resultMap.put("user", user);
|
resultMap.put("user", user);
|
||||||
|
|
@ -174,6 +162,28 @@ public class StandardCodeController extends BaseController {
|
||||||
return resultVO;
|
return resultVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Operation(
|
||||||
|
summary = "건설기준코드 검색조건 옵션 조회",
|
||||||
|
description = "건설기준코드 검색조건 옵션 조회",
|
||||||
|
tags = {"StandardCodeController"}
|
||||||
|
)
|
||||||
|
@ApiResponses(value = {
|
||||||
|
@ApiResponse(responseCode = "200", description = "조회 성공"),
|
||||||
|
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
|
||||||
|
})
|
||||||
|
@GetMapping(value = "/category-option")
|
||||||
|
public ResultVO getCategoryOption(TnDocumentInfo tnDocumentInfo) throws Exception {
|
||||||
|
ResultVO resultVO = new ResultVO();
|
||||||
|
Map<String, Object> resultMap = new HashMap<>();
|
||||||
|
|
||||||
|
resultMap.put("groupList", standardCodeService.selectTnDocumentGroupToGroupFullCdLike(tnDocumentInfo.getListCode()));
|
||||||
|
|
||||||
|
resultVO.setResultCode(ResponseCode.SUCCESS.getCode());
|
||||||
|
resultVO.setResultMessage(ResponseCode.SUCCESS.getMessage());
|
||||||
|
resultVO.setResult(resultMap);
|
||||||
|
return resultVO;
|
||||||
|
}
|
||||||
|
|
||||||
@Operation(
|
@Operation(
|
||||||
summary = "건설기준코드 개정이력 조회",
|
summary = "건설기준코드 개정이력 조회",
|
||||||
description = "건설기준코드 개정이력 조회",
|
description = "건설기준코드 개정이력 조회",
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ import javax.persistence.Column;
|
||||||
import javax.persistence.Entity;
|
import javax.persistence.Entity;
|
||||||
import javax.persistence.Id;
|
import javax.persistence.Id;
|
||||||
import javax.persistence.Transient;
|
import javax.persistence.Transient;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
|
|
@ -43,5 +44,7 @@ public class TnDocumentCodeList {
|
||||||
private Integer allCnt;
|
private Integer allCnt;
|
||||||
@Transient
|
@Transient
|
||||||
private Integer remarkCnt;
|
private Integer remarkCnt;
|
||||||
|
@Transient
|
||||||
|
private List<TnDocumentInfo> historyList;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.dbnt.kcscbackend.standardCode.entity;
|
package com.dbnt.kcscbackend.standardCode.entity;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
|
@ -92,11 +93,16 @@ public class TnDocumentInfo {
|
||||||
@Transient
|
@Transient
|
||||||
private String searchWrd;
|
private String searchWrd;
|
||||||
@Transient
|
@Transient
|
||||||
private String tab;
|
private String tab = "";
|
||||||
@Transient
|
@Transient
|
||||||
private String category1;
|
private String category1 = "";
|
||||||
@Transient
|
@Transient
|
||||||
private String category2;
|
private String category2 = "";
|
||||||
@Transient
|
@Transient
|
||||||
private String category3;
|
private String category3 = "";
|
||||||
|
|
||||||
|
@JsonIgnore
|
||||||
|
public void makeListCode(){
|
||||||
|
setListCode(getTab()+getCategory1()+getCategory2()+getCategory3());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -20,6 +20,5 @@ public interface StandardCodeMapper {
|
||||||
|
|
||||||
Integer selectStandardCodeGroupSeq(String groupFullCd);
|
Integer selectStandardCodeGroupSeq(String groupFullCd);
|
||||||
|
|
||||||
List<TnDocumentCodeList> selectStandardCodeCategoryList(Integer parentGroupSeq);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,4 +11,6 @@ public interface TnDocumentGroupRepository extends JpaRepository<TnDocumentGroup
|
||||||
|
|
||||||
@Query(value = "select * from sp_get_tn_document_code_by_tree()", nativeQuery = true)
|
@Query(value = "select * from sp_get_tn_document_code_by_tree()", nativeQuery = true)
|
||||||
List<StandardCodeTreeInterface> spGetTnDocumentCodeByTree();
|
List<StandardCodeTreeInterface> spGetTnDocumentCodeByTree();
|
||||||
|
|
||||||
|
List<TnDocumentGroup> findByGroupFullCdLike(String groupFullCd);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package com.dbnt.kcscbackend.standardCode.service;
|
||||||
|
|
||||||
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentCodeList;
|
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentCodeList;
|
||||||
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentContent;
|
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentContent;
|
||||||
|
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentGroup;
|
||||||
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentInfo;
|
import com.dbnt.kcscbackend.standardCode.entity.TnDocumentInfo;
|
||||||
import com.dbnt.kcscbackend.standardCode.mapper.StandardCodeMapper;
|
import com.dbnt.kcscbackend.standardCode.mapper.StandardCodeMapper;
|
||||||
import com.dbnt.kcscbackend.standardCode.repository.TnDocumentContentRepository;
|
import com.dbnt.kcscbackend.standardCode.repository.TnDocumentContentRepository;
|
||||||
|
|
@ -12,6 +13,7 @@ import org.egovframe.rte.fdl.cmmn.EgovAbstractServiceImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -47,10 +49,14 @@ public class StandardCodeService extends EgovAbstractServiceImpl {
|
||||||
List<TnDocumentCodeList> codeList = standardCodeMapper.selectStandardCodeList(tnDocumentInfo);
|
List<TnDocumentCodeList> codeList = standardCodeMapper.selectStandardCodeList(tnDocumentInfo);
|
||||||
List<TnDocumentInfo> historyList = standardCodeMapper.selectStandardCodeHistoryList(tnDocumentInfo);
|
List<TnDocumentInfo> historyList = standardCodeMapper.selectStandardCodeHistoryList(tnDocumentInfo);
|
||||||
for(TnDocumentCodeList code: codeList){
|
for(TnDocumentCodeList code: codeList){
|
||||||
|
List<TnDocumentInfo> tempList = new ArrayList<>();
|
||||||
for(TnDocumentInfo history: historyList){
|
for(TnDocumentInfo history: historyList){
|
||||||
|
if(code.getKcscCd().equals(history.getKcscCd())){
|
||||||
|
tempList.add(history);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
code.setHistoryList(tempList);
|
||||||
|
}
|
||||||
return codeList;
|
return codeList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -64,6 +70,8 @@ public class StandardCodeService extends EgovAbstractServiceImpl {
|
||||||
|
|
||||||
public Integer selectStandardCodeGroupSeq(String groupFullCd) { return standardCodeMapper.selectStandardCodeGroupSeq(groupFullCd); }
|
public Integer selectStandardCodeGroupSeq(String groupFullCd) { return standardCodeMapper.selectStandardCodeGroupSeq(groupFullCd); }
|
||||||
|
|
||||||
public List<TnDocumentCodeList> selectStandardCodeCategoryList(Integer parentGroupSeq){ return standardCodeMapper.selectStandardCodeCategoryList(parentGroupSeq); }
|
|
||||||
|
|
||||||
|
public List<TnDocumentGroup> selectTnDocumentGroupToGroupFullCdLike(String groupFullCd) {
|
||||||
|
return tnDocumentGroupRepository.findByGroupFullCdLike(groupFullCd+"__");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -78,18 +78,6 @@
|
||||||
where group_full_cd = #{groupFullCd}
|
where group_full_cd = #{groupFullCd}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectStandardCodeCategoryList" parameterType="Integer" resultType="TnDocumentCodeList">
|
|
||||||
select
|
|
||||||
group_seq,
|
|
||||||
group_full_cd,
|
|
||||||
kcsc_cd,
|
|
||||||
group_cur_cd,
|
|
||||||
group_nm,
|
|
||||||
parent_group_seq
|
|
||||||
from tn_document_group
|
|
||||||
where parent_group_seq = #{parentGroupSeq}
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="selectStandardCodeRevisionhistoryList" resultType="TnDocumentInfo">
|
<select id="selectStandardCodeRevisionhistoryList" resultType="TnDocumentInfo">
|
||||||
select tdi.aplcn_bgng_ymd,tdi.doc_file_grp_id,tdi.rvsn_file_grp_id from tn_document_info tdi, tn_document_group tdg
|
select tdi.aplcn_bgng_ymd,tdi.doc_file_grp_id,tdi.rvsn_file_grp_id from tn_document_info tdi, tn_document_group tdg
|
||||||
where 1 = 1
|
where 1 = 1
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue