FAISP/src/main/java/com/dbnt/faisp/config/BaseController.java

143 lines
6.1 KiB
Java
Raw Normal View History

package com.dbnt.faisp.config;
import com.dbnt.faisp.main.authMgt.service.AuthMgtService;
import com.dbnt.faisp.main.codeMgt.model.CodeMgt;
import com.dbnt.faisp.main.faRpt.model.FaRptBoard;
import com.dbnt.faisp.main.faRpt.service.FaRptService;
import com.dbnt.faisp.main.fpiMgt.affair.model.AffairBoard;
import com.dbnt.faisp.main.fpiMgt.affair.model.DashboardAffair;
import com.dbnt.faisp.main.fpiMgt.affair.service.AffairService;
import com.dbnt.faisp.main.menuMgt.service.MenuMgtService;
import com.dbnt.faisp.main.organMgt.service.OrganConfigService;
import com.dbnt.faisp.main.publicBoard.model.PublicBoard;
import com.dbnt.faisp.main.publicBoard.service.PublicBoardService;
2023-01-28 04:33:49 +00:00
import com.dbnt.faisp.main.userInfo.model.UserAlarm;
import com.dbnt.faisp.main.userInfo.model.UserInfo;
import com.dbnt.faisp.main.codeMgt.service.CodeMgtService;
2023-01-28 04:33:49 +00:00
import com.dbnt.faisp.main.userInfo.service.UserAlarmService;
import com.dbnt.faisp.main.userInfo.service.UserInfoService;
import com.dbnt.faisp.util.Utils;
import lombok.RequiredArgsConstructor;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.Map;
@RestController
@RequiredArgsConstructor
public class BaseController {
private final CodeMgtService codeMgtService;
private final OrganConfigService organConfigService;
private final MenuMgtService menuMgtService;
private final PublicBoardService publicBoardService;
private final FaRptService faRptService;
private final AffairService affairService;
2023-01-28 04:33:49 +00:00
private final UserAlarmService userAlarmService;
private final AuthMgtService authMgtService;
@GetMapping("/")
public ModelAndView loginCheck(@AuthenticationPrincipal UserInfo loginUser) {
ModelAndView mav = null;
if(loginUser == null){
mav = new ModelAndView("redirect:/login");
}else{
mav = new ModelAndView("redirect:/dashboard");
}
return mav;
}
@GetMapping("/login")
public ModelAndView goLogin() {
ModelAndView mav = new ModelAndView("login/login");
return mav;
}
@GetMapping("/login-error")
public ModelAndView loginError() {
ModelAndView mav = new ModelAndView("login/login");
mav.addObject("loginError", true);
return mav;
}
@GetMapping("/denied")
public ModelAndView doDenied() {
ModelAndView mav = new ModelAndView("login/denied");
return mav;
}
@GetMapping("/dashboard")
public ModelAndView dashboard(@AuthenticationPrincipal UserInfo loginUser, HttpSession session) {
ModelAndView mav = new ModelAndView("login/dashboard");
setSession(loginUser, session);
PublicBoard noticeParams = new PublicBoard();
noticeParams.setPublicType("PLB001");
noticeParams.setRowCnt(8);
noticeParams.setDownOrganCdList(loginUser.getDownOrganCdList());
noticeParams.setUpOrganCdList(loginUser.getUpOrganCdList());
mav.addObject("noticeList", publicBoardService.selectContentList(noticeParams));
2023-01-28 04:33:49 +00:00
UserAlarm alarm = new UserAlarm();
alarm.setUserSeq(loginUser.getUserSeq());
alarm.setViewYn("N");
alarm.setRowCnt(8);
mav.addObject("dashboardAlarmList", userAlarmService.selectAlarmList(alarm));
2023-01-28 04:33:49 +00:00
FaRptBoard faRpt = new FaRptBoard();
faRpt.setActiveTab("receive");
faRpt.setRowCnt(8);
faRpt.setStatus("DST007");
faRpt.setReceiveUserSeq(loginUser.getUserSeq());
mav.addObject("faRptList", faRptService.selectFaRptList(faRpt));
DashboardAffair affair = new DashboardAffair();
affair.setPlanApprv(authMgtService.selectApprovalConfigList(loginUser.getUserSeq(), "/affairPlan/planMgt").get(0).getApprovalAuth());
affair.setAffairApprv(authMgtService.selectApprovalConfigList(loginUser.getUserSeq(), "/affair/affairMgt/myReport?affairCategory=CAT215").get(0).getApprovalAuth());
affair.setResultApprv(authMgtService.selectApprovalConfigList(loginUser.getUserSeq(), "/affairResult/resultMgt").get(0).getApprovalAuth());
affair.setUserSeq(loginUser.getUserSeq());
affair.setOgCd(loginUser.getOgCd());
mav.addObject("affair1List", affairService.selectDashboardAffairList(affair));
affair.setAffairApprv(authMgtService.selectApprovalConfigList(loginUser.getUserSeq(), "/affair/affairMgt/myReport?affairCategory=CAT216").get(0).getApprovalAuth());
mav.addObject("affair2List", affairService.selectDashboardIntelligenceNetworkList(affair));
return mav;
}
@GetMapping("/selectBoxOptions")
public ModelAndView codeMgtPage(String categoryCd, String selectedCd) {
ModelAndView mav = new ModelAndView("common/selectBox/options");
mav.addObject("codeList", codeMgtService.selectCodeMgtList(categoryCd));
mav.addObject("selectedCd", selectedCd);
return mav;
}
@GetMapping("/resetSession")
public ModelAndView resetSession(@AuthenticationPrincipal UserInfo loginUser, HttpServletRequest request){
setSession(loginUser, request.getSession());
return new ModelAndView("redirect:/dashboard");
}
public void setSession(@AuthenticationPrincipal UserInfo loginUser, HttpSession session){
2023-02-08 09:19:52 +00:00
loginUser.setDownOrganCdList(organConfigService.selectDownOrganList(loginUser.getOgCd()));
loginUser.setUpOrganCdList(organConfigService.selectUpOrganList(loginUser.getOgCd()));
session.setAttribute("menuList", menuMgtService.selectAccessMenuListWhereUserSeq(loginUser.getUserSeq()));
Map<String, List<CodeMgt>> codeMap = codeMgtService.getCommonCode();
session.setAttribute("commonCode", codeMap);
session.setAttribute("userSeq", loginUser.getUserSeq());
session.setAttribute("userOrgan", loginUser.getOgCd());
String belongValue = "";
belongValue += Utils.searchCodeValue(loginUser.getOgCd(), codeMap.get("OG"));
belongValue += Utils.searchCodeValue(loginUser.getOfcCd(), codeMap.get(loginUser.getOgCd()));
belongValue += Utils.searchCodeValue(loginUser.getTitleCd(), codeMap.get("JT"));
belongValue += loginUser.getUserNm()+"("+loginUser.getUserId()+")";
session.setAttribute("belongValue", belongValue);
}
}