package com.pms.controller; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.put; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.forwardedUrl; import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.commons.lang3.StringUtils; import org.apache.ibatis.session.SqlSession; 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.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import com.pms.common.JsonUtil; import com.pms.common.SqlMapConfig; import com.pms.common.bean.PersonBean; import com.pms.common.utils.CommonUtils; import com.pms.common.utils.Constants; import com.pms.service.CommonService; import com.pms.service.PartMgmtService; import com.pms.service.PartMngService; import com.pms.service.ProductMgmtService; import com.pms.service.ProjectConceptService; @Controller public class PartMngController { ProjectConceptService service = null; @Autowired PartMngService partMngService; @Autowired PartMgmtService partMgmtService; @Autowired ProductMgmtService productMgmtService; @Autowired CommonService commonService; @Autowired public void setProjectConceptService(ProjectConceptService service){ this.service = service; } /** * PART 등록 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngTempList.do") public String partMngTempList(HttpServletRequest request, @RequestParam Map paramMap){ String page ="/partMng/partMngTempList"; Map code_map = new HashMap(); List list = new ArrayList(); String islast = CommonUtils.checkNull(paramMap.get("IS_LAST")); if("".equals(islast)){ paramMap.put("IS_LAST","0"); } paramMap.put("STATUS","create"); try { //list = CommonUtils.keyChangeUpperList(partMngService.partMngTempList(request,paramMap)); list = partMngService.partMngTempList(request,paramMap); code_map.put("WRITER", commonService.bizMakeOptionList("", (String)paramMap.get("WRITER"), "common.getUserselect")); //구매 PM code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect")); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } request.setAttribute("code_map",code_map); request.setAttribute("LIST", list); return page; } /** * PART 등록 - PART 등록 목록 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/partMngTempGridList.do") public Map getPartMngTempGridListPaging(HttpServletRequest request, @RequestParam Map paramMap){ String islast = CommonUtils.checkNull(paramMap.get("IS_LAST")); if("".equals(islast)){ paramMap.put("IS_LAST","0"); } String status_arr [] = {"create","changing"}; //release paramMap.put("STATUS_ARR", status_arr); // paramMap.put("STATUS","create"); commonService.selectListPagingNew("partMng.partMngTempGridList", request, paramMap); return paramMap; } /** * PART 배포 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngList.do") public String partMngList(HttpServletRequest request, @RequestParam Map paramMap){ String page ="/partMng/partMngList"; Map code_map = new HashMap(); List list = new ArrayList(); String searchRevision = CommonUtils.checkNull(paramMap.get("SEARCH_REVISION_RELEASE")); String actionType = CommonUtils.checkNull(paramMap.get("actionType")); String search = CommonUtils.checkNull(paramMap.get("search")); try { if("0".equals(searchRevision)){ paramMap.put("IS_LAST",""); }else if("1".equals(searchRevision)){ paramMap.put("IS_LAST",searchRevision); } code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect")); if("Y".equals(search)){ //list = CommonUtils.keyChangeUpperList(partMngService.getPartMngList(request,paramMap)); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } request.setAttribute("code_map",code_map); request.setAttribute("LIST", list); if("excel".equals(actionType)){ page ="/partMng/partMngListExcel"; } return page; } /** * PART 배포 목록 - PART 배포 목록 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/partMngGridList.do") public Map getPartMngGridListPaging(HttpServletRequest request, @RequestParam Map paramMap){ String searchRevision = CommonUtils.checkNull(paramMap.get("SEARCH_REVISION_RELEASE")); String actionType = CommonUtils.checkNull(paramMap.get("actionType")); String search = CommonUtils.checkNull(paramMap.get("search")); if("0".equals(searchRevision)){ paramMap.put("IS_LAST",""); }else if("1".equals(searchRevision)){ paramMap.put("IS_LAST",searchRevision); } if("Y".equals(search)){ commonService.selectListPagingNew("partMng.partMngGridList", request, paramMap); } return paramMap; } /** * 설계변경 PART 목록 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/partMngChangeGridListPaging.do") public Map partMngChangeGridListPaging(HttpServletRequest request, @RequestParam Map paramMap){ /* String searchRevision = CommonUtils.checkNull(paramMap.get("SEARCH_REVISION_RELEASE")); String actionType = CommonUtils.checkNull(paramMap.get("actionType")); String search = CommonUtils.checkNull(paramMap.get("search")); if("0".equals(searchRevision)){ paramMap.put("IS_LAST",""); }else if("1".equals(searchRevision)){ paramMap.put("IS_LAST",searchRevision); } */ ArrayList resultList = commonService.selectListPagingNew("partMng.partMngChangeGridList", request, paramMap); //설변용 part정보 신규 생성 List resultList2 = new ArrayList(); if(CommonUtils.isNotEmpty(resultList) && !resultList.isEmpty()) { int idx = 0; String newPartObjId = ""; String beforePartObjId = ""; for (Map map : resultList) { if(idx == 0) { //맨 위파트만(대표) partMngService.setChangeDesignPartInfo(request, paramMap, map); newPartObjId = CommonUtils.checkNull(map.get("OBJID")); beforePartObjId = CommonUtils.checkNull(map.get("OBJID_ORG")); //CommonUtils.createObjId(); }else { //나머지는 대표 NEW OBJID로 교체 map.put("OBJID", newPartObjId); map.put("OBJID_ORG", beforePartObjId); } //break; //맨 위파트만(대표) idx++; resultList2.add(map); } } paramMap.remove("RESULTLIST"); paramMap.put("RESULTLIST", resultList2); return paramMap; } /** * 설계변경 PART 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngChangeList.do") public String partMngChangeList(HttpServletRequest request, @RequestParam Map paramMap){ String page ="/partMng/partMngChangeList"; Map code_map = new HashMap(); List list = new ArrayList(); String searchRevision = CommonUtils.checkNull(paramMap.get("SEARCH_REVISION_RELEASE")); String actionType = CommonUtils.checkNull(paramMap.get("actionType")); String search = CommonUtils.checkNull(paramMap.get("search")); try { /* if("0".equals(searchRevision)){ paramMap.put("IS_LAST",""); }else if("1".equals(searchRevision)){ paramMap.put("IS_LAST",searchRevision); } */ code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)paramMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)paramMap.get("CHANGE_TYPE"),"common.getCodeselect")); code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect")); if("Y".equals(search)){ //list = CommonUtils.keyChangeUpperList(partMngService.getPartMngList(request,paramMap)); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } request.setAttribute("code_map",code_map); request.setAttribute("LIST", list); if("excel".equals(actionType)){ page ="/partMng/partMngChangeListExcel"; } return page; } /** * PART 조회 팝업 호출 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngListPopUp.do") public String partMngListPopUp(HttpServletRequest request, @RequestParam Map paramMap){ Map code_map = new HashMap(); List list = new ArrayList(); String search = CommonUtils.checkNull(paramMap.get("search")); String searchRevision = CommonUtils.checkNull(paramMap.get("SEARCH_REVISION_RELEASE")); try { if("0".equals(searchRevision)){ paramMap.put("IS_LAST",""); }else if("1".equals(searchRevision)){ paramMap.put("IS_LAST",searchRevision); } // paramMap.put("isPagingYN","N"); //no paging code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect")); if("Y".equals(search)){ // list = CommonUtils.keyChangeUpperList(partMngService.getPartMngList(request,paramMap)); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } request.setAttribute("code_map",code_map); // request.setAttribute("LIST", list); return "/partMng/partMngListPopUp"; } /** * 발주관리_발주관리 목록 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/partMngListPaging.do") public Map partMngListPaging(HttpServletRequest request, @RequestParam Map paramMap){ //List list = commonService.selectListPaging("purchaseOrder.deliveryMngList_new", request, paramMap); commonService.selectListPagingNew("partMng.partMngList", request, paramMap); return paramMap; } /** * PART Form PopUp * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngFormPopUp.do") public String partMngUpdateFormPopup(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); Map code_map = new HashMap(); //String [] arrCHANGE_OPTION = null; //String CHANGE_OPTION =""; String objId = CommonUtils.checkNull(paramMap.get("OBJID")); String actionType = CommonUtils.checkNull(paramMap.get("ACTION_TYPE")); try{ paramMap.put("objId",objId); if("changeDesign".equals(actionType)){ resultMap = CommonUtils.keyChangeUpperMap(partMngService.setChangeDesignPartInfo(request, paramMap)); //CHANGE_OPTION = CommonUtils.nvl((String)resultMap.get("CHANGE_OPTION"),""); //if(!"".equals(CHANGE_OPTION)){ // arrCHANGE_OPTION = CHANGE_OPTION.split(","); //} //설변항목 코드 //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); String REVISION = CommonUtils.checkNull(resultMap.get("REVISION")); if(REVISION.equals("RE")){ resultMap.put("REVISION", "A"); }else{ resultMap.put("REVISION", CommonUtils.getNextRevision(REVISION)); } }else{ if(!"".equals(objId)){ resultMap = CommonUtils.keyChangeUpperMap(partMngService.getPartMngInfo(request,paramMap)); //CHANGE_OPTION = CommonUtils.nvl((String)resultMap.get("CHANGE_OPTION"),""); //if(!"".equals(CHANGE_OPTION)){ // arrCHANGE_OPTION = CHANGE_OPTION.split(","); //} //설변항목 코드 //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); code_map.put("SUPPLY_CODE",commonService.bizMakeOptionList("", (String)resultMap.get("SUPPLY_CODE"),"common.getmatersupplyselect")); }else{ objId = CommonUtils.createObjId(); //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); code_map.put("SUPPLY_CODE",commonService.bizMakeOptionList("", "","common.getmatersupplyselect")); resultMap.put("OBJID", objId); resultMap.put("STATUS", "create"); } } }catch(Exception e){ e.printStackTrace(); } request.setAttribute("code_map", code_map); request.setAttribute("resultMap", resultMap); return "/partMng/partMngFormPopUp"; } /** * PART Detail PopUp * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngDetailPopUp.do") public String partMngDetailPopUp(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); Map code_map = new HashMap(); String [] arrCHANGE_OPTION = null; String CHANGE_OPTION =""; String objId = CommonUtils.checkNull(paramMap.get("OBJID")); try{ if(!"".equals(objId)){ resultMap = CommonUtils.keyChangeUpperMap(partMngService.getPartMngInfo(request,paramMap)); /* CHANGE_OPTION = CommonUtils.nvl((String)resultMap.get("CHANGE_OPTION"),""); if(!"".equals(CHANGE_OPTION)){ arrCHANGE_OPTION = CHANGE_OPTION.split(","); }*/ //설변항목 코드 //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); }else{ objId = CommonUtils.createObjId(); //설변항목 코드 //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); resultMap.put("OBJID", objId); } }catch(Exception e){ e.printStackTrace(); } request.setAttribute("code_map", code_map); request.setAttribute("resultMap", resultMap); return "/partMng/partMngDetailPopUp"; } /** * PART Detail PopUp * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngHisDetailPopUp.do") public String partMngHisDetailPopUp(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); Map code_map = new HashMap(); String [] arrCHANGE_OPTION = null; String CHANGE_OPTION =""; String objId = CommonUtils.checkNull(paramMap.get("OBJID")); try{ if(!"".equals(objId)){ resultMap = CommonUtils.keyChangeUpperMap(partMngService.getPartMngInfo(request,paramMap)); /* CHANGE_OPTION = CommonUtils.nvl((String)resultMap.get("CHANGE_OPTION"),""); if(!"".equals(CHANGE_OPTION)){ arrCHANGE_OPTION = CHANGE_OPTION.split(","); }*/ //설변항목 코드 //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); }else{ objId = CommonUtils.createObjId(); //설변항목 코드 //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("PARENT_PART_NO",commonService.bizMakeOptionList("", (String)resultMap.get("PARENT_PART_NO"),"common.getPartNoselect")); //code_map.put("CHANGE_OPTION",commonService.bizMakeCheckBoxMultiList("0000318","CHANGE_OPTION",arrCHANGE_OPTION,"common.getCodeselect")); code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)resultMap.get("CHANGE_OPTION"),"common.getCodeselect")); code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)resultMap.get("CHANGE_TYPE"),"common.getCodeselect")); resultMap.put("OBJID", objId); } }catch(Exception e){ e.printStackTrace(); } request.setAttribute("code_map", code_map); request.setAttribute("resultMap", resultMap); return "/partMng/partMngHisDetailPopUp"; } /** * Part 중복체크 */ @RequestMapping("/partMng/overlapPartMng.do") public String overlapPartMngCheck(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ List list = partMngService.overlapPartMng(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonArray(list)); return "/ajax/ajaxResult"; } /** * Part 저장 */ @RequestMapping("/partMng/savePartMng.do") public String savePartMng(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); resultMap = partMngService.savePartMng(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap)); return "/ajax/ajaxResult"; } /** * Part 저장(설계변경 PART조회) */ @RequestMapping("/partMng/savePartMngChangeList.do") @ResponseBody public Map savePartMngChangeList(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); resultMap = partMngService.savePartMngChangeList(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap)); return resultMap; } /** * Part 배포 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngDeploy.do") public String partMngDeploy(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = partMngService.partMngDeploy(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap)); return "/ajax/ajaxResult"; } /** * Part 삭제 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngDelete.do") public String partMngDelete(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = partMngService.partMngDelete(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap)); return "/ajax/ajaxResult"; } /** * 파트조회(ajax) * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getPartMngList_ajax.do") public String getPartList_ajax(HttpServletRequest request, @RequestParam Map paramMap){ paramMap.put("status", "complete"); System.out.println("getPArtList_ajax paramMap : "+paramMap); paramMap.put("IS_LAST","1"); //paramMap.put("STATUS", "release"); List list = partMngService.getToConnectPartMngList(request, paramMap); //List list = CommonUtils.keyChangeUpperList(partMngService.getPartMngList(request,paramMap)); request.setAttribute("RESULT", CommonUtils.getJsonArray(list)); return "/ajax/ajaxResult"; } /** * Excel을 이용한 Part 등록 팝업을 호출한다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/openPartExcelImportPopUp.do") public String openPartExcelImportPopUp(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ SqlSession sqlSession = null; Map code_map = new HashMap(); //Map bomContractInfo = new HashMap(); //Map bomInfo = new HashMap(); Map sqlParam = new HashMap(); //List resultList = null; //List multiMasterList = new ArrayList(); //List regiestSameContractUnitNameBomList = new ArrayList(); String objid=""; try{ objid = CommonUtils.createObjId(); /* code_map.put("customer_cd",commonService.bizMakeOptionList("", (String)paramMap.get("customer_cd"),"common.getsupplyselect")); code_map.put("project_name",commonService.bizMakeOptionList("", (String)paramMap.get("project_name"),"common.getProjectNameList")); code_map.put("unit_code",commonService.bizMakeOptionList((String)paramMap.get("unit_code"), (String)paramMap.get("unit_code"),"common.getBomCodeList")); sqlSession = SqlMapConfig.getInstance().getSqlSession(); Map sqlMap = new HashMap(); String unitCode = CommonUtils.checkNull(paramMap.get("unit_code")); sqlMap.put("unitCode", unitCode); Map unitInfoMap = (HashMap)sqlSession.selectOne("common.getUnitCodeList", sqlMap); //String unitName = CommonUtils.checkNull(unitInfoMap.get("name")).replaceAll("\u00A0+", " "); String UNIT_NAME = CommonUtils.checkNull(unitInfoMap.get("name")); sqlParam.put("customer_cd", CommonUtils.checkNull(paramMap.get("customer_cd"))); //sqlParam.put("project_name", CommonUtils.checkNull(paramMap.get("project_name"))); sqlParam.put("unit_name_eq", UNIT_NAME); regiestSameContractUnitNameBomList = partMngService.getBOMStandardStructureList(request, sqlParam); */ //paramMap.put("product_code",(String)paramMap.get("product_code")); //info = partMngService.getBOMStructureRev(request,paramMap); //bomContractInfo = partMngService.getBOMContractinfo(request,paramMap); Map param = new HashMap(); param.put("parentCodeId", "0000062"); code_map.put("part_type", commonService.getJqGridSelectBoxJsonData("common.getCodeList2", param, "선택")); /* //unit param.put("parentCodeId", "0000059"); code_map.put("unit_cd", commonService.getJqGridSelectBoxJsonData("common.getCodeList2", param, "선택")); code_map.put("sup_code", commonService.getJqGridSelectBoxJsonData("common.getmatersupplyselect", param, "선택")); // bomInfo = partMngService.getBOMStructureStandardInfo(request, paramMap); // if(bomInfo == null) bomInfo = new HashMap(); // String BOM_REPORT_OBJID = CommonUtils.checkNull(paramMap.get("BOM_REPORT_OBJID"), (String)bomInfo.get("OBJID")); //if("".equals(BOM_REPORT_OBJID)){ //} //if(!"".equals(BOM_REPORT_OBJID)){ if(bomInfo != null && StringUtils.isNotBlank(BOM_REPORT_OBJID)) { //resultList = partMngService.getStructureAscendingList(request,paramMap); sqlParam.put("OBJID", BOM_REPORT_OBJID); resultList = partMngService.getBOMPartTreeList(sqlParam); //partMngService.getBOMStructureStandardInfo(request, paramMap); }else { //신규등록일 때만 보이게 } multiMasterList = commonService.selectList("purchaseOrder.selectPurchaseOrderMasterList", request, paramMap); //동시발주용 정보 request.setAttribute("multiMasterList", multiMasterList); request.setAttribute("regiestSameContractUnitNameBomList", regiestSameContractUnitNameBomList); //동일 계약에 동일유닛네임으로 저장된 bom list */ request.setAttribute("code_map",code_map); request.setAttribute("objid",objid); //request.setAttribute("bomInfo",bomInfo); //request.setAttribute("resultList",resultList); //request.setAttribute("info",bomContractInfo); //request.setAttribute("CUSTOMER_OBJID",(String)paramMap.get("customer_cd")); //request.setAttribute("CONTRACT_OBJID",(String)paramMap.get("project_name")); //request.setAttribute("UNIT_CODE",(String)paramMap.get("unit_code")); }catch(Exception e){ e.printStackTrace(); }finally { //sqlSession.close(); } return "/partMng/openPartExcelImportPopUp"; } /** * 업로드된 Excel File을 통해서 데이터를 Parsing하여 목록으로 return. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partParsingExcelFile.do") @ResponseBody public ArrayList partParsingExcelFile(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); ArrayList parsingPartList = new ArrayList(); try{ parsingPartList = (ArrayList)partMngService.partParsingExcelFile(request, paramMap); }catch(Exception e){ e.printStackTrace(); } //resultMap.put("RESULT", CommonUtils.getJsonArray(parsingPartList)); //parsingPartList = CommonUtils.getJsonArray(parsingPartList); //request.setAttribute("RESULT", CommonUtils.getJsonArray(parsingPartList)); //return "/ajax/ajaxResult"; return parsingPartList; } /** * 파트 저장(엑셀업로드) */ @RequestMapping("/partMng/partUploadSave.do") @ResponseBody public Map partUploadSave(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); //String result = ""; try{ PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN); paramMap.put("CONNECTUSERID", CommonUtils.checkNull(person.getUserId())); partMngService.savePartByExcel(request, paramMap); CommonUtils.setReqResult(request, "", "S", null, resultMap); //result = "SUCCESS"; }catch(Exception e){ e.printStackTrace(); //result = "FAIL"; CommonUtils.setReqResult(request, "", "F", e, resultMap); } //return result; return resultMap; } /** * 구조등록 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/searchStructureList.do") public String getStructureList(HttpServletRequest request, @RequestParam Map paramMap){ Map code_map = new HashMap(); List list = new ArrayList(); try { list = partMngService.getBOMStandardStructureList(request, paramMap); //code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect")); //고객사 code_map.put("customer_cd",commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("customer_cd")),"common.getsupplyselect")); //프로젝트명 code_map.put("project_name",commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("project_name")),"common.getCusProjectNoList")); //프로젝트명 code_map.put("unit_code",commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("unit_code")),"common.getUnitCodeList")); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } request.setAttribute("code_map", code_map); request.setAttribute("LIST", list); return "/partMng/structureList"; } /** * 구조등록 - 구조등록 목록 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/searchStructureGridList.do") public Map getBOMStandardStructureGridList(HttpServletRequest request, @RequestParam Map paramMap){ commonService.selectListPagingNew("partMng.getBOMStandardStructureGridList", request, paramMap); return paramMap; } /** * 구조등록 (기본정보 선택 팝업) * @param request * @param paramMap * @return */ @RequestMapping("/partMng/setStructureStandardFormPopup.do") public String structureStandardFormPopup(HttpServletRequest request, @RequestParam Map paramMap){ String product_code = CommonUtils.checkNull((String)paramMap.get("param_product_code")); //String product_mgmt_spec = CommonUtils.checkNull((String)paramMap.get("param_product_mgmt_spec")); //String upg_no = CommonUtils.checkNull((String)paramMap.get("param_upg_no")); paramMap.put("product_code",product_code); Map info = partMngService.getBOMStructureRev(request,paramMap); request.setAttribute("info", info); request.setAttribute("product_code", product_code); //request.setAttribute("product_mgmt_spec", product_mgmt_spec); //request.setAttribute("upg_no", upg_no); return "/partMng/structureStandardFormPopup"; } /** * BOM COPY (기본정보 선택 팝업) * @param request * @param paramMap * @return */ @RequestMapping("/partMng/setBomCopyFormPopup.do") public String setBomCopyFormPopup(HttpServletRequest request, @RequestParam Map paramMap){ String product_code = CommonUtils.checkNull((String)paramMap.get("param_product_code")); //String product_mgmt_spec = CommonUtils.checkNull((String)paramMap.get("param_product_mgmt_spec")); //String upg_no = CommonUtils.checkNull((String)paramMap.get("param_upg_no")); Map code_map = new HashMap(); try{ //projectNo code_map.put("rev",commonService.bizMakeOptionList(product_code,"","common.getRevNoselect")); code_map.put("product_code",commonService.bizMakeOptionList(product_code,"","common.getProductNoselect")); request.setAttribute("code_map",code_map); request.setAttribute("product_code", product_code); }catch(Exception e){ e.printStackTrace(); } return "/partMng/structureBomCopyFormPopup"; } /** * bom copy 저장 */ @RequestMapping("/partMng/saveBomCopy.do") @ResponseBody public String saveBomCopySave(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ String result = ""; try{ PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN); paramMap.put("CONNECTUSERID", CommonUtils.checkNull(person.getUserId())); partMngService.saveBomCopySave(request, paramMap); result = "SUCCESS"; }catch(Exception e){ e.printStackTrace(); result = "FAIL"; } return result; } /** * BOM 상세정보 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/setStructurePopupMainFS.do") public String setStructurePopupMainFS(HttpServletRequest request, @RequestParam Map paramMap){ PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN); paramMap.put("writer", person.getUserId()); Map info = partMngService.getBOMStructureStandardInfo(request,paramMap); request.setAttribute("info", info); return "/partMng/structurePopupHeaderFs"; } @RequestMapping("/partMng/structureHeaderPopup.do") public String structureHeaderPopup(HttpServletRequest request, @RequestParam Map paramMap){ return "/partMng/structurePopupTop"; } @RequestMapping("/partMng/structureBottomPopupFS.do") public String structureBottomPopupFS(HttpServletRequest request, @RequestParam Map paramMap){ return "/partMng/structurePopupFs"; } /** * 구조등록 하단 프레임 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structureBtnAreaPopup.do") public String structureBtnAreaPopup(HttpServletRequest request, @RequestParam Map paramMap){ return "/partMng/structureBtnAreaPopup"; } /** * 구조등록 좌측 프레임 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structurePopupLeft.do") public String structurePopupLeft(HttpServletRequest request, @RequestParam Map paramMap){ int MAX_LEVEL = 0; Map info = new HashMap(); List bomTreeList = null; String actionType = CommonUtils.checkNull(paramMap.get("actionType")); ArrayList list = new ArrayList(); try{ info = partMngService.getBOMStructureStandardInfo(request,paramMap); info.put("actionType", actionType); //241206 added bomTreeList = partMngService.getBOMPartTreeList(info); if(null != bomTreeList && 0 < bomTreeList.size()){ HashMap LEVLMap = (HashMap)bomTreeList.get(0); MAX_LEVEL = (Integer)LEVLMap.get("MAX_LEVEL"); } }catch(Exception e){ e.printStackTrace(); } request.setAttribute("MAXLEV", MAX_LEVEL); request.setAttribute("info", info); request.setAttribute("tree", bomTreeList); return "/partMng/structurePopupLeft"+("excel".equals(actionType) ? "Excel" : ""); } @RequestMapping("/partMng/structurePopupCenter.do") public String structurePopupCenter(HttpServletRequest request, @RequestParam Map paramMap){ Map code_map = new HashMap(); Map info = new HashMap();; try { info = partMngService.getBOMStructureStandardInfo(request,paramMap); //설변사유 code_map.put("CHANGE_OPTION",commonService.bizMakeOptionList("0000318", (String)paramMap.get("change_option"),"common.getCodeselect")); //설변구분 code_map.put("CHANGE_TYPE",commonService.bizMakeOptionList("0001054", (String)paramMap.get("change_type"),"common.getCodeselect")); //담당자 //code_map.put("writer_id", commonService.bizMakeOptionList("", (String)paramMap.get("writer_id"),"common.getUserselect")); //PART구분 //code_map.put("part_type",commonService.bizMakeOptionList(Constants.PART_TYPE_CODE, (String)paramMap.get("part_type"),"common.getCodeselect")); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } request.setAttribute("info", info); request.setAttribute("code_map",code_map); return "/partMng/structurePopupCenter"; } /** * 구조등록 우측 프레임 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structurePopupRight.do") public String structurePopupRight(HttpServletRequest request, @RequestParam Map paramMap){ Map info = new HashMap(); try{ paramMap.put("SEARCH_OBJID", paramMap.get("objId")); List list = partMngService.getBOMStandardStructureList(request, paramMap); if(list != null && list.size()>0){ info = (Map)list.get(0); } }catch(Exception e){ e.printStackTrace(); } request.setAttribute("info", info); return "/partMng/structurePopupRight"; } /** * 최상위레벨에 같은 Part No가 있는지 체크. * @param request * @param paramMap * @param rightCheckedArr * @return */ @RequestMapping("/partMng/checkSameTopPartNo.do") public String checkSameTopPartNo(HttpServletRequest request, @RequestParam Map paramMap, @RequestParam(value = "rightCheckedArr[]") List rightCheckedArr){ boolean result = partMngService.hasSameTopPartNo(paramMap, rightCheckedArr); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * 우측의 Part를 선택후, 하위정보를 포함해 삭제한다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/deletePartRelateInfo.do") public String deletePartRelateInfo(HttpServletRequest request, @RequestParam Map paramMap){ boolean result = partMngService.deletePartRelateInfo(paramMap); //if(result) partService.deleteDummyBOMData(paramMap); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * 우측의 Part를 선택후, 하위정보를 포함해 삭제한다.(231211 new version) * @param request * @param paramMap * @return */ @RequestMapping("/partMng/deleteStatusPartRelateInfo.do") public String deleteStatusPartRelateInfo(HttpServletRequest request, @RequestParam Map paramMap){ boolean result = partMngService.deleteStatusPartRelateInfo(request, paramMap); //if(result) partService.deleteDummyBOMData(paramMap); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * 우측의 Part를 선택후, 좌측에 선택한 Part에 연결한다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/relatePartInfo.do") public String relatePartInfo(HttpServletRequest request, @RequestParam Map paramMap, @RequestParam(value = "rightCheckedArr[]") List rightCheckedArr){ Map info = partMngService.getBOMStructureStandardInfo(request,paramMap); paramMap.put("regionObjId", CommonUtils.checkNull(info.get("REGION_OBJID"))); boolean result = partMngService.relatePartInfo(request, paramMap, rightCheckedArr); //if(result) partService.deleteDummyBOMData(paramMap); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * 구조등록 수량 변경 저장 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structureQtySave.do") public String structureQtySave(HttpServletRequest request, @RequestParam Map paramMap){ boolean result = partMngService.structureQtySave(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * 정전개 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structureAscendingList.do") public String structureAscendingList(HttpServletRequest request, @RequestParam Map paramMap){ Map code_map = new HashMap(); List resultList = null; String search = CommonUtils.checkNull(paramMap.get("search")); try{ //code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("search_product_mgmt_objId"),"common.getProductCodeselect")); //고객사 code_map.put("customer_cd",commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("customer_cd")),"common.getsupplyselect")); //프로젝트 code_map.put("project_name",commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("project_name")),"common.getCusProjectNoList")); //유닛명 code_map.put("unit_code",commonService.bizMakeOptionList("", CommonUtils.nullToEmpty((String)paramMap.get("unit_code")),"common.getUnitCodeList")); if("Y".equals(search)){ resultList = partMngService.getStructureAscendingList(request,paramMap); } }catch(Exception e){ e.printStackTrace(); } request.setAttribute("code_map",code_map); request.setAttribute("List",resultList); return "/partMng/structureAscendingList"; } /** * 정전개 - 정전개 목록 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/selectStructureAscendingGridList.do") public Map getSelectStructureAscendingGridListPaging(HttpServletRequest request, @RequestParam Map paramMap){ commonService.selectListPagingNew("partMng.selectStructureAscendingList", request, paramMap); return paramMap; } @RequestMapping("/partMng/structureAscendingExcelList.do") public String structureAscendingExcelList(HttpServletRequest request, @RequestParam Map paramMap){ return "/partMng/structureAscendingListExcel"; } /** * 정전개 멀티 목록 * @param request * @param paramMap * @return */ @RequestMapping(" /partMng/structureAscendingMultiList.do") public String structureAscendingMultiList(HttpServletRequest request, @RequestParam Map paramMap){ return "/partMng/structureAscendingMultiList"; } /** * 정전개 목록을 가져온다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getStructureAscendingMultiList.do") public String getStructureAscendingMultiList(HttpServletRequest request, @RequestParam Map paramMap){ List listVC = partMngService.getStructureAscendingMultiListVC(request,paramMap); List resultList = partMngService.getStructureAscendingMultiList(request,paramMap,listVC); String data = "["; ArrayList dataArr = CommonUtils.getJsonArray(resultList); for(int i=0; i0){ data += ","; } data += dataArr.get(i); } data +="]"; String data_vc = "["; ArrayList dataVcArr = CommonUtils.getJsonArray(listVC); for(int i=0; i0){ data_vc += ","; } data_vc += dataVcArr.get(i); } data_vc +="]"; request.setAttribute("RESULT", "{\"DATA\":"+data+", \"DATA_VC\":"+data_vc+"}"); return "/ajax/ajaxResult"; } /** * 정전개 목록을 가져온다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getStructureAscendingMultiListExcel.do") public String getStructureAscendingMultiListExcel(HttpServletRequest request, @RequestParam Map paramMap){ System.out.println("request :: " + request); System.out.println("paramMap :: " + paramMap); List listVC = partMngService.getStructureAscendingMultiListVC(request,paramMap); List resultList = partMngService.getStructureAscendingMultiList(request,paramMap,listVC); System.out.println("resultList :: " + resultList); System.out.println("listVC :: " + listVC); System.out.println("request :: " + request); System.out.println("paramMap :: " + paramMap); String data = "["; ArrayList dataArr = CommonUtils.getJsonArray(resultList); for(int i=0; i0){ data += ","; } data += dataArr.get(i); } data +="]"; String data_vc = "["; ArrayList dataVcArr = CommonUtils.getJsonArray(listVC); for(int i=0; i0){ data_vc += ","; } data_vc += dataVcArr.get(i); } data_vc +="]"; System.out.println("data ::" + data ); System.out.println("data_vc :: " + data_vc ); request.setAttribute("RESULT", "{\"DATA\":"+data+", \"DATA_VC\":"+data_vc+"}"); request.setAttribute("resultList", resultList); request.setAttribute("listVC", listVC); request.setAttribute("paramMap", paramMap); return "/partMng/getStructureAscendingMultiListExcel"; } /** * 정전개 목록을 가져온다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getStructureAscendingList.do") public String getStructureAscendingList(HttpServletRequest request, @RequestParam Map paramMap){ String actionType = CommonUtils.checkNull(paramMap.get("actionType")); List resultList = partMngService.getStructureAscendingList(request,paramMap); request.setAttribute("RESULT", CommonUtils.getJsonArray(resultList)); return "/ajax/ajaxResult"; } /** * 정전개 목록을 가져온다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getStructureAscendingListExcel.do") public String getStructureAscendingListExcel(HttpServletRequest request, @RequestParam Map paramMap){ String actionType = CommonUtils.checkNull(paramMap.get("actionType")); List resultList = partMngService.getStructureAscendingList(request,paramMap); System.out.println("paramMap ::: "+ paramMap); request.setAttribute("paramMap", paramMap); request.setAttribute("resultList", resultList); return "/partMng/getstructureAscendingListExcel"; } /** * 역전개 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structureDescendingList.do") public String structureDescendingList(HttpServletRequest request, @RequestParam Map paramMap){ return "/partMng/structureDescendingList"; } /** * 정전개 목록을 가져온다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getStructureDescendingList.do") public String getStructureDescendingList(HttpServletRequest request, @RequestParam Map paramMap){ String actionType = CommonUtils.checkNull(paramMap.get("actionType")); List resultList = partMngService.getStructureDescendingList(request,paramMap); request.setAttribute("RESULT", CommonUtils.getJsonArray(resultList)); return "/ajax/ajaxResult"; } /** * 선택된 구조등록을 삭제한다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/deleteStructure.do") public String deleteStructure(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = partMngService.deleteStructure(request,paramMap); request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap)); return "/ajax/ajaxResult"; } /** * 선택된 구조등록을 배포한다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/deployStructure.do") public String deployStructure(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = partMngService.deployStructure(request,paramMap); request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap)); return "/ajax/ajaxResult"; } /** * BOM 배포사유 입력 popup * @param request * @param paramMap * @return */ @RequestMapping("/partMng/changeDesignNotePopUp.do") public String changeDesignNotePopUp(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); try{ /*resultMap = service.getFundMgmtInfo(request,paramMap); request.setAttribute("resultMap", resultMap);*/ }catch(Exception e){ e.printStackTrace(); } return "/partMng/changeDesignNotePopUp"; } /** * BOM 배포사유 저장 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/saveChangeDesignInfo.do") public String saveChangeDesignInfo(HttpServletRequest request, @RequestParam Map paramMap){ boolean result = partMngService.saveChangeDesignInfo(paramMap); Map resultMap = partMngService.deployStructure(request,paramMap); request.setAttribute("RESULTMAP", CommonUtils.getJsonMap(resultMap)); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * 제품 사양 리스트 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/getPartBomList수정전.do") public String getProductMgntUpgList수정전(HttpServletRequest request, @RequestParam Map paramMap){ List list = null; List productUpgNoList = new ArrayList(); List productList = null; List upgCodeList = new ArrayList(); List upgNoList = null; Map code_map = new HashMap(); try{ //list = productMgmtService.getProductMgntUpgList(request,paramMap); //리스트 상단 사양 표시 productList = productMgmtService.getProductUpgCodeList(request,paramMap); //matrix 만들기 위해 코드 리스트 가져오기 if(!"".equals(CommonUtils.nullToEmpty((String)paramMap.get("product_code")))){ upgCodeList = productMgmtService.getProductUpgcommcodeList(request,paramMap); } //난중에 지울것 //productUpgNoList = productMgmtService.getUpgMatrixList(request,paramMap); if(upgCodeList.size() > 0 ){ for(int i=0;i"+temp_map); //TempList.add(temp_map); productUpgNoList.add(temp_map); } } /*int upgSize = 0; if(!"".equals((String)paramMap.get("product_code"))){ productUpgNoList = productMgmtService.getUpgMatrixList(request,paramMap); if(productUpgNoList.size() > 0){ upgSize = productUpgNoList.size() / productList.size(); System.out.println("upgSize -->"+upgSize); for(int i=0;i paramMap){ Map resultMap = new HashMap(); ArrayList parsingPartList = new ArrayList(); try{ parsingPartList = (ArrayList)partMngService.parsingExcelFile(request, paramMap); }catch(Exception e){ e.printStackTrace(); } //resultMap.put("RESULT", CommonUtils.getJsonArray(parsingPartList)); //parsingPartList = CommonUtils.getJsonArray(parsingPartList); //request.setAttribute("RESULT", CommonUtils.getJsonArray(parsingPartList)); //return "/ajax/ajaxResult"; return parsingPartList; } /** * BOM 파트&구조 저장 */ @RequestMapping("/partMng/partBomApplySave.do") @ResponseBody public Map partBomApplySave(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); //String result = ""; try{ PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN); paramMap.put("CONNECTUSERID", CommonUtils.checkNull(person.getUserId())); partMngService.savePartBomMaster(request, paramMap); CommonUtils.setReqResult(request, "", "S", null, resultMap); //result = "SUCCESS"; }catch(Exception e){ e.printStackTrace(); //result = "FAIL"; CommonUtils.setReqResult(request, "", "F", e, resultMap); } //return result; return resultMap; } /** * 구조등록 순번 변경 저장 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/structureSeqSave.do") public String structureSeqSave(HttpServletRequest request, @RequestParam Map paramMap){ boolean result = partMngService.structureSeqSave(paramMap); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } /** * PART 배포 목록 * @param request * @param paramMap * @return */ @RequestMapping("/partMng/partMngDeployList.do") public String partMngDeployList(HttpServletRequest request, @RequestParam Map paramMap){ String page ="/partMng/partMngDeployList"; Map code_map = new HashMap(); List list = new ArrayList(); String searchRevision = CommonUtils.checkNull(paramMap.get("SEARCH_REVISION_RELEASE")); String actionType = CommonUtils.checkNull(paramMap.get("actionType")); String search = CommonUtils.checkNull(paramMap.get("search")); try { code_map.put("product_code",commonService.bizMakeOptionList("", (String)paramMap.get("product_code"),"common.getProductCodeselect")); if("Y".equals(search)){ list = CommonUtils.keyChangeUpperList(partMngService.partMngDeployList(request,paramMap)); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } request.setAttribute("code_map",code_map); request.setAttribute("LIST", list); return page; } @ResponseBody @RequestMapping("/partMng/getPartLinkedBomContractList.do") public Map getPartLinkedBomContractList(HttpServletRequest request, @RequestParam Map paramMap){ Map result_map = new HashMap(); try { result_map.put("RESULT", partMngService.getPartLinkedBomContractList(paramMap)); } catch (Exception e) { e.printStackTrace(); } return result_map; } @RequestMapping("/partMng/partMngHisList.do") public String partMngHisList(HttpServletRequest request, @RequestParam Map paramMap){ Map code_map = new HashMap(); List list = new ArrayList(); try { //당사프로젝트번호 project_no code_map.put("contract_objid",commonService.bizMakeOptionList("", (String)paramMap.get("contract_objid"),"common.getProjectNameList")); //설변사유 code_map.put("change_option",commonService.bizMakeOptionList("0000318", (String)paramMap.get("change_option"),"common.getCodeselect")); //설변구분 code_map.put("change_type",commonService.bizMakeOptionList("0001054", (String)paramMap.get("change_type"),"common.getCodeselect")); //담당자 code_map.put("writer_id", commonService.bizMakeOptionList("", (String)paramMap.get("writer_id"),"common.getUserselect")); //PART구분 code_map.put("part_type",commonService.bizMakeOptionList(Constants.PART_TYPE_CODE, (String)paramMap.get("part_type"),"common.getCodeselect")); //paramMap.put("STATUS_NQ", "create"); //paramMap.put("SEARCH_TYPE", "CHANGE_LIST"); list = commonService.selectListPaging("partMng.partMngHistList", request, paramMap); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } request.setAttribute("code_map",code_map); request.setAttribute("LIST", JsonUtil.ListToJson(list)); return "/partMng/partMngHisList"; } /** * 설계변경리스트 - 설계변경리스트 페이징 * @param request * @param paramMap * @return */ @ResponseBody @RequestMapping("/partMng/partMngHisGridList.do") public Map getPartMngHisGridListPaging(HttpServletRequest request, @RequestParam Map paramMap){ commonService.selectListPagingNew("partMng.partMngHistList", request, paramMap); return paramMap; } @RequestMapping("/partMng/deleteBomByAdmin.do") @ResponseBody public String deleteBomByAdmin(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ String result = ""; SqlSession sqlSession = null; Map sqlMap = new HashMap(); try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(false); PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN); if(person != null) paramMap.put("CONNECTUSERID", CommonUtils.checkNull(person.getUserId())); String pObjid = (String)paramMap.get("objId"); String pCheckArr = (String)paramMap.get("checkArr"); String checkArr[] = (CommonUtils.checkNull(pCheckArr, pObjid)).split(","); if(null == checkArr || 0 == checkArr.length){ checkArr[0] = CommonUtils.checkNull(paramMap.get("checkArr")); } if(null != checkArr && 0 < checkArr.length){ //Map sqlParamMap = new HashMap(); //sqlParamMap.put("checkArr",checkArr); // for (String objid : checkArr) { // paramMap.put("OBJID", objid); // paramMap.put("SEARCH_BOM_OBJID", objid); // if(StringUtils.isBlank(objid)) { // System.out.println("objid is null"); // //return ""; // }else { if(checkArr.length == 1) { //sqlMap.put("OBJID", checkArr[0]); }else { } sqlMap.put("checkArr", checkArr); // Map info = partMngService.getBOMStructureStandardInfo(request,sqlMap); // System.out.println(info); // if(info != null && !info.isEmpty()) { //백업 sqlSession.insert("partMng.bak_insertDelPartBom", sqlMap); sqlSession.insert("partMng.bak_insertDelPartMng", sqlMap); sqlSession.insert("partMng.bak_insertDelPartQty", sqlMap); //삭제 sqlSession.delete("partMng.deletePartBom", sqlMap); sqlSession.delete("partMng.deletePartMng", sqlMap); sqlSession.delete("partMng.deletePartQty", sqlMap); // } // } // } } sqlSession.commit(); result = "SUCCESS"; }catch(Exception e){ e.printStackTrace(); result = "FAIL"; sqlSession.rollback(); }finally { //sqlSession.close(); } return result; } /** * BOM objid기준으로 대상 파트에 도면파일 붙이기 * ※ 도면 있는거는 중복으로 붙으니 주의 */ //@RequestMapping(value="/partMng/partFileAttach.do", method=RequestMethod.POST) @RequestMapping("/partMng/partFileAttach.do") @ResponseBody public String partFileAttach(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ String result = ""; SqlSession sqlSession = null; Map sqlMap = new HashMap(); try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(false); PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN); if(person != null) paramMap.put("CONNECTUSERID", CommonUtils.checkNull(person.getUserId())); String objid = (String)paramMap.get("objId"); paramMap.put("OBJID", objid); paramMap.put("SEARCH_BOM_OBJID", objid); String qtyObjId = (String)paramMap.get("qtyObjId"); if(StringUtils.isBlank(objid)) { System.out.println("objid is null"); return ""; } Map info = partMngService.getBOMStructureStandardInfo(request,paramMap); System.out.println(info); /* String contracObjid = CommonUtils.checkNull(paramMap.get("CONTRACT_OBJID")); sqlMap.put("OBJID", contracObjid); Map projectInfo = (Map)sqlSession.selectOne("project.getProjectMngInfo", sqlMap); String projectNo = (String)projectInfo.get("project_no"); String unitCode = CommonUtils.checkNull(paramMap.get("UNIT_CODE")); sqlMap.put("unitCode", unitCode); Map unitInfoMap = (HashMap)sqlSession.selectOne("common.getUnitCodeList", sqlMap); String unitName = CommonUtils.checkNull(unitInfoMap.get("name")).replaceAll("\u00A0+", " "); */ String projectNo = CommonUtils.checkNull(info.get("PROJECT_NO2")); String unitName = CommonUtils.checkNull(info.get("UNIT_NAME")).replaceAll("\u00A0+", " "); byte[] utf8Bytes = unitName.getBytes("UTF-8"); String utf8unitName = new String(utf8Bytes, "UTF-8"); String filepath = Constants.FILE_STORAGE+"\\PART_DATA\\"; String filepathFull = filepath+projectNo+File.separator+unitName+File.separator; System.out.println("filepathFull:"+filepathFull); ArrayList list = commonService.selectList("partMng.partMngListByBom", request, paramMap); //List list = partMngService.getPartMngList(request, paramMap); for (Map resultMap : list) { System.out.println(resultMap); //if(1==1) continue; String part_objid = ""; String part_no = ""; if(null!=resultMap){ part_objid = CommonUtils.checkNull((String)resultMap.get("OBJID")); part_no = CommonUtils.checkNull((String)resultMap.get("PART_NO")); //sqlMap.put("objId", part_objid); //Map selFileMap = commonService.getFileInfo(sqlMap); //기등록 파일 조회(있으면 pass) sqlMap.put("targetObjId", part_objid); sqlMap.put("fileSizeNot0", "fileSizeNot0"); //fileSize > 0 List selFileList = commonService.getFileList(sqlMap); if(selFileList != null && !selFileList.isEmpty()) { System.out.println("File already exists!!!"); continue; } Map fileMap = new HashMap(); fileMap.put("FILE_PATH",filepathFull); fileMap.put("WRITER", CommonUtils.checkNull((String)paramMap.get("CONNECTUSERID"), "plmAdmin")); //dwg fileMap.put("OBJID", CommonUtils.createObjId()); fileMap.put("TARGET_OBJID", part_objid); fileMap.put("SAVED_FILE_NAME", part_no+".dwg"); fileMap.put("REAL_FILE_NAME",part_no+".dwg"); fileMap.put("DOC_TYPE" ,"2D_DRAWING_CAD"); fileMap.put("DOC_TYPE_NAME","2D(Drawing) CAD 첨부파일"); fileMap.put("FILE_SIZE","167941"); fileMap.put("FILE_EXT","DWG"); System.out.println("fileMap --->"+ fileMap); System.out.println(filepathFull+part_no+".dwg"); File file = new File(filepathFull+part_no+".dwg"); System.out.println("file --->"+ file.getName()); System.out.println("checkBeforeFile(file)" +checkBeforeFile(file)); if(checkBeforeFile(file)){ //첨부저장이 존재 할때만 DWG 저장 sqlSession.insert("partMng.insertpartfileInfo", fileMap); } //pdf file = new File(filepathFull+part_no+".pdf"); if(checkBeforeFile(file)){ fileMap.isEmpty(); //첨부저장이 존재 할때만 PDF 저장 fileMap.put("OBJID", CommonUtils.createObjId()); fileMap.put("TARGET_OBJID", part_no); fileMap.put("SAVED_FILE_NAME", part_no+".pdf"); fileMap.put("REAL_FILE_NAME",part_no+".pdf"); fileMap.put("DOC_TYPE" ,"2D_PDF_CAD"); fileMap.put("DOC_TYPE_NAME","2D(PDF) CAD 첨부파일"); fileMap.put("FILE_SIZE","167941"); fileMap.put("FILE_EXT","PDF"); //첨부저장이 존재 할때만 DWG 저장 sqlSession.insert("part.insertpartfileInfo", fileMap); } }else{ } } sqlSession.commit(); result = "SUCCESS"; }catch(Exception e){ e.printStackTrace(); result = "FAIL"; } return result; } static boolean checkBeforeFile(File file){ //파일이 존재하고 if(file.exists()){ //그 파일이 파일이고, 읽을 수 있다면 true를 리턴한다. if(file.isFile() && file.canRead()){ return true; } } return false; } /** * 자재코드 존재확인 */ @RequestMapping("/partMng/existPartNoCheck.do") public String existPartNoCheck(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){ List list = partMngService.existPartNoCheck(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonArray(list)); return "/ajax/ajaxResult"; } /** * 우측의 Part를 선택후, 좌측에 선택한 Part로 변경한다. * @param request * @param paramMap * @return */ @RequestMapping("/partMng/changeRelatePartInfo.do") public String changeRelatePartInfo(HttpServletRequest request, @RequestParam Map paramMap){ boolean result = partMngService.changeRelatePartInfo(request, paramMap); request.setAttribute("RESULT", CommonUtils.getJsonString("result", String.valueOf(result))); return "/ajax/ajaxResult"; } }