- 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
434 lines
12 KiB
Java
434 lines
12 KiB
Java
/*
|
|
* CustomerMgmtController
|
|
*
|
|
* 1.0
|
|
*
|
|
* 2021.10.01
|
|
*
|
|
* Copyright ions
|
|
*/
|
|
package com.pms.salesmgmt.controller;
|
|
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.Date;
|
|
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.commons.lang3.StringUtils;
|
|
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.RequestMethod;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
|
import com.pms.common.utils.CommonUtils;
|
|
import com.pms.salesmgmt.service.ProductAssemblyMgmtService;
|
|
import com.pms.salesmgmt.service.SalesMgmtCommonService;
|
|
|
|
/**
|
|
* <pre>
|
|
* 생산조립 Controller
|
|
* </pre>
|
|
* @since 2021.11.26
|
|
* @author min
|
|
* @version 1.0
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- --------------------------------------------------------
|
|
* 2021.11.26 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*
|
|
*/
|
|
@Controller
|
|
public class ProductAssemblyMgmtController {
|
|
|
|
/** 생산조립 Service */
|
|
@Autowired
|
|
private ProductAssemblyMgmtService productAssemblyMgmtService;
|
|
|
|
@Autowired
|
|
private SalesMgmtCommonService salesMgmtCommonService;
|
|
|
|
/**
|
|
* <pre>
|
|
* (초기) 생산 조립 리스트 목록 조회 Empty
|
|
* </pre>
|
|
* @param request
|
|
* @param paramMap - 계약관리 검색 정보
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
@RequestMapping(value = "/productAssemblyMgmt/initProductAssemblyMgmt.do", method = RequestMethod.GET)
|
|
public String initProductAssemblyMgmt(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
|
|
String prWorkDt = request.getParameter("prWorkDt");
|
|
try {
|
|
if (StringUtils.isBlank(prWorkDt)) {
|
|
Date now = new Date();
|
|
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
|
|
prWorkDt = formatter.format(now);
|
|
paramMap.put("prWorkDt", prWorkDt);
|
|
}
|
|
|
|
List<Map<String,Object>> list = productAssemblyMgmtService.initProductAssemblyMgmt(request, paramMap);
|
|
|
|
request.setAttribute("LIST", list);
|
|
request.setAttribute("prWorkDt", prWorkDt);
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
|
|
return "/salesmgmt/productAssemblyMgmt/productAssemblyMgmtList";
|
|
}
|
|
|
|
|
|
/**
|
|
* <pre>
|
|
* 생산 조립 리스트 목록 조회
|
|
* </pre>
|
|
* @param request
|
|
* @param paramMap - 계약관리 검색 정보
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
@RequestMapping(value = "/productAssemblyMgmt/productAssemblyMgmt.do", method = RequestMethod.GET)
|
|
public String getProductAssemblyMgmt(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
String prWorkDt = request.getParameter("prWorkDt");
|
|
|
|
try {
|
|
if (StringUtils.isBlank(prWorkDt)) {
|
|
Date now = new Date();
|
|
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
|
|
prWorkDt = formatter.format(now);
|
|
paramMap.put("prWorkDt", prWorkDt);
|
|
}
|
|
|
|
List<Map<String,Object>> list = productAssemblyMgmtService.getProductAssemblyMgmt(request, paramMap); //생산조립리스트
|
|
|
|
List<Map<String,Object>> list2 = productAssemblyMgmtService.getIpgoRequestData(request, paramMap); //입고의뢰품목정보
|
|
|
|
request.setAttribute("LIST", list);
|
|
request.setAttribute("LIST2", list2);
|
|
request.setAttribute("prWorkDt", prWorkDt);
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
|
|
return "/salesmgmt/productAssemblyMgmt/productAssemblyMgmtList";
|
|
}
|
|
|
|
/**
|
|
* <pre>
|
|
* 생산 조립 상세 조회
|
|
* </pre>
|
|
* @param session
|
|
* @param request
|
|
* @param paramMap - 고객관리 검색 정보
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
@RequestMapping("/productAssemblyMgmt/productAssemblyMgmtFormPopup.do")
|
|
public String getProductAssemblyMap(HttpSession session
|
|
, HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
|
|
|
|
String pdLotNo = CommonUtils.checkNull(paramMap.get("pdLotNo"));
|
|
String pdCorseNo = CommonUtils.checkNull(paramMap.get("pdCorseNo"));
|
|
|
|
Map<String, Object> info = null;
|
|
|
|
try {
|
|
if(StringUtils.isNotBlank(pdLotNo) && StringUtils.isNotBlank(pdCorseNo) ) {
|
|
// 생산조립 조회
|
|
info = productAssemblyMgmtService.getProductAssemblyMap(paramMap);
|
|
} else {
|
|
info = new HashMap<String, Object>();
|
|
}
|
|
|
|
Map<String, Object> codeMap = new HashMap<String, Object>();
|
|
|
|
|
|
|
|
|
|
// 기종코드
|
|
codeMap.put("pdImItemList",
|
|
salesMgmtCommonService.bizMakeOptionList("", (String) info.get("PDITEMNO"), "salesMgmtCommon.getPdImItemList"));
|
|
|
|
// 공정코드
|
|
codeMap.put("pdCorseNoList",
|
|
salesMgmtCommonService.bizMakeOptionList("", (String) info.get("PDCORSENO"), "salesMgmtCommon.getIWcCorseNm"));
|
|
System.out.println("codeMap##################### " + codeMap);
|
|
List<Map<String,Object>> list = productAssemblyMgmtService.initProductAssemblyMgmt(request, paramMap);
|
|
System.out.println("info##################### " + info);
|
|
System.out.println("codeMap##################### " + codeMap);
|
|
System.out.println("list##################### " + list);
|
|
request.setAttribute("info", info);
|
|
request.setAttribute("codeMap", codeMap);
|
|
request.setAttribute("LIST", list);
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
|
|
return "/salesmgmt/productAssemblyMgmt/productAssemblyMgmtFormPopup";
|
|
}
|
|
|
|
/**
|
|
* <pre>
|
|
* 생산 조립 저장
|
|
* </pre>
|
|
* @param session
|
|
* @param request
|
|
* @param paramMap - 고객관리 검색 정보
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
|
|
@ResponseBody
|
|
@RequestMapping("/productAssemblyMgmt/saveProductAssemblyMgmt.do")
|
|
public Map<String, Object> saveProductAssemblyMgmt(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
Map<String, Object> resultMap = new HashMap<String, Object>();
|
|
|
|
try {
|
|
resultMap.put("RESULT", productAssemblyMgmtService.saveProductAssemblyMgmt(request, paramMap));
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return resultMap;
|
|
}
|
|
|
|
/**
|
|
* <pre>
|
|
* 생산 조립 삭제
|
|
* </pre>
|
|
* @param session
|
|
* @param request
|
|
* @param paramMap -
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
|
|
@ResponseBody
|
|
@RequestMapping("/productAssemblyMgmt/deleteProductAssemblyMgmt.do")
|
|
public Map<String, Object> deleteProductAssemblyMgmt(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
|
|
Map<String, Object> resultMap = new HashMap<String, Object>();
|
|
try {
|
|
resultMap.put("RESULT", productAssemblyMgmtService.deleteProductAssemblyMgmt(request, paramMap));
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return resultMap;
|
|
}
|
|
|
|
/**
|
|
* <pre>
|
|
* 생산 조립 마스터 삭제
|
|
* </pre>
|
|
* @param session
|
|
* @param request
|
|
* @param paramMap -
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
|
|
@ResponseBody
|
|
@RequestMapping("/productAssemblyMgmt/deleteProductAssemblyMgmtMaster.do")
|
|
public Map<String, Object> deleteProductAssemblyMgmtMaster(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
|
|
Map<String, Object> resultMap = new HashMap<String, Object>();
|
|
try {
|
|
|
|
resultMap.put("RESULT", productAssemblyMgmtService.deleteProductAssemblyMgmt(request, paramMap));
|
|
resultMap.put("RESULT", productAssemblyMgmtService.deleteProductAssemblyMgmtMaster(request, paramMap));
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return resultMap;
|
|
}
|
|
|
|
/*
|
|
========================================================================================================================================
|
|
========================================================================================================================================
|
|
입고 자료 생성
|
|
========================================================================================================================================
|
|
========================================================================================================================================
|
|
*/
|
|
|
|
/**
|
|
* <pre>
|
|
* 입고의뢰자료 리스트 조회
|
|
* </pre>
|
|
* @param request
|
|
* @param paramMap - 계약관리 검색 정보
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.27 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
@RequestMapping(value = "/productAssemblyMgmt/ipgoRequestData.do", method = RequestMethod.GET)
|
|
public String getIpgoRequestData(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
|
|
|
|
try {
|
|
List<Map<String,Object>> list = productAssemblyMgmtService.getProductAssemblyMgmt(request, paramMap);
|
|
|
|
List<Map<String,Object>> list2 = productAssemblyMgmtService.getIpgoRequestData(request, paramMap);
|
|
|
|
request.setAttribute("LIST", list);
|
|
request.setAttribute("LIST2", list2);
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
|
|
return "/salesmgmt/productAssemblyMgmt/productAssemblyMgmtList";
|
|
}
|
|
|
|
|
|
/**
|
|
* <pre>
|
|
* 입고의뢰자료 생성
|
|
* </pre>
|
|
* @param session
|
|
* @param request
|
|
* @param paramMap - 고객관리 검색 정보
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.28 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
|
|
@ResponseBody
|
|
@RequestMapping("/productAssemblyMgmt/saveIpgoRequestData.do")
|
|
public Map<String, Object> saveIpgoRequestData(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
Map<String, Object> resultMap = new HashMap<String, Object>();
|
|
|
|
try {
|
|
resultMap.put("RESULT", productAssemblyMgmtService.saveIpgoRequestData(request, paramMap));
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return resultMap;
|
|
}
|
|
|
|
/**
|
|
* <pre>
|
|
* 입고의뢰자료 삭제
|
|
* </pre>
|
|
* @param session
|
|
* @param request
|
|
* @param paramMap -
|
|
* @return String
|
|
*
|
|
* <pre>
|
|
* << 개정 이력 >>
|
|
*
|
|
* 수정일 수정자 수정내용
|
|
* ---------------- --------------------- ----------------------------------------------------------
|
|
* 2021.11.29 민상익 최초작성
|
|
*
|
|
* </pre>
|
|
*/
|
|
|
|
@ResponseBody
|
|
@RequestMapping("/productAssemblyMgmt/deleteIpgoRequestData.do")
|
|
public Map<String, Object> deleteIpgoRequestData(HttpServletRequest request
|
|
, @RequestParam Map<String, Object> paramMap) {
|
|
|
|
Map<String, Object> resultMap = new HashMap<String, Object>();
|
|
try {
|
|
resultMap.put("RESULT", productAssemblyMgmtService.deleteIpgoRequestData(request, paramMap));
|
|
|
|
} catch(Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return resultMap;
|
|
}
|
|
|
|
|
|
}
|