diff --git a/pom.xml b/pom.xml
index 3f58d894..6c0ba54b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -623,6 +623,12 @@
2.5.0
+
+
+ joda-time
+ joda-time
+ 2.4
+
diff --git a/src/main/java/kcc/com/cmm/util/Criteria.java b/src/main/java/kcc/com/cmm/util/Criteria.java
index 646fb74c..2a5de7d2 100644
--- a/src/main/java/kcc/com/cmm/util/Criteria.java
+++ b/src/main/java/kcc/com/cmm/util/Criteria.java
@@ -81,6 +81,10 @@ public class Criteria implements Serializable {
/** 메뉴번호 */
private Integer menuNo;
+ /** 분쟁조정 as-is */
+ private int page;
+ private int perPageNum;
+
/**
* 기본생성자
*/
@@ -372,4 +376,33 @@ public class Criteria implements Serializable {
return ToStringBuilder.reflectionToString(this);
}
+ public void setPage(int page){
+ if(page <= 0){
+ this.page = 1;
+ return;
+ }
+
+ this.page = page;
+ }
+
+ public void setPerPageNum(int perPageNum){
+ if(perPageNum <= 0 || perPageNum > 100){
+ this.perPageNum = 10;
+ return;
+ }
+
+ this.perPageNum = perPageNum;
+ }
+
+ public int getPage(){
+ return page;
+ }
+
+ public int getPageStart(){
+ return (this.page - 1) * perPageNum;
+ }
+
+ public int getPerPageNum(){
+ return this.perPageNum;
+ }
}
diff --git a/src/main/java/seed/com/gtm/board/CaseBoardController.java b/src/main/java/seed/com/gtm/board/CaseBoardController.java
new file mode 100644
index 00000000..8b3c6f2d
--- /dev/null
+++ b/src/main/java/seed/com/gtm/board/CaseBoardController.java
@@ -0,0 +1,164 @@
+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 kcc.com.cmm.util.Criteria;
+import seed.com.gtm.seedfile.SeedFileService;
+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, @RequestParam Map paramMap, @PathVariable(value="boardIdx") String boardIdx){
+ paramMap.put("boardIdx", boardIdx);
+ return "/_extra/gtm/board/write";
+ }
+
+ @RequestMapping(value="/board/{boardIdx}/write.do", method=RequestMethod.POST)
+ public String formWrite(HttpServletRequest request ,HttpSession session, @RequestParam Map paramMap, Map 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 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