182 lines
7.0 KiB
Java
182 lines
7.0 KiB
Java
package seed.com.gtm.board;
|
|
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.servlet.http.HttpSession;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Controller;
|
|
import org.springframework.ui.ModelMap;
|
|
import org.springframework.web.bind.annotation.PathVariable;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
|
import seed.com.gtm.seedfile.SeedFileService;
|
|
import seed.com.gtm.util.Criteria;
|
|
import seed.com.gtm.util.PageMaker;
|
|
|
|
@Controller
|
|
@RequestMapping("/gtm/case")
|
|
public class CaseBoardController {
|
|
@Autowired
|
|
private CaseBoardService service;
|
|
|
|
@Autowired
|
|
private SeedFileService fileService;
|
|
|
|
public void setSessionMessageRemove(HttpSession session){
|
|
session.removeAttribute("url");
|
|
session.removeAttribute("message");
|
|
session.removeAttribute("opener");
|
|
session.removeAttribute("append");
|
|
session.removeAttribute("self");
|
|
}
|
|
|
|
// /gtm/case/board/form/write.do
|
|
@RequestMapping(value="/board/{boardIdx}/write.do", method=RequestMethod.GET)
|
|
public String formWrite(ModelMap model, HttpSession session, @RequestParam Map<String,Object> paramMap, @PathVariable(value="boardIdx") String boardIdx){
|
|
paramMap.put("boardIdx", boardIdx);
|
|
return "/seed/_extra/gtm/board/write";
|
|
}
|
|
|
|
@RequestMapping(value="/board/{boardIdx}/write.do", method=RequestMethod.POST)
|
|
public String formWrite(HttpServletRequest request ,HttpSession session, @RequestParam Map<String,Object> paramMap, Map<String, Object> map, @PathVariable(value="boardIdx") String boardIdx){
|
|
paramMap.put("memberName", session.getAttribute("memberName"));
|
|
paramMap.put("memberId", session.getAttribute("memberId"));
|
|
paramMap.put("boardIdx", boardIdx);
|
|
service.boardInsert(paramMap);
|
|
|
|
//현제 등록된 게시글의 시퀀스 불러와 맵에 저장
|
|
paramMap.put("dataIdx", paramMap.get("seq"));
|
|
fileService.fileInsert(paramMap, request, session);
|
|
|
|
map.put("message", "common.message.reg");
|
|
map.put("url", "/gtm/case/board/"+boardIdx+"/list.do");
|
|
|
|
return "/_common/jsp/message";
|
|
}
|
|
|
|
|
|
// /gtm/case/board/form/list.do
|
|
@RequestMapping("/board/{boardIdx}/list.do")
|
|
public String boardList(ModelMap model, HttpSession session, Criteria cri,@RequestParam Map<String,Object> paramMap, @PathVariable(value="boardIdx") String boardIdx){
|
|
|
|
//로그인페이지로 튕겨나가지 않게 우선은 임시방편
|
|
session.setAttribute("siteIdx", "case");
|
|
|
|
String menuName = "";
|
|
if(boardIdx.equals("form")){
|
|
menuName = "분쟁조정 관련 서식";
|
|
}else if(boardIdx.equals("law")){
|
|
menuName = "법령자료실";
|
|
}else if(boardIdx.equals("news")){
|
|
menuName = "뉴스레터 자료";
|
|
}else{
|
|
menuName = "공지사항";
|
|
}
|
|
session.setAttribute("menuName", menuName);
|
|
|
|
//페이징 관련
|
|
paramMap.put("pageStart", cri.getPageStart());
|
|
paramMap.put("perPageNum", cri.getPerPageNum());
|
|
paramMap.put("boardIdx", boardIdx);
|
|
|
|
List<Map<String,Object>> bbsList = service.boardList(paramMap);
|
|
List<Map<String,Object>> selectNotice = service.selectNotice(paramMap);
|
|
|
|
PageMaker pageMaker = new PageMaker();
|
|
pageMaker.setCri(cri);
|
|
pageMaker.setTotalCount(service.boardListCnt(paramMap));
|
|
|
|
model.addAttribute("boardIdx", boardIdx);
|
|
model.addAttribute("bbsList", bbsList);
|
|
model.addAttribute("selectNotice", selectNotice);
|
|
model.addAttribute("pageMaker", pageMaker);
|
|
|
|
return "/seed/_extra/gtm/board/list";
|
|
}
|
|
|
|
@RequestMapping("/board/{boardIdx}/view.do")
|
|
public String boardView(ModelMap model, @RequestParam Map<String,Object> paramMap, @PathVariable(value="boardIdx") String boardIdx){
|
|
|
|
paramMap.put("dataIdx", paramMap.get("bbsNo"));
|
|
System.out.println(paramMap.get("bbsNo"));
|
|
model.addAttribute("bbsView", service.boardView(paramMap));
|
|
model.addAttribute("boardIdx", boardIdx);
|
|
model.addAttribute("fileList", fileService.fileList(paramMap));
|
|
|
|
return "/seed/_extra/gtm/board/view";
|
|
}
|
|
|
|
@RequestMapping("/board/{boardIdx}/bbsDel.do")
|
|
public String boardDel(HttpSession session, @RequestParam Map<String,Object> paramMap, @PathVariable(value="boardIdx") String boardIdx, Map<String, Object> map){
|
|
paramMap.put("dataIdx", paramMap.get("bbsNo"));
|
|
service.boardDel(paramMap);
|
|
fileService.fileDelAll(paramMap);
|
|
this.setSessionMessageRemove(session);
|
|
|
|
map.put("message", "common.message.del");
|
|
map.put("url", "/gtm/case/board/"+boardIdx+"/list.do?searchType=" + paramMap.get("searchType") +
|
|
"&searchTilte=" + paramMap.get("searchTilte") + "&page=" + paramMap.get("page")
|
|
);
|
|
|
|
return "/_common/jsp/message";
|
|
}
|
|
|
|
@RequestMapping(value="/board/{boardIdx}/edit.do", method=RequestMethod.GET)
|
|
public String boardEdit(ModelMap model, @RequestParam Map<String,Object> paramMap, @PathVariable(value="boardIdx") String boardIdx){
|
|
|
|
|
|
paramMap.put("dataIdx", paramMap.get("bbsNo"));
|
|
List<Map<String, Object>> fileList = fileService.fileList(paramMap);
|
|
|
|
model.addAttribute("boardIdx", boardIdx);
|
|
model.addAttribute("bbsView", service.boardView(paramMap));
|
|
model.addAttribute("fileList", fileList);
|
|
model.addAttribute("fileListSize", fileList.size());
|
|
|
|
return "/seed/_extra/gtm/board/edit";
|
|
}
|
|
|
|
@RequestMapping(value="/board/{boardIdx}/edit.do", method=RequestMethod.POST)
|
|
public String boardEdit(HttpSession session, HttpServletRequest request, @RequestParam Map<String,Object> paramMap, @PathVariable(value="boardIdx") String boardIdx, Map<String, Object> map){
|
|
paramMap.put("memberId", session.getAttribute("memberId"));
|
|
paramMap.put("dataIdx", paramMap.get("bbsNo"));//fileInsert에서 필요
|
|
|
|
service.boardUpdate(paramMap);
|
|
fileService.fileInsert(paramMap, request, session);
|
|
fileService.fileDel(paramMap);
|
|
|
|
|
|
this.setSessionMessageRemove(session);
|
|
map.put("message", "common.message.mod");
|
|
map.put("url", "/gtm/case/board/"+boardIdx+"/view.do?bbsNo=" + paramMap.get("bbsNo") +
|
|
"&searchType=" + paramMap.get("searchType") + "&searchTilte=" + paramMap.get("searchTilte") + "&page=" + paramMap.get("page")+
|
|
"&fileFuncType=" + paramMap.get("fileFuncType")
|
|
);
|
|
|
|
return "/_common/jsp/message";
|
|
}
|
|
|
|
//게시글 등록 시 innorix 적용
|
|
@RequestMapping(value="/board/{boardIdx}/writeWithInnorix.do", method=RequestMethod.POST)
|
|
public String formWriteWithInnorix(HttpServletRequest request ,HttpSession session, @RequestParam Map<String,Object> paramMap, Map<String, Object> map, @PathVariable(value="boardIdx") String boardIdx){
|
|
paramMap.put("memberName", session.getAttribute("memberName"));
|
|
paramMap.put("memberId", session.getAttribute("memberId"));
|
|
paramMap.put("boardIdx", boardIdx);
|
|
service.boardInsert(paramMap);
|
|
|
|
//현제 등록된 게시글의 시퀀스 불러와 맵에 저장
|
|
paramMap.put("dataIdx", paramMap.get("seq"));
|
|
/*fileService.fileInsert(paramMap, request, session);*/
|
|
|
|
map.put("message", "common.message.reg");
|
|
map.put("url", "/gtm/case/board/"+boardIdx+"/list.do");
|
|
|
|
return "/_common/jsp/message";
|
|
}
|
|
}
|