package com.pms.service; 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.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; 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; @Service public class ProductKindSpecService { @Autowired CommonService commonService = null; //@Autowired ProductionMngService productionMngService; public List getProductKindSpecList(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("productKindSpec.productKindSpecListCnt", 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("productKindSpec.productKindSpecList", paramMap); */ }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } public List getProductKindSpecDetailList(HttpServletRequest request,Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = (ArrayList)sqlSession.selectList("productKindSpec.searchProductKindSpecPopupGridList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } public Map getProductKindSpecMasterInfo(Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultMap = sqlSession.selectOne("productKindSpec.selectProductKindSpecMaster", paramMap); List> projectList = sqlSession.selectList("productKindSpec.selectProductKindSpecProjectList", paramMap); resultMap.put("projectList", projectList); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultMap); } public List> selectProductKindSpecProjectList(Map paramMap){ List> resultList = new ArrayList(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); resultList = sqlSession.selectList("productKindSpec.selectProductKindSpecProjectList", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return resultList; } public void applyProductKindSpec(HttpServletRequest request,Map paramMap){ SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(); PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN); String checkArrParam = CommonUtils.checkNull(request.getParameter("checkArr")); String checkArr[] = checkArrParam.split(","); if(0 == checkArr.length){ checkArr[0] = checkArrParam; } Map sqlParamMap = new HashMap(); for(String objId:checkArr){ sqlParamMap.clear(); sqlParamMap.put("OBJID", objId); sqlParamMap.put("OBJID_PARENT", objId); sqlParamMap.put("STATUS" , "DEPLOY"); sqlParamMap.put("WRITER", person.getUserId()); sqlSession.update("productKindSpec.updateProductKindSpecMain", sqlParamMap); sqlSession.update("productKindSpec.updateProductKindSpec", sqlParamMap); } //sqlSession.update("productKindSpec.mergeProductKindSpecMain", paramMap); //sqlSession.update("productKindSpec.mergeProductKindSpec", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } } /** * 제품별 사양 저장 * @param request * @param paramMap * @return */ public Map saveProductKindSpec(HttpServletRequest request, Map paramMap){ Map resultMap = new HashMap(); SqlSession sqlSession = null; try{ sqlSession = SqlMapConfig.getInstance().getSqlSession(false); PersonBean person = (PersonBean)request.getSession().getAttribute(Constants.PERSON_BEAN); paramMap.put("WRITER", person.getUserId()); //System.out.println("paramMap : "+paramMap); String OBJID = CommonUtils.checkNull(request.getParameter("OBJID"), CommonUtils.createObjId()); String OBJID_PRODUCT = CommonUtils.checkNull(request.getParameter("OBJID_PRODUCT")); String MECHANICAL_TYPE = CommonUtils.checkNull(request.getParameter("MECHANICAL_TYPE")); paramMap.put("OBJID", OBJID); //Map info = this.getProductKindSpecMasterInfo(paramMap); List> projectList = sqlSession.selectList("productKindSpec.selectProductKindSpecProjectList", paramMap); if(CommonUtils.isEmpty(projectList) || projectList.isEmpty()){ }else{ paramMap.put("PRODUCT", OBJID_PRODUCT); paramMap.put("STATUS", "REGIST"); int cnt = sqlSession.insert("productKindSpec.mergeProductKindSpecMain", paramMap); List> dataList = JsonUtil.JsonToList(CommonUtils.checkNull(paramMap.get("dataListJson"))); //if(!"".equals(authGroupObjid) && 0 < tagetMemberList.length){ html table version if(!"".equals(OBJID_PRODUCT) && CommonUtils.isNotEmpty(dataList)){ for (Map data : dataList) { //System.out.println(data); //String targetMemberId = CommonUtils.checkNull(data.get("USER_ID")); //data.putAll(paramMap); data.put("STATUS", "REGIST"); data.put("OBJID_PARENT", OBJID); data.put("PRODUCT", OBJID_PRODUCT); data.put("MECHANICAL_TYPE", MECHANICAL_TYPE); data.put("STATUS", "REGIST"); for (Map projectMap : projectList) { //System.out.println(projectMap); String PROJECT_NO = (String)projectMap.get("PROJECT_NO"); data.put("PROJECT_NO", PROJECT_NO); data.put("OBJID", CommonUtils.checkNull(data.get("OBJID_"+PROJECT_NO), CommonUtils.createObjId())); data.put("VALUE", data.get("VALUE_"+PROJECT_NO)); System.out.println(data); sqlSession.insert("productKindSpec.mergeProductKindSpec", data); } } } } 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 */ public void deleteProductKindSpecAll(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ /* String checkArrParam = CommonUtils.checkNull(request.getParameter("checkArr")); String checkArr[] = checkArrParam.split(","); if(0 == checkArr.length){ checkArr[0] = checkArrParam; } for(String eoObjId:checkArr){ Map sqlParamMap = new HashMap(); sqlParamMap.put("OBJID", eoObjId); sqlSession.delete("productKindSpec.deleteProductKindSpecMain", sqlParamMap); sqlSession.delete("productKindSpec.deleteProductKindSpec", sqlParamMap); } */ sqlSession.delete("productKindSpec.deleteProductKindSpecMain", paramMap); sqlSession.delete("productKindSpec.deleteProductKindSpec", paramMap); sqlSession.commit(); }catch(Exception e){ sqlSession.rollback(); throw e; }finally{ sqlSession.close(); } } public void deleteProductKindSpec(HttpServletRequest request, Map paramMap){ SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false); try{ String checkArrParam = CommonUtils.checkNull(request.getParameter("checkArr")); String checkArr[] = checkArrParam.split(","); if(0 == checkArr.length){ checkArr[0] = checkArrParam; } /* for(String eoObjId:checkArr){ Map sqlParamMap = new HashMap(); sqlParamMap.put("OBJID", eoObjId); sqlSession.delete("productKindSpec.deleteProductKindSpec",sqlParamMap); } */ //String OBJID_PARENT = CommonUtils.checkNull(request.getParameter("OBJID_PARENT")); String OBJID_PRODUCT = CommonUtils.checkNull(request.getParameter("OBJID_PRODUCT")); String MECHANICAL_TYPE = CommonUtils.checkNull(request.getParameter("MECHANICAL_TYPE")); List> dataList = JsonUtil.JsonToList(CommonUtils.checkNull(paramMap.get("dataListJson"))); //if(!"".equals(authGroupObjid) && 0 < tagetMemberList.length){ html table version if(!"".equals(OBJID_PRODUCT) && CommonUtils.isNotEmpty(dataList)){ for (Map data : dataList) { //System.out.println(data); //String targetMemberId = CommonUtils.checkNull(data.get("USER_ID")); //data.putAll(paramMap); //data.put("OBJID_PARENT", OBJID_PARENT); data.put("PRODUCT", OBJID_PRODUCT); data.put("MECHANICAL_TYPE", MECHANICAL_TYPE); //System.out.println(data); sqlSession.delete("productKindSpec.deleteProductKindSpec",data); } } sqlSession.commit(); }catch(Exception e){ sqlSession.rollback(); throw e; }finally{ sqlSession.close(); } } public void saveProductKindSpecDetailList(HttpServletRequest request,Map paramMap){ SqlSession sqlSession = null; try{ List> gridDataList = JsonUtil.JsonToList(CommonUtils.checkNull(paramMap.get("jqGrid"))); sqlSession = SqlMapConfig.getInstance().getSqlSession(false); int cnt = sqlSession.delete("productKindSpec.deleteProductKindSpecDetailAll", paramMap); for(int i=0; i> 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("productKindSpec.productKindSpecInfoCnt", 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("productKindSpec.productKindSpecInfo", paramMap); }catch(Exception e){ e.printStackTrace(); }finally{ sqlSession.close(); } return CommonUtils.toUpperCaseMapKey(resultList); } }