Merge branch 'master_tolag3'

게시판 관리 수정
This commit is contained in:
leejunho 2025-09-15 14:56:49 +09:00
parent 827b39b881
commit f1f3100c0b
22 changed files with 55 additions and 80 deletions

View File

@ -100,9 +100,9 @@ public class EgovFileDownloadController {
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
} else if (browser.equals("Firefox")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Opera")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Chrome")) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < filename.length(); i++) {

View File

@ -37,9 +37,8 @@ import kcc.com.cmm.service.FileVO;
* @see
*
*/
@SuppressWarnings("serial")
@Controller
public class EgovImageProcessController extends HttpServlet {
public class EgovImageProcessController{
@Resource(name = "EgovFileMngService")
private EgovFileMngService fileService;
@ -56,7 +55,6 @@ public class EgovImageProcessController extends HttpServlet {
* @param response
* @throws Exception
*/
@SuppressWarnings("resource")
@RequestMapping("/cmm/fms/getImage.do")
public void getImageInf(SessionVO sessionVO, ModelMap model, @RequestParam Map<String, Object> commandMap, HttpServletResponse response) throws Exception {

View File

@ -640,9 +640,6 @@ public class EgovBBSAttributeManageController {
searchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
searchVO.setLastIndex(paginationInfo.getLastRecordIndex());
searchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
System.out.println("===========");
/*OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY*/
Map<String, Object> map = bbsAttrbService.selectBBSIdList(searchVO);
int totCnt = Integer.parseInt((String) map.get("resultCnt"));

View File

@ -224,10 +224,6 @@ public class EgovBBSManageController {
public String selectBoardArticles(@ModelAttribute("searchVO") BoardVO boardVO, ModelMap model
, HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) throws Exception {
System.out.println("---start----");
System.out.println("---start----");
System.out.println("---start----");
LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
BoardMasterVO vo = new BoardMasterVO();
vo.setBbsId(boardVO.getBbsId());
@ -255,15 +251,10 @@ public class EgovBBSManageController {
boardVO.setLoginId(user.getId());
if("".equals(master.getSearchSortCnd())){ //최초조회시 최신것 조회List
if("BBSMSTR_000000000528".equals(master.getBbsId())) { //묻고답하기 제외
}else {
boardVO.setSearchSortCnd("FRST_REGIST_PNTTM");
boardVO.setSearchSortOrd("desc");
}
}
// 공지사항
if (("Y").equals(master.getNoticeYn()) && ("").equals(boardVO.getSearchWrd())) {
List<BoardVO> notifyList = bbsMngService.selectBoardNotifyArticles(boardVO, vo.getBbsAttrbCode());
@ -271,7 +262,7 @@ public class EgovBBSManageController {
boardVO.setNoticeAt("N"); //다음에 공지사항 아닌것만 검색
}
if (("BBST05").equals(master.getBbsTyCode())) { //재단소식이면
if (("BBST05").equals(master.getBbsTyCode())) {
boardVO.setSearchSortCnd("FRST_REGIST_PNTTM");
boardVO.setSearchSortOrd("desc");
}
@ -289,21 +280,10 @@ public class EgovBBSManageController {
model.addAttribute("paginationInfo", paginationInfo);
model.addAttribute("Authority", user.getAuthority()); //ROLE_ADR_JRSDC
//System.out.println("user.getAuthority()");
//System.out.println(user.getAuthority());
//System.out.println(user.get.getAuthority());
//임시 데이터 이관용
String ip = request.getHeader("X-Forwarded-For");
if (ip == null) ip = request.getRemoteAddr();
String ddd = "";
if("219.240.88.15".equals(ip) || "0:0:0:0:0:0:0:1".equals(ip)) {
model.addAttribute("Transfer", true );
}
System.out.println("---ip----"+ip);
return "cop/bbs/EgovNoticeList";
}

View File

@ -855,9 +855,9 @@ public class VEAdultEduEndController {
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
} else if (browser.equals("Firefox")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Opera")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Chrome")) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < filename.length(); i++) {

View File

@ -928,9 +928,9 @@ public class VEEduEndController {
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
} else if (browser.equals("Firefox")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Opera")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Chrome")) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < filename.length(); i++) {

View File

@ -1278,9 +1278,9 @@ String[] order = {
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
} else if (browser.equals("Firefox")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Opera")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Chrome")) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < filename.length(); i++) {

View File

@ -2047,9 +2047,9 @@ public class EduRsltMngTngrController {
} else if (browser.equals("Trident")) { // IE11 문자열 깨짐 방지
encodedFilename = URLEncoder.encode(filename, "UTF-8").replaceAll("\\+", "%20");
} else if (browser.equals("Firefox")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Opera")) {
encodedFilename = "\"" + new String(filename.getBytes("UTF-8"), "8859_1") + "\"";
encodedFilename = URLEncoder.encode(filename, "UTF-8").replace("+", "%20");
} else if (browser.equals("Chrome")) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < filename.length(); i++) {

View File

@ -537,20 +537,20 @@ public class MainController {
List<MenuManageJTreeVO> fullMenuResultList = menuCreateManageService.selectMenuListJtreeWeb(fullMenuVo) ;
// 메인 메뉴 청소년, 성인 색상 적용
for(MenuManageJTreeVO empMenuManageJTreeVO : menuResultList) {
/*찾아가는 저작권교육 청소년*/
if("99928000".equals(empMenuManageJTreeVO.getMenuNo())){
if(empMenuManageJTreeVO.getMenuNm().contains("청소년")) {
empMenuManageJTreeVO.setMenuNm(empMenuManageJTreeVO.getMenuNm().replace("청소년", "<span class='menu_link_br'>청소년</span>"));
}
}
/*찾아가는 저작권교육 성인*/
if("99929000".equals(empMenuManageJTreeVO.getMenuNo())){
if(empMenuManageJTreeVO.getMenuNm().contains("성인")) {
empMenuManageJTreeVO.setMenuNm(empMenuManageJTreeVO.getMenuNm().replace("성인", "<span class='menu_link_br'>성인</span>"));
}
}
}
// for(MenuManageJTreeVO empMenuManageJTreeVO : menuResultList) {
// /*찾아가는 저작권교육 청소년*/
// if("99928000".equals(empMenuManageJTreeVO.getMenuNo())){
// if(empMenuManageJTreeVO.getMenuNm().contains("청소년")) {
// empMenuManageJTreeVO.setMenuNm(empMenuManageJTreeVO.getMenuNm().replace("청소년", "<span class='menu_link_br'>청소년</span>"));
// }
// }
// /*찾아가는 저작권교육 성인*/
// if("99929000".equals(empMenuManageJTreeVO.getMenuNo())){
// if(empMenuManageJTreeVO.getMenuNm().contains("성인")) {
// empMenuManageJTreeVO.setMenuNm(empMenuManageJTreeVO.getMenuNm().replace("성인", "<span class='menu_link_br'>성인</span>"));
// }
// }
// }
List<String> menuTwoExist = new ArrayList<>(); //2뎁스의 하위 매뉴가 있는것 조회
HashSet<String> underMenuEmpty = new HashSet<String>(); //2뎁스의 하위매뉴 없는것 조회

View File

@ -142,7 +142,7 @@
, PROGRM_HTML_FILE_ID AS progrmHtmlFileId
, URL AS URL
FROM LETTNPROGRMLIST
WHERE URL like CONCAT(#searchKeyword#,'%')
WHERE URL like CONCAT(CAST(#searchKeyword:VARCHAR# AS TEXT) || '%')
</select>
<select id="progrmManageDAO.getBbsUrlByNttId" resultClass="string">

View File

@ -621,7 +621,7 @@
<update id="BBSAttributeManageDAO.deleteMenuBbs" parameterClass="BoardMasterVO">
<![CDATA[
UPDATE LETTNBBSMASTER SET
MENU_NO = '',
MENU_NO = null,
BBS_SORT = 0
WHERE MENU_NO = #menuNo#
]]>
@ -629,8 +629,8 @@
<update id="BBSAttributeManageDAO.updateMenuBbs" parameterClass="BoardMasterVO">
UPDATE LETTNBBSMASTER SET
MENU_NO = #menuNo#,
BBS_SORT = #bbsSort#
MENU_NO = NULLIF(#menuNo#, '')::int,
BBS_SORT = NULLIF(#bbsSort#, '')::int
WHERE BBS_ID = #bbsId#
</update>

View File

@ -59,14 +59,14 @@ function selectList(vFileNm , vFileTxt){
if(opener.menuForm.progrmBbsId !=null){
if(opener.menuForm.menuType.value == 'B'){ //게시판경우
opener.menuForm.progrmBbsId.value = vFileNm;
opener.menuForm.url.value = "<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>?bbsId="+vFileNm ;
opener.menuForm.url.value = "/web/cop/bbsWeb/selectBoardList.do?bbsId="+vFileNm ;
}else{
if("menuAdd"==searchForm.seCd.value){
$(opener.document).find( '#'+$('#searchNm').val()).val(vFileNm) ;
$(opener.document).find( '#bbsTxt_'+ $('#searchNm').val().split('_')[1]).val(vFileTxt) ;
}else{
opener.menuForm.progrmBbsId.value = vFileNm;
opener.menuForm.url.value = "<c:url value='/web/cop/bbsWeb/selectBoardList.do'/>?bbsId="+vFileNm ;
opener.menuForm.url.value = "/web/cop/bbsWeb/selectBoardList.do?bbsId="+vFileNm ;
opener.menuForm.progrmFileNm.value = vFileNm ;
opener.document.getElementById('BBSNameSpan').textContent= vFileNm ;
}

View File

@ -434,10 +434,10 @@ function bbsExcelDownload(){
<td>
<a href="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');"> <c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img alt="${result.nttSj}" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' onerror="this.src='/img/post/no-img.png'" width="140" height="120" />
<img alt="${result.nttSj}" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>' onerror='<c:url value='/img/post/no-img.png'/>' width="140" height="120" />
</c:when>
<c:otherwise>
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" width="140" height="120" />
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror='<c:url value='/img/post/no-img.png'/>' width="140" height="120" />
</c:otherwise>
</c:choose>
</a>
@ -476,10 +476,10 @@ function bbsExcelDownload(){
<a href="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');">
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img alt="${result.nttSj}" onerror="this.src='/img/post/no-img.png'" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
<img alt="${result.nttSj}" onerror='<c:url value='/img/post/no-img.png'/>' src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>&isThumbFile=thumbFile'/>
</c:when>
<c:otherwise>
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror='<c:url value='/img/post/no-img.png'/>' />
</c:otherwise>
</c:choose>
</a>

View File

@ -216,7 +216,7 @@ function linkPage(pageNo){
style="background:
url('<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.popupzoneImageFile}"/>')
<c:if test='${empty result.popupzoneImageFile}'>
, url('/img/post/no-img.png') center center no-repeat
, url('/ipedu/img/post/no-img.png') center center no-repeat
</c:if>
;"
onclick="javascript:fn_popupzone_view('${result.pozId}'); return false;" >

View File

@ -681,11 +681,11 @@ function fnPopup(){
<li <c:if test='${result.cookYN == "false"}'>style='font-weight: bold';</c:if>>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<div style="background:url('<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value='${result.atchFileId}'/>&fileSn=<c:out value="${result.fileSn}"/>'), url('/img/post/no-img.png') no-repeat center;
<div style="background:url('<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value='${result.atchFileId}'/>&fileSn=<c:out value="${result.fileSn}"/>'), url('/ipedu/img/post/no-img.png') no-repeat center;
background-size:contain;" class="img" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');"></div>
</c:when>
<c:otherwise>
<div style="background:url('/img/post/no-img.png') no-repeat center; background-size:contain;"
<div style="background:url('/ipedu/img/post/no-img.png') no-repeat center; background-size:contain;"
class="img" onclick="javascript:fn_egov_inqire_notice('<c:out value="${result.bbsId}"/>', '<c:out value="${result.nttId}"/>');"></div>
</c:otherwise>
</c:choose>

View File

@ -170,10 +170,10 @@ var _searchYear = "${boardVO.searchYear}";
</p>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img alt="${result.nttSj}" onerror="this.src='/img/post/no-img.png'" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
<img alt="${result.nttSj}" onerror='<c:url value='/img/post/no-img.png'/>' src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
</c:when>
<c:otherwise>
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror='<c:url value='/img/post/no-img.png'/>' />
</c:otherwise>
</c:choose>
</a>

View File

@ -170,10 +170,10 @@ var _searchYear = "${boardVO.searchYear}";
</p>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img alt="${result.nttSj}" onerror="this.src='/img/post/no-img.png'" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
<img alt="${result.nttSj}" onerror='<c:url value='/img/post/no-img.png'/>' src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
</c:when>
<c:otherwise>
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
<img alt="이미지없음" src='<c:url value='/img/post/no-img.png'/>' onerror='<c:url value='/img/post/no-img.png'/>' />
</c:otherwise>
</c:choose>
</a>

View File

@ -38,10 +38,10 @@ $(document).ready(function(){
</div>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img onerror="this.src='/img/post/no-img.png'" alt="첨부파일" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
<img onerror='<c:url value='/img/post/no-img.png'/>' alt="첨부파일" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
</c:when>
<c:otherwise>
<img alt="이미지 없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
<img alt="이미지 없음" src='<c:url value='/img/post/no-img.png'/>' onerror='<c:url value='/img/post/no-img.png'/>' />
</c:otherwise>
</c:choose>
</div>

View File

@ -38,10 +38,10 @@ $(document).ready(function(){
</div>
<c:choose>
<c:when test="${result.atchFileCnt > 0}">
<img onerror="this.src='/img/post/no-img.png'" alt="첨부파일" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
<img onerror='<c:url value='/img/post/no-img.png'/>' alt="첨부파일" src='<c:url value='/cmm/fms/getImage.do'/>?atchFileId=<c:out value="${result.atchFileId}"/>&fileSn=<c:out value="${result.fileSn}"/>'/>
</c:when>
<c:otherwise>
<img alt="이미지 없음" src='<c:url value='/img/post/no-img.png'/>' onerror="this.src='/img/post/no-img.png'" />
<img alt="이미지 없음" src='<c:url value='/img/post/no-img.png'/>' onerror='<c:url value='/img/post/no-img.png'/>' />
</c:otherwise>
</c:choose>
</div>

View File

@ -1140,7 +1140,7 @@ body {
height: 278px;
border: 1px solid #ccc;
overflow: hidden;
background: url(/img/post/no-img.png) center center no-repeat;
background: url(/ipedu/img/post/no-img.png) center center no-repeat;
background-size: cover;
margin-left: 5px;
margin-bottom: 7px;
@ -1148,7 +1148,7 @@ body {
}
.img_cont_2{
background: url(/img/post/no-img.png) center center no-repeat;
background: url(/ipedu/img/post/no-img.png) center center no-repeat;
}
.img_cont_use {

View File

@ -1129,7 +1129,7 @@ body {
height: 278px;
border: 1px solid #ccc;
overflow: hidden;
background: url(/img/post/no-img.png) center center no-repeat;
background: url(/ipedu/img/post/no-img.png) center center no-repeat;
background-size: cover;
margin-left: 5px;
margin-bottom: 7px;
@ -1137,7 +1137,7 @@ body {
}
.img_cont_2{
background: url(/img/post/no-img.png) center center no-repeat;
background: url(/ipedu/img/post/no-img.png) center center no-repeat;
}
.img_cont_use {

View File

@ -1138,7 +1138,7 @@ body {
height: 278px;
border: 1px solid #ccc;
overflow: hidden;
background: url(/img/post/no-img.png) center center no-repeat;
background: url(/ipedu/img/post/no-img.png) center center no-repeat;
background-size: cover;
margin-left: 5px;
margin-bottom: 7px;
@ -1146,7 +1146,7 @@ body {
}
.img_cont_2{
background: url(/img/post/no-img.png) center center no-repeat;
background: url(/ipedu/img/post/no-img.png) center center no-repeat;
}
.img_cont_use {