Files
wace_plm/src/com/pms/controller/ProcurStandMgmtController.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

291 lines
10 KiB
Java

package com.pms.controller;
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.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.pms.common.JsonUtil;
import com.pms.common.Message;
import com.pms.common.bean.PersonBean;
import com.pms.common.utils.CommonUtils;
import com.pms.common.utils.Constants;
import com.pms.salesmgmt.service.SalesMngService;
import com.pms.service.AdminService;
import com.pms.service.ApprovalService;
import com.pms.service.CommonService;
import com.pms.service.PartMngService;
import com.pms.service.ProcurStandMgmtService;
import com.pms.service.PurchaseOrderService;
@Controller
public class ProcurStandMgmtController {
@Autowired
CommonService commonService;
@Autowired
PurchaseOrderService purchaseOrderService;
@Autowired
SalesMngService salesMngService;
@Autowired
ApprovalService approvalService;
@Autowired
AdminService adminService;
@Autowired
ProcurStandMgmtService procurStandMgmtService;
/**
* 구매품 표준관리_대분류
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/procurStandMgmt/mainCategoryList.do")
public String mainCategoryList(HttpServletRequest request, @RequestParam Map paramMap){
ArrayList list = new ArrayList();
Map code_map = new HashMap();
Map menuMap = new HashMap();
String actionType = CommonUtils.checkNull(paramMap.get("actionType"));
String search_category = CommonUtils.checkNull(paramMap.get("search_category"));
String categoryCode = "0001667";
try{
ArrayList<HashMap<String, Object>> menuList = adminService.getmenuUp(request, paramMap);
if(menuList != null && menuList.size() > 1){
menuMap = menuList.get(1);
}
//구분
code_map.put("code_name",commonService.bizMakeOptionList(search_category, (String)paramMap.get("code_name"),"common.getStdCodeNameList","search_category"));
//코드
code_map.put("code_id",commonService.bizMakeOptionList(search_category, (String)paramMap.get("code_id"),"common.getStdCodeIDList","search_category"));
code_map.put("category" ,commonService.bizMakeOptionList(categoryCode, search_category,"common.getCodeselect"));
code_map.put("search_category", (String)paramMap.get("search_category"));
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("code_map",code_map);
request.setAttribute("menuMap", menuMap);
return "/procurStandMgmt/mainCategoryList";
}
/**
* 구매품 표준관리_대분류
* @param request
* @param paramMap
* @return
*/
@ResponseBody
@RequestMapping("/procurStandMgmt/mainCategoryGridList.do")
public Map mainCategoryGridList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
commonService.selectListPagingNew("procurStandMgmt.mainCategoryGridList", request, paramMap);
return paramMap;
}
/**
* 대분류(CODE1) 등록 팝업 호출
* @param request
* @return
*/
@RequestMapping("/procurStandMgmt/code1RegistFormPopUp.do")
public String openCode1RegistFormPopUp(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap codeInfo = new HashMap();
try{
codeInfo = (HashMap)procurStandMgmtService.getCodeInfo(request, paramMap);
if(codeInfo.isEmpty()){
codeInfo.put("OBJID", CommonUtils.createObjId());
codeInfo.put("STATUS", "create");
}else{
}
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("codeInfo", codeInfo);
return "/procurStandMgmt/code1RegistFormPopUp";
}
/**
* 대분류(CODE1) 저장
* @param request
* @param paramMap
* @return
*/
@ResponseBody
@RequestMapping("/procurStandMgmt/saveCODE1Info.do")
public Map saveCODE1Info(HttpServletRequest request, @RequestParam Map paramMap){
Map resultMap = new HashMap();
try{
resultMap = procurStandMgmtService.saveCODE1Info(request,paramMap);
}catch(Exception e){
e.printStackTrace();
}
System.out.println("resultMap:"+resultMap);
return resultMap;
}
/**
* 대분류(CODE1) 삭제한다.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/procurStandMgmt/deleteCODE1Info.do")
public String deleteCODE1Info(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
Map resultMap = new HashMap();
resultMap = procurStandMgmtService.deleteCODE1Info(request, paramMap);
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* 구매품 표준 중복체크
*/
@RequestMapping("/procurStandMgmt/overlapStandardMng.do")
public String overlapStandardMngCheck(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){
List list = procurStandMgmtService.overlapStandardMng(request, paramMap);
request.setAttribute("RESULT", CommonUtils.getJsonArray(list));
return "/ajax/ajaxResult";
}
/**
* 구매품 표준관리_자재코드 리스트
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/procurStandMgmt/materialCodeList.do")
public String materialCodeList(HttpServletRequest request, @RequestParam Map paramMap){
ArrayList list = new ArrayList();
Map code_map = new HashMap();
Map menuMap = new HashMap();
String actionType = CommonUtils.checkNull(paramMap.get("actionType"));
String search_category = CommonUtils.checkNull(paramMap.get("search_category"));
String categoryCode = "0001667";
try{
ArrayList<HashMap<String, Object>> menuList = adminService.getmenuUp(request, paramMap);
if(menuList != null && menuList.size() > 1){
menuMap = menuList.get(1);
}
//구분
code_map.put("code_name",commonService.bizMakeOptionList(search_category, (String)paramMap.get("code_name"),"common.getStdCodeNameList","search_category"));
//코드
code_map.put("code_id",commonService.bizMakeOptionList(search_category, (String)paramMap.get("code_id"),"common.getStdCodeIDList","search_category"));
code_map.put("category" ,commonService.bizMakeOptionList(categoryCode, search_category,"common.getCodeselect"));
code_map.put("search_category", (String)paramMap.get("search_category"));
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("code_map",code_map);
request.setAttribute("menuMap", menuMap);
return "/procurStandMgmt/materialCodeList";
}
/**
* 구매품 표준관리_대분류
* @param request
* @param paramMap
* @return
*/
@ResponseBody
@RequestMapping("/procurStandMgmt/materialCodeGridList.do")
public Map materialCodeGridList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
commonService.selectListPagingNew("procurStandMgmt.materialCodeGridList", request, paramMap);
return paramMap;
}
/**
* 자재코드 등록 팝업 호출
* @param request
* @return
*/
@RequestMapping("/procurStandMgmt/materialCodeFormPopUp.do")
public String openMaterialCodeFormPopUp(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
HashMap materialCodeInfo = new HashMap();
Map code_map = new HashMap();
try{
materialCodeInfo = (HashMap)procurStandMgmtService.getMaterialCodeInfo(request, paramMap);
code_map.put("code1",commonService.bizMakeOptionList("0001668", (String)materialCodeInfo.get("CODE_ID1"),"common.getStdCodeNameList","search_category", false, "CODE", "NAME", new String []{"code_id","name"}));
code_map.put("code2",commonService.bizMakeOptionList("0001669", (String)materialCodeInfo.get("CODE_ID2"),"common.getStdCodeNameList","search_category", false, "CODE", "NAME", new String []{"code_id","name"}));
code_map.put("code3",commonService.bizMakeOptionList("0001670", (String)materialCodeInfo.get("CODE_ID3"),"common.getStdCodeNameList","search_category", false, "CODE", "NAME", new String []{"code_id","name"}));
code_map.put("code4",commonService.bizMakeOptionList("0001671", (String)materialCodeInfo.get("CODE_ID4"),"common.getStdCodeNameList","search_category", false, "CODE", "NAME", new String []{"code_id","name"}));
code_map.put("code5",commonService.bizMakeOptionList("0001672", (String)materialCodeInfo.get("CODE_ID5"),"common.getStdCodeNameList","search_category", false, "CODE", "NAME", new String []{"code_id","name"}));
if(materialCodeInfo.isEmpty()){
materialCodeInfo.put("OBJID", CommonUtils.createObjId());
materialCodeInfo.put("STATUS", "create");
}else{
}
}catch(Exception e){
e.printStackTrace();
}
request.setAttribute("resultMap", materialCodeInfo);
request.setAttribute("code_map",code_map);
return "/procurStandMgmt/materialCodeFormPopUp";
}
/**
* 자재코드 중복체크
*/
@RequestMapping("/procurStandMgmt/overlapMaterialCode.do")
public String overlapMaterialCodeCheck(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){
List list = procurStandMgmtService.overlapMaterialCode(request, paramMap);
request.setAttribute("RESULT", CommonUtils.getJsonArray(list));
return "/ajax/ajaxResult";
}
/**
* 자재코드 저장
*/
@RequestMapping("/procurStandMgmt/saveMaterialCode.do")
public String saveMaterialCode(HttpSession session, HttpServletRequest request, @RequestParam Map paramMap){
Map resultMap = new HashMap();
resultMap = procurStandMgmtService.saveMaterialCode(request, paramMap);
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
/**
* 자재코드를 삭제한다.
* @param request
* @param paramMap
* @return
*/
@RequestMapping("/procurStandMgmt/deleteMaterialCode.do")
public String deleteMaterialCode(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
Map resultMap = new HashMap();
resultMap = procurStandMgmtService.deleteMaterialCode(request, paramMap);
request.setAttribute("RESULT", CommonUtils.getJsonMap(resultMap));
return "/ajax/ajaxResult";
}
}