중간저장.
parent
3657c16a15
commit
c308ec3691
|
|
@ -46,14 +46,14 @@
|
|||
.code_list .result .List_Codes >div:nth-child(7){
|
||||
font-size: 14px;
|
||||
}
|
||||
.codelistcontent{
|
||||
padding: 0 0;
|
||||
width: 80%;
|
||||
.codeListContent{
|
||||
padding: 10px 0;
|
||||
width: 100%;
|
||||
}
|
||||
.StandardCodeList{
|
||||
max-width: 100%;
|
||||
}
|
||||
.listtablediv{
|
||||
.listTableDiv{
|
||||
padding: 0 !important;
|
||||
}
|
||||
.vieweratag{
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ body {min-width: 1400px;}
|
|||
.c_wrap .layout {display: table; width: 100%; table-layout: fixed; padding-bottom: 20px;} /* added by lim padding-bottom: 20px; */
|
||||
|
||||
/* sub navigation */
|
||||
.c_wrap .layout .nav {display: table-cell; width: 220px; vertical-align: top;} /* changed by lim width: 260px; */
|
||||
/*.c_wrap .layout .nav {display: table-cell; width: 220px; vertical-align: top;}*/ /* changed by lim width: 260px; */
|
||||
.c_wrap .layout .nav .inner {border: 1px solid #dde2e5; border-radius: 10px;}
|
||||
.nav_title{padding: 35px 30px 26px 30px;} /* changed by lim border-bottom: 4px solid #dde2e5; */
|
||||
.c_wrap .layout .nav h2 {color: #222; font-size: 24px;}
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ function StandardCodeList({}) {
|
|||
const [listData, setListData] = useState([])
|
||||
const [filterData, setFilterData] = useState('');
|
||||
const [resultCnt, setResultCnt] = useState(0);
|
||||
const [remarkCnt, setRemarkCnt] = useState(0);
|
||||
const [groupSeq, setGroupSeq] = useState();
|
||||
|
||||
const [show, setShow] = useState(false);
|
||||
|
|
@ -75,7 +76,8 @@ function StandardCodeList({}) {
|
|||
},
|
||||
(resp) => {
|
||||
setListData(resp.result.resultList);
|
||||
setResultCnt(resp.result.resultCnt);
|
||||
setResultCnt(resp.result.resultCnt.allCnt);
|
||||
setRemarkCnt(resp.result.resultCnt.remarkCnt);
|
||||
},
|
||||
function (resp) {
|
||||
console.log("err response : ", resp);
|
||||
|
|
@ -87,22 +89,10 @@ function StandardCodeList({}) {
|
|||
|
||||
return (
|
||||
<div className="StandardCodeList container">
|
||||
<div className="c_wrap codelistcontent">
|
||||
<div className="location">
|
||||
<ul>
|
||||
<li><Link to={URL.MAIN} className="home">Home</Link></li>
|
||||
<li><Link to='#'>건설기준코드</Link></li>
|
||||
<li><Link to={URL.STANDARD_CODE_LIST}>건설기준코드 검색</Link></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div className="c_wrap codeListContent">
|
||||
<div className="layout">
|
||||
<div className="contents NOTICE_LIST listtablediv">
|
||||
<div className="top_tit">
|
||||
<h2 className="tit_1">건설기준코드 검색</h2>
|
||||
</div>
|
||||
<StandardCodeSearchForm param={listCode} reloadFunction={retrieveList}/>
|
||||
<div><span>전체 {resultCnt} 건</span></div>
|
||||
{/* <!-- 게시판목록 --> */}
|
||||
<div className="contents NOTICE_LIST listTableDiv">
|
||||
<StandardCodeSearchForm param={listCode} reloadFunction={retrieveList} resultCnt={resultCnt} remarkCnt={remarkCnt}/>
|
||||
<div className="board_list code_list">
|
||||
<div className="head">
|
||||
<span>대분류</span>
|
||||
|
|
@ -125,9 +115,9 @@ function StandardCodeList({}) {
|
|||
<div className="mainCategory">{item.mainCategory}</div>
|
||||
<div className="middleCategory">{item.middleCategory}</div>
|
||||
<div className="kcscCd">{item.kcscCd}</div>
|
||||
<div className="groupNm">{item.groupNm}</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="fille">{item.contentcount > 0 ? <a className="vieweratag" href={"/standardCode/viewer/" + item.kcscCd}>내용보기</a> : null}</div>
|
||||
<div className="fille"><a className="vieweratag" href={"/standardCode/viewer/" + item.kcscCd}>내용보기</a></div>
|
||||
<div className="star"><AiFillStar/></div>
|
||||
</div>
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,11 @@
|
|||
import React, {useEffect, useState} from "react";
|
||||
import {Nav} from "react-bootstrap";
|
||||
import Row from "react-bootstrap/Row";
|
||||
import Col from "react-bootstrap/Col";
|
||||
import {Link} from "react-router-dom";
|
||||
import Button from "react-bootstrap/Button";
|
||||
|
||||
function StandardCodeSearchForm({param, reloadFunction}){
|
||||
function StandardCodeSearchForm({param, reloadFunction, resultCnt, remarkCnt}){
|
||||
|
||||
const [searchCondition, setSearchCondition] = useState({
|
||||
pageIndex: 1,
|
||||
|
|
@ -60,25 +65,36 @@ function StandardCodeSearchForm({param, reloadFunction}){
|
|||
</select>
|
||||
</label>
|
||||
</li>
|
||||
<li className="third_1 L">
|
||||
{remarkCnt?(
|
||||
<span>전체 {resultCnt} / <span className={"text-danger"}>{remarkCnt}</span> 건</span>
|
||||
):(
|
||||
<span>전체 {resultCnt} 건</span>
|
||||
)}
|
||||
|
||||
</li>
|
||||
<li className="third_1 L">
|
||||
<div className={`tab`}>통합 다운로드</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{subTabsVisible && (
|
||||
<div className="right_col">
|
||||
<div className="mini_board">
|
||||
<ul>
|
||||
<div className={`tab ${searchCondition.tab === 40 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 40})}}>서울특별시</div>
|
||||
<div className={`tab ${searchCondition.tab === 50 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 50})}}>고속도로공사</div>
|
||||
<div className={`tab ${searchCondition.tab === 60 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 60})}}>한국농어촌공사</div>
|
||||
<div className={`tab ${searchCondition.tab === 70 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 70})}}>철도건설공사</div>
|
||||
<div className={`tab ${searchCondition.tab === 80 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 80})}}>LH한국토지주택공사</div>
|
||||
<div className={`tab ${searchCondition.tab === 90 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 90})}}>K-Water</div>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
<Row className={"justify-content-between"}>
|
||||
<Col>
|
||||
{subTabsVisible && (
|
||||
<Nav variant={"tabs"} >
|
||||
<Nav.Item><Nav.Link className={`${searchCondition.tab === 40 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 40})}}>서울특별시</Nav.Link></Nav.Item>
|
||||
<Nav.Item><Nav.Link className={`${searchCondition.tab === 50 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 50})}}>고속도로공사</Nav.Link></Nav.Item>
|
||||
<Nav.Item><Nav.Link className={`${searchCondition.tab === 60 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 60})}}>한국농어촌공사</Nav.Link></Nav.Item>
|
||||
<Nav.Item><Nav.Link className={`${searchCondition.tab === 70 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 70})}}>철도건설공사</Nav.Link></Nav.Item>
|
||||
<Nav.Item><Nav.Link className={`${searchCondition.tab === 80 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 80})}}>LH한국토지주택공사</Nav.Link></Nav.Item>
|
||||
<Nav.Item><Nav.Link className={`${searchCondition.tab === 90 ? 'active' : ''}`} onClick={() => {setSearchCondition({...searchCondition, tab: 90})}}>K-Water</Nav.Link></Nav.Item>
|
||||
</Nav>
|
||||
)}
|
||||
</Col>
|
||||
<Col xs={"auto"}>
|
||||
<Button href={"/standardCode/info"} size={"sm"} variant={"secondary"}>건설기준코드 안내</Button>
|
||||
</Col>
|
||||
</Row>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -164,11 +164,8 @@ public class StandardCodeController extends BaseController {
|
|||
resultMap.put("category3List", standardCodeService.selectStandardCodeCategoryList(categorySeq3));
|
||||
|
||||
tnDocumentInfo.setListCode(tab + category1 + category2 + category3);
|
||||
List<TnDocumentCodeList> tnDocumentCodeList = standardCodeService.selectStandardCodeList(tnDocumentInfo);
|
||||
resultMap.put("resultList", tnDocumentCodeList);
|
||||
Integer totCnt = tnDocumentCodeList.get(0).getContentcount();
|
||||
|
||||
resultMap.put("resultCnt", totCnt);
|
||||
resultMap.put("resultList", standardCodeService.selectStandardCodeList(tnDocumentInfo));
|
||||
resultMap.put("resultCnt", standardCodeService.selectStandardCodeListCnt(tnDocumentInfo));
|
||||
resultMap.put("user", user);
|
||||
|
||||
resultVO.setResultCode(ResponseCode.SUCCESS.getCode());
|
||||
|
|
|
|||
|
|
@ -28,15 +28,20 @@ public class TnDocumentCodeList {
|
|||
private String middleCategory;
|
||||
@Column(name = "group_nm")
|
||||
private String groupNm;
|
||||
@Column(name = "rvsn_remark")
|
||||
private String rvsnRemark;
|
||||
@Column(name = "kcsc_cd")
|
||||
private String kcscCd;
|
||||
@Column(name = "doc_file_grp_id")
|
||||
private String docFileGrpId;
|
||||
@Column(name = "contentcount")
|
||||
private Integer contentcount;
|
||||
@Column(name = "parent_group_seq")
|
||||
private String parentGroupSeq;
|
||||
@Column(name = "group_full_cd")
|
||||
private String groupFullCd;
|
||||
|
||||
@Transient
|
||||
private Integer allCnt;
|
||||
@Transient
|
||||
private Integer remarkCnt;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,9 @@ public interface StandardCodeMapper {
|
|||
|
||||
List<TnDocumentCodeList> selectStandardCodeList(TnDocumentInfo tnDocumentInfo);
|
||||
|
||||
Integer selectStandardCodeListCnt(TnDocumentInfo tnDocumentInfo);
|
||||
TnDocumentCodeList selectStandardCodeListCnt(TnDocumentInfo tnDocumentInfo);
|
||||
|
||||
List<TnDocumentInfo> selectStandardCodeHistoryList(TnDocumentInfo tnDocumentInfo);
|
||||
|
||||
List<TnDocumentInfo> selectStandardCodeRevisionhistoryList(Integer groupseq);
|
||||
|
||||
|
|
|
|||
|
|
@ -44,10 +44,17 @@ public class StandardCodeService extends EgovAbstractServiceImpl {
|
|||
}
|
||||
|
||||
public List<TnDocumentCodeList> selectStandardCodeList(TnDocumentInfo tnDocumentInfo){
|
||||
return standardCodeMapper.selectStandardCodeList(tnDocumentInfo);
|
||||
List<TnDocumentCodeList> codeList = standardCodeMapper.selectStandardCodeList(tnDocumentInfo);
|
||||
List<TnDocumentInfo> historyList = standardCodeMapper.selectStandardCodeHistoryList(tnDocumentInfo);
|
||||
for(TnDocumentCodeList code: codeList){
|
||||
for(TnDocumentInfo history: historyList){
|
||||
|
||||
}
|
||||
}
|
||||
return codeList;
|
||||
}
|
||||
|
||||
public Integer selectStandardCodeListCnt(TnDocumentInfo tnDocumentInfo) {
|
||||
public TnDocumentCodeList selectStandardCodeListCnt(TnDocumentInfo tnDocumentInfo) {
|
||||
return standardCodeMapper.selectStandardCodeListCnt(tnDocumentInfo);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -5,52 +5,71 @@
|
|||
|
||||
<sql id="selectStandardCodeListWhere">
|
||||
<where>
|
||||
a.parent_group_seq = a2.seq
|
||||
and a2.parent_seq = a3.seq
|
||||
<if test="listCode != 102041 and listCode != null and listCode != ''">
|
||||
and a.group_full_cd like #{listCode} || '%'
|
||||
and c.group_full_cd like #{listCode} || '%'
|
||||
</if>
|
||||
<if test="listCode == 102041">
|
||||
and (a.group_full_cd like 102041 || '%'
|
||||
or a.group_full_cd like 102042 || '%'
|
||||
or a.group_full_cd like 102043 || '%')
|
||||
and (c.group_full_cd like 102041 || '%'
|
||||
or c.group_full_cd like 102042 || '%'
|
||||
or c.group_full_cd like 102043 || '%')
|
||||
</if>
|
||||
<if test="searchWrd != null and searchWrd != ''">
|
||||
and a.group_nm like '%' || #{searchWrd} || '%'
|
||||
and c.group_nm like '%' || #{searchWrd} || '%'
|
||||
</if>
|
||||
and a.group_type = 'D'
|
||||
and c.group_type = 'D'
|
||||
and tdi.last_yn = 'Y'
|
||||
</where>
|
||||
</sql>
|
||||
|
||||
<select id="selectStandardCodeList" parameterType="TnDocumentInfo" resultType="TnDocumentCodeList">
|
||||
select
|
||||
count(*) over() as contentcount,
|
||||
case
|
||||
when a3.doc_level > 1 then a3.doc_code_name
|
||||
else a2.doc_code_name
|
||||
end as main_category,
|
||||
case
|
||||
when a3.doc_level > 1 then a2.doc_code_name
|
||||
else a.group_nm
|
||||
end as middle_category,
|
||||
a.group_nm,
|
||||
a.kcsc_cd,
|
||||
tdi.doc_file_grp_id,
|
||||
a.group_seq
|
||||
from
|
||||
tn_document_group a
|
||||
left join tn_document_info tdi on
|
||||
a.group_seq = tdi.group_seq
|
||||
left join tn_document_content tdc on
|
||||
tdi.doc_info_seq = tdc.doc_info_seq,
|
||||
sp_get_tn_document_code_by_tree() a2,
|
||||
sp_get_tn_document_code_by_tree() a3
|
||||
case
|
||||
when a.doc_level < 3 then b.group_nm
|
||||
else a.group_nm
|
||||
end as main_category,
|
||||
case
|
||||
when a.doc_level < 3 then c.group_nm
|
||||
else b.group_nm
|
||||
end as middle_category,
|
||||
c.group_nm,
|
||||
c.rvsn_remark ,
|
||||
c.kcsc_cd,
|
||||
tdi.doc_file_grp_id,
|
||||
c.group_seq
|
||||
from tn_document_group a
|
||||
inner join tn_document_group b on a.group_seq = b.parent_group_seq
|
||||
inner join tn_document_group c on b.group_seq = c.parent_group_seq
|
||||
left join tn_document_info tdi on c.group_seq = tdi.group_seq
|
||||
<include refid="selectStandardCodeListWhere"></include>
|
||||
group by main_category, middle_category, a.group_nm, a.kcsc_cd, tdi.doc_file_grp_id, a.group_seq
|
||||
order by a.kcsc_cd
|
||||
order by c.kcsc_cd
|
||||
</select>
|
||||
|
||||
<select id="selectStandardCodeListCnt" parameterType="TnDocumentInfo" resultType="TnDocumentCodeList">
|
||||
select count(*) as allCnt,
|
||||
sum(case when c.rvsn_remark is not null then 1 end) as remarkCnt
|
||||
from tn_document_group a
|
||||
inner join tn_document_group b on a.group_seq = b.parent_group_seq
|
||||
inner join tn_document_group c on b.group_seq = c.parent_group_seq
|
||||
left join tn_document_info tdi on c.group_seq = tdi.group_seq
|
||||
<include refid="selectStandardCodeListWhere"></include>
|
||||
</select>
|
||||
|
||||
<select id="selectStandardCodeHistoryList" parameterType="TnDocumentInfo" resultType="TnDocumentInfo">
|
||||
select a.*
|
||||
from tn_document_info a
|
||||
inner join tn_document_group b on a.kcsc_cd = b.kcsc_cd
|
||||
where
|
||||
<if test="listCode != 102041 and listCode != null and listCode != ''">
|
||||
and b.group_full_cd like #{listCode} || '%'
|
||||
</if>
|
||||
<if test="listCode == 102041">
|
||||
and (b.group_full_cd like 102041 || '%'
|
||||
or b.group_full_cd like 102042 || '%'
|
||||
or b.group_full_cd like 102043 || '%')
|
||||
</if>
|
||||
and b.group_type = 'D'
|
||||
</select>
|
||||
|
||||
<select id="selectStandardCodeGroupSeq" parameterType="String" resultType="Integer">
|
||||
select
|
||||
group_seq
|
||||
|
|
|
|||
Loading…
Reference in New Issue