견적요청서관리 기능 개발
This commit is contained in:
@@ -1538,4 +1538,222 @@ public class SalesMngController {
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
// =====================================================
|
||||
// 견적요청서 관리 컨트롤러
|
||||
// =====================================================
|
||||
|
||||
/**
|
||||
* 견적요청서 목록 페이지
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping("/salesMng/quotationRequestList.do")
|
||||
public String quotationRequestList(HttpServletRequest request, @RequestParam Map paramMap){
|
||||
String returnUrl = "/salesMng/quotationRequestList";
|
||||
Map code_map = new HashMap();
|
||||
|
||||
try {
|
||||
// 프로젝트번호
|
||||
code_map.put("project_no", commonService.bizMakeOptionList("", (String)paramMap.get("project_no"), "common.getProjectNameList"));
|
||||
// 업체 목록
|
||||
code_map.put("vendor_objid", commonService.bizMakeOptionList("", (String)paramMap.get("vendor_objid"), "common.getsupplyselect"));
|
||||
// 상태
|
||||
String statusOptions = "";
|
||||
statusOptions += "<option value=''>전체</option>";
|
||||
statusOptions += "<option value='create'" + ("create".equals(paramMap.get("status")) ? " selected" : "") + ">작성중</option>";
|
||||
statusOptions += "<option value='sent'" + ("sent".equals(paramMap.get("status")) ? " selected" : "") + ">발송완료</option>";
|
||||
statusOptions += "<option value='received'" + ("received".equals(paramMap.get("status")) ? " selected" : "") + ">견적수신</option>";
|
||||
statusOptions += "<option value='completed'" + ("completed".equals(paramMap.get("status")) ? " selected" : "") + ">완료</option>";
|
||||
code_map.put("status", statusOptions);
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
request.setAttribute("code_map", code_map);
|
||||
return returnUrl;
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 목록 조회 (페이징)
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/quotationRequestListPaging.do")
|
||||
public Map getQuotationRequestListPaging(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
commonService.selectListPagingNew("salesMng.getQuotationRequestList", request, paramMap);
|
||||
return paramMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 상세 팝업
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping("/salesMng/quotationRequestFormPopup.do")
|
||||
public String quotationRequestFormPopup(HttpServletRequest request, @RequestParam Map paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
Map code_map = new HashMap();
|
||||
|
||||
try {
|
||||
String quotationRequestMasterObjid = CommonUtils.checkNull(paramMap.get("QUOTATION_REQUEST_MASTER_OBJID"));
|
||||
|
||||
if(!"".equals(quotationRequestMasterObjid)){
|
||||
// 기존 견적요청서 조회
|
||||
resultMap = salesMngService.getQuotationRequestMasterInfo(request, paramMap);
|
||||
} else {
|
||||
// 신규 생성 (구매리스트에서 호출 시)
|
||||
resultMap.put("OBJID", CommonUtils.createObjId());
|
||||
resultMap.put("STATUS", "create");
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
request.setAttribute("code_map", code_map);
|
||||
request.setAttribute("resultMap", resultMap);
|
||||
return "/salesMng/quotationRequestFormPopup";
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 상세 목록 조회
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/getQuotationRequestDetailList.do")
|
||||
public Map getQuotationRequestDetailList(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
|
||||
try {
|
||||
List<Map> detailList = salesMngService.getQuotationRequestDetailList(request, paramMap);
|
||||
resultMap.put("list", detailList);
|
||||
resultMap.put("resultFlag", "S");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
resultMap.put("resultFlag", "F");
|
||||
resultMap.put("message", "조회 중 오류가 발생했습니다.");
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 생성 (구매리스트에서)
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/createQuotationRequest.do")
|
||||
public Map createQuotationRequest(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
|
||||
try {
|
||||
resultMap = salesMngService.createQuotationRequest(request, paramMap);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
resultMap.put("resultFlag", "F");
|
||||
resultMap.put("message", "견적요청서 생성 중 오류가 발생했습니다: " + e.getMessage());
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 단가 저장
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/saveQuotationRequestPrice.do")
|
||||
public Map saveQuotationRequestPrice(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
|
||||
try {
|
||||
resultMap = salesMngService.saveQuotationRequestPrice(request, paramMap);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
resultMap.put("resultFlag", "F");
|
||||
resultMap.put("message", "저장 중 오류가 발생했습니다: " + e.getMessage());
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 메일 발송 후 상태 업데이트
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/updateQuotationRequestMailSent.do")
|
||||
public Map updateQuotationRequestMailSent(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
|
||||
try {
|
||||
resultMap = salesMngService.updateQuotationRequestMailSent(request, paramMap);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
resultMap.put("resultFlag", "F");
|
||||
resultMap.put("message", "상태 업데이트 중 오류가 발생했습니다: " + e.getMessage());
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 견적요청서 삭제
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/deleteQuotationRequest.do")
|
||||
public Map deleteQuotationRequest(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
|
||||
try {
|
||||
resultMap = salesMngService.deleteQuotationRequest(request, paramMap);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
resultMap.put("resultFlag", "F");
|
||||
resultMap.put("message", "삭제 중 오류가 발생했습니다: " + e.getMessage());
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 구매리스트에서 견적요청서 생성 대상 조회
|
||||
* @param request
|
||||
* @param paramMap
|
||||
* @return
|
||||
*/
|
||||
@ResponseBody
|
||||
@RequestMapping("/salesMng/getPurchaseListForQuotation.do")
|
||||
public Map getPurchaseListForQuotation(HttpServletRequest request, @RequestParam Map<String, Object> paramMap){
|
||||
Map resultMap = new HashMap();
|
||||
|
||||
try {
|
||||
List<Map> list = salesMngService.getPurchaseListForQuotation(request, paramMap);
|
||||
resultMap.put("list", list);
|
||||
resultMap.put("resultFlag", "S");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
resultMap.put("resultFlag", "F");
|
||||
resultMap.put("message", "조회 중 오류가 발생했습니다.");
|
||||
}
|
||||
|
||||
return resultMap;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user