Files
vexplor/src/com/pms/controller/EOMngController.java

570 lines
19 KiB
Java
Raw Normal View History

2025-08-21 09:41:46 +09:00
package com.pms.controller;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
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.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import com.pms.common.bean.PersonBean;
import com.pms.common.utils.CommonUtils;
import com.pms.common.utils.Constants;
import com.pms.service.AdminService;
import com.pms.service.ApprovalService;
import com.pms.service.CommonService;
import com.pms.service.EOMngService;
import com.pms.service.PartMngService;
@Controller
public class EOMngController {
@Autowired
EOMngService eoMngService;
@Autowired
CommonService commonService;
@Autowired
AdminService adminService;
@Autowired
PartMngService partMngService;
@Autowired
ApprovalService approvalService;
/**
* EO 등록 목록
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/eoMngTempList.do")
public String eoMngTempList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
paramMap.put("EO_STATUS", "temp");
ArrayList list = new ArrayList();
Map code_map = new HashMap();
try{
list = (ArrayList)eoMngService.eoMngList(request, paramMap);
//기종(모델)명
code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect"));
//상태코드
code_map.put("status_code",commonService.bizMakeOptionList("0000130", (String)paramMap.get("status_code"),"common.getCodeselect"));
//eo 종류
code_map.put("eo_kind",commonService.bizMakeOptionList("0000127", "","common.getCodeselect"));
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("code_map",code_map);
request.setAttribute("LIST", list);
return "/eoMng/eoMngTempList";
}
/**
* EO 조회 목록
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/eoMngList.do")
public String eoMngList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
paramMap.put("status_code", "approvalComplete");
ArrayList list = new ArrayList();
Map code_map = new HashMap();
try{
list = (ArrayList)eoMngService.eoMngList(request, paramMap);
//기종(모델)명
code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect"));
//상태코드
code_map.put("status_code",commonService.bizMakeOptionList("0000130", (String)paramMap.get("status_code"),"common.getCodeselect"));
//eo 종류
code_map.put("eo_kind",commonService.bizMakeOptionList("0000127", "","common.getCodeselect"));
//설변요청 코드
code_map.put("request_code",commonService.bizMakeOptionList("0000108", (String)paramMap.get("request_code"),"common.getCodeselect"));
//설변적용
code_map.put("apply_code",commonService.bizMakeOptionList("0000137", (String)paramMap.get("apply_code"),"common.getCodeselect"));
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("code_map",code_map);
request.setAttribute("LIST", list);
return "/eoMng/eoMngList";
}
/**
* EO 조회 목록
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/eoMngNewList.do")
public String newEOMngList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
paramMap.put("EO_STATUS", "new10Day");
List list = eoMngService.eoMngList(request, paramMap);
request.setAttribute("LIST", list);
return "/eoMng/eoMngNewList";
}
/**
* EO 등록 팝업
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/eoMngFormPopUp.do")
public String eoMngFormPopUp(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
HashMap ecrMap = new HashMap();
ArrayList approvalList = new ArrayList();
Map code_map = new HashMap();
try{
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
String re_objid = CommonUtils.checkNull(paramMap.get("re_objid"));
String [] arrrequest_code = null;
String [] arrperiod_code = null;
String request_code ="";
String period_code ="";
paramMap.put("OBJID",objId);
System.out.println("paramMap :: " + paramMap);
if(!"".equals(objId)){
resultMap = eoMngService.getEOInfo(request, paramMap);
approvalList = approvalService.getApprovalLine(request, paramMap);
System.out.println("resultMap ::: " + resultMap);
if(resultMap == null){
resultMap = new HashMap();
System.out.println("objId ? " + objId);
resultMap.put("OBJID", objId);
resultMap.put("STATUS", "create");
//기종(모델)명
code_map.put("product_code1",commonService.bizMakeOptionList("", (String)ecrMap.get("product_code"),"common.getProductCodeselect"));
//동시적용
code_map.put("product_code2",commonService.bizMakeOptionList("", (String)ecrMap.get("product_code"),"common.getProductCodeselect"));
//설변목적 코드
code_map.put("request_code",commonService.bizMakeCheckBoxMultiList("0000108","request_code",arrrequest_code,"common.getCodeselect"));
//설변 구분
code_map.put("eo_gubun",commonService.bizMakeOptionList("0000124", "","common.getCodeselect"));
//eo 종류
code_map.put("eo_kind",commonService.bizMakeOptionList("0000127", "","common.getCodeselect"));
//ecr no
code_map.put("ecr_code",commonService.bizMakeOptionList("", "","common.getEcrCodeselect"));
//적용시기 코드
code_map.put("period_code",commonService.bizMakeCheckBoxMultiList("0000117","period_code",arrperiod_code,"common.getCodeselect"));
//배포처
code_map.put("deploy_dept" ,commonService.bizMakeOptionList("", "","common.getCodeselectUser"));
}else{
request_code = CommonUtils.nvl((String)resultMap.get("REQUEST_CODE"),"");
if(!"".equals(request_code)){
arrrequest_code = request_code.split(",");
}
period_code = CommonUtils.nvl((String)resultMap.get("PERIOD_CODE"),"");
if(!"".equals(period_code)){
arrperiod_code = period_code.split(",");
}
//기종(모델)명
code_map.put("product_code1",commonService.bizMakeOptionList("", (String)resultMap.get("PRODUCT_1"),"common.getProductCodeselect"));
//동시적용
code_map.put("product_code2",commonService.bizMakeOptionList("", (String)resultMap.get("PRODUCT_2"),"common.getProductCodeselect"));
//설변요청 코드
code_map.put("request_code",commonService.bizMakeCheckBoxMultiList("0000108","request_code",arrrequest_code,"common.getCodeselect"));
//적용시기 코드
code_map.put("period_code",commonService.bizMakeCheckBoxMultiList("0000117","period_code",arrperiod_code,"common.getCodeselect"));
//설변 구분
code_map.put("eo_gubun",commonService.bizMakeOptionList("0000124",(String)resultMap.get("EO_GUBUN"),"common.getCodeselect"));
//eo 종류
code_map.put("eo_kind",commonService.bizMakeOptionList("0000127",(String)resultMap.get("EO_KIND"),"common.getCodeselect"));
//ecr no
code_map.put("ecr_code",commonService.bizMakeOptionList("", (String)resultMap.get("ECR_OBJID"),"common.getEcrCodeselect"));
//배포처
code_map.put("deploy_dept" ,commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)resultMap.get("DEPLOY_DEPT")),"common.getCodeselectUser"));
}
}else{
objId = CommonUtils.createObjId();
resultMap.put("OBJID", objId);
resultMap.put("STATUS", "create");
// if(!"".equals(re_objid)){
// resultMap.put("OBJID", re_objid);
// resultMap.put("STATUS", "create");
// }else{
// objId = CommonUtils.createObjId();
// resultMap.put("OBJID", objId);
// resultMap.put("STATUS", "create");
// }
ecrMap = new HashMap();
ecrMap.put("objId", CommonUtils.createObjId());
//기종(모델)명
code_map.put("product_code1",commonService.bizMakeOptionList("", (String)ecrMap.get("product_code"),"common.getProductCodeselect"));
//동시적용
code_map.put("product_code2",commonService.bizMakeOptionList("", (String)ecrMap.get("product_code"),"common.getProductCodeselect"));
//설변목적 코드
code_map.put("request_code",commonService.bizMakeCheckBoxMultiList("0000108","request_code",arrrequest_code,"common.getCodeselect"));
//설변 구분
code_map.put("eo_gubun",commonService.bizMakeOptionList("0000124", "","common.getCodeselect"));
//eo 종류
code_map.put("eo_kind",commonService.bizMakeOptionList("0000127", "","common.getCodeselect"));
//ecr no
code_map.put("ecr_code",commonService.bizMakeOptionList("", "","common.getEcrCodeselect"));
//적용시기 코드
code_map.put("period_code",commonService.bizMakeCheckBoxMultiList("0000117","period_code",arrperiod_code,"common.getCodeselect"));
//배포처
// code_map.put("deploy_dept" ,commonService.bizMakeOptionList("", "","common.getCodeselectUser"));
code_map.put("deploy_dept" ,commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)resultMap.get("DEPLOY_DEPT")),"common.getCodeselectUser"));
}
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("resultMap", resultMap);
request.setAttribute("approvalList", approvalList);
request.setAttribute("code_map", code_map);
return "/eoMng/eoMngFormPopUp";
}
/**
* EO 상세 팝업
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/eoMngDetailPopUp.do")
public String eoMngDetailPopUp(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
ArrayList approvalList = new ArrayList();
Map code_map = new HashMap();
try{
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
String lookup = CommonUtils.checkNull(paramMap.get("lookup"));
String request_code ="";
String period_code ="";
String [] arrrequest_code = null;
String [] arrperiod_code = null;
System.out.println("lookup ?" + lookup);
paramMap.put("OBJID",objId);
System.out.println("paramMap :: " + paramMap);
if(!"".equals(objId)){
resultMap = eoMngService.getEOInfo(request, paramMap);
resultMap.put("lookup",lookup);
approvalList = approvalService.getApprovalLine(request, paramMap);
System.out.println("resultMap :: " +resultMap);
request_code = CommonUtils.nvl((String)resultMap.get("REQUEST_CODE"),"");
if(!"".equals(request_code)){
arrrequest_code = request_code.split(",");
}
period_code = CommonUtils.nvl((String)resultMap.get("PERIOD_CODE"),"");
if(!"".equals(period_code)){
arrperiod_code = period_code.split(",");
}
//기종(모델)명
code_map.put("product_code1",commonService.bizMakeOptionList("", (String)resultMap.get("PRODUCT_1"),"common.getProductCodeselect"));
//동시적용
code_map.put("product_code2",commonService.bizMakeOptionList("", (String)resultMap.get("PRODUCT_2"),"common.getProductCodeselect"));
//설변요청 코드
code_map.put("request_code",commonService.bizMakeCheckBoxMultiList("0000108","request_code",arrrequest_code,"common.getCodeselect"));
//적용시기 코드
code_map.put("period_code",commonService.bizMakeCheckBoxMultiList("0000117","period_code",arrperiod_code,"common.getCodeselect"));
//설변 구분
code_map.put("eo_gubun",commonService.bizMakeOptionList("0000124",(String)resultMap.get("EO_GUBUN"),"common.getCodeselect"));
//eo 종류
code_map.put("eo_kind",commonService.bizMakeOptionList("0000127",(String)resultMap.get("EO_KIND"),"common.getCodeselect"));
//ecr no
code_map.put("ecr_code",commonService.bizMakeOptionList("", (String)resultMap.get("ECR_OBJID"),"common.getEcrCodeselect"));
//배포처
code_map.put("deploy_dept" ,commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)resultMap.get("DEPLOY_DEPT")),"common.getCodeselectUser"));
System.out.println("code_map :: " + code_map);
}else{
objId = CommonUtils.createObjId();
resultMap.put("OBJID", objId);
resultMap.put("lookup",lookup);
}
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("code_map", code_map);
request.setAttribute("resultMap", resultMap);
request.setAttribute("approvalList", approvalList);
return "/eoMng/eoMngDetailPopUp";
}
/**
* EO memo 저장
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/mergeEOmemo.do")
public String mergeEOmemo(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
eoMngService.mergeEOmemo(request, paramMap);
resultMap.put("msg", "success");
}catch(Exception e){
resultMap.put("msg", "fail");
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* EO 저장
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/mergeEOMng.do")
public String mergeEOMng(HttpSession session,HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
String writer = CommonUtils.checkNull(person.getUserId());
paramMap.put("writer", writer);
eoMngService.mergeEOMng(request, paramMap);
resultMap.put("msg", "저장되었습니다.");
}catch(Exception e){
resultMap.put("msg", "오류가 발생하였습니다.");
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* EO 배포
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/eoMngDeploy.do")
public String eoMngDeploy(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
eoMngService.eoMngDeploy(request, paramMap);
resultMap.put("msg", "배포되었습니다.");
}catch(Exception e){
resultMap.put("msg", "오류가 발생하였습니다.");
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* EO 배포
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/deleteEOMng.do")
public String deleteEOMng(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
eoMngService.deleteEOMng(request, paramMap);
resultMap.put("msg", "삭제되었습니다.");
}catch(Exception e){
resultMap.put("msg", "오류가 발생하였습니다.");
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* EO 팝업 -> part 조회 팝업
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/partMngListPopUp.do")
public String partSearchPopup(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
System.out.println("objid :: " + objId);
paramMap.put("OBJID",objId);
if(!"".equals(objId)){
resultMap = eoMngService.getEOInfo(request, paramMap);
}else{
objId = CommonUtils.createObjId();
resultMap.put("OBJID", objId);
}
paramMap.put("EO","Y");
paramMap.put("IS_LAST","1");
paramMap.put("STATUS","release");
//이미 연결된 Part는 제외한다.
paramMap.put("search_except_eo",objId);
List list = CommonUtils.keyChangeUpperList(partMngService.getPartMngList(request,paramMap));
request.setAttribute("resultMap", resultMap);
request.setAttribute("LIST", list);
return "/eoMng/partMngListPopUp";
}
/**
* EO에 연결된 Part를 저장한다.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/addPartMng.do")
public String addPartMng(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
eoMngService.addPartMng(request, paramMap);
resultMap.put("msg", "저장되었습니다.");
}catch(Exception e){
resultMap.put("msg", "오류가 발생하였습니다.");
e.printStackTrace();
}
// request.setAttribute("RESULT", resultMap);
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
// return partSearchPopup(request, paramMap);
return "/ajax/ajaxResult";
}
/**
* EO와 연결된 Part 정보를 가져온다.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/getConnectPartMngList.do")
public String eoMngConnectPartMngList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
List resultList = new ArrayList();
try{
resultList = eoMngService.getConnectPartMngList(request, paramMap);
System.out.println("resultList:"+resultList);
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonArray(resultList));
return "/ajax/ajaxResult";
}
/**
* EO와 연결된 Part 정보를 삭제한다.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/deleteConnectPartMng.do")
public String deleteConnectPartMng(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap resultMap = new HashMap();
try{
eoMngService.deleteConnectPartMng(request, paramMap);
resultMap.put("msg", "삭제하였습니다.");
}catch(Exception e){
resultMap.put("msg", "오류가 발생하였습니다.");
e.printStackTrace();
}
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* eo 구분에따른 ecr no
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/eoMng/getEcr_cd_List.do")
public String gettemplate_code_detailList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
boolean isJson = Boolean.parseBoolean(CommonUtils.checkNull(paramMap.get("isJson")));
ArrayList<HashMap<String, Object>> list = (ArrayList)eoMngService.getEcr_cd_List(paramMap);
System.out.println("list :: " + list);
list = CommonUtils.toUpperCaseMapKey(list);
if(isJson) request.setAttribute("RESULT", CommonUtils.getJsonArray(list));
else request.setAttribute("RESULT", list);
return "/ajax/ajaxResult";
}
}