- 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
204 lines
6.2 KiB
Java
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;
|
|
}
|
|
}
|