4239 lines
134 KiB
Java
4239 lines
134 KiB
Java
|
|
package com.pms.service;
|
||
|
|
|
||
|
|
import java.io.File;
|
||
|
|
import java.io.FileInputStream;
|
||
|
|
import java.sql.Clob;
|
||
|
|
import java.util.ArrayList;
|
||
|
|
import java.util.Arrays;
|
||
|
|
import java.util.HashMap;
|
||
|
|
import java.util.LinkedHashSet;
|
||
|
|
import java.util.List;
|
||
|
|
import java.util.Map;
|
||
|
|
import java.util.Set;
|
||
|
|
|
||
|
|
import javax.servlet.http.HttpServletRequest;
|
||
|
|
import javax.servlet.http.HttpSession;
|
||
|
|
|
||
|
|
import org.apache.commons.lang3.StringUtils;
|
||
|
|
import org.apache.ibatis.session.SqlSession;
|
||
|
|
import org.apache.poi.ss.usermodel.DataFormatter;
|
||
|
|
import org.apache.poi.xssf.usermodel.XSSFCell;
|
||
|
|
import org.apache.poi.xssf.usermodel.XSSFRow;
|
||
|
|
import org.apache.poi.xssf.usermodel.XSSFSheet;
|
||
|
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
||
|
|
import org.springframework.stereotype.Service;
|
||
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
||
|
|
|
||
|
|
import com.pms.common.Message;
|
||
|
|
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.common.utils.MailUtil;
|
||
|
|
|
||
|
|
@Service
|
||
|
|
public class ProjectService {
|
||
|
|
|
||
|
|
CommonService commonService = null;
|
||
|
|
|
||
|
|
@Autowired
|
||
|
|
AdminService adminService;
|
||
|
|
|
||
|
|
@Autowired
|
||
|
|
public void setCommonService(CommonService commonService){
|
||
|
|
this.commonService = commonService;
|
||
|
|
}
|
||
|
|
|
||
|
|
/*jmpark start*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 이슈 목록 조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getIssueList(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("project.getIssueListCnt", 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("project.getIssueList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 이슈 저장
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveIssueMgmtInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
System.out.println(paramMap.get("project_no"));
|
||
|
|
System.out.println(paramMap.get("parent_objid"));
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
if("".equals(objId)) objId = CommonUtils.createObjId();
|
||
|
|
|
||
|
|
paramMap.put("writer", writer);
|
||
|
|
paramMap.put("objId", objId);
|
||
|
|
|
||
|
|
int cnt = sqlSession.update("project.saveIssueMgmtInfo", paramMap);
|
||
|
|
|
||
|
|
String checWpstCd = CommonUtils.checkNull(paramMap.get("appr_wpst_cd"));
|
||
|
|
|
||
|
|
if(!checWpstCd.equals("")){
|
||
|
|
int cnt1 = sqlSession.update("project.updateIssueMgmtInfo", 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.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 이슈 배포
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map issueWpstStatusUpdate(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
Map issueMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
/*PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());*/
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
|
||
|
|
java.util.Calendar cal = java.util.Calendar.getInstance();
|
||
|
|
int year = cal.get ( cal.YEAR );
|
||
|
|
|
||
|
|
issueMap = getIssueNo(issueMap);
|
||
|
|
|
||
|
|
//if("".equals(objId)) objId = CommonUtils.createObjId();
|
||
|
|
|
||
|
|
//paramMap.put("writer", writer);
|
||
|
|
paramMap.put("objId", objId);
|
||
|
|
paramMap.put("issueNo", String.valueOf(issueMap.get("ISSUNO")));
|
||
|
|
|
||
|
|
int cnt = sqlSession.update("project.issueWpstStatusUpdate", 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.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
public Map getIssueNo(Map paramMap){
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getIssueNo", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 이슈 상세조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getIssueInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getIssueInfo", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 이슈 저장
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveIssueInfo(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 writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
if("".equals(objId)) objId = CommonUtils.createObjId();
|
||
|
|
|
||
|
|
paramMap.put("writer", writer);
|
||
|
|
paramMap.put("objId", objId);
|
||
|
|
|
||
|
|
int cnt = sqlSession.update("project.saveIssueInfo", 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.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gate관리 內 프로젝트 목록조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectList_byGate(Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultList = sqlSession.selectList("project.getProjectList_byGate", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Project Gate별 일정조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getProjectGateScheduleInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getProjectGateSchedule", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Project Gate별 일정 저장
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveProjectGateScheduleInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
if("".equals(objId)){
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
paramMap.put("objId", objId);
|
||
|
|
}
|
||
|
|
|
||
|
|
int cnt = sqlSession.update("project.saveProjectGateScheduleInfo", 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.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gate1 현황
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getGate1StatusInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getGate1Status", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gate2 현황
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getGate2StatusInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getGate2Status", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gate3 현황
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getGate3StatusInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getGate3Status", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gate4 현황
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getGate4StatusInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getGate4Status", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/*jmpark end*/
|
||
|
|
|
||
|
|
/*edhwang start*/
|
||
|
|
/**
|
||
|
|
* 프로젝트 목록을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"),Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.getProjectListCnt",paramMap);
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request,pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END",CommonUtils.checkNull(pageMap.get("PAGE_END")));
|
||
|
|
paramMap.put("PAGE_START",CommonUtils.checkNull(pageMap.get("PAGE_START")));
|
||
|
|
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getProjectList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 목록조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getContractCompleteList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.getContractCompleteListCnt", paramMap);
|
||
|
|
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END", pageMap.get("PAGE_END"));
|
||
|
|
paramMap.put("PAGE_START", pageMap.get("PAGE_START"));
|
||
|
|
|
||
|
|
resultList = CommonUtils.keyChangeUpperList((ArrayList)sqlSession.selectList("project.getContractCompleteList", paramMap));
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 목록조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectMgntList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.projectMgmtListCnt", paramMap);
|
||
|
|
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END", pageMap.get("PAGE_END"));
|
||
|
|
paramMap.put("PAGE_START", pageMap.get("PAGE_START"));
|
||
|
|
|
||
|
|
resultList = CommonUtils.keyChangeUpperList((ArrayList)sqlSession.selectList("project.projectMgmtList", paramMap));
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 현황 대시보드용
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List dashboardProjectMgmtList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.projectMgmtListCnt", paramMap);
|
||
|
|
|
||
|
|
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END", pageMap.get("PAGE_END"));
|
||
|
|
paramMap.put("PAGE_START", pageMap.get("PAGE_START"));
|
||
|
|
|
||
|
|
resultList = CommonUtils.keyChangeUpperList((ArrayList)sqlSession.selectList("project.dashboardProjectMgmtList", paramMap));
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 대시보드 리스트
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectMainBoardList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.projectMainDashboardList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 이슈 목록을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getIssueListInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"),Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.getIssueListInfoCnt",paramMap);
|
||
|
|
|
||
|
|
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request,pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END",CommonUtils.checkNull(pageMap.get("PAGE_END")));
|
||
|
|
paramMap.put("PAGE_START",CommonUtils.checkNull(pageMap.get("PAGE_START")));
|
||
|
|
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getIssueListInfo", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 상세 조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getProjectMgmtInfo(Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultMap = sqlSession.selectOne("project.getProjectMgmtInfo", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
/** 프로젝트 수정
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveProjectMgmt(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
String MANUFACTUR_COST1 = CommonUtils.checkNull(paramMap.get("manufactur_cost1"));
|
||
|
|
String MANUFACTUR_COST2= CommonUtils.checkNull(paramMap.get("manufactur_cost2"));
|
||
|
|
String CONTRACT_AMOUNT = CommonUtils.checkNull(paramMap.get("contract_amount"));
|
||
|
|
String MANUFACTUR_SCOST= CommonUtils.checkNull(paramMap.get("manufactur_scost"));
|
||
|
|
|
||
|
|
MANUFACTUR_COST1 = MANUFACTUR_COST1.replaceAll(",", "");
|
||
|
|
MANUFACTUR_COST2 = MANUFACTUR_COST2.replaceAll(",", "");
|
||
|
|
CONTRACT_AMOUNT = CONTRACT_AMOUNT.replaceAll(",", "");
|
||
|
|
MANUFACTUR_SCOST = MANUFACTUR_SCOST.replaceAll(",", "");
|
||
|
|
|
||
|
|
paramMap.put("manufactur_cost1", MANUFACTUR_COST1);
|
||
|
|
paramMap.put("manufactur_cost2", MANUFACTUR_COST2);
|
||
|
|
paramMap.put("contract_amount", CONTRACT_AMOUNT);
|
||
|
|
paramMap.put("manufactur_scost", MANUFACTUR_SCOST);
|
||
|
|
int cnt = 0;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
cnt = sqlSession.update("project.updateProjectMgmt", paramMap);
|
||
|
|
|
||
|
|
if(cnt > 0){
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 WBS TASK 조최
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectWbsList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getProjectTaskList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 WBS TASK 조최
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public String getProjectAverage(HttpServletRequest request,Map paramMap){
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
String average = "";
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
//프로젝트 TASK 공정진척율 조회
|
||
|
|
average = CommonUtils.checkNull(sqlSession.selectOne("project.getProjectTaskAverage", paramMap));
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return average;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/** TASK삭제
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map delProjectMgmtInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
String Key = (String) paramMap.get("delKey");
|
||
|
|
String [] delKey = Key.split(",");
|
||
|
|
|
||
|
|
sqlMap.put("delObjKeyarr", delKey);
|
||
|
|
int cnt = sqlSession.delete("project.deleteProjectmgmtinfo", sqlMap);
|
||
|
|
|
||
|
|
if(cnt > 0){
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 수주활동 목록을 가져온다(수주활동 품목X).
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectConceptList(HttpServletRequest request, Map paramMap){
|
||
|
|
ArrayList resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getProjectConceptList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트의 상세 정보를 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getProjectInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
HashMap resultMap = new HashMap();
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
if(!"".equals(objId)){
|
||
|
|
resultMap = (HashMap)sqlSession.selectOne("project.getProjectInfo", paramMap);
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트를 저장한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveProjectInfo(HttpSession session,HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
HashMap resultMap = new HashMap();
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
boolean result = false;
|
||
|
|
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
|
||
|
|
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
|
||
|
|
|
||
|
|
try{
|
||
|
|
|
||
|
|
//작성된 프로젝트 내용을 저장한다.
|
||
|
|
sqlSession.update("project.saveProjectInfo", paramMap);
|
||
|
|
|
||
|
|
//기존에 연결된 제품을 삭제하고 다시 제품을 연결한다.
|
||
|
|
connectProjectProduct(sqlSession, request, paramMap);
|
||
|
|
|
||
|
|
mergeProjectMilestone(sqlSession, request, paramMap);
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
|
||
|
|
sqlMap.put("targetUserId", CommonUtils.checkNull(paramMap.get("cft_userid")));
|
||
|
|
sqlMap.put("carObjId", CommonUtils.checkNull(paramMap.get("carObjId")));
|
||
|
|
sqlMap.put("objId", CommonUtils.createObjId());
|
||
|
|
|
||
|
|
|
||
|
|
// CFT인원 리셋
|
||
|
|
sqlSession.update("admin.resetCarMemberLeader", sqlMap);
|
||
|
|
|
||
|
|
//CFT장 등록
|
||
|
|
sqlSession.update("admin.mergeCarTFTLeader", sqlMap);
|
||
|
|
|
||
|
|
|
||
|
|
result = true;
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
resultMap.put("result", result);
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트의 중복여부를 확인한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map checkProjectDuplicate(HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
HashMap resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultMap = sqlSession.selectOne("project.checkProjectDuplicate", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트의 상태를 확정상태로 변경한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map changeProjectStatus(HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
String[] projects = request.getParameterValues("projectCheckBox");
|
||
|
|
String status = CommonUtils.checkNull(request.getParameter("status"));
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
try{
|
||
|
|
if(null != projects && 0 < projects.length){
|
||
|
|
for(int i=0;i<projects.length;i++){
|
||
|
|
String projectObjId = CommonUtils.checkNull(projects[i].toString());
|
||
|
|
String carObjId = "";
|
||
|
|
String oemObjId = "";
|
||
|
|
if(!"".equals(projectObjId)){
|
||
|
|
carObjId = CommonUtils.checkNull(paramMap.get(projectObjId+"_carObjId"));
|
||
|
|
oemObjId = CommonUtils.checkNull(paramMap.get(projectObjId+"_oemObjId"));
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
sqlMap.put("objId", projectObjId);
|
||
|
|
sqlMap.put("status", status);
|
||
|
|
|
||
|
|
sqlSession.update("project.changeProjectStatus", sqlMap);
|
||
|
|
|
||
|
|
//프로젝트 확정 시 표준 WBS를 프로젝트에 복사한다.
|
||
|
|
if("confirm".equals(status)){
|
||
|
|
paramMap.put("objId", projectObjId);
|
||
|
|
paramMap.put("carObjId", carObjId);
|
||
|
|
paramMap.put("oemObjId", oemObjId);
|
||
|
|
//저장 시 표준 WBS에 구성된 Task 구조를 프로젝트에 복사한다.
|
||
|
|
createProjectWBSTask(sqlSession, request, paramMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
}
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 생성 시 표준 WBS에 해당하는 Task로 WBS를 구성한다.
|
||
|
|
* @param session
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map createProjectWBSTask(SqlSession sqlSession,HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
HashMap resultMap = new HashMap();
|
||
|
|
String projectObjId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
System.out.println("*******************************");
|
||
|
|
System.out.println("projectObjId ---->" + projectObjId);
|
||
|
|
System.out.println("*******************************");
|
||
|
|
String carObjId = CommonUtils.checkNull(projectObjId+"_carObjId");
|
||
|
|
String oemObjId =CommonUtils.checkNull(projectObjId+"_carObjId");
|
||
|
|
|
||
|
|
//담당자 매핑
|
||
|
|
String manager_pm = CommonUtils.checkNull(paramMap.get("manager_pm"));
|
||
|
|
String design_pm = CommonUtils.checkNull(paramMap.get("design_pm"));
|
||
|
|
String production_pm = CommonUtils.checkNull(paramMap.get("production_pm"));
|
||
|
|
String electro_pm = CommonUtils.checkNull(paramMap.get("electro_pm"));
|
||
|
|
String se_pm = CommonUtils.checkNull(paramMap.get("se_pm"));
|
||
|
|
String purchase_pm = CommonUtils.checkNull(paramMap.get("purchase_pm"));
|
||
|
|
|
||
|
|
|
||
|
|
boolean result = false;
|
||
|
|
|
||
|
|
try{
|
||
|
|
if(!"".equals(projectObjId) && !"".equals(carObjId)){
|
||
|
|
|
||
|
|
//표준 WBS 목록을 가져온다.
|
||
|
|
List standardWBSTaskList = new ArrayList();
|
||
|
|
standardWBSTaskList = getStandardWBSTask(sqlSession, request, paramMap);
|
||
|
|
|
||
|
|
if(null != standardWBSTaskList && 0 < standardWBSTaskList.size()){
|
||
|
|
//String lv1parentObjId = "";
|
||
|
|
//String lv2parentObjId = "";
|
||
|
|
for(int i=0;i<standardWBSTaskList.size();i++){
|
||
|
|
Map wbsTaskMap = CommonUtils.keyChangeUpperMap((HashMap)standardWBSTaskList.get(i));
|
||
|
|
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
|
||
|
|
//String baseDate = CommonUtils.checkNull(wbsTaskMap.get("BASE_SCHEDULE"));
|
||
|
|
|
||
|
|
String afterObjId = CommonUtils.createObjId();
|
||
|
|
|
||
|
|
//String level = CommonUtils.checkNull(wbsTaskMap.get("LEV"));
|
||
|
|
//String taskDeptCode = "";
|
||
|
|
//String taskType = "";
|
||
|
|
/*if("1".equals(level)){
|
||
|
|
lv1parentObjId = afterObjId;
|
||
|
|
sqlMap.put("taskParentObjId", "");
|
||
|
|
}else if("2".equals(level)){
|
||
|
|
sqlMap.put("taskParentObjId", lv1parentObjId);
|
||
|
|
lv2parentObjId = afterObjId;
|
||
|
|
}else if("3".equals(level)){
|
||
|
|
taskDeptCode = CommonUtils.checkNull(wbsTaskMap.get("TASK_DEPT"));
|
||
|
|
sqlMap.put("taskParentObjId", lv2parentObjId);
|
||
|
|
taskType = "task";
|
||
|
|
}*/
|
||
|
|
|
||
|
|
sqlMap.put("taskObjId", Integer.parseInt(afterObjId));
|
||
|
|
sqlMap.put("projectObjId", Integer.parseInt(projectObjId));
|
||
|
|
sqlMap.put("taskName", CommonUtils.checkNull(wbsTaskMap.get("TASK_NAME")));
|
||
|
|
sqlMap.put("gate", CommonUtils.checkNull(wbsTaskMap.get("PROJ_STEP")));
|
||
|
|
sqlMap.put("wbsCode", CommonUtils.checkNull(wbsTaskMap.get("WBS_CODE")));
|
||
|
|
sqlMap.put("seq", wbsTaskMap.get("SEQ"));
|
||
|
|
sqlMap.put("taskType", "task");
|
||
|
|
sqlMap.put("taskDept", CommonUtils.checkNull(wbsTaskMap.get("TASK_DEPT")));
|
||
|
|
sqlMap.put("taskStartPlanDate", CommonUtils.checkNull(wbsTaskMap.get("TASK_START_PLAN_DATE")));
|
||
|
|
sqlMap.put("taskEndPlanDate", CommonUtils.checkNull(wbsTaskMap.get("TASK_END_PLAN_DATE")));
|
||
|
|
sqlMap.put("taskEndPlanDate", CommonUtils.checkNull(wbsTaskMap.get("TASK_END_PLAN_DATE")));
|
||
|
|
sqlMap.put("taskEndPlanDate", CommonUtils.checkNull(wbsTaskMap.get("TASK_END_PLAN_DATE")));
|
||
|
|
sqlMap.put("status", "create");
|
||
|
|
sqlMap.put("bigo", CommonUtils.checkNull(wbsTaskMap.get("BIGO")));
|
||
|
|
sqlMap.put("stepName", CommonUtils.checkNull(wbsTaskMap.get("STEP_NAME")));
|
||
|
|
sqlMap.put("taskStep", CommonUtils.checkNull(wbsTaskMap.get("TASK_STEP")));
|
||
|
|
|
||
|
|
//담당자 넣어주기
|
||
|
|
String task_no = CommonUtils.checkNull(wbsTaskMap.get("TASK_STEP"));
|
||
|
|
if(task_no.equals("2") ){
|
||
|
|
sqlMap.put("taskChargerId", design_pm);
|
||
|
|
}else if(task_no.equals("3")){
|
||
|
|
sqlMap.put("taskChargerId", purchase_pm);
|
||
|
|
}else if(task_no.equals("4")){
|
||
|
|
sqlMap.put("taskChargerId", production_pm);
|
||
|
|
}else if(task_no.equals("5")){
|
||
|
|
sqlMap.put("taskChargerId", production_pm);
|
||
|
|
}else if(task_no.equals("6")){
|
||
|
|
sqlMap.put("taskChargerId", production_pm);
|
||
|
|
}else if(task_no.equals("7")){
|
||
|
|
sqlMap.put("taskChargerId", production_pm);
|
||
|
|
}else if(task_no.equals("8")){
|
||
|
|
sqlMap.put("taskChargerId", manager_pm);
|
||
|
|
}else if(task_no.equals("1")){
|
||
|
|
sqlMap.put("taskChargerId", design_pm);
|
||
|
|
}
|
||
|
|
//기존에 표준 WBS에 해당하는 내용이 없을 시 insert 한다.
|
||
|
|
sqlSession.update("project.mergeProjectStandardWBSTask", sqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
result = true;
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}
|
||
|
|
resultMap.put("result", result);
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 표준 WBS Task 목록을 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getStandardWBSTask(SqlSession sqlSession,HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
try{
|
||
|
|
//작성된 프로젝트 내용을 저장한다.
|
||
|
|
resultList = sqlSession.selectList("project.getStansardWBSTaskList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 WBS Task의 목록을 트리형으로 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectWBSTaskList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 검색조건에 해당하는 프로젝트의 WBS Task 목록을 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getSearchProjectWBSTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getSearchProjectWBSTaskList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 선택된 Function Task와 WBS Task를 연결한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map connectProjectWBSTask(HttpSession session,HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
|
||
|
|
String taskType = CommonUtils.checkNull(request.getParameter("connectTaskType"));
|
||
|
|
String targetData = CommonUtils.checkNull(request.getParameter("targetObjId"));
|
||
|
|
|
||
|
|
String[] targetList = null;
|
||
|
|
if(targetData.contains(",")){
|
||
|
|
targetList = targetData.split(",");
|
||
|
|
}
|
||
|
|
String[] wbsTaskList = request.getParameterValues("wbsTaskCheckBox");
|
||
|
|
|
||
|
|
if(null != targetList && 0 < targetList.length ){
|
||
|
|
for(int i=0;i<targetList.length;i++){
|
||
|
|
String fnTaskObjId = CommonUtils.checkNull(targetList[i].toString());
|
||
|
|
|
||
|
|
for(int j=0;j<wbsTaskList.length;j++){
|
||
|
|
String wbsTaskObjId = CommonUtils.checkNull(wbsTaskList[j].toString());
|
||
|
|
|
||
|
|
Map connectSqlMap = new HashMap();
|
||
|
|
connectSqlMap.put("objId", CommonUtils.createObjId());
|
||
|
|
connectSqlMap.put("wbsTaskObjId", wbsTaskObjId);
|
||
|
|
connectSqlMap.put("fnTaskObjId", fnTaskObjId);
|
||
|
|
connectSqlMap.put("taskType", taskType);
|
||
|
|
connectSqlMap.put("writer", writer);
|
||
|
|
|
||
|
|
sqlSession.update("project.connectProjectWBSTask", connectSqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}else{
|
||
|
|
for(int j=0;j<wbsTaskList.length;j++){
|
||
|
|
String wbsTaskObjId = CommonUtils.checkNull(wbsTaskList[j].toString());
|
||
|
|
|
||
|
|
Map connectSqlMap = new HashMap();
|
||
|
|
connectSqlMap.put("objId", CommonUtils.createObjId());
|
||
|
|
connectSqlMap.put("wbsTaskObjId", wbsTaskObjId);
|
||
|
|
connectSqlMap.put("fnTaskObjId", targetData);
|
||
|
|
connectSqlMap.put("taskType", taskType);
|
||
|
|
connectSqlMap.put("writer", writer);
|
||
|
|
|
||
|
|
sqlSession.update("project.connectProjectWBSTask", connectSqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 선택된 Function Task와 WBS Task를 연결해제한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map disConnectProjectWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
//Function Task의 objId
|
||
|
|
String subObjId = CommonUtils.checkNull(request.getParameter("subObjId"));
|
||
|
|
|
||
|
|
//연결된 WBS Task 중 삭제를 위해 선택된 Task의 ObjId
|
||
|
|
String[] wbsTaskList = request.getParameterValues("wbsTaskCheckBox");
|
||
|
|
|
||
|
|
if(null != wbsTaskList && 0 < wbsTaskList.length){
|
||
|
|
for(int i=0;i<wbsTaskList.length;i++){
|
||
|
|
String wbsTaskObjId = CommonUtils.checkNull(wbsTaskList[i].toString());
|
||
|
|
|
||
|
|
Map disConnSqlMap = new HashMap();
|
||
|
|
disConnSqlMap.put("targetObjId", wbsTaskObjId);
|
||
|
|
disConnSqlMap.put("fnTaskObjId", subObjId);
|
||
|
|
|
||
|
|
System.out.println("disConnSqlMap:"+disConnSqlMap);
|
||
|
|
|
||
|
|
sqlSession.delete("project.disConnectProjectWBSTask", disConnSqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task에 연결된 Function Task의 목록을 가져온다.
|
||
|
|
*
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getWBSTaskConnectFNTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getWBSTaskConnectFNTaskList",paramMap);
|
||
|
|
|
||
|
|
for(Map resultMap:resultList){
|
||
|
|
String taskTitle = "";
|
||
|
|
String taskType = CommonUtils.checkNull(resultMap.get("TASK_TYPE"));
|
||
|
|
if(Constants.CONNECT_TYPE_CODE_DEV_MASTER.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_DEV_MASTER;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_DFMEA.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_DFMEA;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_PROTO_STOCK.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_PROTO_STOCK;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_PROTO_PLAN.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_PROTO_PLAN;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_PROTO_TEST.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_PROTO_TEST;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_EO_APPLY.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_EO_APPLY;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_QUALITY_TEST.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_QUALITY_TEST;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_APPLY_HISTORY.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_APPLY_HISTORY;
|
||
|
|
}else if(Constants.CONNECT_TYPE_CODE_STRUCTURE_REVIEW_REPORT.equals(taskType)){
|
||
|
|
taskTitle = Constants.CONNECT_TYPE_NAME_STRUCTURE_REVIEW_REPORT;
|
||
|
|
}
|
||
|
|
resultMap.put("TASK_TYPE_TITLE", taskTitle);
|
||
|
|
}
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Function Task에 연결된 WBS Task 목록을 가져온다.
|
||
|
|
*
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getFNTaskConnectedTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getFNTaskConnectWBSTaskList",paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task의 내용을 저장한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map saveProjectWBSTaskInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
sqlSession.update("project.mergeProjectWBSTaskInfo",paramMap);
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task의 상세화면을 보여준다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map getProjectWBSTaskInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map wbsMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
String taskObjId = CommonUtils.checkNull(paramMap.get("taskObjId"));
|
||
|
|
if(!"".equals(taskObjId)){
|
||
|
|
paramMap.put("taskObjId", Integer.parseInt(taskObjId));
|
||
|
|
wbsMap = sqlSession.selectOne("project.getProjectWBSTaskInfo",paramMap);
|
||
|
|
wbsMap = CommonUtils.keyChangeUpperMap(wbsMap);
|
||
|
|
}else{
|
||
|
|
String parentTaskObjId = CommonUtils.checkNull(paramMap.get("parentObjId"));
|
||
|
|
Map parentWBSMap = new HashMap();
|
||
|
|
if(!"".equals(parentTaskObjId)){
|
||
|
|
paramMap.put("taskObjId", Integer.parseInt(parentTaskObjId));
|
||
|
|
parentWBSMap = sqlSession.selectOne("project.getProjectWBSTaskInfo",paramMap);
|
||
|
|
parentWBSMap = CommonUtils.keyChangeUpperMap(parentWBSMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
wbsMap.put("OBJID", CommonUtils.createObjId());
|
||
|
|
wbsMap.put("TARGET_OBJID", CommonUtils.checkNull(parentWBSMap.get("TARGET_OBJID")));
|
||
|
|
wbsMap.put("PARENT_OBJID", CommonUtils.checkNull(paramMap.get("parentObjId")));
|
||
|
|
wbsMap.put("PROJ_STEP", CommonUtils.checkNull(parentWBSMap.get("PROJ_STEP")));
|
||
|
|
wbsMap.put("TASK_TYPE", CommonUtils.checkNull(request.getParameter("taskType")));
|
||
|
|
wbsMap.put("IS_TEMPLATE_TASK", 1);
|
||
|
|
wbsMap.put("STATUS", CommonUtils.checkNull(paramMap.get("status")));
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return wbsMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 해당 인원의 권한을 확인한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getWBSTaskMemberAuth(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getWBSTaskMemberAuth", paramMap);
|
||
|
|
|
||
|
|
System.out.println("resultList.size():"+resultList.size());
|
||
|
|
|
||
|
|
if(0 < resultList.size()){
|
||
|
|
resultMap.put("isTFTLeader", true);
|
||
|
|
}else{
|
||
|
|
resultMap.put("isTFTLeader", false);
|
||
|
|
}
|
||
|
|
|
||
|
|
String writer = CommonUtils.checkNull(paramMap.get("writer"));
|
||
|
|
if("plm_admin".equals(writer)){
|
||
|
|
resultMap.put("isTFTLeader", true);
|
||
|
|
}
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS에 해당하는 프로젝트의 TFT 인원 정보를 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getWBSTaskProjectMemberList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getWBSTaskProjectMemberList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS TASK를 제출하여 TFT 장에게 메일을 발송한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map submissionTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
List<Map> carTFTMemberList = new ArrayList();
|
||
|
|
carTFTMemberList = getWBSTaskProjectMemberList(request, paramMap);
|
||
|
|
|
||
|
|
//프로젝트의 상세 정보를 가져온다.
|
||
|
|
Map projectSqlMap = new HashMap();
|
||
|
|
projectSqlMap.put("taskObjId", CommonUtils.checkNull(request.getParameter("objId")));
|
||
|
|
Map wbsTaskMap = new HashMap();
|
||
|
|
wbsTaskMap = sqlSession.selectOne("project.getWBSTaskSubmissionInfo", projectSqlMap);
|
||
|
|
|
||
|
|
if(null != carTFTMemberList && 0 < carTFTMemberList.size()){
|
||
|
|
for(Map memberMap:carTFTMemberList){
|
||
|
|
String tftMemberAuth = CommonUtils.checkNull(memberMap.get("IS_TFT_LEADER"));
|
||
|
|
if("0".equals(tftMemberAuth)){
|
||
|
|
String userId = CommonUtils.checkNull(memberMap.get("MEMBER_USER_ID"));
|
||
|
|
String email = CommonUtils.checkNull(memberMap.get("EMAIL"));
|
||
|
|
|
||
|
|
if(!"".equals(email)){
|
||
|
|
Map mailParamMap = new HashMap();
|
||
|
|
|
||
|
|
String subject = "["+CommonUtils.checkNull(wbsTaskMap.get("CAR_CODE"))+" ("+CommonUtils.checkNull(wbsTaskMap.get("CAR_NAME"))+")] "+Message.MAIL_SUBJECT_WBS_TASK_SUBMISSION;
|
||
|
|
mailParamMap.put("SUBJECT", subject);
|
||
|
|
mailParamMap.putAll(wbsTaskMap);
|
||
|
|
|
||
|
|
String bodyContents = MailUtil.getHTMLContents("wbsTaskSubmissionMailTemplate", mailParamMap);
|
||
|
|
|
||
|
|
String receiverId = CommonUtils.checkNull(userId);
|
||
|
|
String receiverEmail = CommonUtils.checkNull(email);
|
||
|
|
|
||
|
|
MailUtil.sendMail(Constants.ADMIN_USER_ID, Constants.FROM_ADDR, receiverId, receiverEmail, null, subject, bodyContents, Constants.MAIL_TYPE_PROBLEM_RES_DISTRIBUTE);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task의 TFT/PL가 작성한 확인 내용 목록을 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getTaskConfirmHistoryList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getTaskConfirmHistoryList",paramMap);
|
||
|
|
|
||
|
|
for(Map resultMap:resultList){
|
||
|
|
resultMap.put("CONTENTS", CommonUtils.getClobToString((Clob)resultMap.get("CONTENTS")));
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task의 TFT/PL가 작성한 단건 내용을 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map getTaskConfirmHistoryInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("confirmObjId"));
|
||
|
|
if(!"".equals(objId)){
|
||
|
|
resultMap = sqlSession.selectOne("project.getTaskConfirmHistoryInfo",paramMap);
|
||
|
|
resultMap.put("CONTENTS", CommonUtils.getClobToString((Clob)resultMap.get("CONTENTS")));
|
||
|
|
}else{
|
||
|
|
resultMap.put("OBJID",CommonUtils.createObjId());
|
||
|
|
resultMap.put("TARGET_OBJID",CommonUtils.checkNull(paramMap.get("objId")));
|
||
|
|
resultMap.put("CONFIRM_TYPE",CommonUtils.checkNull(paramMap.get("userType")));
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task의 TFT/PL가 작성한 단건 내용을 저장한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map saveTaskConfirmHistoryInfo(HttpSession session,HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
|
||
|
|
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
|
||
|
|
|
||
|
|
sqlSession.insert("project.insertTaskConfirmHistoryInfo",paramMap);
|
||
|
|
String result = CommonUtils.checkNull(request.getParameter("result"));
|
||
|
|
|
||
|
|
//승인 시
|
||
|
|
if("ok".equals(result)){
|
||
|
|
paramMap.put("status", "complete");
|
||
|
|
|
||
|
|
//반려 시
|
||
|
|
}else if("ng".equals(result)){
|
||
|
|
//메일발송
|
||
|
|
sendTaskNgMail(request,paramMap);
|
||
|
|
paramMap.put("status", "reject");
|
||
|
|
}
|
||
|
|
sqlSession.update("project.taskConfirmChangeStatus",paramMap);
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 통합문제점 제기완료 메일발송
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
*/
|
||
|
|
public Map sendTaskNgMail(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
System.out.println("paramMap : "+paramMap);
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
Map userInfo = person.getLoginInfo();
|
||
|
|
|
||
|
|
//1. 메일 발송할 대상의 정보조회
|
||
|
|
Map info = sqlSession.selectOne("mail.getsendTaskNgMail", paramMap);
|
||
|
|
|
||
|
|
String OEM_NAME = CommonUtils.checkNull(info.get("OEM_NAME"));
|
||
|
|
String CAR_NAME = CommonUtils.checkNull(info.get("CAR_NAME"));
|
||
|
|
String TASK_NAME = CommonUtils.checkNull(info.get("TASK_NAME"));
|
||
|
|
String SENDMAIL = CommonUtils.checkNull(info.get("SENDMAIL"));
|
||
|
|
|
||
|
|
String subject = "[PMS 시스템] 고객사 : "+OEM_NAME+" 차종 : "+CAR_NAME+" Task ["+TASK_NAME+"] CFT장 반려 알림";
|
||
|
|
|
||
|
|
String bodyContents = "";
|
||
|
|
|
||
|
|
bodyContents = "[PMS 시스템] 고객사 : "+OEM_NAME+" 차종 : "+CAR_NAME+" Task ["+TASK_NAME+"] 가 반려되었습니다.";
|
||
|
|
bodyContents += "<br>Task Name : "+TASK_NAME+"<br> 진양 PMS System에 접속해서 해당 Task를 확인하시기 바랍니다.";
|
||
|
|
bodyContents += "<br>";
|
||
|
|
bodyContents += "<a href=\""+"http://180.210.99.18/"+"\">▶ 시스템 바로가기</a>";
|
||
|
|
|
||
|
|
|
||
|
|
//담당자에게 메일 발송
|
||
|
|
MailUtil.sendMail1(SENDMAIL, subject, bodyContents);
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SEND_MAIL_SUCCESS);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 검색조건에 해당하는 Task의 목록을 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
Map pageMap = new HashMap();
|
||
|
|
try{
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
//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("project.getTaskListCnt", 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("project.getTaskList",paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 해당하는 제품을 연결한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public void connectProjectProduct(SqlSession sqlSession,HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
|
||
|
|
//프로젝트의 objid
|
||
|
|
String targetObjId = CommonUtils.checkNull(paramMap.get("objId"));
|
||
|
|
String message = "";
|
||
|
|
|
||
|
|
String[] projectProductList = request.getParameterValues("addedOrderProductObjId");
|
||
|
|
|
||
|
|
ArrayList projectProductArrList = new ArrayList();
|
||
|
|
|
||
|
|
projectProductArrList = new ArrayList<String>(Arrays.asList(projectProductList));
|
||
|
|
|
||
|
|
sqlMap.put("targetObjId",targetObjId);
|
||
|
|
sqlMap.put("projectProductArrList",projectProductArrList);
|
||
|
|
sqlSession.delete("project.deleteConnectedProjectProduct", sqlMap);
|
||
|
|
|
||
|
|
if(null != projectProductList && 0 < projectProductList.length){
|
||
|
|
for(int i=0;i<projectProductList.length;i++){
|
||
|
|
String productObjId = projectProductList[i];
|
||
|
|
sqlMap.put("objId",CommonUtils.createObjId());
|
||
|
|
sqlMap.put("subObjId",productObjId);
|
||
|
|
|
||
|
|
sqlSession.insert("project.connectProjectProduct", sqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 Milestone을 저장한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public void mergeProjectMilestone(SqlSession sqlSession,HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
|
||
|
|
String[] oemMilestoneObjIdList = request.getParameterValues("oemMilestoneObjId");
|
||
|
|
String carObjId = CommonUtils.checkNull(paramMap.get("carObjId"));
|
||
|
|
String writer = CommonUtils.checkNull(paramMap.get("writer"));
|
||
|
|
if(null != oemMilestoneObjIdList && 0 < oemMilestoneObjIdList.length){
|
||
|
|
for(int i=0;i<oemMilestoneObjIdList.length;i++){
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
String milestoneObjId = oemMilestoneObjIdList[i];
|
||
|
|
String milestoneDate = CommonUtils.checkNull(paramMap.get(milestoneObjId));
|
||
|
|
|
||
|
|
sqlMap.put("objId",CommonUtils.createObjId());
|
||
|
|
sqlMap.put("carObjId",carObjId);
|
||
|
|
sqlMap.put("milestoneObjId",milestoneObjId);
|
||
|
|
sqlMap.put("milestoneDate",milestoneDate);
|
||
|
|
sqlMap.put("writer",writer);
|
||
|
|
|
||
|
|
sqlSession.insert("project.mergeProjectCarMilestone", sqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 고객사에 해당하는 차종의 Milestone 정보를 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getCarMilestoneList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("admin.getOEMMilestoneList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 입찰품목의 목록을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectConnectProductList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectConnectProductList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/** 영업활동등록
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveProjectMgmtInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
int cnt = 0;
|
||
|
|
|
||
|
|
String[] parentObjId = request.getParameterValues("parentObjId");
|
||
|
|
String[] objId = request.getParameterValues("objId");
|
||
|
|
String[] order_no = request.getParameterValues("order_no");
|
||
|
|
String[] task_name = request.getParameterValues("task_name");
|
||
|
|
String[] user_id = request.getParameterValues("user_id");
|
||
|
|
String[] start_pdate = request.getParameterValues("start_pdate");
|
||
|
|
String[] end_pdate = request.getParameterValues("end_pdate");
|
||
|
|
String[] end_date = request.getParameterValues("end_date");
|
||
|
|
String[] appr_cd = request.getParameterValues("appr_cd");
|
||
|
|
String[] file_type = request.getParameterValues("file_type");
|
||
|
|
|
||
|
|
if(null != parentObjId && 0 < parentObjId.length){
|
||
|
|
for(int i=0;i<parentObjId.length;i++){
|
||
|
|
HashMap sqlParamMap = new HashMap();
|
||
|
|
String objid = CommonUtils.checkNull(objId[i]);
|
||
|
|
if("".equals(objid)){
|
||
|
|
objid = CommonUtils.createObjId();
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlParamMap.put("objId", objid);
|
||
|
|
sqlParamMap.put("parentObjId", CommonUtils.checkNull(parentObjId[i]));
|
||
|
|
sqlParamMap.put("order_no", CommonUtils.checkNull(order_no[i]));
|
||
|
|
sqlParamMap.put("task_name", CommonUtils.checkNull(task_name[i]));
|
||
|
|
sqlParamMap.put("user_id", CommonUtils.checkNull(user_id[i]));
|
||
|
|
sqlParamMap.put("start_pdate", CommonUtils.checkNull(start_pdate[i]));
|
||
|
|
sqlParamMap.put("end_pdate", CommonUtils.checkNull(end_pdate[i]));
|
||
|
|
sqlParamMap.put("end_date", CommonUtils.checkNull(end_date[i]));
|
||
|
|
sqlParamMap.put("appr_cd", CommonUtils.checkNull(appr_cd[i]));
|
||
|
|
sqlParamMap.put("file_type", CommonUtils.checkNull(file_type[i]));
|
||
|
|
|
||
|
|
//선택된 기변항목의 목록을 가져와 파트와 연결한다.
|
||
|
|
cnt = sqlSession.update("project.mergeProjectMgmtInfo", sqlParamMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
if(cnt > 0){
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 차종에 해당하는 TFT 인원의 목록을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectMemberList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectMemberList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 등록된 Part Master 목록을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getPartMasterList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"),Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("getPartMasterListCnt",paramMap);
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request,pageMap);
|
||
|
|
paramMap.put("PAGE_END",CommonUtils.checkNull(pageMap.get("PAGE_END")));
|
||
|
|
paramMap.put("PAGE_START",CommonUtils.checkNull(pageMap.get("PAGE_START")));
|
||
|
|
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getPartMasterList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part Master 내용을 저장한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map savePartMasterInfo(HttpSession session,HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
|
||
|
|
paramMap.put("writer", CommonUtils.checkNull(person.getUserId()));
|
||
|
|
|
||
|
|
sqlSession.update("project.mergePartMasterInfo", paramMap);
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part Master에 해당하는 내용의 중복 여부를 확인하다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map checkPartMasterDuplicateCnt(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.checkPartMasterDuplicateCnt", paramMap);
|
||
|
|
resultMap.put("resultCnt", resultList.size());
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part Master 내용을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getPartMasterInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultMap = sqlSession.selectOne("project.getPartMasterInfo", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part Master에 연결된 Part 목록을 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getPartMasterConnectedPartList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getPartMasterConnectedPartList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part Master에 Part를 연결한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map partMasterConnectPart(HttpSession session,HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
String checkedPartList[] = request.getParameterValues("searchPartCheckbox");
|
||
|
|
String targetObjId = CommonUtils.checkNull(request.getParameter("targetObjId"));
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
|
||
|
|
if(0 < checkedPartList.length){
|
||
|
|
for(int i=0;i<checkedPartList.length;i++){
|
||
|
|
String checkedPartNo = CommonUtils.checkNull(checkedPartList[i]);
|
||
|
|
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
sqlParamMap.put("objId", CommonUtils.createObjId());
|
||
|
|
sqlParamMap.put("targetObjId", targetObjId);
|
||
|
|
sqlParamMap.put("partNo", checkedPartNo);
|
||
|
|
sqlParamMap.put("writer", writer);
|
||
|
|
sqlParamMap.put("seq", "");
|
||
|
|
sqlSession.update("project.partMasterConnectPart", sqlParamMap);
|
||
|
|
|
||
|
|
//Part Master에 연결된 개발 Master의 Part 목록을 가져온다.
|
||
|
|
List devMasterPartList = sqlSession.selectList("project.getPartMasterConnectedDevMasterPart", sqlParamMap);
|
||
|
|
|
||
|
|
if(null != devMasterPartList && 0 < devMasterPartList.size()){
|
||
|
|
for(int j=0;j<devMasterPartList.size();j++){
|
||
|
|
Map devMasterPartMap = (HashMap)devMasterPartList.get(j);
|
||
|
|
String devMasterObjId = CommonUtils.checkNull(devMasterPartMap.get("OBJID"));
|
||
|
|
|
||
|
|
//기존에 개발 Master에 연결된 Part가 없을 경우 개발마스터에 Part를 추가한다.
|
||
|
|
Map devMasterPartSqlMap = new HashMap();
|
||
|
|
devMasterPartSqlMap.put("targetObjId", devMasterObjId);
|
||
|
|
devMasterPartSqlMap.put("partNo", checkedPartNo);
|
||
|
|
devMasterPartSqlMap.put("writer", CommonUtils.checkNull(paramMap.get("writer")));
|
||
|
|
|
||
|
|
//공법승인
|
||
|
|
devMasterPartSqlMap.put("objId", CommonUtils.createObjId());
|
||
|
|
devMasterPartSqlMap.put("devPoint", "1methodAccept");
|
||
|
|
sqlSession.insert("devInfoMng.saveDevMasterNotConnectPartInfo",devMasterPartSqlMap);
|
||
|
|
|
||
|
|
//실제작
|
||
|
|
devMasterPartSqlMap.put("objId", CommonUtils.createObjId());
|
||
|
|
devMasterPartSqlMap.put("devPoint", "2realisticProduce");
|
||
|
|
sqlSession.insert("devInfoMng.saveDevMasterNotConnectPartInfo",devMasterPartSqlMap);
|
||
|
|
|
||
|
|
//HMC Nego
|
||
|
|
devMasterPartSqlMap.put("objId", CommonUtils.createObjId());
|
||
|
|
devMasterPartSqlMap.put("devPoint", "3hmcNego");
|
||
|
|
sqlSession.insert("devInfoMng.saveDevMasterNotConnectPartInfo",devMasterPartSqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
resultMap.put("result", true);
|
||
|
|
sqlSession.commit();
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part Master완 Part의 연결관계를 해제한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map partMasterDisConnectPart(HttpServletRequest request, Map paramMap){
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
try{
|
||
|
|
String checkedPartList[] = request.getParameterValues("connectedPartCheckBox");
|
||
|
|
String targetObjId = CommonUtils.checkNull(request.getParameter("objId"));
|
||
|
|
|
||
|
|
//해당 Part Master 관련 Dev Master 목록을 가져온다.
|
||
|
|
List<Map> connDevMasterList = new ArrayList();
|
||
|
|
connDevMasterList = sqlSession.selectList("project.getConnectDevMasterList", paramMap);
|
||
|
|
|
||
|
|
if(null != checkedPartList && 0 < checkedPartList.length){
|
||
|
|
for(int i=0;i<checkedPartList.length;i++){
|
||
|
|
String partNo = CommonUtils.checkNull(checkedPartList[i].toString());
|
||
|
|
|
||
|
|
Map disConnSqlMap = new HashMap();
|
||
|
|
|
||
|
|
disConnSqlMap.put("targetObjId",targetObjId);
|
||
|
|
disConnSqlMap.put("partNo",partNo);
|
||
|
|
sqlSession.delete("project.partMasterDisConnectPart", disConnSqlMap);
|
||
|
|
|
||
|
|
for(Map devMasterMap:connDevMasterList){
|
||
|
|
String devMasterObjId = CommonUtils.checkNull(devMasterMap.get("OBJID"));
|
||
|
|
|
||
|
|
if(!"".equals(devMasterObjId)){
|
||
|
|
Map disConnDevMstSqlMap = new HashMap();
|
||
|
|
|
||
|
|
disConnDevMstSqlMap.put("objId", devMasterObjId);
|
||
|
|
disConnDevMstSqlMap.put("partNo", partNo);
|
||
|
|
|
||
|
|
sqlSession.delete("project.partMasterConnectDevMasterDisConnectPart", disConnDevMstSqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
resultMap.put("result", true);
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Part 정보를 조회한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getSearchPartList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getSearchPartList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 연결된 Part에 작성된 내용을 저장한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveConnectedPartInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
String targetObjId = CommonUtils.checkNull(request.getParameter("objId"));
|
||
|
|
|
||
|
|
try{
|
||
|
|
String connectedPartPartNos[] = request.getParameterValues("connectedPartPartNo");
|
||
|
|
if(null != connectedPartPartNos && 0 < connectedPartPartNos.length){
|
||
|
|
for(int i=0;i<connectedPartPartNos.length;i++){
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
String partNo = CommonUtils.checkNull(connectedPartPartNos[i].toString());
|
||
|
|
String partNoSeq = CommonUtils.checkNull(request.getParameter("connectedPartSeq_"+partNo));
|
||
|
|
sqlParamMap.put("targetObjId", targetObjId);
|
||
|
|
sqlParamMap.put("partNo", partNo);
|
||
|
|
sqlParamMap.put("seq", partNoSeq);
|
||
|
|
|
||
|
|
sqlSession.update("project.updateConnectPartInfo", sqlParamMap);
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
}
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 부서정보 조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getDeptList(Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultList = sqlSession.selectList("project.searchDeptList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 정보를 저장한다.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveWBSTaskInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
sqlSession.update("project.mergeProjectWBSTaskInfo", paramMap);
|
||
|
|
|
||
|
|
/* if(paramMap.get("taskStep").equals("6")){
|
||
|
|
paramMap.put("project_mgmt_objid", paramMap.get("projectObjId"));
|
||
|
|
sqlSession.update("Production.updateProductionData", paramMap);
|
||
|
|
}*/
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 정보를 삭제한다.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteProjectWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
List<Map> connectTaskList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
connectTaskList = sqlSession.selectList("project.getConnectedTaskList", paramMap);
|
||
|
|
if(null != connectTaskList && 0 < connectTaskList.size()){
|
||
|
|
for(Map taskMap:connectTaskList){
|
||
|
|
String taskObjId = CommonUtils.checkNull(taskMap.get("OBJID"));
|
||
|
|
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
sqlMap.put("taskObjId", taskObjId);
|
||
|
|
//WBS Task를 삭제한다.
|
||
|
|
sqlSession.delete("project.deleteProjectWBSTask", sqlMap);
|
||
|
|
|
||
|
|
//WBS Task와 연결된 연결정보를 삭제한다.
|
||
|
|
sqlSession.delete("project.deleteTaskRelInfo", sqlMap);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 부서 정보를 저장한다.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map changeTaskDept(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
sqlSession.update("project.changeTaskDept", paramMap);
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 담당자 정보를 저장한다.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map changeTaskChargerId(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
sqlSession.update("project.changeTaskChargerId", paramMap);
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
/*edhwang end*/
|
||
|
|
/*msryu start*/
|
||
|
|
/**
|
||
|
|
* 검색조건에 해당하는 My Task의 목록을 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getMyTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
Map pageMap = new HashMap();
|
||
|
|
try{
|
||
|
|
|
||
|
|
String searchDeptName = CommonUtils.checkNull(request.getParameter("search_deptName"));
|
||
|
|
String searchUserName = CommonUtils.checkNull(request.getParameter("search_userName"));
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
if("".equals(searchDeptName)){
|
||
|
|
paramMap.put("search_deptName", CommonUtils.checkNull(person.getDeptName()));
|
||
|
|
}
|
||
|
|
if("".equals(searchUserName)){
|
||
|
|
paramMap.put("search_userName", CommonUtils.checkNull(person.getUserName()));
|
||
|
|
}
|
||
|
|
//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("project.getMyTaskListCnt", 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("project.getMyTaskList",paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
/*msryu end*/
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트의 PM 권한을 가져온다
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map getProjectPmAuth(HttpServletRequest request, Map paramMap){
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
try{
|
||
|
|
resultList = CommonUtils.keyChangeUpperList((ArrayList)sqlSession.selectList("project.getProjectPmAuth", paramMap));
|
||
|
|
|
||
|
|
System.out.println("resultList.size():"+resultList.size());
|
||
|
|
|
||
|
|
if(0 < resultList.size()){
|
||
|
|
resultMap.put("isTFTLeader", true);
|
||
|
|
}else{
|
||
|
|
resultMap.put("isTFTLeader", false);
|
||
|
|
}
|
||
|
|
|
||
|
|
//관리자는 권한 주기
|
||
|
|
String writer = CommonUtils.checkNull(paramMap.get("writer"));
|
||
|
|
if("plm_admin".equals(writer)){
|
||
|
|
resultMap.put("isTFTLeader", true);
|
||
|
|
}
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 확정 기능.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map completeProjectWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String ObjId = CommonUtils.checkNull(paramMap.get("ObjId"));
|
||
|
|
String[] subObjId = ObjId.split(",");
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
for(int i=0; i < subObjId.length; i++){
|
||
|
|
String valObjId = subObjId[i];
|
||
|
|
sqlMap.put("objId", valObjId);
|
||
|
|
//WBS Task를 삭제한다.
|
||
|
|
sqlSession.update("project.completeProjectWBSTask", sqlMap);
|
||
|
|
sqlSession.commit();
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.close();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 삭제.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String ObjId = CommonUtils.checkNull(paramMap.get("ObjId"));
|
||
|
|
String[] subObjId = ObjId.split(",");
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
for(int i=0; i < subObjId.length; i++){
|
||
|
|
String valObjId = subObjId[i];
|
||
|
|
sqlMap.put("taskObjId", valObjId);
|
||
|
|
|
||
|
|
//WBS Task를 삭제한다.
|
||
|
|
sqlSession.delete("project.deleteProjectWBSTask", sqlMap);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.close();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/** WBS 상태변경
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map changewbsstatus(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
|
||
|
|
int cnt = sqlSession.update("project.changewbsstatus", paramMap);
|
||
|
|
|
||
|
|
if(cnt > 0){
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 목록조회(제품별로 Row 구성)
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectProductList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
System.out.println("getProjectConceptProductList"+paramMap);
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.getProjectProductListCnt", paramMap);
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END", CommonUtils.checkNull(pageMap.get("PAGE_END")));
|
||
|
|
paramMap.put("PAGE_START", CommonUtils.checkNull(pageMap.get("PAGE_START")));
|
||
|
|
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getProjectProductList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 투자비 관리 추가
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map addSaveInvestCostMng(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
String objId = CommonUtils.checkNull(CommonUtils.createObjId());
|
||
|
|
|
||
|
|
paramMap.put("OBJID", objId);
|
||
|
|
sqlSession.update("project.mergeInvestCostMng", paramMap);
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 투자비 관리 수정
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveInvestCostMng(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
String paramObjid = request.getParameter("checkArr");
|
||
|
|
String[] objidArr = paramObjid.split(",");
|
||
|
|
|
||
|
|
|
||
|
|
System.out.println("objidArr : " + objidArr);
|
||
|
|
for(int i=0; i < objidArr.length; i++){
|
||
|
|
String objId = CommonUtils.checkNull(objidArr[i]);
|
||
|
|
String title = CommonUtils.checkNull(request.getParameter("title_"+objId));
|
||
|
|
String dueDate = CommonUtils.checkNull(request.getParameter("dueDate_"+objId));
|
||
|
|
String amount = CommonUtils.checkNull(request.getParameter("amount_"+objId));
|
||
|
|
String status = CommonUtils.checkNull(request.getParameter("status_"+objId));
|
||
|
|
|
||
|
|
System.out.println("objId"+i+" : " + objId);
|
||
|
|
System.out.println("title"+i+" : " + title);
|
||
|
|
System.out.println("dueDate"+i+" : " + dueDate);
|
||
|
|
System.out.println("amount"+i+" : " + amount);
|
||
|
|
System.out.println("status"+i+" : " + status);
|
||
|
|
|
||
|
|
HashMap wbsTaskMap = new HashMap();
|
||
|
|
wbsTaskMap.put("OBJID", objId);
|
||
|
|
wbsTaskMap.put("addTitle", title);
|
||
|
|
wbsTaskMap.put("addDueDate", dueDate);
|
||
|
|
wbsTaskMap.put("addAmount", amount);
|
||
|
|
wbsTaskMap.put("addStatus", status);
|
||
|
|
|
||
|
|
sqlSession.update("project.mergeInvestCostMng", wbsTaskMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 삭제.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map saveWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String[] objidArr = request.getParameterValues("OBJID");
|
||
|
|
String targetObjId = request.getParameter("TARGET_OBJID");
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
|
||
|
|
for(int i=0; i < objidArr.length; i++){
|
||
|
|
String objId = CommonUtils.checkNull(objidArr[i]);
|
||
|
|
String deptCode = CommonUtils.checkNull(request.getParameter("DEPT_CODE_"+objId));
|
||
|
|
String managerUserId = CommonUtils.checkNull(request.getParameter("MANAGER_USER_ID_"+objId));
|
||
|
|
String expectedPoint = CommonUtils.checkNull(request.getParameter("EXPECTED_POINT_"+objId));
|
||
|
|
String taskPerformDay = CommonUtils.checkNull(request.getParameter("TASK_PERFORM_DAY_"+objId));
|
||
|
|
String planStartDate = CommonUtils.checkNull(request.getParameter("PLAN_START_DATE_"+objId));
|
||
|
|
String planEndDate = CommonUtils.checkNull(request.getParameter("PLAN_END_DATE_"+objId));
|
||
|
|
String resultStartDate = CommonUtils.checkNull(request.getParameter("RESULT_START_DATE_"+objId));
|
||
|
|
String resultEndDate = CommonUtils.checkNull(request.getParameter("RESULT_END_DATE_"+objId));
|
||
|
|
String pmConfirmStatus = CommonUtils.checkNull(request.getParameter("PM_CONFIRM_STATUS_"+objId));
|
||
|
|
String remark = CommonUtils.checkNull(request.getParameter("REMARK_"+objId));
|
||
|
|
|
||
|
|
HashMap wbsTaskMap = new HashMap();
|
||
|
|
wbsTaskMap.put("OBJID", objId);
|
||
|
|
wbsTaskMap.put("TARGET_OBJID", targetObjId);
|
||
|
|
wbsTaskMap.put("DEPT_CODE", deptCode);
|
||
|
|
wbsTaskMap.put("MANAGER_USER_ID", managerUserId);
|
||
|
|
wbsTaskMap.put("EXPECTED_POINT", expectedPoint);
|
||
|
|
wbsTaskMap.put("TASK_PERFORM_DAY", taskPerformDay);
|
||
|
|
wbsTaskMap.put("PLAN_START_DATE", planStartDate);
|
||
|
|
wbsTaskMap.put("PLAN_END_DATE", planEndDate);
|
||
|
|
wbsTaskMap.put("RESULT_START_DATE", resultStartDate);
|
||
|
|
wbsTaskMap.put("RESULT_END_DATE", resultEndDate);
|
||
|
|
wbsTaskMap.put("PM_CONFIRM_STATUS", pmConfirmStatus);
|
||
|
|
wbsTaskMap.put("REMARK", remark);
|
||
|
|
wbsTaskMap.put("WRITER", writer);
|
||
|
|
|
||
|
|
sqlSession.update("project.mergeProjectWBSTask", wbsTaskMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 투자비 관리 목록
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List investCostMngList(HttpServletRequest request, @RequestParam Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
List list = sqlSession.selectList("project.investCostMngList", paramMap);
|
||
|
|
|
||
|
|
return list;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 투자비 관리 삭제
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteInvestCostMng(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
|
||
|
|
//1. 수주활동 제품별 협력부서정보 삭제
|
||
|
|
// int cnt1 = sqlSession.delete("projectConcept.deleteProjectConceptProductDeptInfo", paramMap);
|
||
|
|
|
||
|
|
String checkObjId = (String) paramMap.get("checkArr");
|
||
|
|
|
||
|
|
String[] arrObjId = checkObjId.split(",");
|
||
|
|
int resultCnt = 0;
|
||
|
|
|
||
|
|
for(int i = 0; i< arrObjId.length; i++ ){
|
||
|
|
paramMap.put("objId", arrObjId[i]);
|
||
|
|
//2. 수주활동별 제품정보 삭제
|
||
|
|
resultCnt = sqlSession.delete("project.deleteInvestCostMng", paramMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
if((resultCnt) > 0){
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 목록조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getWBSTemplateMngList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.getWBSTemplateMngListCnt", paramMap);
|
||
|
|
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END", pageMap.get("PAGE_END"));
|
||
|
|
paramMap.put("PAGE_START", pageMap.get("PAGE_START"));
|
||
|
|
|
||
|
|
resultList = CommonUtils.keyChangeUpperList((ArrayList)sqlSession.selectList("project.getWBSTemplateMngList", paramMap));
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 업로드된 Excel File을 통해 데이터를 Parsing 한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List parsingExcelFile(HttpServletRequest request,Map paramMap)throws Exception{
|
||
|
|
List resultList = new ArrayList();
|
||
|
|
List fileList = commonService.getFileList(paramMap);
|
||
|
|
|
||
|
|
if(null != fileList && 1 == fileList.size()){
|
||
|
|
HashMap fileMap = (HashMap)fileList.get(0);
|
||
|
|
|
||
|
|
String path = CommonUtils.checkNull(fileMap.get("FILE_PATH"));
|
||
|
|
String fileName = CommonUtils.checkNull(fileMap.get("SAVED_FILE_NAME"));
|
||
|
|
|
||
|
|
int lastColumnIndex = 2;
|
||
|
|
|
||
|
|
FileInputStream fis = new FileInputStream(path+"\\"+fileName);
|
||
|
|
XSSFWorkbook workBook = new XSSFWorkbook(fis);
|
||
|
|
XSSFSheet sheet = workBook.getSheetAt(0);
|
||
|
|
|
||
|
|
int rows = sheet.getPhysicalNumberOfRows();
|
||
|
|
System.out.println("rows :: " + rows);
|
||
|
|
for(int rowIndex= 2 ; rowIndex < rows ; rowIndex++){
|
||
|
|
XSSFRow row = sheet.getRow(rowIndex);
|
||
|
|
|
||
|
|
if(null != row){
|
||
|
|
|
||
|
|
HashMap wbsMap = new HashMap();
|
||
|
|
|
||
|
|
wbsMap.put("WBS_OBJID", CommonUtils.createObjId());
|
||
|
|
|
||
|
|
String deptCode = "";
|
||
|
|
|
||
|
|
for(int columnIndex = 0 ; columnIndex < lastColumnIndex ; columnIndex++){
|
||
|
|
XSSFCell cell = row.getCell(columnIndex);
|
||
|
|
|
||
|
|
System.out.println("cell :: " + cell);
|
||
|
|
//데이버 유형별 get date
|
||
|
|
String cellValue = "";
|
||
|
|
|
||
|
|
if(null == cell){
|
||
|
|
cellValue = "";
|
||
|
|
}else{
|
||
|
|
switch(cell.getCellType()){
|
||
|
|
case XSSFCell.CELL_TYPE_FORMULA:
|
||
|
|
cellValue = cell.getCellFormula();
|
||
|
|
System.out.println(columnIndex+":"+"XSSFCell.CELL_TYPE_FORMULA:"+cellValue);
|
||
|
|
break;
|
||
|
|
case XSSFCell.CELL_TYPE_NUMERIC:
|
||
|
|
|
||
|
|
DataFormatter formatter = new DataFormatter();
|
||
|
|
|
||
|
|
cellValue = formatter.formatCellValue(cell);
|
||
|
|
System.out.println(columnIndex+":"+"XSSFCell.CELL_TYPE_STRING:"+cellValue);
|
||
|
|
break;
|
||
|
|
|
||
|
|
case XSSFCell.CELL_TYPE_STRING:
|
||
|
|
cellValue = cell.getStringCellValue()+"";
|
||
|
|
System.out.println(columnIndex+":"+"XSSFCell.CELL_TYPE_STRING:"+cellValue);
|
||
|
|
break;
|
||
|
|
case XSSFCell.CELL_TYPE_BLANK:
|
||
|
|
cellValue = cell.getBooleanCellValue()+"";
|
||
|
|
System.out.println(columnIndex+":"+"XSSFCell.CELL_TYPE_BLANK:"+cellValue);
|
||
|
|
break;
|
||
|
|
case XSSFCell.CELL_TYPE_ERROR:
|
||
|
|
cellValue = cell.getErrorCellValue()+"";
|
||
|
|
System.out.println(columnIndex+":"+"XSSFCell.CELL_TYPE_ERROR:"+cellValue);
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
if("false".equals(cellValue)){
|
||
|
|
cellValue = "";
|
||
|
|
}
|
||
|
|
|
||
|
|
cellValue = CommonUtils.checkNull(cellValue);
|
||
|
|
|
||
|
|
//기본정보 시작===========================
|
||
|
|
|
||
|
|
/* //단계
|
||
|
|
if(0 == columnIndex){
|
||
|
|
wbsMap.put("STEP", cellValue);
|
||
|
|
}
|
||
|
|
|
||
|
|
//TASK명
|
||
|
|
if(1 == columnIndex){
|
||
|
|
wbsMap.put("TASK1", cellValue);
|
||
|
|
}*/
|
||
|
|
|
||
|
|
//공정명
|
||
|
|
if(0 == columnIndex){
|
||
|
|
wbsMap.put("TASK_NAME", cellValue);
|
||
|
|
}
|
||
|
|
//공정명
|
||
|
|
if(1 == columnIndex){
|
||
|
|
wbsMap.put("UNIT_NO", cellValue);
|
||
|
|
|
||
|
|
resultList.add(wbsMap);
|
||
|
|
|
||
|
|
System.out.println("wbsMap:"+wbsMap);
|
||
|
|
|
||
|
|
break;
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
//담당자
|
||
|
|
/*if(1 == columnIndex){
|
||
|
|
wbsMap.put("USER_NAME", cellValue);
|
||
|
|
|
||
|
|
if(!"".equals(cellValue)){
|
||
|
|
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
Map codeParamMap = new HashMap();
|
||
|
|
codeParamMap.put("USER_NAME", cellValue);
|
||
|
|
resultMap = commonService.getUserMap(codeParamMap);
|
||
|
|
|
||
|
|
if(null != resultMap){
|
||
|
|
wbsMap.put("USER_ID", CommonUtils.checkNull(resultMap.get("USER_ID")));
|
||
|
|
wbsMap.put("USER_NAME", CommonUtils.checkNull(resultMap.get("USER_NAME")));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
resultList.add(wbsMap);
|
||
|
|
|
||
|
|
System.out.println("wbsMap:"+wbsMap);
|
||
|
|
|
||
|
|
break;
|
||
|
|
}*/
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task Template 마스터 목록을 가져온다.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List<Map<String,Object>> getWBSTemplateProductList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
System.out.println("getWBSTemplateProductList:"+paramMap);
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getWBSTemplateProductList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 템플릿을 통해 WBS 정보를 입력한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
*/
|
||
|
|
public void mergeExcelUploadWBS(HttpServletRequest request,Map paramMap) throws Exception{
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
|
||
|
|
String product = CommonUtils.checkNull(request.getParameter("product"));
|
||
|
|
String title = CommonUtils.checkNull(request.getParameter("title"));
|
||
|
|
String customer_product = CommonUtils.checkNull(request.getParameter("customer_product"));
|
||
|
|
|
||
|
|
Map templateMapsterSqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
String wbsMasterObjId = CommonUtils.createObjId();
|
||
|
|
|
||
|
|
templateMapsterSqlParamMap.put("objid" , wbsMasterObjId);
|
||
|
|
templateMapsterSqlParamMap.put("product" , product);
|
||
|
|
templateMapsterSqlParamMap.put("title" , title);
|
||
|
|
templateMapsterSqlParamMap.put("writer" , writer);
|
||
|
|
templateMapsterSqlParamMap.put("customer_product" , customer_product);
|
||
|
|
|
||
|
|
//템플릿 마스터를 저장한다.
|
||
|
|
sqlSession.insert("project.saveWBSTaskTemp",templateMapsterSqlParamMap);
|
||
|
|
|
||
|
|
String[] wbsObjIdList = request.getParameterValues("WBS_TASK_OBJID");
|
||
|
|
|
||
|
|
if(null != wbsObjIdList || 0 < wbsObjIdList.length){
|
||
|
|
|
||
|
|
for(int i = 0;i<wbsObjIdList.length;i++){
|
||
|
|
String wbsObjId = CommonUtils.checkNull(wbsObjIdList[i]);
|
||
|
|
Map wbsSqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
String TASK_NAME = CommonUtils.checkNull(request.getParameter("TASK_NAME_"+wbsObjId));
|
||
|
|
//String MANAGER_USER_ID = CommonUtils.checkNull(request.getParameter("TASK_CHARGER_ID_"+wbsObjId));
|
||
|
|
|
||
|
|
String UNIT_NO = CommonUtils.checkNull(request.getParameter("UNIT_NO_"+wbsObjId));
|
||
|
|
|
||
|
|
wbsSqlParamMap.put("objid", wbsObjId);
|
||
|
|
wbsSqlParamMap.put("task_name", TASK_NAME);
|
||
|
|
wbsSqlParamMap.put("task_seq", i+1);
|
||
|
|
wbsSqlParamMap.put("unit_no", UNIT_NO);
|
||
|
|
//wbsSqlParamMap.put("user_id", MANAGER_USER_ID);
|
||
|
|
wbsSqlParamMap.put("parent_objid", wbsMasterObjId);
|
||
|
|
wbsSqlParamMap.put("writer", writer);
|
||
|
|
System.out.println("wbsSqlParamMap:"+wbsSqlParamMap);
|
||
|
|
sqlSession.insert("project.saveWBSTemplateTaskInfo", wbsSqlParamMap);
|
||
|
|
|
||
|
|
//제품구분(0000001) 공통코드 등록 처리
|
||
|
|
// this.checkAndSaveUnitCodeInfo(request, wbsSqlParamMap, sqlSession);
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
}
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task Template 마스터 단건조회.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map<String,Object> getWBSTemplateMasterInfo(HttpServletRequest request,Map paramMap){
|
||
|
|
Map<String,Object> resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
|
||
|
|
if("".equals(objId)){
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
}
|
||
|
|
paramMap.put("OBJID",objId);
|
||
|
|
System.out.println("getWBSTemplateMasterInfo:"+paramMap);
|
||
|
|
resultMap = (Map)sqlSession.selectOne("project.getWBSTemplateMasterInfo", paramMap);
|
||
|
|
|
||
|
|
if(null == resultMap){
|
||
|
|
resultMap = new HashMap();
|
||
|
|
resultMap.put("objid",objId);
|
||
|
|
}
|
||
|
|
|
||
|
|
//System.out.println("getWBSTemplateMasterInfo(resultMap):"+resultMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task Master 하위 WBS Task 목록
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getWBSTemplateTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getWBSTemplateTaskList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS TemplateTask의 상세화면을 보여준다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map getWBSTemplateTaskInfo(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
|
||
|
|
|
||
|
|
if("".equals(objId)){
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
}
|
||
|
|
|
||
|
|
paramMap.put("OBJID", objId);
|
||
|
|
resultMap = sqlSession.selectOne("project.getWBSTemplateTaskInfo",paramMap);
|
||
|
|
|
||
|
|
if(null != resultMap){
|
||
|
|
resultMap = CommonUtils.keyChangeUpperMap(resultMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
//제품구분(0000001) 공통코드 등록 처리
|
||
|
|
public Map checkAndSaveUnitCodeInfo(HttpServletRequest request, Map paramMap, SqlSession sqlSession)throws Exception{
|
||
|
|
Map codeResultMap = new HashMap();;
|
||
|
|
Map cdParamMap = new HashMap();
|
||
|
|
|
||
|
|
request.setAttribute("objid", ""); //초기화
|
||
|
|
|
||
|
|
//{objid=, parentCodeId=0001403, codeName=test c2, codeId=, status=active, ext_val=}
|
||
|
|
Map templateInfoMap = new HashMap();
|
||
|
|
String objid_code = CommonUtils.checkNull(paramMap.get("objid_code"));
|
||
|
|
|
||
|
|
if(CommonUtils.isBlank(objid_code)){ //등록
|
||
|
|
cdParamMap.put("objid", paramMap.get("parent_objid"));
|
||
|
|
List templateList = sqlSession.selectList("project.getWBSTemplateMngList",cdParamMap); //PMS_WBS_TEMPLATE 조회
|
||
|
|
cdParamMap.clear();
|
||
|
|
if(null != templateList && !templateList.isEmpty()){
|
||
|
|
templateInfoMap = (Map)templateList.get(0);
|
||
|
|
cdParamMap.put("parentCodeId", templateInfoMap.get("product_objid")); //PRODUCT_OBJID 가져옴
|
||
|
|
}
|
||
|
|
}else{ //수정
|
||
|
|
cdParamMap.put("objid", objid_code);
|
||
|
|
cdParamMap.put("objidEq", objid_code);
|
||
|
|
}
|
||
|
|
cdParamMap.put("codeName", paramMap.get("task_name"));
|
||
|
|
cdParamMap.put("ext_val", paramMap.get("unit_no"));
|
||
|
|
cdParamMap.put("status", "active");
|
||
|
|
// codeResultMap = adminService.checkAndSaveCodeCategogyInfo(request, cdParamMap); //중복체크해서 "제품구분" 코드 등록
|
||
|
|
|
||
|
|
System.out.println("codeResultMap:" + codeResultMap);
|
||
|
|
return codeResultMap;
|
||
|
|
}
|
||
|
|
//제품구분(0000001) 공통코드 삭제 처리
|
||
|
|
public void checkAndDeleteUnitCodeInfo(HttpServletRequest request, Map paramMap, SqlSession sqlSession)throws Exception{
|
||
|
|
Map<String,Object> cdParamMap = new HashMap<String,Object>();
|
||
|
|
cdParamMap.put("objid", paramMap.get("objid_code"));
|
||
|
|
//cdParamMap.put("codeName", paramMap.get("task_name"));
|
||
|
|
//cdParamMap.put("ext_val", paramMap.get("unit_no"));
|
||
|
|
cdParamMap.put("status", "inActive");
|
||
|
|
// adminService.changeCodeCategoryStatusByUnit(request, cdParamMap); // "제품구분" 코드 삭제
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* WBS Template Task의 내용을 저장한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map saveWBSTemplateTaskInfo(HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
Map infoMap = new HashMap();
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
Map sparamMap = new HashMap();
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objid"));
|
||
|
|
String task_name = CommonUtils.checkNull((String)paramMap.get("task_name")).trim();
|
||
|
|
if("".equals(objId)){//신규
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
}else{//수정
|
||
|
|
sparamMap.put("OBJID_NE", paramMap.get("objid"));
|
||
|
|
}
|
||
|
|
|
||
|
|
//제품구분(0000001) 공통코드 등록 처리
|
||
|
|
// this.checkAndSaveUnitCodeInfo(request, paramMap, sqlSession);
|
||
|
|
|
||
|
|
//230328 중복체크 추가
|
||
|
|
sparamMap.put("PARENT_OBJID", paramMap.get("parent_objid"));
|
||
|
|
sparamMap.put("TASK_NAME", task_name);
|
||
|
|
List list = sqlSession.selectList("project.getWBSTemplateTaskInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("UNIT Name이 중복됩니다.");
|
||
|
|
}
|
||
|
|
|
||
|
|
sparamMap.put("TASK_NAME", ""); //초기화
|
||
|
|
sparamMap.put("UNIT_NO", paramMap.get("unit_no"));
|
||
|
|
list = sqlSession.selectList("project.getWBSTemplateTaskInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("UNIT No가 중복됩니다.");
|
||
|
|
}
|
||
|
|
|
||
|
|
paramMap.put("objid", objId);
|
||
|
|
paramMap.put("task_name", task_name);
|
||
|
|
sqlSession.update("project.saveWBSTemplateTaskInfo",paramMap);
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
|
||
|
|
//프로젝트별 추가된 unit 폴더 추가생성(230802)
|
||
|
|
paramMap.put("unitCode", objId);
|
||
|
|
List<Map<String,Object>> projectList = sqlSession.selectList("common.getProjectListByUnit",paramMap);
|
||
|
|
if(null != projectList && !projectList.isEmpty()){
|
||
|
|
for (Map<String, Object> projectInfo : projectList) {
|
||
|
|
String projectNo = (String)projectInfo.get("project_no");
|
||
|
|
String filepath = Constants.FILE_STORAGE+"\\PART_DATA\\";
|
||
|
|
File file = new File(filepath+File.separator+projectNo+File.separator+task_name);
|
||
|
|
if(!file.exists()){
|
||
|
|
file.mkdirs();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
if(CommonUtils.isEmpty(resultMap))
|
||
|
|
resultMap = new HashMap();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", e.getMessage());
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
public Map saveWBSTemplateMasterInfo(HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
Map infoMap = new HashMap();
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
Map sparamMap = new HashMap();
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
|
||
|
|
if("".equals(objId)){//신규
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
}else{//수정
|
||
|
|
sparamMap.put("OBJID_NE", paramMap.get("OBJID"));
|
||
|
|
}
|
||
|
|
|
||
|
|
//230328 중복체크 추가
|
||
|
|
/*
|
||
|
|
sparamMap.put("CONTRACT_OBJID", paramMap.get("parent_objid")); //PARENT_OBJID
|
||
|
|
sparamMap.put("TASK_NAME", paramMap.get("task_name"));
|
||
|
|
List list = sqlSession.selectList("project.getWBSTemplateMasterInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("UNIT Name이 중복됩니다.");
|
||
|
|
}
|
||
|
|
|
||
|
|
sparamMap.put("TASK_NAME", ""); //초기화
|
||
|
|
sparamMap.put("UNIT_NO", paramMap.get("unit_no"));
|
||
|
|
list = sqlSession.selectList("project.getWBSTemplateMasterInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("UNIT No가 중복됩니다.");
|
||
|
|
}
|
||
|
|
*/
|
||
|
|
|
||
|
|
//paramMap.put("objid", objId);
|
||
|
|
sqlSession.update("project.saveWBSTemplateMasterInfo",paramMap);
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
if(CommonUtils.isEmpty(resultMap))
|
||
|
|
resultMap = new HashMap();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", e.getMessage());
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* WBS Template Task 삭제.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteWBSTemplateTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String checkArr[] = (CommonUtils.checkNull(paramMap.get("checkArr"))).split(",");
|
||
|
|
//String objidCodeArr[] = (CommonUtils.checkNull(paramMap.get("objidCodeArr"))).split(",");
|
||
|
|
|
||
|
|
if(0 == checkArr.length){
|
||
|
|
checkArr[0] = CommonUtils.checkNull(paramMap.get("checkArr"));
|
||
|
|
}
|
||
|
|
|
||
|
|
if(null != checkArr && 0 < checkArr.length){
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
sqlParamMap.put("checkArr",checkArr);
|
||
|
|
sqlSession.update("project.deleteWBSTemplateTask", sqlParamMap);
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
/*
|
||
|
|
if(null != objidCodeArr && 0 < objidCodeArr.length){
|
||
|
|
for (String codeId : objidCodeArr) {
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
//제품구분(0000001) 공통코드 삭제 처리
|
||
|
|
sqlParamMap.put("objid_code",codeId);
|
||
|
|
this.checkAndDeleteUnitCodeInfo(request, sqlParamMap, sqlSession);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
*/
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Template Master 내용을 삭제한다.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteWBSTemplateMaster(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
|
||
|
|
String checkArr[] = (CommonUtils.checkNull(paramMap.get("checkArr"))).split(",");
|
||
|
|
|
||
|
|
if(0 == checkArr.length){
|
||
|
|
checkArr[0] = CommonUtils.checkNull(paramMap.get("checkArr"));
|
||
|
|
}
|
||
|
|
|
||
|
|
if(null != checkArr && 0 < checkArr.length){
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
sqlParamMap.put("checkArr",checkArr);
|
||
|
|
|
||
|
|
sqlSession.delete("project.deleteWBSTemplateMaster", sqlParamMap);
|
||
|
|
sqlSession.delete("project.deleteWBSTemplateMasterTask", sqlParamMap);
|
||
|
|
//sqlSession.delete("admin.deleteWBSTemplateMasterTask", sqlParamMap);
|
||
|
|
//changeCodeCategoryStatusByUnit
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task의 내용을 저장한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map saveWBSTaskInfo2(HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
Map infoMap = new HashMap();
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
Map sparamMap = new HashMap();
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objid"));
|
||
|
|
if("".equals(objId)){//신규
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
}else{//수정
|
||
|
|
sparamMap.put("OBJID_NE", paramMap.get("objid"));
|
||
|
|
}
|
||
|
|
|
||
|
|
//230328 중복체크 추가
|
||
|
|
sparamMap.put("CONTRACT_OBJID", paramMap.get("parent_objid")); //PARENT_OBJID
|
||
|
|
sparamMap.put("TASK_NAME", paramMap.get("task_name"));
|
||
|
|
List list = sqlSession.selectList("project.getWBSTaskInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("UNIT Name이 중복됩니다.");
|
||
|
|
}
|
||
|
|
|
||
|
|
sparamMap.put("TASK_NAME", ""); //초기화
|
||
|
|
sparamMap.put("UNIT_NO", paramMap.get("unit_no"));
|
||
|
|
list = sqlSession.selectList("project.getWBSTaskInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("UNIT No가 중복됩니다.");
|
||
|
|
}
|
||
|
|
|
||
|
|
paramMap.put("objid", objId);
|
||
|
|
sqlSession.update("project.saveWBSTaskInfo",paramMap);
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
if(CommonUtils.isEmpty(resultMap))
|
||
|
|
resultMap = new HashMap();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", e.getMessage());
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* WBS Task 삭제.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteWBSTask2(HttpServletRequest request, Map paramMap) throws Exception{
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String checkArr[] = (CommonUtils.checkNull(paramMap.get("checkArr"))).split(",");
|
||
|
|
|
||
|
|
if(0 == checkArr.length){
|
||
|
|
checkArr[0] = CommonUtils.checkNull(paramMap.get("checkArr"));
|
||
|
|
}
|
||
|
|
|
||
|
|
if(null != checkArr && 0 < checkArr.length){
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
//240520 check 추가
|
||
|
|
for (String str : checkArr) {
|
||
|
|
sqlParamMap.put("unit_code", str);
|
||
|
|
List<Map<String, Object>> resultListBom = (ArrayList)sqlSession.selectList("partMng.getBOMStandardStructureList", sqlParamMap); //bom 조회
|
||
|
|
if(resultListBom != null && !resultListBom.isEmpty()) {
|
||
|
|
throw new Exception("해당 유닛으로 등록된 BOM이 존재합니다.");
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
//if (1==1) { return resultMap; //for test
|
||
|
|
|
||
|
|
sqlParamMap.put("checkArr",checkArr);
|
||
|
|
sqlSession.update("project.deleteWBSTask", sqlParamMap);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Setup WBS Task 삭제.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteSetupWBSTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String checkArr[] = (CommonUtils.checkNull(paramMap.get("checkArr"))).split(",");
|
||
|
|
|
||
|
|
if(0 == checkArr.length){
|
||
|
|
checkArr[0] = CommonUtils.checkNull(paramMap.get("checkArr"));
|
||
|
|
}
|
||
|
|
|
||
|
|
if(null != checkArr && 0 < checkArr.length){
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
sqlParamMap.put("checkArr",checkArr);
|
||
|
|
sqlSession.update("project.deleteSetupWBSTask", sqlParamMap);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* WBS Task 삭제.
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map deleteInspection(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String checkArr[] = (CommonUtils.checkNull(paramMap.get("checkArr"))).split(",");
|
||
|
|
|
||
|
|
if(0 == checkArr.length){
|
||
|
|
checkArr[0] = CommonUtils.checkNull(paramMap.get("checkArr"));
|
||
|
|
}
|
||
|
|
|
||
|
|
if(null != checkArr && 0 < checkArr.length){
|
||
|
|
Map sqlParamMap = new HashMap();
|
||
|
|
|
||
|
|
sqlParamMap.put("checkArr",checkArr);
|
||
|
|
sqlSession.update("project.deleteInspection", sqlParamMap);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
/**
|
||
|
|
* Setup WBS Task의 내용을 저장한다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public Map saveSetUpWBSTaskInfo(HttpServletRequest request, Map paramMap)throws Exception{
|
||
|
|
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
//Map infoMap = new HashMap();
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
Map sparamMap = new HashMap();
|
||
|
|
|
||
|
|
String objId = CommonUtils.checkNull(paramMap.get("objid"));
|
||
|
|
if("".equals(objId)){//신규
|
||
|
|
objId = CommonUtils.createObjId();
|
||
|
|
}else{//수정
|
||
|
|
sparamMap.put("OBJID_NE", paramMap.get("objid"));
|
||
|
|
}
|
||
|
|
|
||
|
|
//230328 중복체크 추가
|
||
|
|
sparamMap.put("CONTRACT_OBJID", paramMap.get("CONTRACT_OBJID")); //CONTRACT_OBJID
|
||
|
|
sparamMap.put("TASK_NAME", paramMap.get("task_name"));
|
||
|
|
List list = sqlSession.selectList("project.getSetupWBSTaskInfo",sparamMap);
|
||
|
|
if(null != list && !list.isEmpty()){ // && StringUtils.isNotEmpty((String)infoMap.get("OBJID"))
|
||
|
|
throw new Exception("Task Name이 중복됩니다.");
|
||
|
|
}
|
||
|
|
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
String writer = CommonUtils.checkNull(person.getUserId());
|
||
|
|
paramMap.put("writer", writer);
|
||
|
|
|
||
|
|
paramMap.put("objid", objId);
|
||
|
|
paramMap.put("parent_objid", paramMap.get("task_category"));
|
||
|
|
|
||
|
|
String prevObjId = CommonUtils.checkNull(paramMap.get("PREV_TASK_SEQ"));
|
||
|
|
|
||
|
|
if(StringUtils.isBlank(prevObjId)){
|
||
|
|
paramMap.put("task_seq", 1);
|
||
|
|
}else{
|
||
|
|
// Retrieve the value of PREV_TASK_SEQ
|
||
|
|
String prevTaskSeqStr = (String) paramMap.get("PREV_TASK_SEQ");
|
||
|
|
|
||
|
|
// Convert the String to Integer and add 1
|
||
|
|
int prevTaskSeq = Integer.parseInt(prevTaskSeqStr) + 1;
|
||
|
|
paramMap.put("task_seq", prevTaskSeq);
|
||
|
|
}
|
||
|
|
|
||
|
|
//시퀀스 업데이트
|
||
|
|
System.out.println("paramMap::::"+paramMap);
|
||
|
|
sqlSession.update("project.updateSetupWBSTaskListSeq",paramMap);
|
||
|
|
|
||
|
|
sqlSession.update("project.saveSetupWBSTaskInfo",paramMap);
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
if(CommonUtils.isEmpty(resultMap))
|
||
|
|
resultMap = new HashMap();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", e.getMessage());
|
||
|
|
sqlSession.rollback();
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 WBS Task의 목록 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectWBSTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectProductTaskList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 SETUP WBS Task의 목록 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectSetupWBSTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectSetupWBSTaskList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
/** 검사관리 내용을 저장한다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map save_inspectionListFormPopUp(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);
|
||
|
|
paramMap.put("WRITER", person.getUserId());
|
||
|
|
|
||
|
|
String parentObjId = CommonUtils.checkNull(request.getParameter("projectObjId"));
|
||
|
|
String partObjList[] = request.getParameterValues("OBJID");
|
||
|
|
|
||
|
|
if(parentObjId != null){
|
||
|
|
HashMap sqlParamMap = new HashMap();
|
||
|
|
sqlParamMap.put("parentObjId", parentObjId);
|
||
|
|
sqlSession.delete("project.deleteAllInspectionList",sqlParamMap);
|
||
|
|
}
|
||
|
|
|
||
|
|
if(null != partObjList && 0 < partObjList.length){
|
||
|
|
for(String targetObjId:partObjList){
|
||
|
|
|
||
|
|
Map sqlParamMep = new HashMap();
|
||
|
|
|
||
|
|
sqlParamMep.put("OBJID" , targetObjId);
|
||
|
|
sqlParamMep.put("PARENT_OBJID" , CommonUtils.checkNull(request.getParameter("PARENT_OBJID_"+targetObjId )));
|
||
|
|
sqlParamMep.put("UNIT_CODE" , CommonUtils.checkNull(request.getParameter("UNIT_CODE_"+targetObjId )));
|
||
|
|
sqlParamMep.put("INTERNAL_INSPECTION_DATE" , CommonUtils.checkNull(request.getParameter("INTERNAL_INSPECTION_DATE_"+targetObjId )));
|
||
|
|
sqlParamMep.put("INTERNAL_INSPECTION_RESULT" , CommonUtils.checkNull(request.getParameter("INTERNAL_INSPECTION_RESULT_"+targetObjId )));
|
||
|
|
sqlParamMep.put("INTERNAL_INSPECTION_ID" , CommonUtils.checkNull(request.getParameter("INTERNAL_INSPECTION_ID_"+targetObjId )));
|
||
|
|
//sqlParamMep.put("ADMISSION_INSPECTION_DATE" , CommonUtils.checkNull(request.getParameter("ADMISSION_INSPECTION_DATE_"+targetObjId )));
|
||
|
|
//sqlParamMep.put("ADMISSION_INSPECTION_RESULT" , CommonUtils.checkNull(request.getParameter("ADMISSION_INSPECTION_RESULT_"+targetObjId )));
|
||
|
|
//sqlParamMep.put("ADMISSION_INSPECTION_ID" , CommonUtils.checkNull(request.getParameter("ADMISSION_INSPECTION_ID_"+targetObjId )));
|
||
|
|
sqlParamMep.put("WRITER" , paramMap.get("WRITER"));
|
||
|
|
System.out.println("sqlParamMep::"+sqlParamMep);
|
||
|
|
sqlSession.update("project.save_inspectionListFormPopUp", sqlParamMep);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
public void save_wbsTaskProductForm(HttpServletRequest request, Map<String, Object> paramMap) {
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
String[] TASK_OBJIDs = request.getParameterValues("TASK_OBJID");
|
||
|
|
|
||
|
|
//메일 발송 에서 프로젝트 이름가져오려고 맹금
|
||
|
|
Map<String,Object> projectInfo = (Map)sqlSession.selectOne("project.getProjectMngInfo", paramMap);
|
||
|
|
//메일 발송 에서 프로젝트 이름가져오려고 맹금
|
||
|
|
paramMap.put("project_name", CommonUtils.checkNull(projectInfo.get("project_name")));
|
||
|
|
List<String> MailList = new ArrayList<>();
|
||
|
|
if(TASK_OBJIDs != null){
|
||
|
|
for(int i=0; i<TASK_OBJIDs.length; i++){
|
||
|
|
Map saveMap = new HashMap();
|
||
|
|
saveMap.put("OBJID" , TASK_OBJIDs[i]);
|
||
|
|
//saveMap.put("CONTRACT_OBJID" , CommonUtils.checkNull(request.getParameterValues("CONTRACT_OBJID" )[i]));
|
||
|
|
//saveMap.put("PARENT_OBJID" , CommonUtils.checkNull(request.getParameterValues("PARENT_OBJID" )[i]));
|
||
|
|
saveMap.put("TASK_NAME" , CommonUtils.checkNull(request.getParameterValues("TASK_NAME" )[i]));
|
||
|
|
//saveMap.put("TASK_SEQ" , CommonUtils.checkNull(request.getParameterValues("TASK_SEQ" )[i]));
|
||
|
|
saveMap.put("DESIGN_USER_ID" , CommonUtils.checkNull(request.getParameterValues("DESIGN_USER_ID" )[i]));
|
||
|
|
saveMap.put("DESIGN_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("DESIGN_PLAN_START" )[i]));
|
||
|
|
saveMap.put("DESIGN_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("DESIGN_PLAN_END" )[i]));
|
||
|
|
saveMap.put("DESIGN_ACT_START" , CommonUtils.checkNull(request.getParameterValues("DESIGN_ACT_START" )[i]));
|
||
|
|
saveMap.put("DESIGN_ACT_END" , CommonUtils.checkNull(request.getParameterValues("DESIGN_ACT_END" )[i]));
|
||
|
|
saveMap.put("PURCHASE_USER_ID" , CommonUtils.checkNull(request.getParameterValues("PURCHASE_USER_ID" )[i]));
|
||
|
|
saveMap.put("PURCHASE_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("PURCHASE_PLAN_START")[i]));
|
||
|
|
saveMap.put("PURCHASE_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("PURCHASE_PLAN_END" )[i]));
|
||
|
|
saveMap.put("PURCHASE_ACT_START" , CommonUtils.checkNull(request.getParameterValues("PURCHASE_ACT_START" )[i]));
|
||
|
|
saveMap.put("PURCHASE_ACT_END" , CommonUtils.checkNull(request.getParameterValues("PURCHASE_ACT_END" )[i]));
|
||
|
|
/*saveMap.put("PRODUCE_USER_ID" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_USER_ID" )[i]));
|
||
|
|
saveMap.put("PRODUCE_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_PLAN_START" )[i]));
|
||
|
|
saveMap.put("PRODUCE_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_PLAN_END" )[i]));
|
||
|
|
saveMap.put("PRODUCE_ACT_START" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_ACT_START" )[i]));
|
||
|
|
saveMap.put("PRODUCE_ACT_END" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_ACT_END" )[i]));*/
|
||
|
|
/*saveMap.put("SELFINS_USER_ID" , CommonUtils.checkNull(request.getParameterValues("SELFINS_USER_ID" )[i]));
|
||
|
|
saveMap.put("SELFINS_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("SELFINS_PLAN_START" )[i]));
|
||
|
|
saveMap.put("SELFINS_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("SELFINS_PLAN_END" )[i]));
|
||
|
|
saveMap.put("SELFINS_ACT_START" , CommonUtils.checkNull(request.getParameterValues("SELFINS_ACT_START" )[i]));
|
||
|
|
saveMap.put("SELFINS_ACT_END" , CommonUtils.checkNull(request.getParameterValues("SELFINS_ACT_END" )[i]));
|
||
|
|
saveMap.put("FINALINS_USER_ID" , CommonUtils.checkNull(request.getParameterValues("FINALINS_USER_ID" )[i]));
|
||
|
|
saveMap.put("FINALINS_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("FINALINS_PLAN_START")[i]));
|
||
|
|
saveMap.put("FINALINS_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("FINALINS_PLAN_END" )[i]));
|
||
|
|
saveMap.put("FINALINS_ACT_START" , CommonUtils.checkNull(request.getParameterValues("FINALINS_ACT_START" )[i]));
|
||
|
|
saveMap.put("FINALINS_ACT_END" , CommonUtils.checkNull(request.getParameterValues("FINALINS_ACT_END" )[i]));
|
||
|
|
saveMap.put("SHIP_USER_ID" , CommonUtils.checkNull(request.getParameterValues("SHIP_USER_ID" )[i]));
|
||
|
|
saveMap.put("SHIP_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("SHIP_PLAN_START" )[i]));
|
||
|
|
saveMap.put("SHIP_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("SHIP_PLAN_END" )[i]));
|
||
|
|
saveMap.put("SHIP_ACT_START" , CommonUtils.checkNull(request.getParameterValues("SHIP_ACT_START" )[i]));
|
||
|
|
saveMap.put("SHIP_ACT_END" , CommonUtils.checkNull(request.getParameterValues("SHIP_ACT_END" )[i]));
|
||
|
|
saveMap.put("SETUP_USER_ID" , CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID" )[i]));
|
||
|
|
saveMap.put("SETUP_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("SETUP_PLAN_START" )[i]));
|
||
|
|
saveMap.put("SETUP_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("SETUP_PLAN_END" )[i]));
|
||
|
|
saveMap.put("SETUP_ACT_START" , CommonUtils.checkNull(request.getParameterValues("SETUP_ACT_START" )[i]));
|
||
|
|
saveMap.put("SETUP_ACT_END" , CommonUtils.checkNull(request.getParameterValues("SETUP_ACT_END" )[i]));*/
|
||
|
|
saveMap.put("WRITER" , paramMap.get("WRITER"));
|
||
|
|
saveMap.put("DESIGN_RATE" , CommonUtils.checkNull(request.getParameterValues("DESIGN_RATE" )[i], "0" ));
|
||
|
|
saveMap.put("PURCHASE_RATE" , CommonUtils.checkNull(request.getParameterValues("PURCHASE_RATE" )[i], "0" ));
|
||
|
|
/*saveMap.put("PRODUCE_RATE" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_RATE" )[i], "0" ));
|
||
|
|
saveMap.put("SELFINS_RATE" , CommonUtils.checkNull(request.getParameterValues("SELFINS_RATE" )[i], "0" ));
|
||
|
|
saveMap.put("FINALINS_RATE" , CommonUtils.checkNull(request.getParameterValues("FINALINS_RATE" )[i], "0" ));
|
||
|
|
saveMap.put("SHIP_RATE" , CommonUtils.checkNull(request.getParameterValues("SHIP_RATE" )[i], "0" ));
|
||
|
|
saveMap.put("SETUP_RATE" , CommonUtils.checkNull(request.getParameterValues("SETUP_RATE" )[i], "0" ));*/
|
||
|
|
sqlSession.update("project.save_wbsTaskProductForm", saveMap);
|
||
|
|
|
||
|
|
//각담당자 메일 발송
|
||
|
|
|
||
|
|
if(!"".equals(CommonUtils.checkNull(request.getParameterValues("DESIGN_USER_ID")[i]))){
|
||
|
|
MailList.add(CommonUtils.checkNull(request.getParameterValues("DESIGN_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("DESIGN_USER_ID" )[i]));
|
||
|
|
}
|
||
|
|
if(!"".equals(CommonUtils.checkNull(request.getParameterValues("PURCHASE_USER_ID")[i]))){
|
||
|
|
MailList.add(CommonUtils.checkNull(request.getParameterValues("PURCHASE_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("PURCHASE_USER_ID" )[i]));
|
||
|
|
}
|
||
|
|
//if(!"".equals(CommonUtils.checkNull(request.getParameterValues("PRODUCE_USER_ID")[i]))){
|
||
|
|
//MailList.add(CommonUtils.checkNull(request.getParameterValues("PRODUCE_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("PRODUCE_USER_ID" )[i]));
|
||
|
|
//}
|
||
|
|
//if(!"".equals(CommonUtils.checkNull(request.getParameterValues("SELFINS_USER_ID")[i]))){
|
||
|
|
// MailList.add(CommonUtils.checkNull(request.getParameterValues("SELFINS_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("SELFINS_USER_ID" )[i]));
|
||
|
|
//}
|
||
|
|
//if(!"".equals(CommonUtils.checkNull(request.getParameterValues("FINALINS_USER_ID")[i]))){
|
||
|
|
// MailList.add(CommonUtils.checkNull(request.getParameterValues("FINALINS_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("FINALINS_USER_ID" )[i]));
|
||
|
|
//}
|
||
|
|
//if(!"".equals(CommonUtils.checkNull(request.getParameterValues("SHIP_USER_ID")[i]))){
|
||
|
|
// MailList.add(CommonUtils.checkNull(request.getParameterValues("SHIP_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("SHIP_USER_ID" )[i]));
|
||
|
|
//}
|
||
|
|
//if(!"".equals(CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID")[i]))){
|
||
|
|
// MailList.add(CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID" )[i]));
|
||
|
|
//}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
Set<String> setWithoutDuplicates = new LinkedHashSet<>(MailList);
|
||
|
|
MailList = new ArrayList<>(setWithoutDuplicates);
|
||
|
|
for(String mailuser:MailList){
|
||
|
|
//중복제거 메일 발송
|
||
|
|
commonService.SendMail(paramMap,"TASK_SAVE",mailuser);
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
public void save_setupWbsTaskProductForm(HttpServletRequest request, Map<String, Object> paramMap) {
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
String[] TASK_OBJIDs = request.getParameterValues("TASK_OBJID");
|
||
|
|
|
||
|
|
//메일 발송 에서 프로젝트 이름가져오려고 맹금
|
||
|
|
Map<String,Object> projectInfo = (Map)sqlSession.selectOne("project.getProjectMngInfo", paramMap);
|
||
|
|
//메일 발송 에서 프로젝트 이름가져오려고 맹금
|
||
|
|
paramMap.put("project_name", CommonUtils.checkNull(projectInfo.get("project_name")));
|
||
|
|
List<String> MailList = new ArrayList<>();
|
||
|
|
if(TASK_OBJIDs != null){
|
||
|
|
for(int i=0; i<TASK_OBJIDs.length; i++){
|
||
|
|
Map saveMap = new HashMap();
|
||
|
|
saveMap.put("OBJID" , TASK_OBJIDs[i]);
|
||
|
|
//saveMap.put("CONTRACT_OBJID" , CommonUtils.checkNull(request.getParameterValues("CONTRACT_OBJID" )[i]));
|
||
|
|
//saveMap.put("PARENT_OBJID" , CommonUtils.checkNull(request.getParameterValues("PARENT_OBJID" )[i]));
|
||
|
|
//saveMap.put("TASK_NAME" , CommonUtils.checkNull(request.getParameterValues("TASK_NAME" )[i]));
|
||
|
|
//saveMap.put("TASK_SEQ" , CommonUtils.checkNull(request.getParameterValues("TASK_SEQ" )[i]));
|
||
|
|
//saveMap.put("SETUP_USER_ID" , CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID" )[i]));
|
||
|
|
saveMap.put("SETUP_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("SETUP_PLAN_START" )[i]));
|
||
|
|
saveMap.put("SETUP_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("SETUP_PLAN_END" )[i]));
|
||
|
|
saveMap.put("SETUP_ACT_START" , CommonUtils.checkNull(request.getParameterValues("SETUP_ACT_START" )[i]));
|
||
|
|
saveMap.put("SETUP_ACT_END" , CommonUtils.checkNull(request.getParameterValues("SETUP_ACT_END" )[i]));
|
||
|
|
saveMap.put("WRITER" , paramMap.get("WRITER"));
|
||
|
|
saveMap.put("EMPLOYEES_IN" , CommonUtils.checkNull(request.getParameterValues("EMPLOYEES_IN" )[i], "0" ));
|
||
|
|
saveMap.put("EMPLOYEES_OUT" , CommonUtils.checkNull(request.getParameterValues("EMPLOYEES_OUT" )[i], "0" ));
|
||
|
|
//saveMap.put("SETUP_RATE" , CommonUtils.checkNull(request.getParameterValues("SETUP_RATE" )[i], "0" ));
|
||
|
|
sqlSession.update("project.save_setupWbsTaskProductForm", saveMap);
|
||
|
|
|
||
|
|
//각담당자 메일 발송
|
||
|
|
//if(!"".equals(CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID")[i]))){
|
||
|
|
// MailList.add(CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID")[i]));
|
||
|
|
//commonService.SendMail(paramMap,"TASK_SAVE",CommonUtils.checkNull(request.getParameterValues("SETUP_USER_ID" )[i]));
|
||
|
|
//}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
Set<String> setWithoutDuplicates = new LinkedHashSet<>(MailList);
|
||
|
|
MailList = new ArrayList<>(setWithoutDuplicates);
|
||
|
|
for(String mailuser:MailList){
|
||
|
|
//중복제거 메일 발송
|
||
|
|
commonService.SendMail(paramMap,"TASK_SAVE",mailuser);
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
public void save_wbsTaskProductProduceForm(HttpServletRequest request, Map<String, Object> paramMap) {
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
String[] TASK_OBJIDs = request.getParameterValues("TASK_OBJID");
|
||
|
|
|
||
|
|
String tempData = "123";
|
||
|
|
//메일 발송 에서 프로젝트 이름가져오려고 맹금
|
||
|
|
Map<String,Object> projectInfo = (Map)sqlSession.selectOne("project.getProjectMngInfo", paramMap);
|
||
|
|
//메일 발송 에서 프로젝트 이름가져오려고 맹금
|
||
|
|
paramMap.put("project_name", CommonUtils.checkNull(projectInfo.get("project_name")));
|
||
|
|
List<String> MailList = new ArrayList<>();
|
||
|
|
if(TASK_OBJIDs != null){
|
||
|
|
for(int i=0; i<TASK_OBJIDs.length; i++){
|
||
|
|
Map saveMap = new HashMap();
|
||
|
|
saveMap.put("OBJID" , TASK_OBJIDs[i]);
|
||
|
|
|
||
|
|
|
||
|
|
saveMap.put("PRODUCE_USER_ID" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_USER_ID" )[i]));
|
||
|
|
saveMap.put("PRODUCE_PLAN_START" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_PLAN_START" )[i]));
|
||
|
|
saveMap.put("PRODUCE_PLAN_END" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_PLAN_END" )[i]));
|
||
|
|
//saveMap.put("PRODUCE_ACT_START" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_ACT_START" )[i]));
|
||
|
|
//saveMap.put("PRODUCE_ACT_END" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_ACT_END" )[i]));
|
||
|
|
saveMap.put("PRODUCE_RATE" , CommonUtils.checkNull(request.getParameterValues("PRODUCE_RATE" )[i], "0" ));
|
||
|
|
|
||
|
|
|
||
|
|
sqlSession.update("project.save_wbsTaskProductProduceForm", saveMap);
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
Set<String> setWithoutDuplicates = new LinkedHashSet<>(MailList);
|
||
|
|
MailList = new ArrayList<>(setWithoutDuplicates);
|
||
|
|
for(String mailuser:MailList){
|
||
|
|
//중복제거 메일 발송
|
||
|
|
commonService.SendMail(paramMap,"TASK_SAVE",mailuser);
|
||
|
|
}
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 WBS Task의 목록 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectWBSGanttTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectProductGanttTaskList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 WBS Task(신규)의 목록 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectWBSGanttTaskNewList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectProductGanttTaskNewList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 간트차트
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List wbsTaskProductGantt(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
resultList = sqlSession.selectList("project.wbsTaskProductGantt", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* PROJECT 생성및 WBS TASK 생성
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||
|
|
public Map CreateProjectWbsTask(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
Map resultList = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN);
|
||
|
|
paramMap.put("writer", person.getUserId());
|
||
|
|
|
||
|
|
paramMap.put("OBJID", CommonUtils.createObjId());
|
||
|
|
int cnt = sqlSession.update("project.createProject", paramMap);
|
||
|
|
|
||
|
|
//프로젝트 TASK 등록
|
||
|
|
cnt = sqlSession.insert("project.insertProjectTask", paramMap);
|
||
|
|
|
||
|
|
//project_no - unit 폴더 생성
|
||
|
|
//paramMap.put("OBJID", paramMap.get("OBJID"));
|
||
|
|
Map<String,Object> projectInfo = (Map)sqlSession.selectOne("project.getProjectMngInfo", paramMap);
|
||
|
|
|
||
|
|
List<Map<String,Object>> taskUnitList = (ArrayList)sqlSession.selectList("project.getWbsTaskListByProject", paramMap);
|
||
|
|
if(CommonUtils.isNotEmpty(taskUnitList) && !taskUnitList.isEmpty()){
|
||
|
|
String projectNo = (String)projectInfo.get("project_no");
|
||
|
|
String filepath = Constants.FILE_STORAGE+"\\PART_DATA\\";
|
||
|
|
for (Map<String, Object> map : taskUnitList) {
|
||
|
|
File file = new File(filepath+File.separator+projectNo+File.separator+CommonUtils.checkNull((String)map.get("task_name")));
|
||
|
|
if(!file.exists()){
|
||
|
|
file.mkdirs();
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
if(cnt > 0){
|
||
|
|
//프로젝트 신규 등록 메일발송
|
||
|
|
commonService.SendMail(paramMap,"PROJECT_REG","");
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 번호 검출
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List<Map<String,Object>> checkProjectNo(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
resultList = (ArrayList)sqlSession.selectList("project.getProjectNoList", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 정보를 가져온다.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public HashMap<String,Object> getProjectMngInfo(HttpServletRequest request,Map<String,Object> paramMap){
|
||
|
|
HashMap<String,Object> oemInfo = new HashMap();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
oemInfo = (HashMap)sqlSession.selectOne("project.getProjectMngInfo", paramMap);
|
||
|
|
}catch(Exception e){
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return CommonUtils.toUpperCaseMapKey(oemInfo);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 수정
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||
|
|
public Map ModifyProject(HttpServletRequest request, Map paramMap){
|
||
|
|
Map resultMap = new HashMap();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
Map resultList = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
int cnt = sqlSession.update("project.ModifyProject", paramMap);
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.SAVE_SUCCESS);
|
||
|
|
sqlSession.commit();
|
||
|
|
}catch(Exception e){
|
||
|
|
sqlSession.rollback();
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.SAVE_FAILED);
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 정보를 삭제.
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public Map<String,Object> deleteProjectMngInfo(HttpServletRequest request,Map<String,Object> paramMap){
|
||
|
|
Map<String,Object> resultMap = new HashMap();
|
||
|
|
Map sqlMap = new HashMap();
|
||
|
|
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
|
||
|
|
try{
|
||
|
|
|
||
|
|
String checkArr = CommonUtils.checkNull(paramMap.get("checkArr"));
|
||
|
|
|
||
|
|
if(!"".equals(checkArr)){
|
||
|
|
sqlSession.delete("project.deleteProjectMngInfo",paramMap);
|
||
|
|
|
||
|
|
sqlSession.commit();
|
||
|
|
|
||
|
|
resultMap.put("result", true);
|
||
|
|
resultMap.put("msg", Message.DELETE_SUCCESS);
|
||
|
|
}
|
||
|
|
}catch(Exception e){
|
||
|
|
resultMap.put("result", false);
|
||
|
|
resultMap.put("msg", Message.DELETE_FAILED);
|
||
|
|
|
||
|
|
sqlSession.rollback();
|
||
|
|
throw e;
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return resultMap;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 타임라인 차트 쿼리
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectTimeLineList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectTimeLineList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트 목록조회
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
*/
|
||
|
|
public List getProjectMgntTimeLineList(HttpServletRequest request,Map paramMap){
|
||
|
|
List<Map> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = null;
|
||
|
|
try{
|
||
|
|
sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
|
||
|
|
String countPerPage = CommonUtils.checkNull(request.getParameter("countPerPage"), Constants.ADMIN_COUNT_PER_PAGE+"");
|
||
|
|
paramMap.put("COUNT_PER_PAGE", Integer.parseInt(countPerPage));
|
||
|
|
|
||
|
|
Map pageMap = (HashMap)sqlSession.selectOne("project.projectMgmtTimeLineListCnt", paramMap);
|
||
|
|
|
||
|
|
pageMap = (HashMap)CommonUtils.setPagingInfo(request, pageMap);
|
||
|
|
|
||
|
|
paramMap.put("PAGE_END", pageMap.get("PAGE_END"));
|
||
|
|
paramMap.put("PAGE_START", pageMap.get("PAGE_START"));
|
||
|
|
|
||
|
|
resultList = CommonUtils.keyChangeUpperList((ArrayList)sqlSession.selectList("project.projectMgmtTimeLineList", paramMap));
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
|
||
|
|
return resultList;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
/**
|
||
|
|
* 프로젝트에 연결된 Setup WBS Task의 목록 가져온다.
|
||
|
|
* @param sqlSession
|
||
|
|
* @param request
|
||
|
|
* @param paramMap
|
||
|
|
* @return
|
||
|
|
* @throws Exception
|
||
|
|
*/
|
||
|
|
public List getProjectWBSSetupTaskList(HttpServletRequest request, Map paramMap){
|
||
|
|
List<Map<String,Object>> resultList = new ArrayList();
|
||
|
|
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
|
||
|
|
try{
|
||
|
|
resultList = sqlSession.selectList("project.getProjectSetupWBSTaskList", paramMap);
|
||
|
|
|
||
|
|
}catch(Exception e){
|
||
|
|
e.printStackTrace();
|
||
|
|
}finally{
|
||
|
|
sqlSession.close();
|
||
|
|
}
|
||
|
|
return CommonUtils.toUpperCaseMapKey(resultList);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
|