FAISP/src/main/java/com/dbnt/faisp/fipTarget/FipTargetController.java

171 lines
7.6 KiB
Java
Raw Normal View History

2022-09-28 07:56:31 +00:00
package com.dbnt.faisp.fipTarget;
import com.dbnt.faisp.authMgt.service.AuthMgtService;
import com.dbnt.faisp.fipTarget.model.PartInfo;
import com.dbnt.faisp.fipTarget.service.FipTargetService;
import com.dbnt.faisp.organMgt.service.OrganConfigService;
import com.dbnt.faisp.publicBoard.model.PublicBoard;
import com.dbnt.faisp.translator.model.Translator;
2022-09-28 07:56:31 +00:00
import com.dbnt.faisp.userInfo.model.UserInfo;
import com.dbnt.faisp.util.ParamMap;
import com.dbnt.faisp.util.Utils;
import lombok.RequiredArgsConstructor;
import java.io.IOException;
import java.time.LocalDateTime;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
@RestController
@RequiredArgsConstructor
@RequestMapping("/target")
public class FipTargetController {
private final OrganConfigService organConfigService;
private final AuthMgtService authMgtService;
private final FipTargetService fipTargetService;
2022-09-28 07:56:31 +00:00
// 외사분실운영현황 시작
2022-09-28 07:56:31 +00:00
@GetMapping("/partInfoList")
2022-09-29 08:55:12 +00:00
public ModelAndView partInfoList(@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo, HttpServletResponse response) {
2022-09-28 07:56:31 +00:00
ModelAndView mav = new ModelAndView("fipTarget/partInfoList");
2022-09-29 08:55:12 +00:00
partInfo.setDownOrganCdList(loginUser.getDownOrganCdList());
//엑셀다운
if(partInfo.getExcel() != null && partInfo.getExcel().equals("Y")){
ParamMap header = fipTargetService.selectWorkTypeTotal(partInfo);
2022-09-29 08:55:12 +00:00
String[] headers = { "mgt_organ", "land_police", "mp_work_type", "mp_people_cnt", "mp_description", "pl_work_type", "pl_people_cnt", "pl_description", "terminal_nm", "pi_manager_name", "rent_price", "utility_price", "wrt_dt"};
String[] headerNames = { "해경서", "육경서", "해경", "", "", "육경", "", "", "", "", "", "",""};
String[] headerNames2 = null;
if(header != null) {
headerNames2 = new String[] { "", "", "상주 "+header.getString("mp_sangju")+"개소 "+header.getString("mp_sangju_total")+"명"
,"비상주 "+header.getString("mp_bsangju")+"개소 "+header.getString("mp_bsangju_total")+"명"
,"폐쇄 "+header.getString("mp_closure")+"개소 "+header.getString("mp_closure_total")+"명"
,"상주 "+header.getString("pl_sangju")+"개소 "+header.getString("pl_sangju_total")+"명"
,"비상주 "+header.getString("pl_bsangju")+"개소 "+header.getString("pl_bsangju_total")+"명"
,"폐쇄 "+header.getString("pl_closure")+"개소 "+header.getString("pl_closure_total")+"명"
, "", "", "", "", "" };
}else {
headerNames2 = new String[] { "", "", "상주 0개소 0명","비상주 0개소 0명","폐쇄 0개소 0명","상주 0개소 0명","비상주 0개소 0명","폐쇄 0개소 0명", "", "", "", "", "" };
}
2022-09-29 08:55:12 +00:00
String[] headerNames3 = { "", "", "근무방법", "명", "비고", "근무방법", "명", "비고", "터미널명", "담당자", "임차료", "공공요금", "최종수정일" };
String[] columnType = { "String", "String", "String", "int", "String", "String", "int", "String", "String", "String", "String","String", "String"};
2022-09-29 08:55:12 +00:00
String sheetName = "외사 분실 현황";
String excelFileName = "외사 분실 현황";
List<PartInfo> partInfoList= fipTargetService.selectPartInfoList(partInfo);
2022-09-29 08:55:12 +00:00
try {
Utils.partInfolistToExcel(partInfoList, response, headers, headerNames,headerNames2,headerNames3, columnType, sheetName, excelFileName);
} catch (IOException e) {
}
return null;
}
2022-09-28 07:56:31 +00:00
//메뉴권한 확인
String accessAuth = authMgtService.selectAccessConfigList(loginUser.getUserSeq(), "/equip/equipStatus").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth);
partInfo.setDownOrganCdList(loginUser.getDownOrganCdList());
partInfo.setQueryInfo();
mav.addObject("total", fipTargetService.selectWorkTypeTotal(partInfo));
mav.addObject("partInfoList", fipTargetService.selectPartInfoList(partInfo));
partInfo.setContentCnt(fipTargetService.selectPartInfoListCnt(partInfo));
2022-09-28 07:56:31 +00:00
partInfo.setPaginationInfo();
2022-09-29 08:55:12 +00:00
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
2022-09-28 07:56:31 +00:00
mav.addObject("searchParams", partInfo);
return mav;
}
@GetMapping("/partInfoEditModal")
public ModelAndView partInfoEditModal(@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo) {
ModelAndView mav = new ModelAndView("fipTarget/partInfoEditModal");
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
return mav;
}
@GetMapping("/partInfoSelecBox")
public ModelAndView equipTypeSelecBox(String ogCd) {
2022-09-29 08:55:12 +00:00
ModelAndView mav = new ModelAndView("fipTarget/partInfoSelecBox");
2022-09-28 07:56:31 +00:00
ParamMap param = new ParamMap();
param.put("downOrganCdList", organConfigService.selectDownOrganListWhereUserOgCd(ogCd));
mav.addObject("managerList", fipTargetService.selectPartInfoManagerList(param));
2022-09-28 07:56:31 +00:00
return mav;
}
@PostMapping("/savePartInfo")
public void savePartInfo (@AuthenticationPrincipal UserInfo loginUser, PartInfo partInfo,MultipartHttpServletRequest request){
partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles"));
partInfo.setWrtNm(loginUser.getUserId());
partInfo.setWrtPart(loginUser.getOfcCd());
partInfo.setWrtUserSeq(loginUser.getUserSeq());
partInfo.setWrtOrgan(loginUser.getOgCd());
partInfo.setWrtDt(LocalDateTime.now());
fipTargetService.savePartInfo(partInfo);
2022-09-28 07:56:31 +00:00
}
2022-09-29 08:55:12 +00:00
@GetMapping("/updatePartInfoPage")
public ModelAndView updatePartInfoPage(@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo) {
ModelAndView mav = new ModelAndView("fipTarget/partInfoModifyModal");
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
PartInfo partInfoView = fipTargetService.selectPartInfo(partInfo);
2022-09-29 08:55:12 +00:00
ParamMap param = new ParamMap();
param.put("downOrganCdList", organConfigService.selectDownOrganListWhereUserOgCd(partInfoView.getMgtOrgan()));
mav.addObject("managerList", fipTargetService.selectPartInfoManagerList(param));
partInfoView.setFileList(fipTargetService.selectPartInfoFile(partInfo));
2022-09-29 08:55:12 +00:00
mav.addObject("partInfo", partInfoView);
return mav;
}
@PostMapping("/updatePartInfo")
public int updatePartInfo (@AuthenticationPrincipal UserInfo loginUser,PartInfo partInfo,
MultipartHttpServletRequest request,
@RequestParam(value = "fileSeq", required = false) List < Integer > deleteFileSeq){
partInfo.setMultipartFileList(request.getMultiFileMap().get("uploadFiles"));
partInfo.setWrtUserSeq(loginUser.getUserSeq());
partInfo.setWrtNm(loginUser.getUserId());
partInfo.setWrtPart(loginUser.getOfcCd());
partInfo.setWrtDt(LocalDateTime.now());
fipTargetService.updatePartInfo(partInfo,deleteFileSeq);
return partInfo.getPiSeq();
}
@GetMapping("/PartInfoHistoryPage")
public ModelAndView PartInfoHistoryPage(PartInfo partInfo) {
ModelAndView mav = new ModelAndView("fipTarget/partInfoHistory");
mav.addObject("partInfoList", fipTargetService.selectPartInfoSeq(partInfo));
return mav;
}
@GetMapping("/partInfoHistoryView")
@ResponseBody
public PartInfo partInfoHistoryView(PartInfo partInfo){
PartInfo partInfoHistory = fipTargetService.selectPartInfoHistoryView(partInfo);
partInfoHistory.setFileList(fipTargetService.selectPartInfoFileHistoryView(partInfo));
return partInfoHistory;
}
@PostMapping("/deletePartInfo")
@ResponseBody
public void deletePartInfo(@RequestBody PartInfo partInfo) {
fipTargetService.deletePartInfo(partInfo);
}
//외사분실 운영현황 끝
2022-09-28 07:56:31 +00:00
}