
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
package com.takensoft.cms.bbs.web;
import com.takensoft.cms.bbs.service.BbsCnService;
import com.takensoft.cms.bbs.service.BbsMngService;
import com.takensoft.cms.bbs.service.BbsTypeMngService;
import com.takensoft.cms.bbs.vo.BbsMngVO;
import com.takensoft.cms.bbs.vo.BbsTypeMngVO;
import com.takensoft.cms.codeManage.service.CodeManageService;
import com.takensoft.cms.codeManage.vo.CodeManageVO;
import com.takensoft.common.HierachyVO;
import com.takensoft.common.message.MessageCode;
import com.takensoft.common.util.ResponseData;
import com.takensoft.common.util.ResponseUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.nio.charset.Charset;
import java.util.*;
/**
* @author 박정하
* @since 2024.05.08
* @modification
* since | author | description
* 2024.05.08 | 박정하 | 최초 등록
* 2024.05.08 | 하석형 | findByBbsMng 추가
* 2024.05.09 | 하석형 | updateProc, deleteProc 추가
* 2024.05.10 | 하석형 | saveProc, findAll 추가
* 2024.05.16 | 박정하 | findAllByMenuMng 추가
* 2025.03.21 | 하석형 | 코드 리펙토링
*
* 게시판 관리 관련 컨트롤러
*/
@RestController
@RequiredArgsConstructor
@Slf4j
@RequestMapping(value="/admin/bbsMng")
public class BbsMngController {
private final ResponseUtil resUtil;
private final BbsMngService bbsMngService;
private final BbsTypeMngService bbsTypeMngService;
private final CodeManageService codeManageService;
/**
* @param bbsMngVO - 게시판 관리 정보
* @return ResponseEntity - 게시판 관리 등록 결과를 포함하는 응답
*
* 게시판 관리 등록
*/
@PostMapping("/saveProc.json")
public ResponseEntity<?> saveProc(@RequestBody BbsMngVO bbsMngVO) {
// 게시판 관리 등록
HashMap<String, Object> result = bbsMngService.saveBbsMng(bbsMngVO);
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS);
}
/**
* @param params - 검색조건 및 페이징 정보
* @return ResponseEntity - 게시판 관리 목록 조회 결과를 포함하는 응답
*
* 게시판 관리 목록 조회
*/
@PostMapping("/findAll.json")
public ResponseEntity<?> findAll(@RequestBody HashMap<String, String> params) {
// 게시판 관리 목록 조회
Map<String, Object> result = bbsMngService.findAllBbsMng(params);
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS);
}
/**
* @return ResponseEntity - 게시판 관리 목록 조회 결과를 포함하는 응답
*
* 게시판 관리 목록 조회 (메뉴 관리용)
*/
@PostMapping("/findAllByMenuMng.json")
public ResponseEntity<?> findAllByMenuMng() {
// 게시판 관리 목록 조회
List<BbsMngVO> result = bbsMngService.findAllByMenuMng();
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS);
}
/**
* @param bbsMngVO - 게시판 관리 정보
* @return ResponseEntity - 게시판 관리 상세 조회 결과를 포함하는 응답
*
* 게시판 관리 상세 조회
*/
@PostMapping("/findByBbsMng.json")
public ResponseEntity<?> findByBbsMng(@RequestBody BbsMngVO bbsMngVO) {
// 게시판 관리 상세 조회
BbsMngVO bbsMng = bbsMngService.findByBbsMngId(bbsMngVO.getBbsMngId());
// 게시판 유형 목록 조회
BbsTypeMngVO bbsTypeMap = new BbsTypeMngVO();
bbsTypeMap.setExpsrYn("Y");
List<BbsTypeMngVO> bbsType = (List<BbsTypeMngVO>) bbsTypeMngService.findAllBbsTypeMng(bbsTypeMap).get("list");
// 페이지 유형 목록 조회
List<CodeManageVO> pageType = codeManageService.findByChildCdCache("pageType");
Map<String, Object> result = new HashMap<String, Object>();
result.put("bbsMng", bbsMng);
result.put("bbsTypeList", bbsType);
result.put("pageTypeList", pageType);
// 응답 처리
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS);
}
/**
* @param bbsMngVO - 게시판 관리 정보
* @return ResponseEntity - 게시판 관리 수정 결과를 포함하는 응답
*
* 게시판 관리 수정
*/
@PostMapping("/updateProc.json")
public ResponseEntity<?> updateProc(@RequestBody BbsMngVO bbsMngVO) {
// 게시판 관리 수정
int result = bbsMngService.updateBbsMng(bbsMngVO);
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS);
}
/**
* @param bbsMngVO - 게시판 관리 정보
* @return ResponseEntity - 게시판 관리 삭제 결과를 포함하는 응답
*
* 게시판 관리 삭제
*/
@PostMapping("/deleteProc.json")
public ResponseEntity<?> deleteProc(@RequestBody BbsMngVO bbsMngVO) {
// 게시판 관리 수정
int result = bbsMngService.deleteBbsMng(bbsMngVO);
return resUtil.successRes(result, MessageCode.COMMON_SUCCESS);
}
}