Files
wace_plm/src/com/pms/service/ProductDevMngService.java
chpark da06c4684c Initial commit: WACE PLM with database initialization features
- Add Docker Compose configurations for dev, prod, and standalone environments
- Add database initialization scripts (init-db.sh, init-db-docker.sh)
- Add enhanced start-docker-linux.sh with DB init support
- Add comprehensive database initialization guide
- Support for automatic dbexport.pgsql import on first run
- Include safety checks for production environment
2025-08-29 15:46:08 +09:00

1814 lines
52 KiB
Java

package com.pms.service;
import java.sql.Clob;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
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.ibatis.session.SqlSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.pms.common.Message;
import com.pms.common.SqlMapConfig;
import com.pms.common.bean.PersonBean;
import com.pms.common.service.BaseService;
import com.pms.common.utils.CommonUtils;
import com.pms.common.utils.Constants;
@Service
public class ProductDevMngService extends BaseService{
CommonService commonService = null;
@Autowired
public void setCommonService(CommonService commonService){
this.commonService = commonService;
}
/*jmpark start*/
/**
* EO 적용현황 목록 조회
* @param paramMap
* @return
*/
public List getEOApplyStatusList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
Map pageMap = new HashMap();
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
boolean isFirstOpen = false;
//최초로딩시 데이터 조회하지않는다.
Map sqlParamMap = new HashMap();
sqlParamMap = paramMap;
//메뉴정보를 Map에서 삭제한다.
sqlParamMap.remove("menuObjId");
if(sqlParamMap == null || sqlParamMap.isEmpty()){
isFirstOpen = true;
}
//paging start
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
paramMap.put("connectedUserId", person.getUserId());
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), ""+Constants.EO_COUNT_PER_PAGE+"");
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
pageMap = (HashMap)sqlSession.selectOne("productDev.getEOApplyStatusListCnt", paramMap);
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap, countPerPage);
paramMap.put("PAGE_END", CommonUtils.checkNull(pageMap.get("PAGE_END")));
paramMap.put("PAGE_START", CommonUtils.checkNull(pageMap.get("PAGE_START")));
//paging end
if(!isFirstOpen){
resultList = sqlSession.selectList("productDev.getEOApplyStatusList", sqlParamMap);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* EO 적용현황 기본 Object 생성
* @return
*/
public String createEOApplyBaseObject(Map paramMap){
String result = "";
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
result = CommonUtils.createObjId();
Map sqlParamMap = new HashMap();
sqlParamMap.put("objId", result);
sqlParamMap.put("targetObjId", paramMap.get("targetObjId"));
sqlSession.insert("productDev.createEOApplyBaseObject", sqlParamMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return result;
}
/**
* EO 적용현황 > EO 적용관리 정보 조회
* @param paramMap
* @return
*/
public Map getEOApplyPointInfo(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getEOApplyPointInfo", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* EO 적용현황 EO 적용관리 저장
* @param paramMap
* @return
*/
public Map saveEOApplyPointInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String objId = CommonUtils.checkNull(paramMap.get("objId"));
if("".equals(objId)){
objId = createEOApplyBaseObject(paramMap);
paramMap.put("objId", objId);
}
int cnt = sqlSession.update("productDev.saveEOApplyPointInfo", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
sqlSession.commit();
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
e.printStackTrace();
}finally{
}
return resultMap;
}
/**
* EO 적용현황 > 금형/JIG 수정승인관리 정보 조회
* @param paramMap
* @return
*/
public Map getEOApplyModifyConfirmInfo(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getEOApplyModifyConfirmInfo", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* EO 적용현황 > 금형/JIG 수정승인관리 정보 저장
* @param request
* @param paramMap
* @return
*/
public Map saveEOApplyModifyConfirmInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String objId = CommonUtils.checkNull(paramMap.get("objId"));
if("".equals(objId)){
objId = createEOApplyBaseObject(paramMap);
paramMap.put("objId", objId);
}
int cnt = sqlSession.update("productDev.saveEOApplyModifyConfirmInfo", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
sqlSession.commit();
}catch(Exception e){
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* EO 적용현황 > EO 적용완료 점검결과 조회
* @param paramMap
* @return
*/
public Map getEOApplyCheckInfo(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getEOApplyCheckInfo", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* EO 적용현황 > EO 적용완료 점검결과 저장
* @param request
* @param paramMap
* @return
*/
public Map saveEOApplyCheckInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String objId = CommonUtils.checkNull(paramMap.get("objId"));
if("".equals(objId)){
objId = createEOApplyBaseObject(paramMap);
paramMap.put("objId", objId);
}
int cnt = sqlSession.update("productDev.saveEOApplyCheckInfo", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
sqlSession.commit();
}catch(Exception e){
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력 갑지 중복등록 count 조회
* @param paramMap
* @return
*/
public Map checkDuplicateMoldHistoryInfo(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.checkDuplicateMoldHistoryInfo", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력 갑지 목록 조회
* @param paramMap
* @return
*/
public List getMoldHistoryList(Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getMoldHistoryList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 금형이력 갑지 정보조회
* @param paramMap
* @return
*/
public Map getMoldHistoryInfo(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getMoldHistoryInfo", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력정보 갑지저장
* @param paramMap
* @return
*/
public Map saveMoldHistoryInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
int cnt = 0;
System.out.println("paramMap : "+paramMap);
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
//갑지정보 저장.
cnt = sqlSession.update("productDev.saveMoldHistoryInfo", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
sqlSession.commit();
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
resultMap.put("msg", Message.SYSTEM_ERROR);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력 갑지별 제품목록 조회
* @param paramMap
* @return
*/
public List getMoldHistoryRelProductList(Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getMoldHistoryRelProductList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 금형이력 갑지에 제품연결
* @param request
* @param paramMap
* @return
*/
public Map connectMoldHistoryRelProduct(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
String objId = CommonUtils.createObjId();
String writer = CommonUtils.checkNull(person.getUserId());
paramMap.put("objId", objId);
paramMap.put("writer", writer);
Map duplicateMap = sqlSession.selectOne("productDev.getDuplicateMoldHistoryRelProductCnt", paramMap);
int duplicateCnt = Integer.parseInt(CommonUtils.checkNull(duplicateMap.get("CNT"), "0"));
if(duplicateCnt == 0){
int cnt = sqlSession.insert("productDev.connectMoldHistoryRelProduct", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.ALREADY_REGISTED);
}
}catch(Exception e){
resultMap.put("result", false);
resultMap.put("msg", Message.SYSTEM_ERROR);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력 갑지에 제품연결 해제
* @param request
* @param paramMap
* @return
*/
public Map disconnectMoldHistoryRelProduct(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
int cnt = sqlSession.insert("productDev.disconnectMoldHistoryRelProduct", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
}catch(Exception e){
resultMap.put("result", false);
resultMap.put("msg", Message.SYSTEM_ERROR);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력 차종/제품/차수별 상세조회
* @param request
* @param paramMap
* @return
*/
public Map getMoldHistoryRelProdAttrInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getMoldHistoryRelProdAttrInfo", paramMap);
if(resultMap == null){
resultMap = new HashMap();
resultMap.put("MOLD_HISTORY_OBJID", CommonUtils.checkNull(paramMap.get("moldHistoryObjId")));
resultMap.put("MASTER_OBJID", CommonUtils.checkNull(paramMap.get("targetObjId")));
resultMap.put("SUB_OBJID", CommonUtils.createObjId());
//등록일(today)
resultMap.put("REGDATE", new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
//담당자(접속자)
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
String userId = CommonUtils.checkNull(person.getUserId());
String deptName = CommonUtils.checkNull(person.getDeptName());
String userName = CommonUtils.checkNull(person.getUserName());
resultMap.put("PIC", userId);
resultMap.put("PIC_DEPT_NAME", deptName);
resultMap.put("PIC_USER_NAME", userName);
//개정차수(해당 target별 max+1)
Map nextRevMap = sqlSession.selectOne("productDev.getMoldHistoryRelProdAttrNextRev", paramMap);
String nextRev = CommonUtils.checkNull(nextRevMap.get("NEXT_REV"), "0");
resultMap.put("REV", nextRev);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 금형이력 차종/제품별 첨부이력 목록조회
* @param paramMap
* @return
*/
public List getMoldHistoryRelProdAttrList(Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getMoldHistoryRelProdAttrList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 금형이력 파일첨부 내용 저장
* @param paramMap
* @return
*/
public Map saveMoldHistoryRelProdAttrInfo(Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
int cnt = sqlSession.update("productDev.saveMoldHistoryRelProdAttrInfo", paramMap);
if(cnt > 0){
resultMap.put("result", true);
resultMap.put("msg", Message.SAVE_SUCCESS);
}else{
resultMap.put("result", false);
resultMap.put("msg", Message.SAVE_FAILED);
}
}catch(Exception e){
resultMap.put("result", false);
resultMap.put("msg", Message.SYSTEM_ERROR);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/*jmpark end*/
/*edhwang start*/
/**
* DFMEA 갑지의 목록을 가져온다.
* @param request
* @param paramMap
* @return
*/
public List getDFMEABaseInfoList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
Map pageMap = new HashMap();
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
//paging start
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), ""+Constants.COUNT_PER_PAGE+"");
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
pageMap = (HashMap)sqlSession.selectOne("productDev.getDFMEABaseInfoListCnt", paramMap);
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap, countPerPage);
paramMap.put("PAGE_END", CommonUtils.checkNull(pageMap.get("PAGE_END")));
paramMap.put("PAGE_START", CommonUtils.checkNull(pageMap.get("PAGE_START")));
//paging end
resultList = sqlSession.selectList("productDev.getDFMEABaseInfoList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* DFMEA 갑지의 중복여부를 확인한다.
* @param request
* @param paramMap
* @return
*/
public Map checkDFMEABaseInfoDuplicate(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
resultMap = sqlSession.selectOne("productDev.checkDFMEABaseInfoDuplicate", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 갑지의 정보를 저장한다.
* @param request
* @param paramMap
* @return
*/
public Map saveDFMEABaseInfo(HttpSession session,HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
sqlSession.update("productDev.saveDFMEABaseInfo", paramMap);
resultMap.put("result", true);
sqlSession.commit();
}catch(Exception e){
resultMap.put("result", false);
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 갑지의 상세 단건정보를 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getDFMEABaseInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String objId = CommonUtils.checkNull(request.getParameter("objId"));
if(!"".equals(objId)){
resultMap = sqlSession.selectOne("productDev.getDFMEABaseInfo", paramMap);
}else{
resultMap.put("OBJID", CommonUtils.createObjId());
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 갑지에 연결된 DFMEA 정보 목록를 가져온다.
* @param request
* @param paramMap
* @return
*/
public List getDFMEAList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
if(!"".equals(targetObjId)){
resultList = sqlSession.selectList("productDev.getDFMEAList", paramMap);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* DFMEA 정보를 저장한다.
* @param request
* @param paramMap
* @return
*/
public Map saveDFMEAInfoList(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
String dfmeaObjId = CommonUtils.checkNull(request.getParameter("dfmeaObjId"));
String[] dfmeaObjIds = null;
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
String writer = CommonUtils.checkNull(person.getUserId());
if(!"".equals(dfmeaObjId)){
dfmeaObjIds = request.getParameterValues("dfmeaObjId");
if(0<dfmeaObjIds.length){
for(int i=0;i<dfmeaObjIds.length;i++){
String objId = CommonUtils.checkNull(dfmeaObjIds[i]);
String deleteObjId = CommonUtils.checkNull(request.getParameter("deleteDFMEAObjId_"+objId));
Map dfmeaSqlMap = new HashMap();
dfmeaSqlMap.put("objId", objId);
if(!"".equals(deleteObjId)){
dfmeaSqlMap.put("objId", deleteObjId);
sqlSession.delete("productDev.deleteDFMEAInfo", dfmeaSqlMap);
}else{
String groupPartNo = CommonUtils.checkNull(request.getParameter("dfmeaGroupPart_"+objId));
String groupObjId = CommonUtils.checkNull(request.getParameter("dfmeaGroup_"+objId));
String categoryPartNo = CommonUtils.checkNull(request.getParameter("dfmeaCategoryPart_"+objId));
String categoryObjId = CommonUtils.checkNull(request.getParameter("dfmeaCategory_"+objId));
String attrPartNo = CommonUtils.checkNull(request.getParameter("dfmeaAttrPart_"+objId));
String attrPartComment = CommonUtils.checkNull(request.getParameter("dfmeaAttrComment_"+objId));
String dfmeaAttribute = CommonUtils.checkNull(request.getParameter("dfmeaAttribute_"+objId));
String potentialImpact = CommonUtils.checkNull(request.getParameter("potentialImpact_"+objId));
String severityScore = CommonUtils.checkNull(request.getParameter("severityScore_"+objId));
String specialSpec = CommonUtils.checkNull(request.getParameter("specialSpec_"+objId));
String potentialCause = CommonUtils.checkNull(request.getParameter("potentialCause_"+objId));
String incidenceScore = CommonUtils.checkNull(request.getParameter("incidenceScore_"+objId));
String currentMngPrevent = CommonUtils.checkNull(request.getParameter("currentMngPrevent_"+objId));
String currentMngDetect = CommonUtils.checkNull(request.getParameter("currentMngDetect_"+objId));
String detectScore = CommonUtils.checkNull(request.getParameter("detectScore_"+objId));
String recommendOption = CommonUtils.checkNull(request.getParameter("recommendOption_"+objId));
dfmeaSqlMap.put("targetObjId", targetObjId);
dfmeaSqlMap.put("groupPartNo", groupPartNo);
dfmeaSqlMap.put("groupObjId", groupObjId);
dfmeaSqlMap.put("categoryPartNo", categoryPartNo);
dfmeaSqlMap.put("categoryObjId", categoryObjId);
dfmeaSqlMap.put("attrPartNo", attrPartNo);
dfmeaSqlMap.put("attrPartComment", attrPartComment);
dfmeaSqlMap.put("attrObjId", dfmeaAttribute);
dfmeaSqlMap.put("potentialImpact", potentialImpact);
dfmeaSqlMap.put("severityScore", severityScore);
dfmeaSqlMap.put("specialSpec", specialSpec);
dfmeaSqlMap.put("potentialCause", potentialCause);
dfmeaSqlMap.put("incidenceScore", incidenceScore);
dfmeaSqlMap.put("currentMngPrevent", currentMngPrevent);
dfmeaSqlMap.put("currentMngDetect", currentMngDetect);
dfmeaSqlMap.put("detectScore", detectScore);
dfmeaSqlMap.put("recommendOption", recommendOption);
dfmeaSqlMap.put("status", "");
dfmeaSqlMap.put("writer", writer);
sqlSession.update("productDev.saveDFMEAInfo", dfmeaSqlMap);
}
}
sqlSession.commit();
}
}
resultMap.put("result", true);
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 대분류 목록을 가져온다.(활성화)
* @param request
* @param paramMap
* @return
*/
public List getDFMEACategoryGroupList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getDFMEACategoryGroupList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* DFMEA 중분류 목록을 가져온다.(활성화)
* @param request
* @param paramMap
* @return
*/
public List getDFMEACategoryList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String targetObjId = CommonUtils.checkNull(request.getParameter("categoryGroupObjId"));
if(!"".equals(targetObjId)){
resultList = sqlSession.selectList("productDev.getDFMEACategoryList", paramMap);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* DFMEA 필터 목록을 가져온다.(활성화)
* @param request
* @param paramMap
* @return
*/
public List getDFMEAAttributeList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String targetObjId = CommonUtils.checkNull(request.getParameter("categoryObjId"));
if(!"".equals(targetObjId)){
resultList = sqlSession.selectList("productDev.getDFMEAAttributeList", paramMap);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* DFMEA 필터의 상세내용을 가져온다.(활성화)
* @param request
* @param paramMap
* @return
*/
public Map getDFMEAAttributeInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String objId = CommonUtils.checkNull(request.getParameter("objId"));
if(!"".equals(objId)){
resultMap = sqlSession.selectOne("productDev.getDFMEAAttributeList", paramMap);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 설변 적용 상세내용을 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getStructureChangeInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String objId = CommonUtils.checkNull(request.getParameter("objId"));
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
if(!"".equals(objId)){
resultMap = sqlSession.selectOne("productDev.getStructureChangeInfo", paramMap);
}else{
resultMap.put("OBJID", CommonUtils.createObjId());
resultMap.put("TARGET_OBJID", targetObjId);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 설변 적용 내용의 중복여부를 확인한다.
* @param request
* @param paramMap
* @return
*/
public Map checkStructureChangeInfoDuplicate(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.checkStructureChangeInfoDuplicate",paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 설변 적용내용을 저장한다.
* @param request
* @param paramMap
* @return
*/
public Map saveStructureChangeInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
sqlSession.update("productDev.saveStructureChangeInfo", paramMap);
sqlSession.commit();
resultMap.put("result", true);
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* DFMEA 설변 적용내용 이력 목록을 가져온다.
* @param request
* @param paramMap
* @return
*/
public List dfmeaChangeStructureListPopUp(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.dfmeaChangeStructureList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 설계 체크리스트 갑지의 목록을 가져온다.
* @param request
* @param paramMap
* @return
*/
public List designCheckListBaseInfoList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
Map pageMap = new HashMap();
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), ""+Constants.COUNT_PER_PAGE+"");
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
pageMap = (HashMap)sqlSession.selectOne("productDev.designCheckListBaseInfoListCnt", paramMap);
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap, countPerPage);
paramMap.put("PAGE_END", CommonUtils.checkNull(pageMap.get("PAGE_END")));
paramMap.put("PAGE_START", CommonUtils.checkNull(pageMap.get("PAGE_START")));
resultList = sqlSession.selectList("productDev.designCheckListBaseInfoList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 설계 체크리스트 갑지의 상세내용을 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getCheckListBaseInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String objId = CommonUtils.checkNull(request.getParameter("objId"));
if(!"".equals(objId)){
resultMap = sqlSession.selectOne("productDev.getCheckListBaseInfo", paramMap);
}else{
resultMap.put("OBJID", CommonUtils.createObjId());
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트 갑지 내용을 저장한다.(진행중)
* @param request
* @param paramMap
* @return
*/
public Map saveCheckListBaseInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
String actionType = CommonUtils.checkNull(request.getParameter("actionType"));
if("regist".equals(actionType)){
paramMap.put("status","create");
}
sqlSession.update("productDev.saveCheckListBaseInfo",paramMap);
String objId = CommonUtils.checkNull(request.getParameter("objId"));
String productObjId = CommonUtils.checkNull(request.getParameter("productObjId"));
//갑지 정보와 제품정보가 있는지 확인한다.
if(!"".equals(objId) && !"".equals(productObjId)){
//해당 갑지에 제품정보에 해당하는 체크리스트가 있는지 확인한다.
Map connectMap = sqlSession.selectOne("productDev.getConnectCheckListCnt",paramMap);
int cnt = Integer.parseInt(CommonUtils.checkNull(connectMap.get("CNT"),"0"));
if(cnt == 0){
List templateCheckList = new ArrayList();
templateCheckList = sqlSession.selectList("productDev.getDesignCheckListTemplate", paramMap);
for(int i=0;i<templateCheckList.size();i++){
Map templateMap = (HashMap)templateCheckList.get(i);
Map checkListSqlMap = new HashMap();
checkListSqlMap.put("objId", CommonUtils.createObjId());
checkListSqlMap.put("targetObjId", objId);
checkListSqlMap.put("groupObjId", CommonUtils.checkNull(templateMap.get("GROUP_OBJID")));
checkListSqlMap.put("categoryObjId", CommonUtils.checkNull(templateMap.get("CATEGORY_OBJID")));
checkListSqlMap.put("attributeObjId", CommonUtils.checkNull(templateMap.get("ATTRIBUTE_OBJID")));
checkListSqlMap.put("checkOption", CommonUtils.checkNull(templateMap.get("CHECK_OPTION")));
checkListSqlMap.put("checkBase", CommonUtils.checkNull(templateMap.get("CHECK_BASE")));
System.out.println("saveCheckListBaseInfo(checkListSqlMap):"+checkListSqlMap);
sqlSession.update("productDev.mergeCheckListInfo", checkListSqlMap);
}
}
}
sqlSession.commit();
resultMap.put("result", true);
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트 갑지 내용의 종복여부를 확인한다.
* @param request
* @param paramMap
* @return
*/
public Map checkCheckListBaseInfoDuplicate(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.checkCheckListBaseInfoDuplicate",paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트 갑지에 해당하는 체크리스트 목록을 가져온다.
* @param request
* @param paramMap
* @return
*/
public List getDesignCheckList(HttpServletRequest request, Map paramMap){
List<Map> resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
paramMap.put("l1DocType", Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L1_CODE);
paramMap.put("l2DocType", Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L2_CODE);
paramMap.put("l3DocType", Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L3_CODE);
paramMap.put("l4DocType", Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L4_CODE);
paramMap.put("instlDocType", Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_INSTL_CODE);
paramMap.put("eoDocType", Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_EO_CODE);
resultList = sqlSession.selectList("productDev.getDesignCheckList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 설계 체크리스트를 추가한다.
* @param request
* @param paramMap
* @return
*/
public Map createCheckList(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
String productObjId = CommonUtils.checkNull(request.getParameter("productObjId"));
Map checkListSqlMap = new HashMap();
String objId = CommonUtils.createObjId();
checkListSqlMap.put("objId", objId);
checkListSqlMap.put("targetObjId", targetObjId);
checkListSqlMap.put("writer", CommonUtils.checkNull(person.getUserId()));
sqlSession.update("productDev.mergeCheckListInfo",checkListSqlMap);
sqlSession.commit();
Map sqlMap = new HashMap();
sqlMap.put("objId", objId);
sqlMap.put("targetObjId", targetObjId);
resultMap = sqlSession.selectOne("productDev.getCheckListDetailInfo",sqlMap);
}catch(Exception e){
e.printStackTrace();
sqlSession.rollback();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트를 삭제한다.
* @param request
* @param paramMap
* @return
*/
public Map deleteCheckList(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String objId = CommonUtils.checkNull(request.getParameter("objId"));
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
if(!"".equals(objId) && !"".equals(targetObjId)){
Map sqlMap = new HashMap();
sqlMap.put("objId",objId);
sqlMap.put("targetObjId",targetObjId);
sqlSession.delete("productDev.deleteCheckListInfo",sqlMap);
}
sqlSession.commit();
resultMap.put("result", true);
}catch(Exception e){
resultMap.put("result", false);
e.printStackTrace();
sqlSession.rollback();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트 소분류의 상세 내용을 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getCheckListAttributeInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
String objId = CommonUtils.checkNull(request.getParameter("objId"));
if(!"".equals(objId)){
resultMap = sqlSession.selectOne("productDev.getCheckListAttributeInfo",paramMap);
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트(갑지X)를 저장한다.
* @param request
* @param paramMap
* @return
*/
public Map saveCheckList(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
System.out.println("saveCheckList(paramMap):"+paramMap);
String[] checkLists = request.getParameterValues("checkListObjId");
System.out.println("saveCheckList(checkLists):"+checkLists);
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
if(null != checkLists && 0 < checkLists.length){
for(int i=0;i<checkLists.length;i++){
String checkObjId = CommonUtils.checkNull(checkLists[i].toString());
if(!"".equals(checkObjId)){
Map checkListMap = new HashMap();
checkListMap.put("objId", checkObjId);
checkListMap.put("targetObjId", targetObjId);
checkListMap.put("groupObjId", CommonUtils.checkNull(request.getParameter("group_"+checkObjId)));
checkListMap.put("categoryObjId", CommonUtils.checkNull(request.getParameter("category_"+checkObjId)));
checkListMap.put("attributeObjId", CommonUtils.checkNull(request.getParameter("attribute_"+checkObjId)));
checkListMap.put("checkOption", CommonUtils.checkNull(request.getParameter("checkOption_"+checkObjId)));
checkListMap.put("checkBase", CommonUtils.checkNull(request.getParameter("checkBase_"+checkObjId)));
checkListMap.put("relationType", CommonUtils.checkNull(request.getParameter("relationType_"+checkObjId)));
sqlSession.update("productDev.mergeCheckListInfo",checkListMap);
}
}
sqlSession.commit();
resultMap.put("result", true);
}
}catch(Exception e){
resultMap.put("result", false);
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트(갑지X) 평가결과를 저장한다.
* @param request
* @param paramMap
* @return
*/
public Map saveTestResult(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
System.out.println("saveTestResult(paramMap):"+paramMap);
sqlSession.update("productDev.mergeCheckListTestResult",paramMap);
sqlSession.commit();
resultMap.put("result", true);
}catch(Exception e){
resultMap.put("result", false);
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트(갑지X)의 상세 내용을 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getCheckListDetailInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getCheckListDetailInfo",paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트(갑지X)의 평가결과 상세 내용을 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getCheckListTestResultInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getCheckListDetailInfo",paramMap);
String step = CommonUtils.checkNull(request.getParameter("step"));
System.out.println("getCheckListTestResultInfo(paramMap):"+paramMap);
if(!"".equals(step)){
resultMap.put("TARGET_RATING", CommonUtils.checkNull(resultMap.get("RATING_"+step)));
resultMap.put("TARGET_COMMENT", CommonUtils.checkNull(resultMap.get("COMMENT_"+step)));
resultMap.put("TARGET_RATING_TITLE", CommonUtils.checkNull(resultMap.get("RATING_"+step+"_TITLE")));
resultMap.put("TARGET_RESULT_DATE_TITLE", CommonUtils.checkNull(resultMap.get("RESULT_DATE_"+step+"_TITLE")));
}
String docType = "";
String docName = "";
System.out.println("getCheckListTestResultInfo(resultMap):"+resultMap);
if(!"".equals(step)){
if("L1".equals(step)){
docType = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L1_CODE;
docName = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L1_NAME;
}else if("L2".equals(step)){
docType = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L2_CODE;
docName = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L2_NAME;
}else if("L3".equals(step)){
docType = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L3_CODE;
docName = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L3_NAME;
}else if("L4".equals(step)){
docType = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L4_CODE;
docName = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_L4_NAME;
}else if("INSTL".equals(step)){
docType = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_INSTL_CODE;
docName = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_INSTL_NAME;
}else if("EO".equals(step)){
docType = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_EO_CODE;
docName = Constants.FILE_DOC_TYPE_DESIGN_CHECK_LIST_EO_NAME;
}
}
request.setAttribute("docType",docType);
request.setAttribute("docName",docName);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트의 평가결과 확인 내용을 저장한다.
* @param request
* @param paramMap
* @return
*/
public Map saveCheckListConfirmInfo(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
sqlSession.update("productDev.mergeComfirmTestResultInfo",paramMap);
sqlSession.commit();
resultMap.put("result", true);
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 과거차 문제점 목록을 가져온다.
* @param request
* @param paramMap
* @return
*/
public List getProblemContinualList(HttpServletRequest request, Map paramMap){
List<Map> resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getProblemContinualList", paramMap);
for(Map map : resultList){
map.put("PROBLEM_CONTENTS", CommonUtils.getClobToString((Clob)map.get("PROBLEM_CONTENTS")));
map.put("PROBLEM_REASON_CONTENTS", CommonUtils.getClobToString((Clob)map.get("PROBLEM_REASON_CONTENTS")));
map.put("RESPONSE_CONTENTS", CommonUtils.getClobToString((Clob)map.get("RESPONSE_CONTENTS")));
Map fileMap = new HashMap();
fileMap.put("targetObjId", map.get("OBJID"));
ArrayList fileList = commonService.getFileList(fileMap);
for(int i = 0 ; i < fileList.size() ; i++){
Map fileResultMap = (HashMap)fileList.get(i);
String docType = CommonUtils.checkNull(fileResultMap.get("DOC_TYPE"));
if("STR_PROBLEM_ATTACH".equals(docType) || "PROBLEM_ATTACH".equals(docType)){
map.put("PROBLEM_ATTACH_FILE_PATH", CommonUtils.checkNull(fileResultMap.get("FILE_PATH")));
map.put("PROBLEM_ATTACH_SAVED_FILE_NAME", CommonUtils.checkNull(fileResultMap.get("SAVED_FILE_NAME")));
map.put("PROBLEM_ATTACH_UPPER_FILE_EXT", CommonUtils.checkNull(fileResultMap.get("UPPER_FILE_EXT")));
map.put("PROBLEM_ATTACH_REAL_FILE_NAME", CommonUtils.checkNull(fileResultMap.get("REAL_FILE_NAME")));
}else if("RESPONSE_ATTACH".equals(docType) || "STR_SUGGEST_ATTACH".equals(docType)){
map.put("RESPONSE_ATTACH_FILE_PATH", CommonUtils.checkNull(fileResultMap.get("FILE_PATH")));
map.put("RESPONSE_ATTACH_SAVED_FILE_NAME", CommonUtils.checkNull(fileResultMap.get("SAVED_FILE_NAME")));
map.put("RESPONSE_ATTACH_UPPER_FILE_EXT", CommonUtils.checkNull(fileResultMap.get("UPPER_FILE_EXT")));
map.put("RESPONSE_ATTACH_REAL_FILE_NAME", CommonUtils.checkNull(fileResultMap.get("REAL_FILE_NAME")));
}else if("REASON_ATTACH".equals(docType)){
map.put("REASON_ATTACH_FILE_PATH", CommonUtils.checkNull(fileResultMap.get("FILE_PATH")));
map.put("REASON_ATTACH_SAVED_FILE_NAME", CommonUtils.checkNull(fileResultMap.get("SAVED_FILE_NAME")));
map.put("REASON_ATTACH_UPPER_FILE_EXT", CommonUtils.checkNull(fileResultMap.get("UPPER_FILE_EXT")));
map.put("REASON_ATTACH_REAL_FILE_NAME", CommonUtils.checkNull(fileResultMap.get("REAL_FILE_NAME")));
}
}
}
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 과거차 문제점과 설계 체크리스트를 연결한다.
* @param request
* @param paramMap
* @return
*/
public Map connectProblemContinual(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
String writer = CommonUtils.checkNull(person.getUserId());
if(!"".equals(targetObjId)){
String[] problemContinuals = request.getParameterValues("problemChkBox");
if(null != problemContinuals && 0 < problemContinuals.length){
for(int i=0;i<problemContinuals.length;i++){
String problemContinualObjId = CommonUtils.checkNull(problemContinuals[i].toString());
String dataType = CommonUtils.checkNull(request.getParameter("dataType_"+problemContinualObjId));
Map relSqlMap = new HashMap();
relSqlMap.put("objId", CommonUtils.createObjId());
relSqlMap.put("targetObjId", targetObjId);
relSqlMap.put("problemContinualObjId", problemContinualObjId);
relSqlMap.put("dataType", dataType);
relSqlMap.put("writer", writer);
sqlSession.update("productDev.mergeCheckListRelProblemContinual", relSqlMap);
}
}
sqlSession.commit();
resultMap.put("result", true);
}
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 과거차 문제점과 설계 체크리스트를 연결해제한다.
* @param request
* @param paramMap
* @return
*/
public Map disConnectProblemContinual(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
String writer = CommonUtils.checkNull(person.getUserId());
if(!"".equals(targetObjId)){
String[] problemContinuals = request.getParameterValues("problemChkBox");
if(null != problemContinuals && 0 < problemContinuals.length){
for(int i=0;i<problemContinuals.length;i++){
String problemContinualObjId = CommonUtils.checkNull(problemContinuals[i].toString());
String dataType = CommonUtils.checkNull(request.getParameter("dataType_"+problemContinualObjId));
Map relSqlMap = new HashMap();
relSqlMap.put("targetObjId", targetObjId);
relSqlMap.put("problemContinualObjId", problemContinualObjId);
relSqlMap.put("dataType", dataType);
sqlSession.delete("productDev.deleteCheckListRelProblemContinual", relSqlMap);
}
}
sqlSession.commit();
resultMap.put("result", true);
}
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트와 연결된 과거차 문제점 목록을 가져온다.
* @param request
* @param paramMap
* @return
*/
public List getConnectProblemContinualList(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getConnectProblemContinualList", paramMap);
}catch(Exception e){
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 연결된 첨부파일 정보를 가져온다.
* @param request
* @param paramMap
* @return
*/
public List getConnectAttachFileInfo(HttpServletRequest request, Map paramMap){
List resultList = new ArrayList();
SqlSession sqlSession = null;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultList = sqlSession.selectList("productDev.getFileList", paramMap);
}catch(Exception e){
sqlSession.rollback();
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultList;
}
/**
* 체크리스트의 단계별 상태 정보를 가져온다.
* @param request
* @param paramMap
* @return
*/
public Map getCheckListStepStatus(HttpServletRequest request, Map paramMap){
SqlSession sqlSession = null;
Map resultMap = new HashMap();
boolean flag = true;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getCheckListStepStatus", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* ㅔㅊ크리스트를 제출 처리한다.
* @param request
* @param paramMap
* @return
*/
public Map submitCheckList(HttpServletRequest request, Map paramMap){
Map resultMap = new HashMap();
try{
String step = CommonUtils.checkNull(request.getParameter("step")).toUpperCase();
String status = "submit";
paramMap.put("status", status);
resultMap = changeCheckListStatus(request, paramMap);
}catch(Exception e){
e.printStackTrace();
}
return resultMap;
}
/**
* 설계 체크리스트 갑지의 상태를 변경한다.
* @param request
* @param paramMap
* @return
*/
public Map changeCheckListStatus(HttpServletRequest request, Map paramMap){
SqlSession sqlSession = null;
Map resultMap = new HashMap();
boolean flag = true;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
sqlSession.update("productDev.changeCheckListStatus", paramMap);
sqlSession.commit();
resultMap.put("result", true);
}catch(Exception e){
sqlSession.rollback();
resultMap.put("result", false);
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/**
* 설계 체크리스트 갑지의 상태를 변경한다.
* @param request
* @param paramMap
* @return
*/
public Map getCheckListConfirmHistoryInfo(HttpServletRequest request, Map paramMap){
SqlSession sqlSession = null;
Map resultMap = new HashMap();
boolean flag = true;
try{
sqlSession = SqlMapConfig.getInstance().getSqlSession();
resultMap = sqlSession.selectOne("productDev.getCheckListBaseInfo", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
return resultMap;
}
/*edhwang end*/
}