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

204 lines
6.2 KiB
Java

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 javax.servlet.http.HttpSession;
import org.apache.ibatis.session.SqlSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.pms.common.Message;
import com.pms.common.SqlMapConfig;
import com.pms.common.bean.PersonBean;
import com.pms.common.service.BaseService;
import com.pms.common.utils.CommonUtils;
import com.pms.common.utils.Constants;
@Service
public class ResourceMasterMngService extends BaseService{
@Autowired
CommonService commonService;
/**
* 자재마스터관리 목록조회
* @param paramMap
* @return
*/
public List getResourceMasterMngList(HttpServletRequest request, Map paramMap){
List<Map<String,Object>> resultList = new ArrayList();
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
paramMap = setResourceMasterMngCommonCD(request, paramMap);
try{
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("resourceMasterMng.getResourceMasterMngListCnt", 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 = sqlSession.selectList("resourceMasterMng.getResourceMasterMngList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
System.out.println("paramMap:"+paramMap);
return CommonUtils.toUpperCaseMapKey(resultList);
}
/**
* 자재마스터관리 단가목록
* @param paramMap
* @return
*/
public List getResourcePriceList(HttpServletRequest request, Map paramMap){
List<Map<String,Object>> resultList = new ArrayList();
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
try{
resultList = sqlSession.selectList("resourceMasterMng.getResourcePriceList", paramMap);
}catch(Exception e){
e.printStackTrace();
}finally{
sqlSession.close();
}
System.out.println("paramMap:"+paramMap);
return CommonUtils.toUpperCaseMapKey(resultList);
}
/**
* 자재마스터관리의 상세내용을 가져온다.
* @param request
* @param paramMap
* @return
*/
public HashMap getResourceMasterMngInfo(HttpServletRequest request, Map paramMap){
HashMap resultMap = new HashMap();
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession();
try{
paramMap = setResourceMasterMngCommonCD(request, paramMap);
resultMap = sqlSession.selectOne("resourceMasterMng.getResourceMasterMngInfo",paramMap);
}catch(Exception e){
throw e;
}finally{
sqlSession.close();
}
return CommonUtils.toUpperCaseMapKey(resultMap);
}
public void mergeResourceMasterMng(HttpServletRequest request, Map paramMap){
SqlSession sqlSession = SqlMapConfig.getInstance().getSqlSession(false);
try{
HttpSession session = request.getSession();
PersonBean person = (PersonBean)session.getAttribute(Constants.PERSON_BEAN);
String personId = CommonUtils.checkNull(person.getUserId());
paramMap.put("WRITER",personId);
String objId = CommonUtils.checkNull(paramMap.get("OBJID"));
sqlSession.update("resourceMasterMng.mergeResourceMasterMng",paramMap);
String[] targetArr = request.getParameterValues("resourPriceObjId");
if(null != targetArr && 0 < targetArr.length){
for(int i=0;i<targetArr.length;i++){
String resourceObjId = targetArr[i];
String unitPrice = CommonUtils.checkNull(request.getParameter("UNIT_PRICE_"+resourceObjId));
String person_price = CommonUtils.checkNull(request.getParameter("PERSON_PRICE_"+resourceObjId));
String agency_price = CommonUtils.checkNull(request.getParameter("AGENCY_PRICE_"+resourceObjId));
String applyDate = CommonUtils.checkNull(request.getParameter("APPLY_DATE_"+resourceObjId));
String remark = CommonUtils.checkNull(request.getParameter("REMARK_"+resourceObjId));
if(!"".equals(unitPrice)){
HashMap sqlMap = new HashMap();
sqlMap.put("OBJID", resourceObjId);
sqlMap.put("PARENT_OBJID", objId);
sqlMap.put("UNIT_PRICE", unitPrice);
sqlMap.put("PERSON_PRICE", person_price);
sqlMap.put("AGENCY_PRICE", agency_price);
sqlMap.put("APPLY_DATE", applyDate);
sqlMap.put("REMARK", remark);
sqlMap.put("WRITER",personId);
sqlSession.update("resourceMasterMng.mergeResourcePrice",sqlMap);
}
}
}
sqlSession.commit();
}catch(Exception e){
sqlSession.rollback();
throw e;
}finally{
sqlSession.close();
}
}
public Map setResourceMasterMngCommonCD(HttpServletRequest request, Map paramMap){
paramMap.put("RESOURCE_TITLE_CD", Constants.RESOURCE_TITLE_CD);
return paramMap;
}
/**
* 자재마스터관리 삭제
* @param request
* @param paramMap
* @return
*/
public Map deleteResourceMasterMng(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){
for(int i=0;i<checkArr.length;i++){
String objId = CommonUtils.checkNull(checkArr[i]);
HashMap sqlParamMap = new HashMap();
sqlParamMap.put("OBJID", objId);
sqlSession.delete("resourceMasterMng.deleteResourceMasterMng",sqlParamMap);
sqlSession.delete("resourceMasterMng.deleteResourcePrice",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();
throw e;
}finally{
sqlSession.close();
}
return resultMap;
}
}