fix : 관리자 구독서비스 상품준비 관리
This commit is contained in:
@@ -86,7 +86,7 @@ public class SubsvcController {
|
||||
@Value("${mngrfo.common.subsvc.dft-goods-optn-innb}")
|
||||
private String dftGoodsOptnInnb;
|
||||
@Autowired
|
||||
private BOSubsvcService service;
|
||||
private BOSubsvcService boSubsvcService;
|
||||
@Autowired
|
||||
private BOCommonService commonService;
|
||||
@Autowired
|
||||
@@ -112,7 +112,7 @@ public class SubsvcController {
|
||||
content.put("paramVO", vo);
|
||||
|
||||
// 조회조건 구독서비스
|
||||
List<?> SrchSubsvcList = service.selectBOMngrSrchSubsvcList(vo);
|
||||
List<?> SrchSubsvcList = boSubsvcService.selectBOMngrSrchSubsvcList(vo);
|
||||
content.put("srchSubsvcList", SrchSubsvcList);
|
||||
|
||||
//조회조건 판매상태
|
||||
@@ -148,7 +148,7 @@ public class SubsvcController {
|
||||
content.put("paramVO", vo);
|
||||
|
||||
// 구독서비스 상세조회
|
||||
DataMap subsvcDtl = service.selectBOSubsvcDetail(vo);
|
||||
DataMap subsvcDtl = boSubsvcService.selectBOSubsvcDetail(vo);
|
||||
content.put("subsvcDtl", subsvcDtl);
|
||||
|
||||
//판매상태
|
||||
@@ -210,7 +210,7 @@ public class SubsvcController {
|
||||
//파일 업로드 관련 END
|
||||
|
||||
Map<String, Object> message = new HashMap<>();
|
||||
String result = service.updateBOMngrSubsvc(vo);
|
||||
String result = boSubsvcService.updateBOMngrSubsvc(vo);
|
||||
message.put("message",result);
|
||||
|
||||
return ResponseEntity.ok(
|
||||
@@ -238,7 +238,7 @@ public class SubsvcController {
|
||||
content.put("paramVO", vo);
|
||||
|
||||
// 구독서비스 상세조회
|
||||
DataMap subsvcDtl = service.selectBOSubsvcDetail(vo);
|
||||
DataMap subsvcDtl = boSubsvcService.selectBOSubsvcDetail(vo);
|
||||
content.put("subsvcDtl", subsvcDtl);
|
||||
|
||||
//판매상태
|
||||
@@ -303,7 +303,7 @@ public class SubsvcController {
|
||||
vo.setDftGoodsOptnInnb(dftGoodsOptnInnb);
|
||||
|
||||
Map<String, Object> message = new HashMap<>();
|
||||
String result = service.insertBOMngrSubsvc(vo);
|
||||
String result = boSubsvcService.insertBOMngrSubsvc(vo);
|
||||
message.put("message",result);
|
||||
|
||||
return ResponseEntity.ok(
|
||||
@@ -345,7 +345,7 @@ public class SubsvcController {
|
||||
}
|
||||
|
||||
// 목록 조회
|
||||
List<DataMap> list = service.selectBOMngrSubsvcList(vo);
|
||||
List<DataMap> list = boSubsvcService.selectBOMngrSubsvcList(vo);
|
||||
|
||||
Map<String, Object> content = new HashMap<>();
|
||||
content.put("paramVO", vo);
|
||||
@@ -373,7 +373,7 @@ public class SubsvcController {
|
||||
}
|
||||
|
||||
DataMap message = new DataMap();
|
||||
String result = service.selectBOMngrSubsvcNmDupCheck(vo);
|
||||
String result = boSubsvcService.selectBOMngrSubsvcNmDupCheck(vo);
|
||||
message.put("message", result);
|
||||
|
||||
return ResponseEntity.ok(
|
||||
@@ -401,7 +401,7 @@ public class SubsvcController {
|
||||
}
|
||||
|
||||
DataMap message = new DataMap();
|
||||
String result = service.deleteBOMngrSubsvc(vo);
|
||||
String result = boSubsvcService.deleteBOMngrSubsvc(vo);
|
||||
message.put("message", result);
|
||||
|
||||
return ResponseEntity.ok(
|
||||
@@ -429,7 +429,7 @@ public class SubsvcController {
|
||||
Map<String, Object> content = new HashMap<>();
|
||||
|
||||
// 조회조건 구독서비스
|
||||
List<DataMap> SrchSubsvcGnrList = service.selectBOMngrSrchSubsvcGnrList(vo);
|
||||
List<DataMap> SrchSubsvcGnrList = boSubsvcService.selectBOMngrSrchSubsvcGnrList(vo);
|
||||
content.put("srchSubsvcGnrList", SrchSubsvcGnrList);
|
||||
|
||||
return ResponseEntity.ok(
|
||||
|
||||
@@ -0,0 +1,251 @@
|
||||
package com.wb.domainserver.domain.mngr.ordr.subsvc.controller;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
||||
import com.wb.domainserver.common.mvc.tags.ui.pagination.PaginationInfo;
|
||||
import com.wb.domainserver.common.prop.PaginationProperties;
|
||||
import com.wb.domainserver.domain.admin.store.sopmal.service.BOMaSopmalService;
|
||||
import com.wb.domainserver.domain.admin.sys.comncd.service.BOMaComncdService;
|
||||
import com.wb.domainserver.domain.admin.sys.comncd.vo.BOMaComncdVO;
|
||||
import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
||||
import com.wb.domainserver.domain.gcone.goods.purchs.service.BOOrderService;
|
||||
import com.wb.domainserver.domain.gcone.goods.purchs.vo.BOOrderLogVO;
|
||||
import com.wb.domainserver.domain.gcone.goods.subsvc.service.BOSubsvcService;
|
||||
import com.wb.domainserver.domain.gcone.goods.subsvc.vo.BOSubsvcVO;
|
||||
import com.wb.domainserver.domain.gcone.ordr.ordr.service.BOOrdrService;
|
||||
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.*;
|
||||
import com.wb.domainserver.domain.gcone.ordr.pay.vo.BOPayVO;
|
||||
import com.wb.domainserver.domain.gcone.ordr.subsvc.service.BOSubsvcOrdrService;
|
||||
import com.wb.domainserver.domain.gcone.ordr.subsvc.vo.BOSubsvcOrderVO;
|
||||
import com.wb.domainserver.domain.gcone.setup.dlvygrp.service.BODlvygrpService;
|
||||
import com.wb.domainserver.domain.gcone.setup.nbkk.service.BONbkkService;
|
||||
import com.wb.domainserver.domain.gcone.setup.nbkk.vo.BOSetupNbkkVO;
|
||||
import com.wb.domainserver.domain.mngr.ordr.ordrmngr.vo.DwldItmVO;
|
||||
import com.wb.domainserver.domain.mngr.ordr.ordrmngr.vo.OrdrShippingVO;
|
||||
import com.wb.domainserver.domain.mngr.ordr.ordrmngr.vo.OrdrSrchVO;
|
||||
import com.wb.domainserver.exception.WnbtRestException;
|
||||
import com.wb.domainserver.exception.code.ErrorCode;
|
||||
import com.wb.domainserver.response.WnbtResponse;
|
||||
import com.wb.domainserver.response.WnbtResponseBody;
|
||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
||||
import com.wb.domainserver.security.authentication.AnonymousUser;
|
||||
import com.wb.domainserver.security.authentication.MemberJwtContextHolder;
|
||||
import com.wb.domainserver.security.authorization.annotation.AuthPolicy;
|
||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
||||
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||
import com.wb.domainserver.util.excel.ExcelDownloadUtil;
|
||||
import io.micrometer.common.util.StringUtils;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.CookieValue;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.math.BigInteger;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 구독서비스 주문 관리 Controller
|
||||
*
|
||||
* @author jazz
|
||||
* @since 2026-02-05
|
||||
* @version 1.0
|
||||
* @see
|
||||
*
|
||||
* <pre>
|
||||
* == (Modification Information) == 개정이력
|
||||
*
|
||||
* 수정일 수정자 수정내용
|
||||
* ------- -------- ---------------------------
|
||||
* 2026-02-05 jazz 최초 생성
|
||||
*
|
||||
* </pre>
|
||||
*/
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/mngr/ordr/subsvc")
|
||||
@Slf4j
|
||||
public class SubsvcOrdrController {
|
||||
|
||||
/** WebClient 호출을 위한 wrapper */
|
||||
@Autowired
|
||||
private WnbtWebClientResponseHandler responseHandler;
|
||||
|
||||
/** WebClient 호출을 위한 wrapper */
|
||||
@Autowired
|
||||
private SendToResrc sendToResrc;
|
||||
/** 공통 메시지 처리를 위한 메시지 객체 */
|
||||
@Autowired
|
||||
private GconeMessageSource gconeMessageSource;
|
||||
|
||||
@Autowired
|
||||
private BOSubsvcOrdrService boSubsvcOrdrService;
|
||||
|
||||
@Autowired
|
||||
private BOSubsvcService boSubsvcService;
|
||||
|
||||
@Autowired
|
||||
private PaginationProperties paginationProperties;
|
||||
|
||||
|
||||
/**
|
||||
* 구독서비스 상품준비 조회 폼
|
||||
* @param subsvcVO,subsvcOrderVO,model,authSopmalCd
|
||||
* @return SubsvcOrdrListForm.jsp
|
||||
*/
|
||||
@Policy(AuthPolicy.RESTRICTED)
|
||||
@RequestMapping(value="/selectSubsvcOrdrListForm")
|
||||
public String selectSubsvcListForm(BOSubsvcVO subsvcVO, BOSubsvcOrderVO subsvcOrderVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||
subsvcVO.setSopmalCd(authSopmalCd);
|
||||
subsvcOrderVO.setSopmalCd(authSopmalCd);
|
||||
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||
if("01".equals(user.getSysDvCd())){
|
||||
subsvcVO.setSopmalCd(user.getSopmalCd());
|
||||
subsvcOrderVO.setSopmalCd(user.getSopmalCd());
|
||||
}
|
||||
|
||||
Map<String, Object> content = new HashMap<>();
|
||||
content.put("paramVO", subsvcOrderVO);
|
||||
|
||||
// 조회조건 구독서비스
|
||||
List<?> SrchSubsvcList = boSubsvcService.selectBOMngrSrchSubsvcList(subsvcVO);
|
||||
content.put("srchSubsvcList", SrchSubsvcList);
|
||||
|
||||
model.addAttribute("resultMap", content);
|
||||
return "mngr/ordr/subsvc/SubsvcOrdrListForm";
|
||||
}
|
||||
|
||||
/**
|
||||
* 구독서비스 상품준비 목록 조회 리스트
|
||||
* @param subsvcOrderVO
|
||||
* @param model
|
||||
* @return SubsvcOrdrList.jsp
|
||||
*/
|
||||
@Policy(AuthPolicy.RESTRICTED)
|
||||
@RequestMapping(value = "/selectSubsvcOrdrList")
|
||||
public String selectSubsvcList(BOSubsvcOrderVO subsvcOrderVO,ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||
subsvcOrderVO.setSopmalCd(authSopmalCd);
|
||||
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||
if("01".equals(user.getSysDvCd())){
|
||||
subsvcOrderVO.setSopmalCd(user.getSopmalCd());
|
||||
}
|
||||
|
||||
// 페이징 객체 생성 & 페이징정보 할당
|
||||
PaginationInfo paginationInfo = new PaginationInfo();
|
||||
paginationInfo.setCurrentPageNo(subsvcOrderVO.getPageIndex());
|
||||
paginationInfo.setRecordCountPerPage(subsvcOrderVO.getPageUnit());
|
||||
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||
|
||||
subsvcOrderVO.setPaginationInfo(paginationInfo);
|
||||
subsvcOrderVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||
subsvcOrderVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||
subsvcOrderVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||
if(StringUtils.isEmpty(subsvcOrderVO.getSortDv())){
|
||||
//정렬기준 초기값 셋팅
|
||||
subsvcOrderVO.setSortDv("subsvcGnrAsc");
|
||||
}
|
||||
|
||||
// 목록 조회
|
||||
List<DataMap> list = boSubsvcOrdrService.selectBOSubsvcOrderList(subsvcOrderVO);
|
||||
|
||||
Map<String, Object> content = new HashMap<>();
|
||||
content.put("paramVO", subsvcOrderVO);
|
||||
|
||||
content.put("list", list);
|
||||
content.put("paginationInfo", subsvcOrderVO.getPaginationInfo());
|
||||
|
||||
model.addAttribute("resultMap", content);
|
||||
|
||||
return "mngr/ordr/subsvc/SubsvcOrdrList";
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 구독서비스 상품준비 일괄처리
|
||||
* @param subsvcOrderVO
|
||||
* @return ResponseEntity<WnbtResponse>
|
||||
*/
|
||||
@Policy(AuthPolicy.RESTRICTED)
|
||||
@RequestMapping(value = "/updateSubsvcOrdrReady", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||
public ResponseEntity<WnbtResponse> updateSubsvcOrdrReady(BOSubsvcOrderVO subsvcOrderVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||
subsvcOrderVO.setSopmalCd(authSopmalCd);
|
||||
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||
|
||||
if("01".equals(user.getSysDvCd())){
|
||||
subsvcOrderVO.setSopmalCd(user.getSopmalCd());
|
||||
}
|
||||
/**
|
||||
* 체크대상정보 파싱
|
||||
* 형태 : 주문고유번호@주문상품고유번호@주문상품옵션고유번호@주문배송고유번호
|
||||
* */
|
||||
subsvcOrderVO.setArrOrdrInnb(new ArrayList<String>());
|
||||
subsvcOrderVO.setArrOrdrGoodsInnb(new ArrayList<String>());
|
||||
subsvcOrderVO.setArrOrdrGoodsOptnInnb(new ArrayList<String>());
|
||||
subsvcOrderVO.setArrOrdrDlvyInnb(new ArrayList<String>());
|
||||
ArrayList<String> arrCheck = (ArrayList<String>)subsvcOrderVO.getArrCheck();
|
||||
|
||||
((ArrayList<String>)subsvcOrderVO.getArrCheck()).forEach(check -> {
|
||||
String[] innb = check.split("@");
|
||||
subsvcOrderVO.getArrOrdrInnb().add(innb[0]);
|
||||
subsvcOrderVO.getArrOrdrGoodsInnb().add(innb[1]);
|
||||
subsvcOrderVO.getArrOrdrGoodsOptnInnb().add(innb[2]);
|
||||
subsvcOrderVO.getArrOrdrDlvyInnb().add(innb[3]);
|
||||
});
|
||||
|
||||
DataMap message = new DataMap();
|
||||
String result = "";
|
||||
|
||||
try{
|
||||
result = boSubsvcOrdrService.updateSubsvcOrdrReady(subsvcOrderVO);
|
||||
}catch(Exception e){
|
||||
log.error(e.getMessage());
|
||||
result = "fail";
|
||||
}
|
||||
|
||||
message.put("message", result);
|
||||
|
||||
return ResponseEntity.ok(
|
||||
WnbtResponse.builder()
|
||||
.resBody(new WnbtResponseBody(message))
|
||||
.build()
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 구독서비스 상품준비 배송내역 목록 팝업
|
||||
* @param subsvcOrderVO
|
||||
* @param model
|
||||
* @return SubsvcOrdrList.jsp
|
||||
*/
|
||||
@Policy(AuthPolicy.RESTRICTED)
|
||||
@RequestMapping(value = "/selectSubsvcOrdrDlvyListPop")
|
||||
public String selectSubsvcOrdrDlvyListPop(BOSubsvcOrderVO subsvcOrderVO,ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||
subsvcOrderVO.setSopmalCd(authSopmalCd);
|
||||
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||
if("01".equals(user.getSysDvCd())){
|
||||
subsvcOrderVO.setSopmalCd(user.getSopmalCd());
|
||||
}
|
||||
// 목록 조회
|
||||
List<DataMap> list = boSubsvcOrdrService.selectBOSubsvcOrderDlvyList(subsvcOrderVO);
|
||||
|
||||
Map<String, Object> content = new HashMap<>();
|
||||
content.put("paramVO", subsvcOrderVO);
|
||||
|
||||
content.put("list", list);
|
||||
|
||||
model.addAttribute("resultMap", content);
|
||||
|
||||
return "mngr/ordr/subsvc/SubsvcOrdrDlvyListPop";
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user