본문 바로가기
파이널 프로젝트

X-nags 그룹웨어

by juneMiller 2021. 12. 1.

Spring 기반 그룹웨어를 만들었습니다.

 

제가 맡은 부분은 사원 등록 조회 수정 삭제

비품 예약 , 기간연장, 반납 

회의실 예약, 취소, 삭제 기능을 구현 하였습니다. 

 

DataTable API : https://datatables.net/

02. 사원 조회

Controller 

	@RequestMapping("listEmp.me")
	public String selectList(@RequestParam(value="currentPage", required=false, defaultValue="1") int currentPage, Model model) {
		/*
		 * 1.@RequestParam(value="currentPage") int currentPage -->값이 넘어오지 않았을때 에러(값을 주입할수 없어서)
		 * 2.@RequestParam(value="currentPage", required=false) int currentPage
		 * 
		 * -->required : 해당 피라미터가 필수인지 여우(true = 필수) 
		 * 따라서 required = false 로 지정하여 값을 받아줄 필요가 없다고 선언(null 이 들어올 수 있다.) 
		 * -->null 은 기본형 int 에 들어갈 수 없어서 에러가 발생한다. 
		 * 
		 * 3.@RequestParam(value="currentPage", required=false, defaultValue="1") int currentPage)
		 * dafultValue : 넘어오는 값이 null 일 경우, 해당 피라미터의 기본 값을 지정할 수 있다.
		 * 
		 * */
		
		int listCount = employeeService.selectListCount();
		System.out.println(listCount);
		
		
		PageInfo pi = PaginationEmp.getPageInfo(listCount, currentPage, 10, 10);
		
		ArrayList<Employee> list = employeeService.selectList(pi);
		
		
		
		System.out.println(list);

		
		model.addAttribute("list", list);
		model.addAttribute("pi",pi);
		return "employee/listEmp";
		
	
	}

Mapper 

<select id="selectList" resultMap="employeeResultSet">
		SELECT E.EMP_ID, M.USER_NAME, J.JOB_NAME, E.JOB_CODE, R.RIGHT_NAME, D.DEPT_NAME, E.SAL_LEVEL, E.HIRE_DATE, E.MODIFIY_DATE, E.END_DATE
		FROM EMPLOYEE E
		JOIN MEMBER M ON M.EMP_ID = E.EMP_ID
        JOIN JOB J  ON J.JOB_CODE = E.JOB_CODE
		JOIN DEPARTMENT D ON D.DEPT_CODE = E.DEPT_CODE 
		JOIN RIGHT R ON R.RIGHT_NO = E.RIGHT_NO
		ORDER BY EMP_ID DESC		
	</select>

 

 

02. 사원 조회 상세페이지

Controller

	@RequestMapping("empDetail.me")
	public ModelAndView empPage(int empId, ModelAndView mv, Model model) {
		
		ArrayList<Job> jlist = employeeService.selectJlist();
		ArrayList<Department> dlist = employeeService.selectDlist();
		ArrayList<Right> rlist = employeeService.selectRlist();
		ArrayList<SalGrade> slist = employeeService.selectSlist();
		
		model.addAttribute("jlist", jlist);
		model.addAttribute("dlist", dlist);
		model.addAttribute("rlist", rlist);
		model.addAttribute("slist", slist);
		
		Employee emp = employeeService.selectEmp(empId);
		Member mem = memberService.selectMem(empId);
		Salary sal = salaryService.selectSal(empId);
		
		mv.addObject("emp", emp).setViewName("employee/empDetail");
		mv.addObject("mem", mem).setViewName("employee/empDetail");
		mv.addObject("sal", sal).setViewName("employee/empDetail");
		return mv;
	}

 

각각의 테이블로 회원아이디를 가지고 결과를 가져와야 하므로 각각의 서비스단으로 보내준다. 

Employee emp = employeeService.selectEmp(empId);
Member mem = memberService.selectMem(empId);
Salary sal = salaryService.selectSal(empId);

 

 

 

'파이널 프로젝트' 카테고리의 다른 글

X-nags 그룹웨어  (0) 2021.12.01
X-nags 그룹웨어  (0) 2021.12.01
X-nags 그룹웨어  (0) 2021.11.29