package com.pms.service; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.ibatis.session.SqlSession; import org.json.simple.JSONArray; import org.json.simple.JSONValue; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.bind.annotation.RequestParam; import com.pms.common.JsonUtil; 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 DashboardService { CommonService commonService = null; @Autowired public void setCommonService(CommonService commonService){ this.commonService = commonService; } /** * 메인화면에 사용되는 프로젝트 현황에 대한 목록 조회 * @param paramMap * @return */ public List getMainProjectStatusList(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getMainProjectStatusList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 차종별 Task 진행현황 (chart용) * @return */ public List getTaskStatus_byCarCode(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getTaskStatus_byCarCode", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 프로젝트에 해당하는 진행현황을 가져온다. * @param paramMap * @return */ public List getProjectProgressStatusList(HttpServletRequest request, Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.projectMgmtTimeLineGridList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 차종별 EO 적용현황 * @return */ public List getEOApplyStatus_ByCarCode(){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getEOApplyStatus_ByCarCode"); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 차종별 문제점 현황 * @param paramMap * @return */ public List getProblemStatusList(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProblemStatusList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 구조검토 제안관리 관리 현황 최초 이동 시 * 구성된 정보의 차종 중 SOP가 가장 먼 차종으로 등록 된 정보를 가져온다. * @param paramMap * @return */ public Map getStructureReviewReportStatus_baseInfo(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getStructureReviewReportStatus_baseInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 구조검토 제안관리 하단 Grid Data 조회 * @param paramMap * @return */ public List getStructureReviewReportStatus_gridData(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getStructureReviewReportStatus_gridData", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 구조검토 제안관리 상단 좌측 Chart Data 조회 * @param paramMap * @return */ public Map getStructureReviewReportStatus_chartData1(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getStructureReviewReportStatus_chartData1", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 구조검토 제안관리 상단 우측 Chart Data 조회 * @param paramMap * @return */ public Map getStructureReviewReportStatus_chartData2(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getStructureReviewReportStatus_chartData2", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 수주활동 상세현황 좌측현황 * @param paramMap * @return */ public List getProjectConceptDetailStatus_chart1(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProjectConceptDetailStatus_chart1", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 수주활동 상세현황 우측현황 * @param paramMap * @return */ public List getProjectConceptDetailStatus_chart2(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProjectConceptDetailStatus_chart2", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * Gate현황 chart1 * @param paramMap * @return */ public List getGateStatusList_chart1(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getGateProblemStatus_chart1", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * Gate현황 chart2 * @param paramMap * @return */ public List getGateStatusList_chart2(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getGateProblemStatus_chart2", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 원가차트 * @param paramMap * @return */ public List getmainDash_chart1(HttpServletRequest request,Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = (ArrayList)sqlSession.selectList("dashboard.getmainDash_chart1", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 발주금액 차트 * @param paramMap * @return */ public List getmainDash_chart2(HttpServletRequest request,Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = (ArrayList)sqlSession.selectList("dashboard.getmainDash_chart2", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 간트차트 * @param paramMap * @return */ public List getmainDash_gantt(HttpServletRequest request,Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = (ArrayList)sqlSession.selectList("dashboard.getmainDash_gantt", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * Gate현황 chart3 * @param paramMap * @return */ public List getGateStatusList_chart3(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getGateProblemStatus_chart3", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * Gate현황 chart3 Sub Data * @param paramMap * @return */ public List getGateStatusList_chart3Subdata(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getGateProblemStatus_chart3Subdata", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * Gate현황 chart4 * @param paramMap * @return */ public List getGateStatusList_chart4(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getGateProblemStatus_chart4", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 화면 최초 로드 시 대상 데이터가 존재하는 SOP 제일 먼 차종,고객사,제품군의 정보를 가져온다. * @param paramMap * @return */ public Map getProductDevEOApplyBaseParamInfo(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProductDevEOApplyBaseParamInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 제품개발관리 EO 적용현황 Grid 1 * @param paramMap * @return */ public List getProductDevEOApplyStatus_grid1(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProductDevEOApplyStatus_grid1", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품개발관리 EO 적용현황 Grid 2 * @param paramMap * @return */ public List getProductDevEOApplyStatus_grid2(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProductDevEOApplyStatus_grid2", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * Dashboard > Task 진행현황 GridData * @param paramMap * @return */ public List getDashboardTaskStatus_grid3(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getDashboardTaskStatus_grid3", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 목록 조회 * @param paramMap * @return */ public List getProblemList(Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProblemList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 목록 상태별 count 조회 * @param paramMap * @return */ public Map getProblemCount_byStatus(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProblemCount_byStatus", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /*euidonhwang start*/ /** * 개발마스터 목록 * @param paramMap * @return */ public List getDevMasterList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getDevMasterList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품별 금형등급 분포현황 Pie chart * @param paramMap * @return */ public Map getDevMasterRatingDistributePie(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getDevMasterRatingDistributePie", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 개발마스터에 해당하는 품목의 목록을 가져온다. * @param paramMap * @return */ public List getDevMasterProductList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getDevMasterProductList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품별 금형등급 분포현황 목록 * @param paramMap * @return */ public List getDevMasterRatingDistributeGrid(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getDevMasterRatingDistributeGrid", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 관리현황 고객사별 차종 스택 그래프 * @param paramMap * @return */ public List getProblemStatusStackColumn(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProblemStatusStackColumn", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 관리현황 고객사별 차종 RollUp 목록 * @param paramMap * @return */ public List getProblemStatusRollUpList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProblemStatusRollUpList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 관리현황 차종별 문제점 단계 Pie chart * @param paramMap * @return */ public List getCarProblemStepPieChart(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProblemStepPieChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 관리현황 차종별 문제점 단계 List * @param paramMap * @return */ public List getCarProblemStepRollUpList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProblemStepRollUpList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 유형별 발생현황 RollUp List * @param paramMap * @return */ public List getProblemTypeStatusRollUpList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProblemTypeStatusRollUpList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 문제점 유형별 발생현황 Pie Chart(금형,설비,품질,설계) * @param paramMap * @return */ public Map getProblemTypeStatusPie(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProblemTypeStatusPie", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 제품 문제점 관리 차종별 제품 문제점 현황 Pie chart * @param paramMap * @return */ public Map getCarProductProblemBaseParam(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getCarProductProblemBaseParam", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 제품 문제점 관리 차종별 제품 문제점 현황 Pie chart * @param paramMap * @return */ public List getCarProductProblemMngPieChart(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProductProblemMngPieChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품 문제점 관리 차종별 제품 문제점 현황 List * @param paramMap * @return */ public List getCarProductProblemMngList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProductProblemMngList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품 문제점 관리 차종별 제품 문제점 유형 현황 column chart P12 * @param paramMap * @return */ public List getCarProductProblemType1ColumnChart(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProductProblemType1ColumnChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품 문제점 관리 차종별 제품 문제점 유형 현황 column chart P12 * @param paramMap * @return */ public List getCarProductProblemType2ColumnChart(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProductProblemType2ColumnChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 제품 문제점 관리 차종별 제품 문제점 현황 List * @param paramMap * @return */ public List getCarProductProblemTypeList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getCarProductProblemTypeList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 단품/Assay 검사관리 현황 검사 조립검사별 현황 P14 * @param paramMap * @return */ public Map getTestMngStatusTestResultPieChart(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getTestMngStatusTestResultPieChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 단품/Assay 검사관리 현황 검사 점수별 현황 P14 * @param paramMap * @return */ public Map getTestMngStatusTestScorePieChart(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getTestMngStatusTestScorePieChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 단품/Assay 검사관리 현황 단품/조립 문제점 유형별 현황 P14 * @param paramMap * @return */ public Map getTestMngStatusProblemTypePieChart(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getTestMngStatusProblemTypePieChart", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 단품/Assay 검사관리 현황 단품/Assay 검사관리 현황 List P14 * @param paramMap * @return */ public List getTestMngStatusRollUpList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getTestMngStatusRollUpList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 시작품 검사 전체 합격률 P18 * @param paramMap * @return */ public Map getProtoTestTypeCompleteRatioPie(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProtoTestTypeCompleteRatioPie", paramMap); System.out.println("resultMap:"+resultMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 시작품 검사 고객사,차종,제품별 합격률 P18 * @param paramMap * @return */ public List getProtoTestProductCompleteRatioList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProtoTestProductCompleteRatioList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * 시작품 입고현황 전체 입고율 P18 * @param paramMap * @return */ public Map getProtoStockTotalReceiveRatioPie(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProtoStockTotalReceiveRatioPie", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 시작품 입고현황 고객사,차종,제품별 입고율 P18 * @param paramMap * @return */ public List getProtoStockProductReceiveRatioList(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProtoStockProductReceiveRatioList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } /** * DFMEA 단계1 RPN 분포 현황 * @param paramMap * @return */ public List getDFMEAStep1RPNStatus(HttpServletRequest request, Map paramMap){ List resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getDFMEAStep1RPNStatus", paramMap); boolean isDesignFlag = false; boolean isDevelopFlag = false; boolean isProductionFlag = false; if(0 < resultList.size()){ for(int i=0;i> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getProjectIssueList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 프로젝트에 해당하는 이슈현황을 가져온다. * @param paramMap * @return */ public List getProjectIssueStatusList(HttpServletRequest request, Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.getDashboardProjectIssueStatusList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } public List getProjectStatusCount(HttpServletRequest request, Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("contractMgmt.projectCount", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 투자비 관리 목록 * @param request * @param paramMap * @return */ public List investmentCostList(HttpServletRequest request, @RequestParam Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.investmentCostList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 투자비 관리 목록 * @param request * @param paramMap * @return */ public Map getProfitCostList(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProfitCostList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 설비이관 차종,제품별 문제점,문서이관율 현황 Column Chart * @param paramMap * @return */ public Map getInvestmentPlanCostInfo(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.investmentPlanCost", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultMap); } /** * 화폐단위 정보를 가져온다. * @param paramMap * @return */ public Map getProjectCurTypeInfo(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.getProjectCurTypeInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultMap); } /** * 투자계획 등록 * @param request * @param paramMap * @return */ public Map saveInvestmentPlanCost(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN); String writer = CommonUtils.checkNull(person.getUserId()); paramMap.put("WRITER", writer); paramMap.put("OBJID", CommonUtils.createObjId()); sqlSession.insert("dashboard.deleteInvestmentPlanCost", paramMap); sqlSession.insert("dashboard.saveInvestmentPlanCost", paramMap); resultMap.put("result",true); resultMap.put("msg", Message.SAVE_SUCCESS); sqlSession.commit(); }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 Map saveProjectCurType(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ sqlSession.update("dashboard.saveProjectCurType", paramMap); resultMap.put("result",true); resultMap.put("msg", Message.SAVE_SUCCESS); sqlSession.commit(); }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 instructionMngList(HttpServletRequest request, @RequestParam Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("dashboard.instructionMngList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } /** * 지시사항 이행관리 상세 * @param request * @param paramMap * @return */ public Map instructionMngInfo(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.instructionMngInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultMap); } /** * 지시사항 이행관리 등록 * @param request * @param paramMap * @return */ public Map saveInstructionMng(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN); String writer = CommonUtils.checkNull(person.getUserId()); paramMap.put("WRITER", writer); sqlSession.insert("dashboard.saveInstructionMng", paramMap); resultMap.put("result",true); resultMap.put("msg", Message.SAVE_SUCCESS); sqlSession.commit(); }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 Map deleteInstructionMng(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ String[] checkObjArr = request.getParameterValues("chkObj"); if(null != checkObjArr && 0 < checkObjArr.length){ for(String objId:checkObjArr){ Map sqlMap = new HashMap(); sqlMap.put("OBJID", objId); sqlSession.delete("dashboard.deleteInstructionMng", sqlMap); } } 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 request * @param paramMap * @return */ public Map changeStatusInstructionMng(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ String[] checkObjArr = request.getParameterValues("chkObj"); String changeStatus = request.getParameter("STATUS"); if(null != checkObjArr && 0 < checkObjArr.length){ for(String objId:checkObjArr){ Map sqlMap = new HashMap(); sqlMap.put("OBJID", objId); sqlMap.put("STATUS", changeStatus); sqlSession.delete("dashboard.changeStatusInstructionMng", sqlMap); } } resultMap.put("result",true); resultMap.put("msg", Message.CHANGE_STATUS_SUCCESS); sqlSession.commit(); }catch(Exception e){ resultMap.put("result",false); resultMap.put("msg", Message.CHANGE_STATUS_FAILED); sqlSession.rollback(); e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /*euidonhwang end*/ /** * 지시사항2 이행관리 상세 * @param request * @param paramMap * @return */ public Map instructionMngInfo2(HttpServletRequest request, @RequestParam Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("dashboard.instructionMngInfo2", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultMap); } /** * 지시사항2 이행관리 등록 * @param request * @param paramMap * @return */ public Map saveInstructionMng2(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN); String writer = CommonUtils.checkNull(person.getUserId()); paramMap.put("WRITER", writer); String MASTER_OBJID = CommonUtils.checkNull(paramMap.get("OBJID")); //main table sqlSession.insert("dashboard.saveInstructionMng2", paramMap); /* //user table String checkParam = CommonUtils.checkNull(paramMap.get("USER_IDS")); String[] targetObjIdList = checkParam.split(","); Map sqlMap = new HashMap(); sqlMap.put("MASTER_OBJID", MASTER_OBJID); sqlSession.delete("dashboard.deleteInstructionMng2user", sqlMap); //초기화 String USER_IDS = CommonUtils.getParametersAddText(request,"USER_IDS"); paramMap.put("USER_IDS", USER_IDS); if(CommonUtils.isNotEmpty(targetObjIdList)){ for (String userId : targetObjIdList) { String OBJID = CommonUtils.createObjId(); sqlMap.put("MASTER_OBJID", MASTER_OBJID); sqlMap.put("OBJID", OBJID); sqlMap.put("USER_ID", userId); sqlSession.insert("dashboard.saveInstructionMng2user", sqlMap); } } */ //task table List> dataList = JsonUtil.JsonToList(CommonUtils.checkNull(paramMap.get("dataListJson"))); List objidList = new ArrayList(); //String[] objidArr = new String[dataList.size()]; //int idx = 0; if(CommonUtils.isNotEmpty(dataList)){ for (Map data : dataList) { String OBJID = CommonUtils.checkNull(data.get("OBJID")); if (OBJID.isEmpty()) { //OBJID = CommonUtils.createObjId(); } objidList.add(OBJID); //objidArr[idx] = OBJID; //idx++; data.put("MASTER_OBJID", MASTER_OBJID); sqlSession.insert("dashboard.saveInstructionMng2task", data); } } //Object[] objectObjidArr = objidList.toArray(); //String[] stringArray = objidList.toArray(new String[0]); //String[] stringArray = objidList.stream().toArray(String[]::new); paramMap.put("MASTER_OBJID", MASTER_OBJID); paramMap.put("NOT_OBJIDS", objidList); sqlSession.update("dashboard.deleteInstructionMng2task", paramMap); //없는거 삭제 resultMap.put("result",true); resultMap.put("msg", Message.SAVE_SUCCESS); sqlSession.commit(); }catch(Exception e){ resultMap.put("result",false); resultMap.put("msg", Message.SAVE_FAILED); sqlSession.rollback(); e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } /** * 지시사항2 이행관리 삭제 * @param request * @param paramMap * @return */ public Map deleteInstructionMng2(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ /* String[] checkObjArr = request.getParameterValues("chkObj"); if(null != checkObjArr && 0 < checkObjArr.length){ for(String objId:checkObjArr){ Map sqlMap = new HashMap(); sqlMap.put("OBJID", objId); sqlSession.delete("dashboard.deleteInstructionMng2", sqlMap); } } */ String checkArr = CommonUtils.checkNull(paramMap.get("checkArr")); if(!"".equals(checkArr)){ //paramMap.put("WRITER",personId); sqlSession.delete("dashboard.deleteInstructionMng2", paramMap); } 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; } /** * 지시사항2 이행관리 상태변경 * @param request * @param paramMap * @return */ public Map changeStatusInstructionMng2(HttpServletRequest request,Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ Map sqlMap = new HashMap(); //String[] checkObjArr = request.getParameterValues("chkObj"); String changeStatus = request.getParameter("STATUS"); /* if(null != checkObjArr && 0 < checkObjArr.length){ for(String objId:checkObjArr){ sqlMap.put("OBJID", objId); sqlMap.put("STATUS", changeStatus); sqlSession.delete("dashboard.changeStatusInstructionMng2", sqlMap); } } 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){ sqlMap.put("OBJID", objId); sqlMap.put("STATUS", changeStatus); sqlSession.delete("dashboard.changeStatusInstructionMng2", sqlMap); } */ String checkArrStr = CommonUtils.checkNull(paramMap.get("checkArr")); if(!"".equals(checkArrStr)){ //paramMap.put("WRITER",personId); sqlSession.update("dashboard.changeStatusInstructionMng2", paramMap); //send mail //commonService.SendMail(paramMap,"INSTRUCTION_MNG_ASSIGN", ""); String STATUS = (CommonUtils.checkNull(paramMap.get("STATUS"))); if("release".equals(STATUS)) { //배표 String checkArr[] = (CommonUtils.checkNull(paramMap.get("checkArr"))).split(","); if(null != checkArr && 0 < checkArr.length){ for (String objid : checkArr) { sqlMap.put("OBJID", objid); List> resultList = (ArrayList)sqlSession.selectList("dashboard.instructionMngTaskList", sqlMap); if(null != resultList && 0 < resultList.size()){ //제목 String subject = ""; String contents = ""; String email = ""; paramMap.put("MAILTYPE","INSTRUCTION_MNG_ASSIGN"); for (Map map : resultList) { subject = "[지시사항 이행관리 "+CommonUtils.checkNull(map.get("year_month_week"))+ " - " +CommonUtils.checkNull(map.get("contents"))+"] 담당자로 지정되었습니다."; contents ="내용을 확인하시어 진행 바랍니다."; contents +="
조치예정일 : " + CommonUtils.checkNull(map.get("measure_plan_date")); email = CommonUtils.checkNull(map.get("email")); if(CommonUtils.isNotBlank(email)) { MailUtil.sendMailNew(email, subject, contents); } } } } } } } resultMap.put("result",true); resultMap.put("msg", Message.CHANGE_STATUS_SUCCESS); sqlSession.commit(); }catch(Exception e){ resultMap.put("result",false); resultMap.put("msg", Message.CHANGE_STATUS_FAILED); sqlSession.rollback(); e.printStackTrace(); }finally{ sqlSession.close(); } return resultMap; } }