fo bo 머지작업(sopmal)
This commit is contained in:
@@ -1,14 +1,20 @@
|
|||||||
package com.wb.domainserver.domain.crm.bbs.controller;
|
package com.wb.domainserver.domain.crm.bbs.controller;
|
||||||
|
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
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.crm.cnslt.vo.CrmCnsltVO;
|
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
||||||
import com.wb.domainserver.domain.mngr.bbs.gnrlsctt.vo.GnrlscttVO;
|
import com.wb.domainserver.domain.gcone.bbs.bbs.service.BOBbsService;
|
||||||
import com.wb.domainserver.domain.mngr.bbs.rvw.vo.RvwVO;
|
import com.wb.domainserver.domain.gcone.bbs.bbs.vo.BOBbsVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.bbs.gnrlbbsctt.service.BOGnrlbbscttService;
|
||||||
|
import com.wb.domainserver.domain.gcone.bbs.gnrlbbsctt.vo.BOGnrlbbscttVO;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
@@ -16,6 +22,11 @@ import org.springframework.ui.ModelMap;
|
|||||||
import org.springframework.web.bind.annotation.CookieValue;
|
import org.springframework.web.bind.annotation.CookieValue;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Controller
|
@Controller
|
||||||
@RequestMapping("/crm/bbs")
|
@RequestMapping("/crm/bbs")
|
||||||
@@ -31,6 +42,15 @@ public class CrmBbsController {
|
|||||||
/** 공통 메시지 처리를 위한 메시지 객체 */
|
/** 공통 메시지 처리를 위한 메시지 객체 */
|
||||||
@Autowired
|
@Autowired
|
||||||
private GconeMessageSource gconeMessageSource;
|
private GconeMessageSource gconeMessageSource;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOGnrlbbscttService service;
|
||||||
|
@Autowired
|
||||||
|
private BOBbsService bbsService;
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 리뷰 목록 조회 폼
|
* 리뷰 목록 조회 폼
|
||||||
* @return String
|
* @return String
|
||||||
@@ -49,15 +69,42 @@ public class CrmBbsController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectGoodsRvwInqire")
|
@RequestMapping(value = "/selectGoodsRvwInqire")
|
||||||
public String selectGoodsRvwInqire(ModelMap model, RvwVO rvwVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectGoodsRvwInqire(ModelMap model, BOGnrlbbscttVO bbsctt, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
rvwVO.setReqUrl("crm");
|
bbsctt.setReqUrl("crm");
|
||||||
rvwVO.setSopmalCd(authSopmalCd);
|
bbsctt.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOMyRvwListInqire", rvwVO),
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
model,
|
bbsctt.setSopmalCd(user.getSopmalCd());
|
||||||
"resultMap"
|
}
|
||||||
);
|
if (!"crm".equals(bbsctt.getReqUrl())) {
|
||||||
model.addAttribute("pageUnit",rvwVO.getPageUnit());
|
bbsctt.setRegusr(user.getUserInnb());
|
||||||
|
}
|
||||||
|
// pagination
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(bbsctt.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(bbsctt.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
bbsctt.setPaginationInfo(paginationInfo);
|
||||||
|
bbsctt.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
bbsctt.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
bbsctt.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
// 게시글 목록조회
|
||||||
|
Map<String, Object> resultList = new HashMap<String, Object>();
|
||||||
|
resultList = service.selectBOMyRvwListInqire(bbsctt);
|
||||||
|
|
||||||
|
DataMap content = new DataMap();
|
||||||
|
content.put("bbscttVO", bbsctt);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", bbsctt.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOMyRvwListInqire", rvwVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("pageUnit",bbsctt.getPageUnit());
|
||||||
return "crm/bbs/GoodsRvwListR";
|
return "crm/bbs/GoodsRvwListR";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -68,16 +115,78 @@ public class CrmBbsController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectGoodsInqryInqireForm")
|
@RequestMapping(value = "/selectGoodsInqryInqireForm")
|
||||||
public String selectGoodsInqryInqireForm(CrmCnsltVO vo , GnrlscttVO bbsctt, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectGoodsInqryInqireForm(CrmCnsltVO vo , BOGnrlbbscttVO bbsctt, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
bbsctt.setReqUrl("crm");
|
bbsctt.setReqUrl("crm");
|
||||||
bbsctt.setBbsId("goods_qna");
|
bbsctt.setBbsId("goods_qna");
|
||||||
bbsctt.setBbsTyCd("05");
|
bbsctt.setBbsTyCd("05");
|
||||||
bbsctt.setSopmalCd(authSopmalCd);
|
bbsctt.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttListInqireForm", bbsctt),
|
Map<String, Object> content = new HashMap<String, Object>();
|
||||||
model,
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
"resultMap"
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
);
|
bbsctt.setSopmalCd(user.getSopmalCd());
|
||||||
|
bbsctt.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
bbsctt.setMbrInnb(user.getUserInnb());
|
||||||
|
}
|
||||||
|
if ("mpage".equals(bbsctt.getReqUrl()) || "crm".equals(bbsctt.getReqUrl())) {
|
||||||
|
if (user.getUserInnb() > 0) {
|
||||||
|
bbsctt.setRegusr(user.getUserInnb());
|
||||||
|
bbsctt.setRegusrDvCd("01");
|
||||||
|
} else {
|
||||||
|
bbsctt.setRegusr(0);
|
||||||
|
bbsctt.setRegusrDvCd("99");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
BOBbsVO bbsVO = new BOBbsVO();
|
||||||
|
// bbsVO에 쇼핑몰코드, 해당 게시판 set
|
||||||
|
bbsVO.setSopmalCd(bbsctt.getSopmalCd());
|
||||||
|
bbsVO.setBbsId(bbsctt.getBbsId());
|
||||||
|
bbsVO.setBbsTyCd(bbsctt.getBbsTyCd());
|
||||||
|
// 게시판 설정 정보 조회
|
||||||
|
DataMap bbsInfo = new DataMap();
|
||||||
|
bbsInfo = bbsService.selectBOBbsSetupInfo(bbsVO);
|
||||||
|
|
||||||
|
//사용자에서 이벤트 폼 조회시 해당 쇼핑몰 이벤트 게시판 정보 조회(이벤트,당첨자발표 게시판)
|
||||||
|
List<DataMap> evtBbsList = new ArrayList<>();
|
||||||
|
if ("sopmal".equals(bbsctt.getServerDv())) {
|
||||||
|
if ("03".equals((String) bbsInfo.get("bbsTyCd")) || "11".equals((String) bbsInfo.get("bbsTyCd"))) {
|
||||||
|
evtBbsList = bbsService.selectBOEvtBbsList(bbsVO);
|
||||||
|
content.put("evtBbsList", evtBbsList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 분류 조회
|
||||||
|
List<DataMap> itmList = new ArrayList<>();
|
||||||
|
itmList = service.selectBOBbscttItmInqire(bbsctt);
|
||||||
|
|
||||||
|
// 게시판 목록 조회 및 게시글 개수 조회(관리자 페이지)
|
||||||
|
List<DataMap> bbsListCnt = new ArrayList<>();
|
||||||
|
if (!"01".equals(user.getSysDvCd())) {
|
||||||
|
bbsListCnt = bbsService.selectBOBbsttListInqire(bbsVO);
|
||||||
|
content.put("bbsListCnt", bbsListCnt);
|
||||||
|
}
|
||||||
|
Map<String, Object> qesitmList = new HashMap<String, Object>();
|
||||||
|
Map<String, Object> rvwQesitmList = new HashMap<String, Object>();
|
||||||
|
//리뷰 목록 조회일 시 service 호출
|
||||||
|
if ("rvw".equals(bbsctt.getRvwBbscttDv())) {
|
||||||
|
//추가항목 리스트, 추가항목 항목 리스트(리뷰)
|
||||||
|
qesitmList = service.selectBOBbscttRegistPopupForm(bbsctt);
|
||||||
|
//리뷰항목 리스트, 리뷰항목 항목 리스트
|
||||||
|
rvwQesitmList = service.selectBOStarItm(bbsctt);
|
||||||
|
}
|
||||||
|
content.put("bbsInfo", bbsInfo);
|
||||||
|
content.put("itmList", itmList);
|
||||||
|
if ("rvw".equals(bbsctt.getRvwBbscttDv())) {
|
||||||
|
content.put("qesitmList", qesitmList);
|
||||||
|
content.put("rvwQesitmList", rvwQesitmList);
|
||||||
|
}
|
||||||
|
content.put("bbsctt", bbsctt);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttListInqireForm", bbsctt),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
/*left 값 세팅*/
|
/*left 값 세팅*/
|
||||||
model.addAttribute("cnsltVO",vo);
|
model.addAttribute("cnsltVO",vo);
|
||||||
return "crm/bbs/GoodsInqryListRForm";
|
return "crm/bbs/GoodsInqryListRForm";
|
||||||
@@ -90,14 +199,75 @@ public class CrmBbsController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectGoodsInqryInqire")
|
@RequestMapping(value = "/selectGoodsInqryInqire")
|
||||||
public String selectGoodsInqryInqire(GnrlscttVO bbsctt, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd){
|
public String selectGoodsInqryInqire(BOGnrlbbscttVO bbsctt, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd){
|
||||||
bbsctt.setReqUrl("crm");
|
bbsctt.setReqUrl("crm");
|
||||||
bbsctt.setSopmalCd(authSopmalCd);
|
bbsctt.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
Map<String, Object> content = new HashMap<String, Object>();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttListInqire", bbsctt),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
"resultMap"
|
bbsctt.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
bbsctt.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
bbsctt.setMbrInnb(user.getUserInnb());
|
||||||
|
}
|
||||||
|
if ("mpage".equals(bbsctt.getReqUrl()) || "crm".equals(bbsctt.getReqUrl())) {
|
||||||
|
if (user.getUserInnb() > 0) {
|
||||||
|
bbsctt.setRegusr(user.getUserInnb());
|
||||||
|
bbsctt.setRegusrDvCd("01");
|
||||||
|
} else {
|
||||||
|
bbsctt.setRegusr(0);
|
||||||
|
bbsctt.setRegusrDvCd("99");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
BOBbsVO bbsVO = new BOBbsVO();
|
||||||
|
// bbsVO에 쇼핑몰코드, 해당 게시판 set
|
||||||
|
bbsVO.setSopmalCd(bbsctt.getSopmalCd());
|
||||||
|
bbsVO.setBbsId(bbsctt.getBbsId());
|
||||||
|
bbsVO.setBbsTyCd(bbsctt.getBbsTyCd());
|
||||||
|
// 게시판 설정 정보 조회
|
||||||
|
DataMap bbsInfo = new DataMap();
|
||||||
|
bbsInfo = bbsService.selectBOBbsSetupInfo(bbsVO);
|
||||||
|
|
||||||
|
//사용자에서 이벤트 폼 조회시 해당 쇼핑몰 이벤트 게시판 정보 조회(이벤트,당첨자발표 게시판)
|
||||||
|
List<DataMap> evtBbsList = new ArrayList<>();
|
||||||
|
if ("sopmal".equals(bbsctt.getServerDv())) {
|
||||||
|
if ("03".equals((String) bbsInfo.get("bbsTyCd")) || "11".equals((String) bbsInfo.get("bbsTyCd"))) {
|
||||||
|
evtBbsList = bbsService.selectBOEvtBbsList(bbsVO);
|
||||||
|
content.put("evtBbsList", evtBbsList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 분류 조회
|
||||||
|
List<DataMap> itmList = new ArrayList<>();
|
||||||
|
itmList = service.selectBOBbscttItmInqire(bbsctt);
|
||||||
|
|
||||||
|
// 게시판 목록 조회 및 게시글 개수 조회(관리자 페이지)
|
||||||
|
List<DataMap> bbsListCnt = new ArrayList<>();
|
||||||
|
if (!"01".equals(user.getSysDvCd())) {
|
||||||
|
bbsListCnt = bbsService.selectBOBbsttListInqire(bbsVO);
|
||||||
|
content.put("bbsListCnt", bbsListCnt);
|
||||||
|
}
|
||||||
|
Map<String, Object> qesitmList = new HashMap<String, Object>();
|
||||||
|
Map<String, Object> rvwQesitmList = new HashMap<String, Object>();
|
||||||
|
//리뷰 목록 조회일 시 service 호출
|
||||||
|
if ("rvw".equals(bbsctt.getRvwBbscttDv())) {
|
||||||
|
//추가항목 리스트, 추가항목 항목 리스트(리뷰)
|
||||||
|
qesitmList = service.selectBOBbscttRegistPopupForm(bbsctt);
|
||||||
|
//리뷰항목 리스트, 리뷰항목 항목 리스트
|
||||||
|
rvwQesitmList = service.selectBOStarItm(bbsctt);
|
||||||
|
}
|
||||||
|
content.put("bbsInfo", bbsInfo);
|
||||||
|
content.put("itmList", itmList);
|
||||||
|
if ("rvw".equals(bbsctt.getRvwBbscttDv())) {
|
||||||
|
content.put("qesitmList", qesitmList);
|
||||||
|
content.put("rvwQesitmList", rvwQesitmList);
|
||||||
|
}
|
||||||
|
content.put("bbsctt", bbsctt);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/gnrlbbsctt/selectBOBbscttListInqire", bbsctt),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
model.addAttribute("pageUnit",bbsctt.getPageUnit());
|
model.addAttribute("pageUnit",bbsctt.getPageUnit());
|
||||||
return "crm/bbs/GoodsInqryListR";
|
return "crm/bbs/GoodsInqryListR";
|
||||||
|
|||||||
@@ -1,17 +1,30 @@
|
|||||||
package com.wb.domainserver.domain.crm.cnslt.controller;
|
package com.wb.domainserver.domain.crm.cnslt.controller;
|
||||||
|
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
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.sys.comncd.service.BOMaComncdService;
|
||||||
|
import com.wb.domainserver.domain.admin.sys.comncd.vo.BOMaComncdVO;
|
||||||
import com.wb.domainserver.domain.auth.controller.AuthController;
|
import com.wb.domainserver.domain.auth.controller.AuthController;
|
||||||
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.bbs.cnslt.service.BOCnsltService;
|
||||||
|
import com.wb.domainserver.domain.gcone.bbs.cnslt.vo.BOCnsltVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.service.BOMbrService;
|
||||||
import com.wb.domainserver.exception.WnbtRestException;
|
import com.wb.domainserver.exception.WnbtRestException;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.*;
|
import com.wb.domainserver.util.communicate.*;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import com.wb.domainserver.util.string.StringUtil;
|
import com.wb.domainserver.util.string.StringUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
@@ -21,6 +34,7 @@ import org.springframework.web.bind.annotation.CookieValue;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@@ -57,8 +71,16 @@ public class CrmCnsltController {
|
|||||||
private GconeMessageSource gconeMessageSource;
|
private GconeMessageSource gconeMessageSource;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private AuthController authController;
|
private BOCnsltService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaComncdService bOMaComncdService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService boCommonService;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -67,14 +89,25 @@ public class CrmCnsltController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCnsltDtlsForm")
|
@RequestMapping(value = "/selectCnsltDtlsForm")
|
||||||
public String selectCnsltDtlsForm(CrmCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCnsltDtlsForm(BOCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// 공통코드 호출
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCstmrCnsltUnityBbscttListInqireForm", cnsltVO),
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
model,
|
bOMaComncdVO.setGroupCd("COUNSEL_PROCS_STTUS"); // 상담처리상태
|
||||||
"resultMap"
|
List<?> procsSttusCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
);
|
|
||||||
|
// 공통코드와 리스트를 넣어줌
|
||||||
|
content.put("paramVO", cnsltVO);
|
||||||
|
content.put("procsSttusCdList", procsSttusCdList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCstmrCnsltUnityBbscttListInqireForm", cnsltVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("cnsltVO", cnsltVO);
|
model.addAttribute("cnsltVO", cnsltVO);
|
||||||
|
|
||||||
return "crm/cnslt/CnsltDtlsRForm";
|
return "crm/cnslt/CnsltDtlsRForm";
|
||||||
@@ -87,15 +120,47 @@ public class CrmCnsltController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCnsltDtlsInqire")
|
@RequestMapping(value = "/selectCnsltDtlsInqire")
|
||||||
public String selectCnsltDtlsInqire(CrmCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCnsltDtlsInqire(BOCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
cnsltVO.setCrmAt("Y");
|
cnsltVO.setCrmAt("Y");
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
cnsltVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// 페이징 객체 생성 & 페이징정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCstmrCnsltUnityBbscttListInqire", cnsltVO),
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
model,
|
paginationInfo.setCurrentPageNo(cnsltVO.getPageIndex());
|
||||||
"resultMap"
|
paginationInfo.setRecordCountPerPage(cnsltVO.getPageUnit());
|
||||||
);
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
cnsltVO.setPaginationInfo(paginationInfo);
|
||||||
|
|
||||||
|
cnsltVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
cnsltVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
cnsltVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("COUNSEL_PROCS_STTUS"); // 상담처리상태
|
||||||
|
List<?> procsSttusCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
cnsltVO.setSecretKey(boCommonService.selectSecretkey());
|
||||||
|
List<DataMap> resultList = service.selectBOCstmrCnsltUnityBbscttListInqire(cnsltVO);
|
||||||
|
|
||||||
|
// 맵에 페이징 정보와 리스트를 넣어줌
|
||||||
|
content.put("paramVO", cnsltVO);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", cnsltVO.getPaginationInfo());
|
||||||
|
content.put("procsSttusCdList", procsSttusCdList); // 상담처리상태
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCstmrCnsltUnityBbscttListInqire", cnsltVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/cnslt/CnsltDtlsR";
|
return "crm/cnslt/CnsltDtlsR";
|
||||||
}
|
}
|
||||||
@@ -108,13 +173,39 @@ public class CrmCnsltController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCnsltRegistPopupForm")
|
@RequestMapping(value = "/selectCnsltRegistPopupForm")
|
||||||
public String selectCnsltRegistPopupForm(CrmCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCnsltRegistPopupForm(BOCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCnsltRegistPopupForm", cnsltVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
cnsltVO.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
cnsltVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
cnsltVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
cnsltVO.setMbrNm(user.getMbrNm()); // 상담자명
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("COUNSEL_PROCS_STTUS"); // 상담처리상태
|
||||||
|
List<?> procsSttusCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("TELNB_DV"); // 인콜/아웃콜
|
||||||
|
List<?> telnbDvCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("LRGE_CL"); // 대분류
|
||||||
|
List<?> lrgeClCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("cnsltVO", cnsltVO);
|
||||||
|
content.put("procsSttusCdList", procsSttusCdList);
|
||||||
|
content.put("telnbDvCdList", telnbDvCdList);
|
||||||
|
content.put("lrgeClCdList", lrgeClCdList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCnsltRegistPopupForm", cnsltVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
model.addAttribute("cnsltVO", cnsltVO);
|
model.addAttribute("cnsltVO", cnsltVO);
|
||||||
|
|
||||||
@@ -127,13 +218,60 @@ public class CrmCnsltController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCnsltRegistPopupFormCmmnCdArray")
|
@RequestMapping(value = "/selectCnsltRegistPopupFormCmmnCdArray", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectCnsltRegistPopupFormCmmnCdArray(CrmCnsltVO cnsltVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> selectCnsltRegistPopupFormCmmnCdArray(BOCnsltVO cnsltVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
return responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCnsltRegistPopupFormCmmnCdArray", cnsltVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
cnsltVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
cnsltVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
cnsltVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("LRGE_CL"); // 대분류
|
||||||
|
List<?> lrgeClCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_1"); // 중분류1
|
||||||
|
List<?> middlClCdList1 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_2"); // 중분류2
|
||||||
|
List<?> middlClCdList2 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_3"); // 중분류3
|
||||||
|
List<?> middlClCdList3 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_4"); // 중분류4
|
||||||
|
List<?> middlClCdList4 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_5"); // 중분류5
|
||||||
|
List<?> middlClCdList5 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_6"); // 중분류6
|
||||||
|
List<?> middlClCdList6 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_7"); // 중분류7
|
||||||
|
List<?> middlClCdList7 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("MIDDL_CL_8"); // 중분류8
|
||||||
|
List<?> middlClCdList8 = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("cnsltVO", cnsltVO);
|
||||||
|
content.put("lrgeClCdList", lrgeClCdList);
|
||||||
|
content.put("middlClCdList01", middlClCdList1);
|
||||||
|
content.put("middlClCdList02", middlClCdList2);
|
||||||
|
content.put("middlClCdList03", middlClCdList3);
|
||||||
|
content.put("middlClCdList04", middlClCdList4);
|
||||||
|
content.put("middlClCdList05", middlClCdList5);
|
||||||
|
content.put("middlClCdList06", middlClCdList6);
|
||||||
|
content.put("middlClCdList07", middlClCdList7);
|
||||||
|
content.put("middlClCdList08", middlClCdList8);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCnsltRegistPopupFormCmmnCdArray", cnsltVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -144,8 +282,8 @@ public class CrmCnsltController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/insertCnsltRegist")
|
@RequestMapping(value = "/insertCnsltRegist", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> insertCnsltRegist(@Validated CrmCnsltVO cnsltVO,BindingResult bindingResult, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> insertCnsltRegist(@Validated BOCnsltVO cnsltVO,BindingResult bindingResult, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
List<Map<String, String>> errorList = new ArrayList<>();
|
List<Map<String, String>> errorList = new ArrayList<>();
|
||||||
if(bindingResult.hasErrors()) {
|
if(bindingResult.hasErrors()) {
|
||||||
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
||||||
@@ -165,10 +303,32 @@ public class CrmCnsltController {
|
|||||||
if("".equals(cnsltVO.getGoodsInqryBbscttNb())){cnsltVO.setGoodsInqryBbscttNb(null);}
|
if("".equals(cnsltVO.getGoodsInqryBbscttNb())){cnsltVO.setGoodsInqryBbscttNb(null);}
|
||||||
if("".equals(cnsltVO.getGoodsRvwBbscttNb())){cnsltVO.setGoodsRvwBbscttNb(null);}
|
if("".equals(cnsltVO.getGoodsRvwBbscttNb())){cnsltVO.setGoodsRvwBbscttNb(null);}
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
return responseHandler.handleResponse(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/insertBOCnsltRegist", cnsltVO),
|
// 작성자 정보 할당
|
||||||
ReplyFromResrc::getReply
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
cnsltVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
} // 쇼핑몰코드
|
||||||
|
cnsltVO.setRegusr(user.getUserInnb()); //등록자
|
||||||
|
cnsltVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
cnsltVO.setMngrInnb(String.valueOf(user.getUserInnb()));//관리자고유번호
|
||||||
|
|
||||||
|
String secretKey = boCommonService.selectSecretkey();
|
||||||
|
cnsltVO.setSecretKey(secretKey);
|
||||||
|
|
||||||
|
// 상담 등록 로직
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = service.insertBOCnsltRegist(cnsltVO);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/insertBOCnsltRegist", cnsltVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -178,13 +338,38 @@ public class CrmCnsltController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCnsltDtlUpdtInqirePopup")
|
@RequestMapping(value = "/selectCnsltDtlUpdtInqirePopup")
|
||||||
public String selectCnsltDtlUpdtInqirePopup(CrmCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCnsltDtlUpdtInqirePopup(BOCnsltVO cnsltVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCnsltDtlUpdtInqirePopup", cnsltVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
cnsltVO.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
} // 쇼핑몰코드
|
||||||
|
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("COUNSEL_PROCS_STTUS"); // 상담처리상태
|
||||||
|
List<?> procsSttusCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("TELNB_DV"); // 인콜/아웃콜
|
||||||
|
List<?> telnbDvCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
//시크릿키 set
|
||||||
|
cnsltVO.setSecretKey(boCommonService.selectSecretkey());
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOCnsltDtlUpdtInqirePopup(cnsltVO);
|
||||||
|
|
||||||
|
content.put("cnsltVO", result);
|
||||||
|
content.put("procsSttusCdList", procsSttusCdList);
|
||||||
|
content.put("telnbDvCdList", telnbDvCdList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/selectBOCnsltDtlUpdtInqirePopup", cnsltVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/cnslt/CnsltDtlUpdtPopupU";
|
return "crm/cnslt/CnsltDtlUpdtPopupU";
|
||||||
}
|
}
|
||||||
@@ -195,8 +380,8 @@ public class CrmCnsltController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/updateCnsltUpdt")
|
@RequestMapping(value = "/updateCnsltUpdt", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateCstmrCnsltUpdt(@Validated CrmCnsltVO cnsltVO, BindingResult bindingResult, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> updateCstmrCnsltUpdt(@Validated BOCnsltVO cnsltVO, BindingResult bindingResult, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
log.debug("cnsltVO is {}", cnsltVO);
|
log.debug("cnsltVO is {}", cnsltVO);
|
||||||
// 정합성 검사
|
// 정합성 검사
|
||||||
if(bindingResult.hasErrors()) {
|
if(bindingResult.hasErrors()) {
|
||||||
@@ -226,10 +411,25 @@ public class CrmCnsltController {
|
|||||||
if("".equals(cnsltVO.getGoodsRvwBbscttNb())){cnsltVO.setGoodsRvwBbscttNb(null);}
|
if("".equals(cnsltVO.getGoodsRvwBbscttNb())){cnsltVO.setGoodsRvwBbscttNb(null);}
|
||||||
|
|
||||||
cnsltVO.setSopmalCd(authSopmalCd);
|
cnsltVO.setSopmalCd(authSopmalCd);
|
||||||
return responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/updateBOCnsltUpdt", cnsltVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
cnsltVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
} // 쇼핑몰코드
|
||||||
|
cnsltVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = service.updateBOCnsltUpdt(cnsltVO);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/cnslt/updateBOCnsltUpdt", cnsltVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,19 +1,26 @@
|
|||||||
package com.wb.domainserver.domain.crm.coupon.controller;
|
package com.wb.domainserver.domain.crm.coupon.controller;
|
||||||
|
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
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.crm.cnslt.vo.CrmCnsltVO;
|
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
||||||
import com.wb.domainserver.domain.crm.coupon.vo.CrmCouponVO;
|
import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
||||||
|
import com.wb.domainserver.domain.gcone.promtn.coupon.service.BOCouponService;
|
||||||
|
import com.wb.domainserver.domain.gcone.promtn.coupon.vo.BODwldCouponVO;
|
||||||
import com.wb.domainserver.exception.WnbtRestException;
|
import com.wb.domainserver.exception.WnbtRestException;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
|
||||||
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
@@ -23,6 +30,10 @@ import org.springframework.web.bind.annotation.CookieValue;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* CRM 쿠폰
|
* CRM 쿠폰
|
||||||
@@ -55,6 +66,14 @@ public class CrmCouponController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private GconeMessageSource gconeMessageSource;
|
private GconeMessageSource gconeMessageSource;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCouponService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService commonService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 쿠폰내역 목록 폼 이동
|
* 쿠폰내역 목록 폼 이동
|
||||||
@@ -62,14 +81,33 @@ public class CrmCouponController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectHoldCouponDtlsForm")
|
@RequestMapping(value = "/selectHoldCouponDtlsForm")
|
||||||
public String selectHoldCouponDtlsForm(CrmCnsltVO vo, CrmCouponVO couponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectHoldCouponDtlsForm(CrmCnsltVO vo, BODwldCouponVO dwldCouponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
couponVO.setSopmalCd(authSopmalCd);
|
dwldCouponVO.setSopmalCd(authSopmalCd);
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
dwldCouponVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰 코드
|
||||||
|
dwldCouponVO.setMbrDvCd(user.getMbrDvCd()); // 회원 구분 코드
|
||||||
|
dwldCouponVO.setMbrInnb(Integer.valueOf(user.getUserInnb())); // 회원 고유번호
|
||||||
|
}
|
||||||
|
dwldCouponVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
dwldCouponVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBOHoldCouponDtlsForm", couponVO),
|
log.debug("couponPkSndngVO : {}", dwldCouponVO);
|
||||||
model,
|
|
||||||
"resultMap"
|
// Map객체에 필요 정보 할당
|
||||||
);
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
|
content = service.selectBOMyCouponListCnt(dwldCouponVO);
|
||||||
|
content.put("paramVO", dwldCouponVO);
|
||||||
|
|
||||||
|
model.addAttribute("", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBOHoldCouponDtlsForm", couponVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("cnsltVO",vo);
|
model.addAttribute("cnsltVO",vo);
|
||||||
return "crm/coupon/HoldCouponDtlsRForm";
|
return "crm/coupon/HoldCouponDtlsRForm";
|
||||||
}
|
}
|
||||||
@@ -81,14 +119,49 @@ public class CrmCouponController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectHoldCouponDtlsInqire")
|
@RequestMapping(value = "/selectHoldCouponDtlsInqire")
|
||||||
public String selectHoldCouponDtlsInqire(CrmCouponVO couponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectHoldCouponDtlsInqire(BODwldCouponVO dwldCouponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
couponVO.setSopmalCd(authSopmalCd);
|
dwldCouponVO.setSopmalCd(authSopmalCd);
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
dwldCouponVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰 코드
|
||||||
|
dwldCouponVO.setMbrDvCd(user.getMbrDvCd()); // 회원 구분 코드
|
||||||
|
dwldCouponVO.setMbrInnb(Integer.valueOf(user.getUserInnb())); // 회원 고유번호
|
||||||
|
} else {
|
||||||
|
dwldCouponVO.setServerDv("admin");
|
||||||
|
}
|
||||||
|
dwldCouponVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
dwldCouponVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
log.debug("couponPkSndngVO : {}", dwldCouponVO);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBOCouponUsePosblDtlsInqire", couponVO),
|
|
||||||
model,
|
// 페이징 객체 생성 & 페이징정보 할당
|
||||||
"resultMap"
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
);
|
paginationInfo.setCurrentPageNo(dwldCouponVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(dwldCouponVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
dwldCouponVO.setPaginationInfo(paginationInfo);
|
||||||
|
dwldCouponVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
dwldCouponVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
dwldCouponVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
// 목록 조회
|
||||||
|
List<DataMap> resultList = null;
|
||||||
|
resultList = service.selectBOCouponUsePosblDtlsInqire(dwldCouponVO);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paramVO", dwldCouponVO);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", dwldCouponVO.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBOCouponUsePosblDtlsInqire", couponVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/coupon/HoldCouponDtlsR";
|
return "crm/coupon/HoldCouponDtlsR";
|
||||||
}
|
}
|
||||||
@@ -100,13 +173,24 @@ public class CrmCouponController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectHoldCouponDtlPopupForm")
|
@RequestMapping(value = "/selectHoldCouponDtlPopupForm")
|
||||||
public String selectHoldCouponDtlPopupForm(CrmCouponVO couponVO, ModelMap model) {
|
public String selectHoldCouponDtlPopupForm(BODwldCouponVO dwldCouponVO, ModelMap model) {
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
Map<String, Object> content = new HashMap<>();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBOCouponInfoInqirePopup", couponVO),
|
|
||||||
model,
|
log.debug("vo is {}", dwldCouponVO);
|
||||||
"resultMap"
|
|
||||||
);
|
DataMap result = service.selectBOCouponInfoInqirePopup(dwldCouponVO);
|
||||||
|
log.debug("vo is {}", result);
|
||||||
|
content.put("dwldCouponVO", result); // 발송정보
|
||||||
|
|
||||||
|
model.addAttribute("", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBOCouponInfoInqirePopup", couponVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/coupon/HoldCouponDtlPopupR";
|
return "crm/coupon/HoldCouponDtlPopupR";
|
||||||
}
|
}
|
||||||
@@ -117,18 +201,37 @@ public class CrmCouponController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/updateCouponPdUpdt", method = RequestMethod.POST)
|
@RequestMapping(value = "/updateCouponPdUpdt", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateCouponPdUpdt(@Validated CrmCouponVO couponVO, BindingResult bindingResult) {
|
public ResponseEntity<WnbtResponse> updateCouponPdUpdt(@Validated BODwldCouponVO dwldCouponVO, BindingResult bindingResult) {
|
||||||
log.debug("couponVO info inqire {}", couponVO);
|
log.debug("couponVO info inqire {}", dwldCouponVO);
|
||||||
// 정합성 검사
|
// 정합성 검사
|
||||||
if (bindingResult.hasErrors()) {
|
if (bindingResult.hasErrors()) {
|
||||||
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
||||||
}
|
}
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/updateBOCouponValidPdUpdt", couponVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
dwldCouponVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰 코드
|
||||||
|
}
|
||||||
|
dwldCouponVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
dwldCouponVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
|
//
|
||||||
|
log.debug("vo 확인 : {}", dwldCouponVO);
|
||||||
|
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = service.updateBOCouponValidPdUpdt(dwldCouponVO);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/updateBOCouponValidPdUpdt", couponVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -138,14 +241,48 @@ public class CrmCouponController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectDwldPosblCouponDtlsInqire")
|
@RequestMapping(value = "/selectDwldPosblCouponDtlsInqire")
|
||||||
public String selectDwldPosblCouponDtlsInqire(CrmCouponVO couponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectDwldPosblCouponDtlsInqire(BODwldCouponVO dwldCouponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
couponVO.setSopmalCd(authSopmalCd);
|
dwldCouponVO.setSopmalCd(authSopmalCd);
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
dwldCouponVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰 코드
|
||||||
|
dwldCouponVO.setMbrDvCd(user.getMbrDvCd()); // 회원 구분 코드
|
||||||
|
dwldCouponVO.setMbrInnb(Integer.valueOf(user.getUserInnb())); // 회원 고유번호
|
||||||
|
}
|
||||||
|
dwldCouponVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
dwldCouponVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBODwldCouponDtlsInqire", couponVO),
|
log.debug("couponPkSndngVO : {}", dwldCouponVO);
|
||||||
model,
|
|
||||||
"resultMapDwld"
|
// 페이징 객체 생성 & 페이징정보 할당
|
||||||
);
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(dwldCouponVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(dwldCouponVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
dwldCouponVO.setPaginationInfo(paginationInfo);
|
||||||
|
dwldCouponVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
dwldCouponVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
dwldCouponVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
// 목록 조회
|
||||||
|
List<DataMap> resultList = null;
|
||||||
|
resultList = service.selectBODwldCouponDtlsInqire(dwldCouponVO);
|
||||||
|
log.debug(" 쿠폰 목록 확인 : {}", resultList);
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paramVO", dwldCouponVO);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", dwldCouponVO.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/selectBODwldCouponDtlsInqire", couponVO),
|
||||||
|
// model,
|
||||||
|
// "resultMapDwld"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/coupon/DwldPosblCouponDtlsR";
|
return "crm/coupon/DwldPosblCouponDtlsR";
|
||||||
}
|
}
|
||||||
@@ -156,14 +293,43 @@ public class CrmCouponController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/insertCrmDwldCouponAllRegist")
|
@RequestMapping(value = "/insertCrmDwldCouponAllRegist", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> insertCrmDwldCouponAllRegist(CrmCouponVO couponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> insertCrmDwldCouponAllRegist(BODwldCouponVO dwldCouponVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
couponVO.setSopmalCd(authSopmalCd);
|
dwldCouponVO.setSopmalCd(authSopmalCd);
|
||||||
log.debug("CRM 쿠폰 다운로드 : {}", couponVO);
|
log.debug("CRM 쿠폰 다운로드 : {}", dwldCouponVO);
|
||||||
return responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/insertBODwldCouponAllRegist", couponVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
dwldCouponVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰 코드
|
||||||
|
dwldCouponVO.setMbrInnb(user.getUserInnb()); // 회원 고유번호
|
||||||
|
dwldCouponVO.setMbrDvCd(user.getMbrDvCd()); // 회원 구분 코드
|
||||||
|
dwldCouponVO.setMbrNm(user.getMbrNm()); // 회원 명
|
||||||
|
dwldCouponVO.setMbtlnb(user.getMbtlnb()); //전화번호
|
||||||
|
} else {
|
||||||
|
dwldCouponVO.setMbrInnb(dwldCouponVO.getMbrInnb()); // 회원 고유번호
|
||||||
|
dwldCouponVO.setMbrDvCd(dwldCouponVO.getMbrDvCd()); // 회원 구분 코드
|
||||||
|
dwldCouponVO.setMbrNm(dwldCouponVO.getMbrNm()); // 회원 명
|
||||||
|
dwldCouponVO.setMbtlnb(dwldCouponVO.getMbtlnb()); //전화번호
|
||||||
|
}
|
||||||
|
dwldCouponVO.setRegusr(user.getUserInnb()); // 등록자
|
||||||
|
dwldCouponVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
dwldCouponVO.setSecretKey(commonService.selectSecretkey());
|
||||||
|
|
||||||
|
log.debug("쿠폰 다운로드 쿠폰 값 확인 : {}", dwldCouponVO);
|
||||||
|
|
||||||
|
// service 호출
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = service.insertBODwldCouponAllRegist(dwldCouponVO);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/promtn/coupon/insertBODwldCouponAllRegist", couponVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,20 +1,27 @@
|
|||||||
package com.wb.domainserver.domain.crm.dlvylc.controller;
|
package com.wb.domainserver.domain.crm.dlvylc.controller;
|
||||||
|
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
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.crm.cnslt.vo.CrmCnsltVO;
|
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
||||||
import com.wb.domainserver.domain.crm.dlvylc.vo.CrmDlvylcVO;
|
import com.wb.domainserver.domain.crm.dlvylc.vo.CrmDlvylcVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.service.BOOrdrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOCrmDlvylcVO;
|
||||||
import com.wb.domainserver.exception.WnbtRestException;
|
import com.wb.domainserver.exception.WnbtRestException;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
|
||||||
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import com.wb.domainserver.util.string.StringUtil;
|
import com.wb.domainserver.util.string.StringUtil;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
@@ -24,6 +31,10 @@ import org.springframework.web.bind.annotation.GetMapping;
|
|||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 배송지 관리 Controller
|
* CRM 배송지 관리 Controller
|
||||||
*
|
*
|
||||||
@@ -55,9 +66,16 @@ public class CrmDlvylcController {
|
|||||||
/** 공통 메시지 처리를 위한 메시지 객체 */
|
/** 공통 메시지 처리를 위한 메시지 객체 */
|
||||||
@Autowired
|
@Autowired
|
||||||
private GconeMessageSource gconeMessageSource;
|
private GconeMessageSource gconeMessageSource;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOOrdrService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 배송지 관리 목록 조회 이동
|
* 배송지 관리 목록 조회 이동
|
||||||
* @param crmDlvylcVO
|
* @param vo
|
||||||
* @param model
|
* @param model
|
||||||
* @return MbrDlvylcListInqireR.jsp
|
* @return MbrDlvylcListInqireR.jsp
|
||||||
*/
|
*/
|
||||||
@@ -75,7 +93,32 @@ public class CrmDlvylcController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping("/selectRpuseDlvylcListInqire")
|
@RequestMapping("/selectRpuseDlvylcListInqire")
|
||||||
public String selectRpuseDlvylcListInqire(CrmDlvylcVO crmDlvylcVO,ModelMap model) {
|
public String selectRpuseDlvylcListInqire(BOCrmDlvylcVO crmDlvylcVO,ModelMap model) {
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
crmDlvylcVO.setMbrInnb(user.getUserInnb());
|
||||||
|
crmDlvylcVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
}
|
||||||
|
|
||||||
|
//페이징 정보 set
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(crmDlvylcVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(crmDlvylcVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
crmDlvylcVO.setPaginationInfo(paginationInfo);
|
||||||
|
crmDlvylcVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
crmDlvylcVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
crmDlvylcVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
/*목록 조회*/
|
||||||
|
List<DataMap> resultList = service.selectBOMbrDlvylcListInqire(crmDlvylcVO);
|
||||||
|
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paramVO", crmDlvylcVO);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", crmDlvylcVO.getPaginationInfo());
|
||||||
|
|
||||||
log.debug("배송지 관리 : {}", crmDlvylcVO);
|
log.debug("배송지 관리 : {}", crmDlvylcVO);
|
||||||
String jspPath = "";
|
String jspPath = "";
|
||||||
//popUp or page 호출인지에 따라 페이지유닛 및 경로 분기
|
//popUp or page 호출인지에 따라 페이지유닛 및 경로 분기
|
||||||
@@ -85,12 +128,13 @@ public class CrmDlvylcController {
|
|||||||
} else {
|
} else {
|
||||||
jspPath = "crm/dlvylc/RpuseDlvylcListInqireR";
|
jspPath = "crm/dlvylc/RpuseDlvylcListInqireR";
|
||||||
}
|
}
|
||||||
//BO에서 API 호출(자주쓰는 배송지 조회)
|
|
||||||
responseHandler.handleResponse(
|
model.addAttribute("resultMap", content);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOMbrDlvylcListInqire", crmDlvylcVO),
|
// responseHandler.handleResponse(
|
||||||
model,
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOMbrDlvylcListInqire", crmDlvylcVO),
|
||||||
"resultMap"
|
// model,
|
||||||
);
|
// "resultMap"
|
||||||
|
// );
|
||||||
//BO에서 API 호출(자주쓰는 배송지 조회)
|
//BO에서 API 호출(자주쓰는 배송지 조회)
|
||||||
//기존 페이지 유지
|
//기존 페이지 유지
|
||||||
model.addAttribute("pageIndex", crmDlvylcVO.getPageIndex());
|
model.addAttribute("pageIndex", crmDlvylcVO.getPageIndex());
|
||||||
@@ -109,37 +153,67 @@ public class CrmDlvylcController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 최근 배송지 조회
|
* 최근 배송지 조회
|
||||||
* @param CrmOrdrVO
|
* @param vo
|
||||||
* @param ModelMap
|
* @param model
|
||||||
* @return RecentDlvylcListInqireR.jsp
|
* @return RecentDlvylcListInqireR.jsp
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectRecentDlvylcListInqire")
|
@RequestMapping(value = "/selectRecentDlvylcListInqire")
|
||||||
public String selectRecentDlvylcListInqire(CrmDlvylcVO crmDlvylcVO, ModelMap model) {
|
public String selectRecentDlvylcListInqire(BOCrmDlvylcVO vo, ModelMap model) {
|
||||||
//BO에서 API 호출(최근 배송지 조회)
|
//페이징 정보 set
|
||||||
responseHandler.handleResponse(
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBORecentDlvylcListInqire", crmDlvylcVO),
|
paginationInfo.setCurrentPageNo(vo.getPageIndex());
|
||||||
model,
|
paginationInfo.setRecordCountPerPage(vo.getPageUnit());
|
||||||
"resultMap"
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
);
|
|
||||||
model.addAttribute("ordering",crmDlvylcVO.getOrdering());
|
vo.setPaginationInfo(paginationInfo);
|
||||||
|
vo.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
vo.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
vo.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
List<DataMap> resultList = service.selectBORecentDlvylcListInqire(vo);
|
||||||
|
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paramVO", vo);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", vo.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBORecentDlvylcListInqire", crmDlvylcVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("ordering",vo.getOrdering());
|
||||||
return "crm/dlvylc/RecentDlvylcListInqireR";
|
return "crm/dlvylc/RecentDlvylcListInqireR";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 배송지 수정 상세 조회
|
* 배송지 수정 상세 조회
|
||||||
* @param CrmOrdrVO
|
* @param crmDlvylcVO
|
||||||
* @return String
|
* @return String
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@GetMapping(value="/selectDlvylcUpdtPopupForm")
|
@GetMapping(value="/selectDlvylcUpdtPopupForm")
|
||||||
public String selectDlvylcUpdtPopupForm(ModelMap model, CrmDlvylcVO crmDlvylcVO){
|
public String selectDlvylcUpdtPopupForm(ModelMap model, BOCrmDlvylcVO crmDlvylcVO){
|
||||||
//BO API 호출하여 상세 조회
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
responseHandler.handleResponse(
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBODlvylcUpdtPopupForm", crmDlvylcVO),
|
crmDlvylcVO.setMbrInnb(user.getUserInnb());
|
||||||
model,
|
crmDlvylcVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
"dtlDlvylc"
|
}
|
||||||
);
|
//회원 자주쓰는 배송지 상세 조회
|
||||||
|
BOCrmDlvylcVO resultVO = service.selectBODlvylcUpdtPopupForm(crmDlvylcVO);
|
||||||
|
|
||||||
|
//상세 조회 정보 resultVO에 put
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("resultVO", resultVO);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBODlvylcUpdtPopupForm", crmDlvylcVO),
|
||||||
|
// model,
|
||||||
|
// "dtlDlvylc"
|
||||||
|
// );
|
||||||
//모델 객체에 상세 조회 및 페이지 인덱스,회원고유번호 담음
|
//모델 객체에 상세 조회 및 페이지 인덱스,회원고유번호 담음
|
||||||
model.addAttribute("pageIndex",crmDlvylcVO.getPageIndex());
|
model.addAttribute("pageIndex",crmDlvylcVO.getPageIndex());
|
||||||
model.addAttribute("mbrInnb",crmDlvylcVO.getMbrInnb());
|
model.addAttribute("mbrInnb",crmDlvylcVO.getMbrInnb());
|
||||||
@@ -152,9 +226,8 @@ public class CrmDlvylcController {
|
|||||||
* @return ResponseEntity<WnbtResponse>
|
* @return ResponseEntity<WnbtResponse>
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@PostMapping(value="/updateDlvylcUpdt")
|
@PostMapping(value="/updateDlvylcUpdt", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateDlvylcUpdt(@Validated CrmDlvylcVO crmDlvylcVO,
|
public ResponseEntity<WnbtResponse> updateDlvylcUpdt(@Validated BOCrmDlvylcVO crmDlvylcVO, BindingResult bindingResult){
|
||||||
BindingResult bindingResult){
|
|
||||||
//입력값 정합성 점검결과 처리
|
//입력값 정합성 점검결과 처리
|
||||||
if(bindingResult.hasErrors()) {
|
if(bindingResult.hasErrors()) {
|
||||||
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
||||||
@@ -181,12 +254,32 @@ public class CrmDlvylcController {
|
|||||||
if (StringUtil.isEmpty(crmDlvylcVO.getDtlAdres())) {
|
if (StringUtil.isEmpty(crmDlvylcVO.getDtlAdres())) {
|
||||||
crmDlvylcVO.setDtlAdres(".");
|
crmDlvylcVO.setDtlAdres(".");
|
||||||
}
|
}
|
||||||
|
//수정자 set
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
crmDlvylcVO.setMbrInnb(user.getUserInnb());
|
||||||
|
crmDlvylcVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
}
|
||||||
|
crmDlvylcVO.setUpdusr(user.getUserInnb());
|
||||||
|
//기본배송지
|
||||||
|
String dftDlvylcAt = crmDlvylcVO.getDftDlvylcAt();
|
||||||
|
// 기본 배송지 체크 시('Y') 다른 배송지 N으로 수정
|
||||||
|
if (dftDlvylcAt.equals("Y")) {
|
||||||
|
service.updateBODftDlvylcAt(crmDlvylcVO);
|
||||||
|
}
|
||||||
|
|
||||||
//BO API 호출 => 배송지 수정
|
//자주쓰는 배송지 수정
|
||||||
return responseHandler.handleResponse(
|
Map<String, String> message = service.updateBODlvylc(crmDlvylcVO);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/updateBODlvylcUpdt", crmDlvylcVO),
|
|
||||||
ReplyFromResrc::getReply
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/updateBODlvylcUpdt", crmDlvylcVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 배송지 등록 팝업 이동
|
* 배송지 등록 팝업 이동
|
||||||
@@ -201,14 +294,13 @@ public class CrmDlvylcController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 배송지 등록
|
* 배송지 등록
|
||||||
* @param CrmOrdrVO
|
* @param crmDlvylcVO
|
||||||
* @param bindingResult
|
* @param bindingResult
|
||||||
* @return ResponseEntity<WnbtResponse>
|
* @return ResponseEntity<WnbtResponse>
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@PostMapping(value="/insertDlvylcRegist")
|
@PostMapping(value="/insertDlvylcRegist", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> insertDlvylcRegist(@Validated CrmDlvylcVO crmDlvylcVO,
|
public ResponseEntity<WnbtResponse> insertDlvylcRegist(@Validated BOCrmDlvylcVO crmDlvylcVO, BindingResult bindingResult){
|
||||||
BindingResult bindingResult){
|
|
||||||
//입력값 정합성 점검결과 처리
|
//입력값 정합성 점검결과 처리
|
||||||
if(bindingResult.hasErrors()) {
|
if(bindingResult.hasErrors()) {
|
||||||
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
||||||
@@ -233,27 +325,61 @@ public class CrmDlvylcController {
|
|||||||
if(StringUtil.isEmpty(crmDlvylcVO.getDtlAdres())){
|
if(StringUtil.isEmpty(crmDlvylcVO.getDtlAdres())){
|
||||||
crmDlvylcVO.setDtlAdres(".");
|
crmDlvylcVO.setDtlAdres(".");
|
||||||
}
|
}
|
||||||
|
//등록자 set
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
crmDlvylcVO.setRegusr(user.getUserInnb());
|
||||||
|
crmDlvylcVO.setUpdusr(user.getUserInnb());
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
crmDlvylcVO.setMbrInnb(user.getUserInnb());
|
||||||
|
crmDlvylcVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
}
|
||||||
|
//기본 배송지 체크 여부 확인
|
||||||
|
String dftDlvylcAt = crmDlvylcVO.getDftDlvylcAt();
|
||||||
|
//등록시 체크 여부에 따라 'Y'일 시 기존 자주쓰는 배송지 'N'으로 UPDATE
|
||||||
|
if (dftDlvylcAt.equals("Y")) {
|
||||||
|
service.updateBODftDlvylcAt(crmDlvylcVO);
|
||||||
|
}
|
||||||
|
log.debug("insertBODlvylcRegist's CrmDlvylc : {}", crmDlvylcVO);
|
||||||
|
//service에서 등록 결과 메시지 담음
|
||||||
|
Map<String, String> message = service.insertBODlvylcRegist(crmDlvylcVO);
|
||||||
|
|
||||||
//BO API 호출 => 배송지 등록
|
return ResponseEntity.ok(
|
||||||
return responseHandler.handleResponse(
|
WnbtResponse.builder()
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/insertBODlvylcRegist", crmDlvylcVO),
|
.resBody(new WnbtResponseBody(message))
|
||||||
ReplyFromResrc::getReply
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/insertBODlvylcRegist", crmDlvylcVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 배송지 삭제
|
* 배송지 삭제
|
||||||
* @param CrmOrdrVO
|
* @param crmDlvylcVO
|
||||||
* @return ResponseEntity<WnbtResponse>
|
* @return ResponseEntity<WnbtResponse>
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@PostMapping(value="/deleteDlvylcDel")
|
@PostMapping(value="/deleteDlvylcDel", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> deleteDlvylcDel(CrmDlvylcVO crmDlvylcVO){
|
public ResponseEntity<WnbtResponse> deleteDlvylcDel(BOCrmDlvylcVO crmDlvylcVO){
|
||||||
log.debug("deleteDlvylcDel's crmDlvylcVO {}", crmDlvylcVO);
|
log.debug("deleteDlvylcDel's crmDlvylcVO {}", crmDlvylcVO);
|
||||||
//BO API 호출 => 배송지 삭제
|
|
||||||
return responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/deleteBODlvylcDel", crmDlvylcVO),
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
ReplyFromResrc::getReply
|
crmDlvylcVO.setMbrInnb(user.getUserInnb());
|
||||||
|
crmDlvylcVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
}
|
||||||
|
//service에서 삭제 결과 갖고 옴
|
||||||
|
Map<String, String> message = service.deleteBODlvylc(crmDlvylcVO);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/deleteBODlvylcDel", crmDlvylcVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,25 +1,39 @@
|
|||||||
package com.wb.domainserver.domain.crm.main.controller;
|
package com.wb.domainserver.domain.crm.main.controller;
|
||||||
|
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
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.auth.controller.AuthController;
|
import com.wb.domainserver.domain.auth.controller.AuthController;
|
||||||
import com.wb.domainserver.domain.auth.vo.AuthVO;
|
import com.wb.domainserver.domain.auth.vo.AuthVO;
|
||||||
import com.wb.domainserver.domain.crm.main.vo.CrmMainVO;
|
import com.wb.domainserver.domain.crm.main.vo.CrmMainVO;
|
||||||
import com.wb.domainserver.domain.crm.main.vo.CrmMbrSrchVO;
|
import com.wb.domainserver.domain.crm.main.vo.CrmMbrSrchVO;
|
||||||
import com.wb.domainserver.domain.mngr.ordr.ordrmngr.vo.OrdrSrchVO;
|
import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.service.BOMbrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrSrchVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.service.BOOrdrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BODwldItmVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrSrchVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.setup.nbkk.service.BONbkkService;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
|
||||||
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import com.wb.domainserver.util.string.StringUtil;
|
import com.wb.domainserver.util.string.StringUtil;
|
||||||
import jakarta.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import jakarta.servlet.http.HttpServletResponse;
|
import jakarta.servlet.http.HttpServletResponse;
|
||||||
import jakarta.servlet.http.HttpSession;
|
import jakarta.servlet.http.HttpSession;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
@@ -27,6 +41,10 @@ import org.springframework.web.bind.annotation.CookieValue;
|
|||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* CRM 메인 페이지
|
* CRM 메인 페이지
|
||||||
@@ -65,6 +83,31 @@ public class CrmMainController {
|
|||||||
// @Value("${spring.security.oauth2.resourceserver.jwt.issuer-uri}")
|
// @Value("${spring.security.oauth2.resourceserver.jwt.issuer-uri}")
|
||||||
String issuerUri;
|
String issuerUri;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMbrService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaComncdService bOMaComncdService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService boCommonService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService commonService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOOrdrService boOrdrService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BONbkkService nbkkService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaSopmalService boMaSopmalService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 메인 화면 이동
|
* CRM 메인 화면 이동
|
||||||
* @return
|
* @return
|
||||||
@@ -87,6 +130,7 @@ public class CrmMainController {
|
|||||||
/**
|
/**
|
||||||
* CRM 로그아웃
|
* CRM 로그아웃
|
||||||
* @return
|
* @return
|
||||||
|
* TODO. 로그아웃 처리 확인필요(cookie삭제로직, redirect url 등)
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value="/crm/logout")
|
@RequestMapping(value="/crm/logout")
|
||||||
@@ -119,9 +163,7 @@ public class CrmMainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectCrmMbrSrchForm")
|
@RequestMapping(value = "/crm/main/selectCrmMbrSrchForm")
|
||||||
public String selectCrmMbrSrchForm(CrmMbrSrchVO mbrSrchVO, ModelMap model, HttpSession session, HttpServletRequest request, HttpServletResponse response, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCrmMbrSrchForm(BOMbrSrchVO mbrSrchVO, ModelMap model, HttpSession session, HttpServletRequest request, HttpServletResponse response, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
|
|
||||||
|
|
||||||
// crm 전화받은게 아니면.
|
// crm 전화받은게 아니면.
|
||||||
if(StringUtil.isEmpty(mbrSrchVO.getSopmalCd())) {
|
if(StringUtil.isEmpty(mbrSrchVO.getSopmalCd())) {
|
||||||
mbrSrchVO.setSopmalCd(authSopmalCd);
|
mbrSrchVO.setSopmalCd(authSopmalCd);
|
||||||
@@ -132,13 +174,23 @@ public class CrmMainController {
|
|||||||
authController.selectMngrSopmalSite(authVO, request, response);
|
authController.selectMngrSopmalSite(authVO, request, response);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
mbrSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
mbrSrchVO.setUpdusr(user.getUserInnb());
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paramVO", mbrSrchVO);
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
model.addAttribute("resultMap", content);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMbrSrchPopupForm", mbrSrchVO),
|
// responseHandler.handleResponse(
|
||||||
model,
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMbrSrchPopupForm", mbrSrchVO),
|
||||||
"resultMap"
|
// model,
|
||||||
);
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("cnsltVO", mbrSrchVO);
|
model.addAttribute("cnsltVO", mbrSrchVO);
|
||||||
|
|
||||||
return "crm/main/CrmMbrSrchPopupRForm";
|
return "crm/main/CrmMbrSrchPopupRForm";
|
||||||
@@ -150,18 +202,56 @@ public class CrmMainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectCrmMbrSrch")
|
@RequestMapping(value = "/crm/main/selectCrmMbrSrch")
|
||||||
public String selectCrmMbrSrch(CrmMbrSrchVO mbrSrchVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCrmMbrSrch(CrmMbrSrchVO srchVO, BOMbrSrchVO mbrSrchVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
|
srchVO.setSopmalCd(authSopmalCd);
|
||||||
mbrSrchVO.setSopmalCd(authSopmalCd);
|
mbrSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
// 페이징 객체 생성
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(mbrSrchVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(5); // CMR 회원 검색 팝업 5개씩 고정
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
// 페이징정보 할당
|
||||||
|
mbrSrchVO.setPaginationInfo(paginationInfo);
|
||||||
|
mbrSrchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
mbrSrchVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
mbrSrchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
// 사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
mbrSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
mbrSrchVO.setUpdusr(user.getUserInnb());
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// 목록 조회
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMbrSrch", mbrSrchVO),
|
|
||||||
model,
|
List<DataMap> resultList = null;
|
||||||
"resultMap"
|
String secretKey = commonService.selectSecretkey();
|
||||||
);
|
mbrSrchVO.setSecretKey(secretKey);
|
||||||
model.addAttribute("cnsltVO", mbrSrchVO);
|
resultList = service.selectBOCrmMbrSrch(mbrSrchVO);
|
||||||
|
|
||||||
|
Integer listSize = null;
|
||||||
|
if (resultList != null && resultList.size() > 0) {
|
||||||
|
listSize = resultList.size();
|
||||||
|
} else {
|
||||||
|
listSize = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paramVO", mbrSrchVO);
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("listSize", listSize);
|
||||||
|
content.put("paginationInfo", mbrSrchVO.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMbrSrch", mbrSrchVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("cnsltVO", srchVO);
|
||||||
|
|
||||||
return "crm/main/CrmMbrSrchPopupR";
|
return "crm/main/CrmMbrSrchPopupR";
|
||||||
}
|
}
|
||||||
@@ -172,14 +262,96 @@ public class CrmMainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectCrmOrdrSrchPopupForm")
|
@RequestMapping(value = "/crm/main/selectCrmOrdrSrchPopupForm")
|
||||||
public String selectCrmOrdrSrchPopupForm(ModelMap model ,OrdrSrchVO ordrSrchVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCrmOrdrSrchPopupForm(ModelMap model ,BOOrdrSrchVO ordrSrchVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
ordrSrchVO.setSopmalCd(authSopmalCd);
|
ordrSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
ordrSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
ordrSrchVO.setUpdusr(user.getUserInnb()); // 수정자
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
Map<String, Object> content = new HashMap<>();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOAllOrdrListInqire", ordrSrchVO),
|
|
||||||
model,
|
content.put("sopmalCd", ordrSrchVO.getSopmalCd());
|
||||||
"cond"
|
|
||||||
);
|
List<?> storeList = boOrdrService.selectBOStoreList(ordrSrchVO);
|
||||||
|
|
||||||
|
content.put("storeList", storeList); // 매장
|
||||||
|
|
||||||
|
BODwldItmVO dwldItmVO = new BODwldItmVO();
|
||||||
|
dwldItmVO.setSopmalCd(ordrSrchVO.getSopmalCd());
|
||||||
|
|
||||||
|
List<?> dwldItmSetupFormList = boOrdrService.selectDwldItmSetupFormList(dwldItmVO);
|
||||||
|
|
||||||
|
content.put("dwldItmSetupFormList", dwldItmSetupFormList); // 엑셀다운로드 양식 폼 목록
|
||||||
|
|
||||||
|
BOMaComncdVO maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("ORDR_STTUS");
|
||||||
|
|
||||||
|
List<?> ordrSttusCdList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("ordrSttusCdList", ordrSttusCdList); // 주문상태
|
||||||
|
|
||||||
|
maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("SLE_ENVRN"); // 주문환경
|
||||||
|
|
||||||
|
List<?> ordrEnvrnDvCdList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("ordrEnvrnDvCdList", ordrEnvrnDvCdList);
|
||||||
|
|
||||||
|
maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("DLVY_MTH"); // 배송방법
|
||||||
|
|
||||||
|
List<?> dlvyMthCdList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("dlvyMthCdList", dlvyMthCdList);
|
||||||
|
|
||||||
|
maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("ORDR_TY"); // 주문유형
|
||||||
|
|
||||||
|
List<?> ordrTyCdList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("ordrTyCdList", ordrTyCdList);
|
||||||
|
|
||||||
|
maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("RESVE_SNDNG_DV"); // 희망배송일, 상품예약발송일
|
||||||
|
|
||||||
|
List<?> resveSndngDvCdList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("resveSndngDvCdList", resveSndngDvCdList);
|
||||||
|
|
||||||
|
maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("SETLE_MTH"); // 모든 결제수단
|
||||||
|
|
||||||
|
List<?> setleMthList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("setleMthList", setleMthList);
|
||||||
|
|
||||||
|
maComncdVO = new BOMaComncdVO();
|
||||||
|
maComncdVO.setGroupCd("PG_CMPNY"); // 모든결제사
|
||||||
|
|
||||||
|
List<?> setlePgCmpnyList = bOMaComncdService.selectBOCommcdDetailList(maComncdVO);
|
||||||
|
|
||||||
|
content.put("setlePgCmpnyList", setlePgCmpnyList);
|
||||||
|
|
||||||
|
// 무통장자동입금 사용 여부
|
||||||
|
String acntUseAt = nbkkService.selectBOAcntUseAtInqire(ordrSrchVO);
|
||||||
|
content.put("acntUseAt", acntUseAt);
|
||||||
|
|
||||||
|
// 네이버페이 사용 여부
|
||||||
|
String npayUseAt = boMaSopmalService.selectBONpayUseAtByShop(ordrSrchVO.getSopmalCd());
|
||||||
|
content.put("npayUseAt", npayUseAt);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
content.put("paramVO", ordrSrchVO);
|
||||||
|
|
||||||
|
model.addAttribute("cond", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOAllOrdrListInqire", ordrSrchVO),
|
||||||
|
// model,
|
||||||
|
// "cond"
|
||||||
|
// );
|
||||||
model.addAttribute("paramVO", ordrSrchVO);
|
model.addAttribute("paramVO", ordrSrchVO);
|
||||||
|
|
||||||
return "crm/main/CrmOrdrSrchPopupRForm";
|
return "crm/main/CrmOrdrSrchPopupRForm";
|
||||||
@@ -191,13 +363,40 @@ public class CrmMainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectCrmOrdrSrch", method = RequestMethod.POST)
|
@RequestMapping(value = "/crm/main/selectCrmOrdrSrch", method = RequestMethod.POST)
|
||||||
public String selectCrmOrdrSrch (ModelMap model , OrdrSrchVO ordrSrchVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCrmOrdrSrch (ModelMap model , BOOrdrSrchVO ordrSrchVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
ordrSrchVO.setSopmalCd(authSopmalCd);
|
ordrSrchVO.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectAllOrdrListInqireAjax", ordrSrchVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
"resultMap"
|
ordrSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(ordrSrchVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(ordrSrchVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
ordrSrchVO.setPaginationInfo(paginationInfo);
|
||||||
|
ordrSrchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
ordrSrchVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
ordrSrchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
/*시크릿 키 set*/
|
||||||
|
ordrSrchVO.setSecretKey(commonService.selectSecretkey());
|
||||||
|
List<?> allOrdrList = boOrdrService.selectAllOrdrListInqireAjax(ordrSrchVO);
|
||||||
|
|
||||||
|
content.put("allOrdrList", allOrdrList);
|
||||||
|
content.put("paramVO", ordrSrchVO);
|
||||||
|
content.put("paginationInfo", ordrSrchVO.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectAllOrdrListInqireAjax", ordrSrchVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/main/CrmOrdrSrchPopupR";
|
return "crm/main/CrmOrdrSrchPopupR";
|
||||||
}
|
}
|
||||||
@@ -209,8 +408,6 @@ public class CrmMainController {
|
|||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/callCenterCnncButton")
|
@RequestMapping(value = "/crm/main/callCenterCnncButton")
|
||||||
public String callCenterCnncButton () {
|
public String callCenterCnncButton () {
|
||||||
|
|
||||||
|
|
||||||
return "crm/main/ctiUnion";
|
return "crm/main/ctiUnion";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -219,15 +416,30 @@ public class CrmMainController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectCrmMbrInfo")
|
@RequestMapping(value = "/crm/main/selectCrmMbrInfo", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectCrmMbrInfo (CrmMainVO mainVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> selectCrmMbrInfo (BOMbrVO vo, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mainVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
|
|
||||||
/*검색어에 해당하는 회원 조회*/
|
//쇼핑몰코드 set
|
||||||
return responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMenuMbrInfoInqire", mainVO),
|
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
String secretKey = boCommonService.selectSecretkey();
|
||||||
|
vo.setSecretKey(secretKey);
|
||||||
|
|
||||||
|
Map<String, Object> mbr = service.selectBOCrmMenuMbrInfoInqire(vo);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(mbr))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMenuMbrInfoInqire", mainVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -235,15 +447,26 @@ public class CrmMainController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectCrmNmbrInfo")
|
@RequestMapping(value = "/crm/main/selectCrmNmbrInfo", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectCrmNmbrInfo (CrmMainVO mainVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> selectCrmNmbrInfo (BOMbrVO vo, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mainVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
|
//쇼핑몰코드 set
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
/*검색어에 해당하는 회원 조회*/
|
String secretKey = boCommonService.selectSecretkey();
|
||||||
return responseHandler.handleResponse(
|
vo.setSecretKey(secretKey);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMenuNmbrInfoInqire", mainVO),
|
Map<String, Object> mbr = new HashMap<>();
|
||||||
ReplyFromResrc::getReply
|
mbr = service.selectBOCrmMenuNmbrInfoInqire(vo);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(mbr))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMenuNmbrInfoInqire", mainVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -251,14 +474,23 @@ public class CrmMainController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/crm/main/selectSopmalNm")
|
@RequestMapping(value = "/crm/main/selectSopmalNm", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectSopmalNm(CrmMainVO mainVO) {
|
public ResponseEntity<WnbtResponse> selectSopmalNm(DataMap vo) {
|
||||||
|
DataMap result = service.selectBOSopmalNm(vo);
|
||||||
|
|
||||||
|
// 응답 메세지 객체
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("resultMap", result);
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
return ResponseEntity.ok(
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOSopmalNm", mainVO),
|
WnbtResponse.builder()
|
||||||
ReplyFromResrc::getReply
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOSopmalNm", mainVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,32 +1,54 @@
|
|||||||
package com.wb.domainserver.domain.crm.mbr.controller;
|
package com.wb.domainserver.domain.crm.mbr.controller;
|
||||||
|
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
import com.wb.domainserver.common.msg.GconeMessageSource;
|
||||||
|
import com.wb.domainserver.domain.admin.store.sopmal.service.BOMaSopmalService;
|
||||||
|
import com.wb.domainserver.domain.admin.store.sopmal.vo.BOMaSopmalVO;
|
||||||
|
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.admin.user.mngr.service.BOJobUserService;
|
||||||
|
import com.wb.domainserver.domain.admin.user.mngr.vo.BOJobUserVO;
|
||||||
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
||||||
import com.wb.domainserver.domain.crm.mbr.vo.CrmMbrVO;
|
import com.wb.domainserver.domain.crm.mbr.vo.CrmMbrVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
||||||
|
import com.wb.domainserver.domain.gcone.common.vo.BOCommonVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.service.BOMbrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrAppnVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOWithdrawalVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.setup.gradbnef.service.BOGradbnefService;
|
||||||
|
import com.wb.domainserver.domain.gcone.setup.gradbnef.vo.BOGradbnefVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.setup.ordrmngr.service.BOOrdrMngrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.setup.ordrmngr.vo.BOSetupOrdrVO;
|
||||||
import com.wb.domainserver.exception.WnbtRestException;
|
import com.wb.domainserver.exception.WnbtRestException;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
|
||||||
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
import com.wb.domainserver.util.communicate.ValidateResultConverter;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import com.wb.domainserver.util.string.StringUtil;
|
import com.wb.domainserver.util.string.StringUtil;
|
||||||
import com.wb.domainserver.util.util.Util;
|
import com.wb.domainserver.util.util.Util;
|
||||||
import jakarta.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
|
import org.springframework.util.CollectionUtils;
|
||||||
import org.springframework.validation.BindingResult;
|
import org.springframework.validation.BindingResult;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.CookieValue;
|
import org.springframework.web.bind.annotation.CookieValue;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
|
||||||
|
import java.math.BigInteger;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
@@ -47,22 +69,63 @@ public class CrmMbrController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private GconeMessageSource gconeMessageSource;
|
private GconeMessageSource gconeMessageSource;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMbrService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOGradbnefService mbrGradService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaComncdService bOMaComncdService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaSopmalService maSopmalService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService boCommonService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService commonService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOOrdrMngrService boOrdrMngrService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOJobUserService boJobUserService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 로그/메모 폼 이동
|
* 로그/메모 폼 이동
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectLogMemoInqire")
|
@RequestMapping(value = "/selectLogMemoInqire")
|
||||||
public String selectLogMemoInqire(CrmCnsltVO vo , CrmMbrVO mbrVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectLogMemoInqire(CrmCnsltVO crmCnsltVO , BOMbrVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setPageDv("crm");
|
vo.setPageDv("crm");
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrInfoLogCrm", mbrVO),
|
|
||||||
model,
|
|
||||||
"resultMap"
|
|
||||||
);
|
|
||||||
|
|
||||||
model.addAttribute("cnsltVO",vo);
|
//시크릿키 set
|
||||||
|
String secretKey = "";
|
||||||
|
secretKey = commonService.selectSecretkey();
|
||||||
|
vo.setSecretKey(secretKey);
|
||||||
|
|
||||||
|
//회원정보 수정 조회
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOMbrInfoUpdtInqire(vo);
|
||||||
|
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", result);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrInfoLogCrm", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
|
model.addAttribute("cnsltVO",crmCnsltVO);
|
||||||
return "crm/mbr/LogMemoR";
|
return "crm/mbr/LogMemoR";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -71,13 +134,26 @@ public class CrmMbrController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/updateMemoUpdt")
|
@RequestMapping(value = "/updateMemoUpdt", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateMemoUpdt(@Validated CrmMbrVO mbrVO,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> updateMemoUpdt(@Validated BOMbrVO vo,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
return responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/updateBOMbrMemoUpdt", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
vo.setUpdusr(user.getUserInnb());
|
||||||
|
|
||||||
|
// service 호출
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = service.updateBOMbrMemoUpdt(vo);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/updateBOMbrMemoUpdt", mbrVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -87,14 +163,74 @@ public class CrmMbrController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrInfoUpdtInqire")
|
@RequestMapping(value = "/selectMbrInfoUpdtInqire")
|
||||||
public String selectMbrInfoUpdtInqire(CrmCnsltVO vo,CrmMbrVO mbrVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrInfoUpdtInqire(CrmCnsltVO crmCnsltVO,BOMbrVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
//시크릿키 set
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrInfoUpdtInqireCrm", mbrVO),
|
String secretKey = "";
|
||||||
model,
|
secretKey = commonService.selectSecretkey();
|
||||||
"resultMap"
|
vo.setSecretKey(secretKey);
|
||||||
);
|
|
||||||
model.addAttribute("cnsltVO",vo);
|
//회원정보 수정 조회
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOMbrInfoUpdtInqire(vo);
|
||||||
|
|
||||||
|
//pos 가입 매장 조회
|
||||||
|
DataMap pos = new DataMap();
|
||||||
|
pos = service.selectBOJoinStrInqire(vo);
|
||||||
|
|
||||||
|
//외부연동 조회
|
||||||
|
List<DataMap> extrlMember = new ArrayList<>();
|
||||||
|
extrlMember = service.selectBOMbrExtrlMbrInfoInqire(vo);
|
||||||
|
|
||||||
|
//회원등급 조회
|
||||||
|
BOGradbnefVO paramVO = new BOGradbnefVO();
|
||||||
|
paramVO.setSopmalCd(vo.getSopmalCd());
|
||||||
|
List<DataMap> gradList = null;
|
||||||
|
gradList = mbrGradService.selectBOMbrGradListInqireWithoutPaging(paramVO);
|
||||||
|
|
||||||
|
//성별
|
||||||
|
BOMaComncdVO cdVO = new BOMaComncdVO();
|
||||||
|
List<DataMap> sex = new ArrayList<>();
|
||||||
|
cdVO.setGroupCd("SEX");
|
||||||
|
sex = service.selectCommCode(cdVO);
|
||||||
|
|
||||||
|
//리셀러 구분
|
||||||
|
List<DataMap> rslr = new ArrayList<>();
|
||||||
|
cdVO.setGroupCd("RSLR_APPN_DV");
|
||||||
|
rslr = service.selectCommCode(cdVO);
|
||||||
|
|
||||||
|
//쇼핑몰 타입별 쇼핑몰 목록
|
||||||
|
BOMaSopmalVO sopmalVo = new BOMaSopmalVO();
|
||||||
|
sopmalVo.setSopmalCd(vo.getSopmalCd());
|
||||||
|
List<DataMap> sopmalList = new ArrayList<>();
|
||||||
|
sopmalList = maSopmalService.selectSopmalGroupList(sopmalVo);
|
||||||
|
|
||||||
|
//해당 회원 브랜드 별 마케팅 동의 여부
|
||||||
|
List<DataMap> agreeAtList = new ArrayList<>();
|
||||||
|
if(!CollectionUtils.isEmpty(sopmalList)){
|
||||||
|
vo.setSopmalList(sopmalList);
|
||||||
|
agreeAtList = service.selectBOMarkRecptnAgreList(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", result);
|
||||||
|
content.put("extrlMember", extrlMember);
|
||||||
|
content.put("pos", pos);
|
||||||
|
content.put("paramVO", vo);
|
||||||
|
content.put("gradList", gradList);
|
||||||
|
content.put("sex", sex);
|
||||||
|
content.put("rslr", rslr);
|
||||||
|
content.put("sopmalList", sopmalList);
|
||||||
|
content.put("agreeAtList", agreeAtList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrInfoUpdtInqireCrm", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("cnsltVO",crmCnsltVO);
|
||||||
return "crm/mbr/MbrInfoUpdtU";
|
return "crm/mbr/MbrInfoUpdtU";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -104,8 +240,8 @@ public class CrmMbrController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/updateMbrInfoUpdt", method = RequestMethod.POST)
|
@RequestMapping(value = "/updateMbrInfoUpdt", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateMbrInfoUpdt(@Validated CrmMbrVO mbrVO, HttpServletRequest request, @CookieValue(value = "authSopmalCd") String authSopmalCd, BindingResult bindingResult) {
|
public ResponseEntity<WnbtResponse> updateMbrInfoUpdt(@Validated BOMbrVO mbrVO, HttpServletRequest request, @CookieValue(value = "authSopmalCd") String authSopmalCd, BindingResult bindingResult) {
|
||||||
// 정합성 검사
|
// 정합성 검사
|
||||||
if (bindingResult.hasErrors()) {
|
if (bindingResult.hasErrors()) {
|
||||||
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
throw new WnbtRestException(ValidateResultConverter.convert(bindingResult, gconeMessageSource));
|
||||||
@@ -138,13 +274,22 @@ public class CrmMbrController {
|
|||||||
}
|
}
|
||||||
//쇼핑몰 코드 set
|
//쇼핑몰 코드 set
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
mbrVO.setSopmalCd(authSopmalCd);
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
//아이디 중복 체크
|
//아이디 중복 체크
|
||||||
if("Y".equals(mbrVO.getMbrIdChngAt())){
|
if("Y".equals(mbrVO.getMbrIdChngAt())){
|
||||||
//아이디 중복 체크
|
//아이디 중복 체크
|
||||||
Map<String, Object> idResult = responseHandler.handleResponseAsMap(
|
if("01".equals(user.getSysDvCd())){
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOIdDplctCnfirm", mbrVO)
|
mbrVO.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
mbrVO.setMbrDvCd(service.selectBOMbrDvCd(mbrVO));
|
||||||
|
|
||||||
|
DataMap idResult = new DataMap();
|
||||||
|
idResult = service.selectBOIdDplctCnfirm(mbrVO);
|
||||||
|
|
||||||
|
// Map<String, Object> idResult = responseHandler.handleResponseAsMap(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOIdDplctCnfirm", mbrVO)
|
||||||
|
// );
|
||||||
String possibleAt = (String) idResult.get("message");
|
String possibleAt = (String) idResult.get("message");
|
||||||
if("impossible".equals(possibleAt)){
|
if("impossible".equals(possibleAt)){
|
||||||
throw new WnbtRestException("중복된 아이디입니다.");
|
throw new WnbtRestException("중복된 아이디입니다.");
|
||||||
@@ -153,10 +298,16 @@ public class CrmMbrController {
|
|||||||
//비밀번호 체크
|
//비밀번호 체크
|
||||||
if("Y".equals(mbrVO.getMbrPwdChngAt())){
|
if("Y".equals(mbrVO.getMbrPwdChngAt())){
|
||||||
/*1 비밀번호 변경 시 관리자 비밀번호 확인*/
|
/*1 비밀번호 변경 시 관리자 비밀번호 확인*/
|
||||||
Map<String, Object> resultMap = responseHandler.handleResponseAsMap(
|
BOJobUserVO vo = new BOJobUserVO();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/admin/user/mngr/selectBOJobUserPasswordInqire", mbrVO)
|
vo.setPassword(mbrVO.getPassword());
|
||||||
);
|
vo.setMngrDv(user.getMbrDvCd());
|
||||||
int result = (int) resultMap.get("result");
|
vo.setMngrInnb(new BigInteger(String.valueOf(user.getUserInnb())));
|
||||||
|
|
||||||
|
int result = boJobUserService.selectBOJobUserPasswordInqire(vo);
|
||||||
|
|
||||||
|
// Map<String, Object> resultMap = responseHandler.handleResponseAsMap(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/admin/user/mngr/selectBOJobUserPasswordInqire", mbrVO)
|
||||||
|
// );
|
||||||
if (result == 0) {
|
if (result == 0) {
|
||||||
throw new WnbtRestException("관리자 비밀번호가 일치하지 않습니다");
|
throw new WnbtRestException("관리자 비밀번호가 일치하지 않습니다");
|
||||||
}else{
|
}else{
|
||||||
@@ -179,10 +330,96 @@ public class CrmMbrController {
|
|||||||
String ip = (String) Util.getRequestInfo(request).get("XForwardedFor");
|
String ip = (String) Util.getRequestInfo(request).get("XForwardedFor");
|
||||||
mbrVO.setRegistIp(ip);
|
mbrVO.setRegistIp(ip);
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
mbrVO.setUpdusr(user.getUserInnb());
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/updateBOMbrInfoUpdtCrm", mbrVO),
|
mbrVO.setMngrId(user.getMbrId());
|
||||||
ReplyFromResrc::getReply
|
|
||||||
|
String secretKey = "";
|
||||||
|
secretKey = commonService.selectSecretkey();
|
||||||
|
mbrVO.setSecretKey(secretKey);
|
||||||
|
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
//비밀번호 수정
|
||||||
|
if ("Y".equals(mbrVO.getMbrPwdChngAt())) {
|
||||||
|
BOCommonVO commVO = new BOCommonVO();
|
||||||
|
commVO.setPass(mbrVO.getMbrPassword()); // 변경할 비밀번호
|
||||||
|
commVO.setEncptKeyDvCd("01"); // 회원
|
||||||
|
commVO.setIdntfcInnb(mbrVO.getMbrInnb()); // 회원고유번호
|
||||||
|
|
||||||
|
//변경할 비밀번호 암호화
|
||||||
|
String newPwd = commonService.generateKey(commVO);
|
||||||
|
mbrVO.setNewPassword(newPwd);
|
||||||
|
}
|
||||||
|
|
||||||
|
// CRM > 회원 정보 수정
|
||||||
|
if ("01".equals(mbrVO.getAdresDv())) {
|
||||||
|
mbrVO.setRnmAdres(mbrVO.getAdres());
|
||||||
|
} else {
|
||||||
|
mbrVO.setLnbAdres(mbrVO.getAdres());
|
||||||
|
}
|
||||||
|
message = service.updateBOMbrInfoUpdtCrm(mbrVO);
|
||||||
|
|
||||||
|
//리셀러 등록 or 수정
|
||||||
|
String beforeAppnDvCd = StringUtil.isEmpty(mbrVO.getBeforeAppnDvCd()) ? "01" : mbrVO.getBeforeAppnDvCd();
|
||||||
|
if (!beforeAppnDvCd.equals(mbrVO.getAppnDvCd())) {
|
||||||
|
BOMbrAppnVO appnVO = new BOMbrAppnVO();
|
||||||
|
appnVO.setAppnDvCd(mbrVO.getAppnDvCd());
|
||||||
|
appnVO.setOriginDvCd("02");
|
||||||
|
appnVO.setAppnMemo(mbrVO.getAppnMemo());
|
||||||
|
appnVO.setIdntfcStdrCd("mbr_innb");
|
||||||
|
List<String> mbrDvCdArr = new ArrayList<>();
|
||||||
|
mbrDvCdArr.add(mbrVO.getMbrDvCd());
|
||||||
|
appnVO.setMbrDvCdArr(mbrDvCdArr);
|
||||||
|
List<String> mbrInnbArr = new ArrayList<>();
|
||||||
|
mbrInnbArr.add(mbrVO.getMbrInnb());
|
||||||
|
appnVO.setIdntfcInfoArr(mbrInnbArr);
|
||||||
|
appnVO.setAppnInnbArr(mbrVO.getAppnInnbArr());
|
||||||
|
appnVO.setSopmalCd(mbrVO.getSopmalCd());
|
||||||
|
appnVO.setUpdusr(user.getUserInnb());
|
||||||
|
appnVO.setRegusr(user.getUserInnb());
|
||||||
|
appnVO.setSecretKey(mbrVO.getSecretKey());
|
||||||
|
service.updateBOMbrRslr(appnVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 회원 등급 수정
|
||||||
|
if (!mbrVO.getBeforeMbrGradInnb().equals(mbrVO.getMbrGradInnb())) {
|
||||||
|
Integer gradUpdtResult = mbrGradService.updateBOMbrGradMapingUpdt(mbrVO);
|
||||||
|
//회원 등급 메모 수정 등급명 set
|
||||||
|
if (gradUpdtResult > 0) {
|
||||||
|
//회원등급 명 조회
|
||||||
|
DataMap gradNm = new DataMap();
|
||||||
|
gradNm = mbrGradService.selectMbrChngGradNm(mbrVO);
|
||||||
|
String beforeGradNm = (String) gradNm.get("beforeGradNm");
|
||||||
|
String afterGradNm = (String) gradNm.get("afterGradNm");
|
||||||
|
mbrVO.setBeforeGradNm(beforeGradNm);
|
||||||
|
mbrVO.setAfterGradNm(afterGradNm);
|
||||||
|
mbrVO.setMngrNm(user.getMbrNm());
|
||||||
|
|
||||||
|
//관리자 로그 문장 만듦
|
||||||
|
DataMap mngrLog = new DataMap();
|
||||||
|
DataMap data = new DataMap();
|
||||||
|
data.put("id", user.getMbrId());
|
||||||
|
data.put("registIp", mbrVO.getRegistIp());
|
||||||
|
data.put("before", mbrVO.getBeforeGradNm());
|
||||||
|
data.put("after", mbrVO.getAfterGradNm());
|
||||||
|
data.put("actionDv", "mbrGrad");
|
||||||
|
|
||||||
|
mngrLog = service.makeMngrLog(data);
|
||||||
|
|
||||||
|
mbrVO.setMngrLogStrt(StringUtil.isNullToString(mngrLog.get("mngrLogStrt")));
|
||||||
|
mbrVO.setMngrLogEnd(StringUtil.isNullToString(mngrLog.get("mngrLogEnd")));
|
||||||
|
service.updateBOMbrGradMemoUpdt(mbrVO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/updateBOMbrInfoUpdtCrm", mbrVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -202,18 +439,54 @@ public class CrmMbrController {
|
|||||||
/**
|
/**
|
||||||
* 회원 CRM 팝업 폼 ( 아이디 클릭시 바로 옆에 띄워지는 고객 CRM 팝업 화면 )
|
* 회원 CRM 팝업 폼 ( 아이디 클릭시 바로 옆에 띄워지는 고객 CRM 팝업 화면 )
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrCrmInfoPopupForm")
|
@RequestMapping(value = "/selectMbrCrmInfoPopupForm")
|
||||||
public String selectMbrCrmInfoPopupForm(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrCrmInfoPopupForm(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrCrmInfoPopupInqire", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}else if ("04".equals(user.getSysDvCd())){//인트라넷이면 대표브랜드로 검색
|
||||||
|
vo.setSopmalCd(user.getReprsntBrand());
|
||||||
|
}
|
||||||
|
|
||||||
|
String secretKey = commonService.selectSecretkey();
|
||||||
|
vo.setSecretKey(secretKey);
|
||||||
|
// 회원 활동 정보 조회 ( 마일리지, 쿠폰, 누적 결재 금액, 누적 주문 건수, 최근 로그인 ip, 최근 수정일시 )
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOMbrActInfoInqire(vo);
|
||||||
|
|
||||||
|
|
||||||
|
// sns 연동 조회
|
||||||
|
List<DataMap> sns = new ArrayList<>();
|
||||||
|
sns = service.selectBOMbrExtrlMbrInfoInqire(vo);
|
||||||
|
|
||||||
|
// 고객 주문관련, 게시글관련 데이터 조회
|
||||||
|
Map<String, Object> orderData = new HashMap<>();
|
||||||
|
orderData = service.selectBOMbrDataOrderInqireCrmPopup(vo);
|
||||||
|
|
||||||
|
// Shop 정보 조회
|
||||||
|
BOSetupOrdrVO boOrdrVO = new BOSetupOrdrVO();
|
||||||
|
boOrdrVO.setSopmalCd(vo.getSopmalCd());
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("shopInfo", boOrdrMngrService.selectBOOrdrSetupList(boOrdrVO));
|
||||||
|
content.put("result", result);
|
||||||
|
content.put("sns", sns);
|
||||||
|
content.put("acttData", orderData);
|
||||||
|
content.put("paramVO", vo);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrCrmInfoPopupInqire", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mbr/MbrCrmInfoPopupR";
|
return "crm/mbr/MbrCrmInfoPopupR";
|
||||||
}
|
}
|
||||||
@@ -221,38 +494,82 @@ public class CrmMbrController {
|
|||||||
/**
|
/**
|
||||||
* 비회원 CRM 팝업 폼 ( 아이디 클릭시 바로 옆에 띄워지는 고객 CRM 팝업 화면 )
|
* 비회원 CRM 팝업 폼 ( 아이디 클릭시 바로 옆에 띄워지는 고객 CRM 팝업 화면 )
|
||||||
*
|
*
|
||||||
* @param mbrVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectNmbrCrmInfoPopupForm")
|
@RequestMapping(value = "/selectNmbrCrmInfoPopupForm")
|
||||||
public String selectNmbrCrmInfoPopupForm(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectNmbrCrmInfoPopupForm(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
//쇼핑몰코드 set
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMenuNmbrInfoInqire", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
|
||||||
"resultMap"
|
String secretKey = boCommonService.selectSecretkey();
|
||||||
);
|
vo.setSecretKey(secretKey);
|
||||||
model.addAttribute("vo",mbrVO);
|
Map<String, Object> mbr = new HashMap<>();
|
||||||
|
mbr = service.selectBOCrmMenuNmbrInfoInqire(vo);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", mbr);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCrmMenuNmbrInfoInqire", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("vo",vo);
|
||||||
return "crm/mbr/NmbrCrmInfoPopupR";
|
return "crm/mbr/NmbrCrmInfoPopupR";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 회원 정보 조회 이동
|
* CRM 회원 정보 조회 이동
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCstmrInfoInqire")
|
@RequestMapping(value = "/selectCstmrInfoInqire")
|
||||||
public String selectCstmrInfoInqire(CrmCnsltVO vo,CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCstmrInfoInqire(CrmCnsltVO crmCnsltVO,BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCstmrInfoInqire", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
model.addAttribute("cnsltVO",vo);
|
String secretKey = commonService.selectSecretkey();
|
||||||
|
vo.setSecretKey(secretKey);
|
||||||
|
|
||||||
|
// 회원 정보 조회
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOMbrInfoUpdtInqire(vo);
|
||||||
|
|
||||||
|
|
||||||
|
// 고객 주문관련, 게시글관련 데이터 조회
|
||||||
|
Map<String, Object> orderData = new HashMap<>();
|
||||||
|
orderData = service.selectBOMbrDataOrderInqire(vo);
|
||||||
|
|
||||||
|
|
||||||
|
//공통코드
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("SEX");
|
||||||
|
List<?> sex = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
bOMaComncdVO.setGroupCd("JOIN_ENVRN");
|
||||||
|
List<?> joinEnvrn = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", result);
|
||||||
|
content.put("acttData", orderData);
|
||||||
|
content.put("paramVO", vo);
|
||||||
|
content.put("sex", sex);
|
||||||
|
content.put("joinEnvrn", joinEnvrn);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOCstmrInfoInqire", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("cnsltVO",crmCnsltVO);
|
||||||
return "crm/mbr/CstmrInfoInqireR";
|
return "crm/mbr/CstmrInfoInqireR";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -260,20 +577,29 @@ public class CrmMbrController {
|
|||||||
/**
|
/**
|
||||||
* CRM 회원 정보 조회 > 관리매장 변경 팝업
|
* CRM 회원 정보 조회 > 관리매장 변경 팝업
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectManageStrChngPopupForm")
|
@RequestMapping(value = "/selectManageStrChngPopupForm")
|
||||||
public String selectManageStrChngPopupForm(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectManageStrChngPopupForm(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOManageStrChngPopupForm", mbrVO),
|
//인트라넷 => 해당 로그인 대표브랜드 set
|
||||||
model,
|
// crm => session에 있는 브랜드 fo에서 넘어옴
|
||||||
"resultMap"
|
if("04".equals(user.getSysDvCd())){
|
||||||
);
|
vo.setSopmalCd(user.getReprsntBrand());
|
||||||
|
}
|
||||||
|
Map<String, Object> contents = new HashMap<>();
|
||||||
|
|
||||||
|
contents = service.selectBOManageStrChngPopupForm(vo);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", contents);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOManageStrChngPopupForm", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
return "crm/mbr/ManageStrChngPopupU";
|
return "crm/mbr/ManageStrChngPopupU";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -281,39 +607,76 @@ public class CrmMbrController {
|
|||||||
/**
|
/**
|
||||||
* 탈퇴사유조회
|
* 탈퇴사유조회
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectSecsnResn")
|
@RequestMapping(value = "/selectSecsnResn", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectSecsnResn(HttpServletRequest request, CrmMbrVO mbrVO,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> selectSecsnResn(HttpServletRequest request, BOWithdrawalVO vo, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
return responseHandler.handleResponse(
|
DataMap result = service.selectBOMbrwithdrawal(vo);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrwithdrawal", mbrVO),
|
|
||||||
ReplyFromResrc::getReply
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(result))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrwithdrawal", mbrVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 회원 정보 조회 > 관리매장 수정
|
* CRM 회원 정보 조회 > 관리매장 수정
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/updateManageStrUpdt")
|
@RequestMapping(value = "/updateManageStrUpdt", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateManageStrUpdt(HttpServletRequest request, CrmMbrVO mbrVO,@CookieValue(value = "authSopmalCd") String authSopmalCd) { //등록 ip 설정
|
public ResponseEntity<WnbtResponse> updateManageStrUpdt(HttpServletRequest request, BOMbrVO vo,@CookieValue(value = "authSopmalCd") String authSopmalCd) { //등록 ip 설정
|
||||||
String ip = (String) Util.getRequestInfo(request).get("XForwardedFor");
|
String ip = (String) Util.getRequestInfo(request).get("XForwardedFor");
|
||||||
mbrVO.setRegistIp(ip);
|
vo.setRegistIp(ip);
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
//관리매장 없을시 set
|
//관리매장 없을시 set
|
||||||
if(StringUtil.isEmpty(mbrVO.getBeforeStrNm())){
|
if(StringUtil.isEmpty(vo.getBeforeStrNm())){
|
||||||
mbrVO.setBeforeStrNm("관리매장 없음");
|
vo.setBeforeStrNm("관리매장 없음");
|
||||||
|
}
|
||||||
|
// 사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
}
|
}
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
vo.setUpdusr(user.getUserInnb());
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/updateBOManageStrUpdt", mbrVO),
|
|
||||||
ReplyFromResrc::getReply
|
//관리자 로그 문장 만듦
|
||||||
|
DataMap mngrLog = new DataMap();
|
||||||
|
DataMap data = new DataMap();
|
||||||
|
data.put("id", user.getMbrId());
|
||||||
|
data.put("registIp", vo.getRegistIp());
|
||||||
|
data.put("before", vo.getBeforeStrNm());
|
||||||
|
data.put("after", vo.getStrNm());
|
||||||
|
data.put("actionDv", "store");
|
||||||
|
|
||||||
|
mngrLog = service.makeMngrLog(data);
|
||||||
|
vo.setMngrLogStrt(StringUtil.isNullToString(mngrLog.get("mngrLogStrt")));
|
||||||
|
vo.setMngrLogEnd(StringUtil.isNullToString(mngrLog.get("mngrLogEnd")));
|
||||||
|
|
||||||
|
// service 호출
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = service.updateBOManageStrUpdt(vo);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/updateBOManageStrUpdt", mbrVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -321,107 +684,232 @@ public class CrmMbrController {
|
|||||||
/**
|
/**
|
||||||
* CRM 회원 활동 정보 조회 이동
|
* CRM 회원 활동 정보 조회 이동
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrActInfoInqire")
|
@RequestMapping(value = "/selectMbrActInfoInqire")
|
||||||
public String selectMbrActInfoInqire(CrmCnsltVO vo ,CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrActInfoInqire(CrmCnsltVO crmCnsltVO ,BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selecBOtMbrActInfoInqire", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
model.addAttribute("cnsltVO",vo);
|
|
||||||
|
// 회원 활동 정보 조회 ( 마일리지, 쿠폰, 누적 결재 금액, 누적 주문 건수, 최근 로그인 ip, 최근 수정일시 )
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOMbrActInfoInqire(vo);
|
||||||
|
|
||||||
|
// 고객 상품, 검색 관련 데이터 조회
|
||||||
|
DataMap acttData = new DataMap();
|
||||||
|
acttData = service.selectBOMbrDataGoodsInqire(vo);
|
||||||
|
|
||||||
|
// String recentVisitSopmalNm = service.selectBORecentVisitStrInqire();
|
||||||
|
// SELECT FN_GET_SOPMAL_NAME(ML.SOPMAL_CD) AS SOPMAL_NM FROM FM_MEMBER_LOGIN ML WHERE ML.MBR_DV_CD = 'GC' AND ML.MBR_INNB = 4 ORDER BY ML.REGIST_DT DESC LIMIT 0, 1;
|
||||||
|
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", result);
|
||||||
|
content.put("acttData", acttData);
|
||||||
|
content.put("paramVO", vo);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selecBOtMbrActInfoInqire", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
model.addAttribute("cnsltVO",crmCnsltVO);
|
||||||
return "crm/mbr/MbrActInfoInqireR";
|
return "crm/mbr/MbrActInfoInqireR";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 회원 활동 정보 (고객 데이터 : 최근 본 상품 )
|
* CRM 회원 활동 정보 (고객 데이터 : 최근 본 상품 )
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrDataGoodsInqireToday")
|
@RequestMapping(value = "/selectMbrDataGoodsInqireToday")
|
||||||
public String selectMbrDataGoodsInqireToday(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrDataGoodsInqireToday(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireToday", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
|
||||||
|
// 고객 상품, 검색 관련 데이터 조회
|
||||||
|
List<DataMap> todayList = null;
|
||||||
|
todayList = service.selectBOMbrDataGoodsInqireToday(vo);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", todayList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireToday", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mbr/MbrDataInqireR";
|
return "crm/mbr/MbrDataInqireR";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 회원 활동 정보 (고객 데이터 : 위시리스트에 담은 상품 )
|
* CRM 회원 활동 정보 (고객 데이터 : 위시리스트에 담은 상품 )
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrDataGoodsInqireWish")
|
@RequestMapping(value = "/selectMbrDataGoodsInqireWish")
|
||||||
public String selectMbrDataGoodsInqireWish(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrDataGoodsInqireWish(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireWish", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
// 고객 상품, 검색 관련 데이터 조회
|
||||||
|
List<DataMap> wishList = null;
|
||||||
|
wishList = service.selectBOMbrDataGoodsInqireWish(vo);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", wishList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireWish", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mbr/MbrDataInqireR";
|
return "crm/mbr/MbrDataInqireR";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 회원 활동 정보 (고객 데이터 : 장바구니에 담은 상품 )
|
* CRM 회원 활동 정보 (고객 데이터 : 장바구니에 담은 상품 )
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrDataGoodsInqireCart")
|
@RequestMapping(value = "/selectMbrDataGoodsInqireCart")
|
||||||
public String selectMbrDataGoodsInqireCart(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrDataGoodsInqireCart(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireCart", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
vo.setUpdusr(user.getUserInnb());
|
||||||
|
|
||||||
|
// 고객 상품, 검색 관련 데이터 조회
|
||||||
|
List<DataMap> cartList = null;
|
||||||
|
cartList = service.selectBOMbrDataGoodsInqireCart(vo);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", cartList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireCart", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mbr/MbrDataInqireR";
|
return "crm/mbr/MbrDataInqireR";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CRM 회원 활동 정보 (고객 데이터 : 최근 검색어 )
|
* CRM 회원 활동 정보 (고객 데이터 : 최근 검색어 )
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrDataGoodsInqireSrch")
|
@RequestMapping(value = "/selectMbrDataGoodsInqireSrch")
|
||||||
public String selectMbrDataGoodsInqireSrch(CrmMbrVO mbrVO, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMbrDataGoodsInqireSrch(BOMbrVO vo, ModelMap model,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireSrch", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
model,
|
if("01".equals(user.getSysDvCd())){
|
||||||
"resultMap"
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
);
|
}
|
||||||
|
|
||||||
|
// 고객 상품, 검색 관련 데이터 조회
|
||||||
|
List<DataMap> srchKeywordList = null;
|
||||||
|
srchKeywordList = service.selectBOMbrDataGoodsInqireSrch(vo);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("result", srchKeywordList);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrDataGoodsInqireSrch", mbrVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mbr/MbrDataSrchKeywordR";
|
return "crm/mbr/MbrDataSrchKeywordR";
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* CRM 회원 정보 조회
|
* CRM 회원 정보 조회
|
||||||
*
|
*
|
||||||
* @param paramVO
|
* @param vo
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMbrCrmInfo")
|
@RequestMapping(value = "/selectMbrCrmInfo", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectMbrCrmInfo(CrmMbrVO mbrVO,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> selectMbrCrmInfo(BOMbrVO vo,@CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
mbrVO.setSopmalCd(authSopmalCd);
|
vo.setSopmalCd(authSopmalCd);
|
||||||
return responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrCrmInfoPopupInqire", mbrVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
}else if ("04".equals(user.getSysDvCd())){//인트라넷이면 대표브랜드로 검색
|
||||||
|
vo.setSopmalCd(user.getReprsntBrand());
|
||||||
|
}
|
||||||
|
|
||||||
|
String secretKey = commonService.selectSecretkey();
|
||||||
|
vo.setSecretKey(secretKey);
|
||||||
|
// 회원 활동 정보 조회 ( 마일리지, 쿠폰, 누적 결재 금액, 누적 주문 건수, 최근 로그인 ip, 최근 수정일시 )
|
||||||
|
DataMap result = new DataMap();
|
||||||
|
result = service.selectBOMbrActInfoInqire(vo);
|
||||||
|
|
||||||
|
|
||||||
|
// sns 연동 조회
|
||||||
|
List<DataMap> sns = new ArrayList<>();
|
||||||
|
sns = service.selectBOMbrExtrlMbrInfoInqire(vo);
|
||||||
|
|
||||||
|
// 고객 주문관련, 게시글관련 데이터 조회
|
||||||
|
Map<String, Object> orderData = new HashMap<>();
|
||||||
|
orderData = service.selectBOMbrDataOrderInqireCrmPopup(vo);
|
||||||
|
|
||||||
|
// Shop 정보 조회
|
||||||
|
BOSetupOrdrVO boOrdrVO = new BOSetupOrdrVO();
|
||||||
|
boOrdrVO.setSopmalCd(vo.getSopmalCd());
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("shopInfo", boOrdrMngrService.selectBOOrdrSetupList(boOrdrVO));
|
||||||
|
content.put("result", result);
|
||||||
|
content.put("sns", sns);
|
||||||
|
content.put("acttData", orderData);
|
||||||
|
content.put("paramVO", vo);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMbrCrmInfoPopupInqire", mbrVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,27 +1,46 @@
|
|||||||
package com.wb.domainserver.domain.crm.mlg.controller;
|
package com.wb.domainserver.domain.crm.mlg.controller;
|
||||||
|
|
||||||
|
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.crm.cnslt.vo.CrmCnsltVO;
|
import com.wb.domainserver.domain.crm.cnslt.vo.CrmCnsltVO;
|
||||||
import com.wb.domainserver.domain.crm.mlg.vo.CrmMlgVO;
|
import com.wb.domainserver.domain.gcone.common.service.BOCommonService;
|
||||||
import com.wb.domainserver.domain.crm.mlg.vo.PosReqVO;
|
import com.wb.domainserver.domain.gcone.mbr.mbr.service.BOMbrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mlg.service.BOMlgService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mlg.vo.BOCashVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mlg.vo.BOMlgSrchVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mlg.vo.BOMlgVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.ntcn.mssage.service.BOMssageService;
|
||||||
|
import com.wb.domainserver.domain.gcone.ntcn.mssage.vo.BOMssageVO;
|
||||||
import com.wb.domainserver.domain.mngr.mbr.vo.MlgSrchVO;
|
import com.wb.domainserver.domain.mngr.mbr.vo.MlgSrchVO;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
|
||||||
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
|
import com.wb.domainserver.util.string.StringUtil;
|
||||||
import jakarta.servlet.http.HttpSession;
|
import jakarta.servlet.http.HttpSession;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.CookieValue;
|
import org.springframework.web.bind.annotation.CookieValue;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.math.BigInteger;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -54,6 +73,26 @@ public class CrmMlgController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private SendToResrc sendToResrc;
|
private SendToResrc sendToResrc;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMlgService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaSopmalService sopmalService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMaComncdService bOMaComncdService; // 공통 코드 service
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMssageService boMssageService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOMbrService boMbrService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService boCommonService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 마일리지 내역 폼 이동
|
* 마일리지 내역 폼 이동
|
||||||
@@ -61,15 +100,70 @@ public class CrmMlgController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMlgDtlsForm")
|
@RequestMapping(value = "/selectMlgDtlsForm")
|
||||||
public String selectMlgDtlsForm(CrmCnsltVO cnsltVO , CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMlgDtlsForm(CrmCnsltVO cnsltVO, BOMlgSrchVO boMlgSrchVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
boMlgSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
|
if ("sopmal".equals(boMlgSrchVO.getServerDv())) {
|
||||||
|
boMlgSrchVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
boMlgSrchVO.setMbrInnb(user.getUserInnb());
|
||||||
|
}
|
||||||
|
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
boMlgSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
//마일리지 적립 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_ACCML_DV");
|
||||||
|
List<?> mlgAccmlDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
//마일리지 적용 사유 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_APPLC_DV");
|
||||||
|
List<?> mlgApplcDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
//마일리지 지급/차감 구분
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_DV");
|
||||||
|
List<?> mlgDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
List<?> sopmalList = sopmalService.selectBOSopmalCdNm();
|
||||||
|
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// Map객체에 필요 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgManagePopupForm", vo),
|
DataMap content = new DataMap();
|
||||||
model,
|
content.put("paramVO", boMlgSrchVO);
|
||||||
"resultMap"
|
content.put("mlgAccmlDv", mlgAccmlDv);
|
||||||
);
|
content.put("mlgApplcDv", mlgApplcDv);
|
||||||
|
content.put("mlgDv", mlgDv);
|
||||||
|
content.put("sopmalList", sopmalList);
|
||||||
|
//관리자명
|
||||||
|
content.put("mngrId", user.getMbrId());
|
||||||
|
DataMap mngrInfoParamMap = new DataMap();
|
||||||
|
mngrInfoParamMap.put("mngrId", user.getMbrId());
|
||||||
|
mngrInfoParamMap.put("mngrInnb", user.getUserInnb());
|
||||||
|
content.put("mngrNm", service.selectBOMlgMngrInfoInqire(mngrInfoParamMap));
|
||||||
|
|
||||||
|
//회원명
|
||||||
|
content.put("mbrInfoMap", service.selectBOMlgMbrInfoInqire(boMlgSrchVO));
|
||||||
|
|
||||||
|
//마일리지 기본 유효기간 조회
|
||||||
|
content.put("mlgValidPd", service.selectBOMlgValidPd(boMlgSrchVO));
|
||||||
|
|
||||||
|
//잔액 합계
|
||||||
|
BigDecimal blceSum = service.selectBOMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("blceSum", blceSum);
|
||||||
|
//30일이내 소멸예정 합계
|
||||||
|
BigDecimal endInMnthBlceSum = service.selectBOEndInMnthMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("endInMnthBlceSum", endInMnthBlceSum);
|
||||||
|
|
||||||
|
// 적립 예정 마일리지
|
||||||
|
String accmlPrearngeSum = service.selectBOAccmlPrearngeSum(boMlgSrchVO);
|
||||||
|
content.put("accmlPrearngeSum", accmlPrearngeSum);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgManagePopupForm", vo),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("cnsltVO",cnsltVO);
|
model.addAttribute("cnsltVO",cnsltVO);
|
||||||
return "crm/mlg/MlgDtlsRForm";
|
return "crm/mlg/MlgDtlsRForm";
|
||||||
}
|
}
|
||||||
@@ -81,37 +175,152 @@ public class CrmMlgController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMlgDtlsInqire")
|
@RequestMapping(value = "/selectMlgDtlsInqire")
|
||||||
public String selectMlgDtlsInqire(CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMlgDtlsInqire(BOMlgSrchVO boMlgSrchVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
boMlgSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
|
if ("sopmal".equals(boMlgSrchVO.getServerDv())) {
|
||||||
|
boMlgSrchVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
boMlgSrchVO.setMbrInnb(user.getUserInnb());
|
||||||
|
}
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
if("01".equals(user.getSysDvCd())){
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgListInqire", vo),
|
boMlgSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
model,
|
}
|
||||||
"resultMap"
|
|
||||||
);
|
//페이징 처리를 위한 pagination 객체 생성
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(boMlgSrchVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(boMlgSrchVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
//페이징 처리를 위한 값 설정
|
||||||
|
boMlgSrchVO.setPaginationInfo(paginationInfo);
|
||||||
|
boMlgSrchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
boMlgSrchVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
boMlgSrchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
// 목록 조회
|
||||||
|
List<DataMap> resultList = null;
|
||||||
|
resultList = service.selectBOMlgListInqire(boMlgSrchVO);
|
||||||
|
|
||||||
|
//마일리지 목록 조회 결과 및 페이징정보 넣기
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paginationInfo", boMlgSrchVO.getPaginationInfo());
|
||||||
|
content.put("resultList",resultList);
|
||||||
|
|
||||||
|
//회원정보
|
||||||
|
DataMap mbr = new DataMap();
|
||||||
|
mbr.put("secretKey", boCommonService.selectSecretkey());
|
||||||
|
mbr.put("mbrInnb", boMlgSrchVO.getMbrInnb());
|
||||||
|
mbr.put("mbrDvCd", boMlgSrchVO.getMbrDvCd());
|
||||||
|
DataMap mbrInfo = new DataMap();
|
||||||
|
mbrInfo = boMbrService.selectSimpleMbrInfo(mbr);
|
||||||
|
content.put("mbrInfo", mbrInfo);
|
||||||
|
content.put("mlgSrchVo", boMlgSrchVO);
|
||||||
|
|
||||||
|
//잔액 합계
|
||||||
|
BigDecimal blceSum = service.selectBOMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("blceSum", blceSum);
|
||||||
|
|
||||||
|
//30일이내 소멸예정 합계
|
||||||
|
BigDecimal endInMnthBlceSum = service.selectBOEndInMnthMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("endInMnthBlceSum", endInMnthBlceSum);
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
//마일리지 적용 사유 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_ACCML_DV");
|
||||||
|
List<?> mlgAccmlDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
content.put("mlgAccmlDv", mlgAccmlDv);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgListInqire", vo),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mlg/MlgDtlsR";
|
return "crm/mlg/MlgDtlsR";
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 마일리지 팝업 목록 검색 폼
|
* 마일리지 팝업 목록 검색 폼
|
||||||
* @param mlgSrchVO
|
* @param boMlgSrchVO
|
||||||
* @return String
|
* @return String
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value="/selectMlgManagePopupForm")
|
@RequestMapping(value="/selectMlgManagePopupForm")
|
||||||
public String selectMlgManagePopupForm(ModelMap model,MlgSrchVO mlgSrchVO, @CookieValue(value = "authSopmalCd") String authSopmalCd){
|
public String selectMlgManagePopupForm(ModelMap model,BOMlgSrchVO boMlgSrchVO, @CookieValue(value = "authSopmalCd") String authSopmalCd){
|
||||||
mlgSrchVO.setSopmalCd(authSopmalCd);
|
boMlgSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
if ("sopmal".equals(boMlgSrchVO.getServerDv())) {
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgManagePopupForm", mlgSrchVO),
|
boMlgSrchVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
model,
|
boMlgSrchVO.setMbrInnb(user.getUserInnb());
|
||||||
"resultMap"
|
}
|
||||||
);
|
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
boMlgSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
//마일리지 적립 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_ACCML_DV");
|
||||||
|
List<?> mlgAccmlDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
//마일리지 적용 사유 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_APPLC_DV");
|
||||||
|
List<?> mlgApplcDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
//마일리지 지급/차감 구분
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_DV");
|
||||||
|
List<?> mlgDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
List<?> sopmalList = sopmalService.selectBOSopmalCdNm();
|
||||||
|
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
DataMap content = new DataMap();
|
||||||
|
content.put("paramVO", boMlgSrchVO);
|
||||||
|
content.put("mlgAccmlDv", mlgAccmlDv);
|
||||||
|
content.put("mlgApplcDv", mlgApplcDv);
|
||||||
|
content.put("mlgDv", mlgDv);
|
||||||
|
content.put("sopmalList", sopmalList);
|
||||||
|
//관리자명
|
||||||
|
content.put("mngrId", user.getMbrId());
|
||||||
|
DataMap mngrInfoParamMap = new DataMap();
|
||||||
|
mngrInfoParamMap.put("mngrId", user.getMbrId());
|
||||||
|
mngrInfoParamMap.put("mngrInnb", user.getUserInnb());
|
||||||
|
content.put("mngrNm", service.selectBOMlgMngrInfoInqire(mngrInfoParamMap));
|
||||||
|
|
||||||
|
//회원명
|
||||||
|
content.put("mbrInfoMap", service.selectBOMlgMbrInfoInqire(boMlgSrchVO));
|
||||||
|
|
||||||
|
//마일리지 기본 유효기간 조회
|
||||||
|
content.put("mlgValidPd", service.selectBOMlgValidPd(boMlgSrchVO));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//잔액 합계
|
||||||
|
BigDecimal blceSum = service.selectBOMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("blceSum", blceSum);
|
||||||
|
//30일이내 소멸예정 합계
|
||||||
|
BigDecimal endInMnthBlceSum = service.selectBOEndInMnthMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("endInMnthBlceSum", endInMnthBlceSum);
|
||||||
|
|
||||||
|
// 적립 예정 마일리지
|
||||||
|
String accmlPrearngeSum = service.selectBOAccmlPrearngeSum(boMlgSrchVO);
|
||||||
|
content.put("accmlPrearngeSum", accmlPrearngeSum);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgManagePopupForm", mlgSrchVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
//BO 회원 목록조회 API 결과를 Map으로 변환하여 설정
|
//BO 회원 목록조회 API 결과를 Map으로 변환하여 설정
|
||||||
model.addAttribute("mbrSrchVO",mlgSrchVO);
|
model.addAttribute("mbrSrchVO",boMlgSrchVO);
|
||||||
|
|
||||||
return "mngr/mbr/MlgManagePopupCForm";
|
return "mngr/mbr/MlgManagePopupCForm";
|
||||||
}
|
}
|
||||||
@@ -122,14 +331,72 @@ public class CrmMlgController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectMlgDtlsPopupInqire")
|
@RequestMapping(value = "/selectMlgDtlsPopupInqire")
|
||||||
public String selectMlgDtlsPopupInqire(CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectMlgDtlsPopupInqire(BOMlgSrchVO boMlgSrchVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
boMlgSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
if ("sopmal".equals(boMlgSrchVO.getServerDv())) {
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgListInqire", vo),
|
boMlgSrchVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
model,
|
boMlgSrchVO.setMbrInnb(user.getUserInnb());
|
||||||
"resultMap"
|
}
|
||||||
);
|
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
boMlgSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
|
||||||
|
//페이징 처리를 위한 pagination 객체 생성
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(boMlgSrchVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(boMlgSrchVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
//페이징 처리를 위한 값 설정
|
||||||
|
boMlgSrchVO.setPaginationInfo(paginationInfo);
|
||||||
|
boMlgSrchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
boMlgSrchVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
boMlgSrchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
// 목록 조회
|
||||||
|
List<DataMap> resultList = null;
|
||||||
|
resultList = service.selectBOMlgListInqire(boMlgSrchVO);
|
||||||
|
|
||||||
|
//마일리지 목록 조회 결과 및 페이징정보 넣기
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("paginationInfo", boMlgSrchVO.getPaginationInfo());
|
||||||
|
content.put("resultList",resultList);
|
||||||
|
|
||||||
|
//회원정보
|
||||||
|
DataMap mbr = new DataMap();
|
||||||
|
mbr.put("secretKey", boCommonService.selectSecretkey());
|
||||||
|
mbr.put("mbrInnb", boMlgSrchVO.getMbrInnb());
|
||||||
|
mbr.put("mbrDvCd", boMlgSrchVO.getMbrDvCd());
|
||||||
|
DataMap mbrInfo = new DataMap();
|
||||||
|
mbrInfo = boMbrService.selectSimpleMbrInfo(mbr);
|
||||||
|
content.put("mbrInfo", mbrInfo);
|
||||||
|
content.put("mlgSrchVo", boMlgSrchVO);
|
||||||
|
|
||||||
|
//잔액 합계
|
||||||
|
BigDecimal blceSum = service.selectBOMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("blceSum", blceSum);
|
||||||
|
|
||||||
|
//30일이내 소멸예정 합계
|
||||||
|
BigDecimal endInMnthBlceSum = service.selectBOEndInMnthMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("endInMnthBlceSum", endInMnthBlceSum);
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
//마일리지 적용 사유 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_ACCML_DV");
|
||||||
|
List<?> mlgAccmlDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
content.put("mlgAccmlDv", mlgAccmlDv);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgListInqire", vo),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "mngr/mbr/MlgManagePopupR";
|
return "mngr/mbr/MlgManagePopupR";
|
||||||
}
|
}
|
||||||
@@ -140,15 +407,83 @@ public class CrmMlgController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/insertCrmMlgMngrUpDn")
|
@RequestMapping(value = "/insertCrmMlgMngrUpDn", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> insertCrmMlgMngrUp(CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> insertCrmMlgMngrUp(BOMlgVO mlgVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
mlgVO.setSopmalCd(authSopmalCd);
|
||||||
log.debug("CrmMlgVO {}", vo);
|
log.debug("CrmMlgVO {}", mlgVO);
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
mlgVO.setRegusr(user.getUserInnb());
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
if("01".equals(user.getSysDvCd())){
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/insertBOMlgMngrUpDn", vo),
|
mlgVO.setSopmalCd(user.getSopmalCd());
|
||||||
ReplyFromResrc::getReply
|
}
|
||||||
|
|
||||||
|
//마일리지 적용 로직
|
||||||
|
DataMap message = new DataMap();
|
||||||
|
|
||||||
|
//등록자 구분 - 02 관리자
|
||||||
|
mlgVO.setRegusrDvCd("02");
|
||||||
|
|
||||||
|
//01 : 지급, 02 : 차감
|
||||||
|
if("01".equals(mlgVO.getMlgDvCd())) {
|
||||||
|
message = service.insertBOMngrMlgUp(mlgVO);
|
||||||
|
} else {
|
||||||
|
message = service.insertBOMngrMlgDn(mlgVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
//문자 발송
|
||||||
|
if(!"".equals(StringUtil.isNullToString(mlgVO.getMlgSmsCn()))) {
|
||||||
|
DataMap dataMap = new DataMap();
|
||||||
|
//dataMap.put("")
|
||||||
|
BOMssageVO boMssageVO = new BOMssageVO();
|
||||||
|
boMssageVO.setSopmalCd(mlgVO.getSopmalCd());
|
||||||
|
boMssageVO.setRegusr(user.getUserInnb());
|
||||||
|
boMssageVO.setCn(mlgVO.getMlgSmsCn());
|
||||||
|
DataMap sndngNbMap = boMssageService.selectBOShopNb(boMssageVO);
|
||||||
|
String sndngNb = StringUtil.isNullToString(sndngNbMap.get("smsAtmcSndngDsptchNb"));
|
||||||
|
boMssageVO.setSndngNb(sndngNb);
|
||||||
|
boMssageVO.setRegusrDv("02");
|
||||||
|
boMssageVO.setSmsNm("surem");
|
||||||
|
boMssageVO.setRecptnNb(mlgVO.getMbtlnb());
|
||||||
|
boMssageVO.setSndngIdnb(BigInteger.ZERO);
|
||||||
|
boMssageVO.setSttus("REG");
|
||||||
|
boMssageVO.setStrInnb(BigInteger.ZERO);
|
||||||
|
boMssageVO.setStrNm("");
|
||||||
|
boMssageVO.setStrDv("");
|
||||||
|
boMssageVO.setCstmrNm(StringUtil.isNullToString(mlgVO.getMbrNm()));
|
||||||
|
String mbrInnb = mlgVO.getMbrInnb();
|
||||||
|
boMssageVO.setCstmrIdnb(!"".equals(mbrInnb) ? new BigInteger(mbrInnb) : BigInteger.ZERO);
|
||||||
|
|
||||||
|
DataMap mssageRslt = boMssageService.insertBOMssageSndng(boMssageVO);
|
||||||
|
|
||||||
|
DataMap paramMap = new DataMap();
|
||||||
|
paramMap.put("srchSmsInnb", boMssageVO.getSmsInnb());
|
||||||
|
List<String> srchSttusList = new ArrayList<String>();
|
||||||
|
srchSttusList.add("REG");
|
||||||
|
paramMap.put("srchSttus", srchSttusList);
|
||||||
|
DataMap messageSureInsert = new DataMap();
|
||||||
|
messageSureInsert = boMssageService.insertBOMssageSureReigst(paramMap);
|
||||||
|
message.put("messageSureInsert", messageSureInsert);
|
||||||
|
DataMap cntResult = new DataMap();
|
||||||
|
DataMap syncResult = new DataMap();
|
||||||
|
//대상 수 재설정
|
||||||
|
cntResult = boMssageService.updateBOMssageSureCnt(paramMap);
|
||||||
|
|
||||||
|
//싱크
|
||||||
|
syncResult = boMssageService.updateBOMssageSync(paramMap);
|
||||||
|
message.put("syncResult", syncResult);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/insertBOMlgMngrUpDn", vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -157,15 +492,31 @@ public class CrmMlgController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/updateCrmMlgUsePosblEndDt")
|
@RequestMapping(value = "/updateCrmMlgUsePosblEndDt", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> updateCrmMlgUsePosblEndDt(CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public ResponseEntity<WnbtResponse> updateCrmMlgUsePosblEndDt(BOMlgVO mlgVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
mlgVO.setSopmalCd(authSopmalCd);
|
||||||
log.debug("CrmMlgVO {}", vo);
|
log.debug("CrmMlgVO {}", mlgVO);
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
// 사용자 정보 추출 및 적용
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/updateBOMlgUsePosblEndDt", vo),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
mlgVO.setUpdusr(user.getUserInnb());
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
mlgVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
|
||||||
|
// service 호출
|
||||||
|
DataMap message = new DataMap();
|
||||||
|
message = service.updateBOMlgUsePosblEndDt(mlgVO);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/updateBOMlgUsePosblEndDt", vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -174,7 +525,7 @@ public class CrmMlgController {
|
|||||||
******/
|
******/
|
||||||
/**
|
/**
|
||||||
* 포스 마일리지 테스트 페이지
|
* 포스 마일리지 테스트 페이지
|
||||||
* @param WithdrawalVO
|
* @param mlgSrchVO
|
||||||
* @return String
|
* @return String
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@@ -186,38 +537,38 @@ public class CrmMlgController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 포스 마일리지 적립
|
* 포스 마일리지 적립
|
||||||
* @param boMlgVO
|
* @param vo
|
||||||
* @return ResponseEntity<?>
|
* @return ResponseEntity<?>
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
// @Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/insertPosMlgAdd")
|
// @RequestMapping(value = "/insertPosMlgAdd")
|
||||||
public ResponseEntity<?> insertPosMlgAdd(@RequestBody PosReqVO vo) {
|
// public ResponseEntity<?> insertPosMlgAdd(@RequestBody PosReqVO vo) {
|
||||||
|
//
|
||||||
log.debug("마일리지 적용 파라미터 확인{}",vo);
|
// log.debug("마일리지 적용 파라미터 확인{}",vo);
|
||||||
|
//
|
||||||
return responseHandler.handleResponse(
|
// return responseHandler.handleResponse(
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/insertBOPosMlgAdd", vo),
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/insertBOPosMlgAdd", vo),
|
||||||
ReplyFromResrc::getReply
|
// ReplyFromResrc::getReply
|
||||||
);
|
// );
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 포스 마일리지 환불 여부 확인
|
* 포스 마일리지 환불 여부 확인
|
||||||
* @param boMlgVO
|
* @param map
|
||||||
* @return ResponseEntity<?>
|
* @return ResponseEntity<?>
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
// @Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/selectChkPosRefundable")
|
// @RequestMapping(value = "/selectChkPosRefundable")
|
||||||
public ResponseEntity<?> selectChkPosRefundable(@RequestBody HashMap<String, Object> map, HttpSession session) {
|
// public ResponseEntity<?> selectChkPosRefundable(@RequestBody HashMap<String, Object> map, HttpSession session) {
|
||||||
|
//
|
||||||
log.debug("마일리지 적용 파라미터 확인{}",map);
|
// log.debug("마일리지 적용 파라미터 확인{}",map);
|
||||||
|
//
|
||||||
return responseHandler.handleResponse(
|
// return responseHandler.handleResponse(
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOPosChkRefundable", map),
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOPosChkRefundable", map),
|
||||||
ReplyFromResrc::getReply
|
// ReplyFromResrc::getReply
|
||||||
);
|
// );
|
||||||
}
|
// }
|
||||||
|
|
||||||
/********
|
/********
|
||||||
* 충전형 마일리지
|
* 충전형 마일리지
|
||||||
@@ -229,15 +580,72 @@ public class CrmMlgController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCashDtlsForm")
|
@RequestMapping(value = "/selectCashDtlsForm")
|
||||||
public String selectCashDtlsForm(CrmCnsltVO cnsltVO, CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCashDtlsForm(CrmCnsltVO cnsltVO, BOMlgSrchVO boMlgSrchVO, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
boMlgSrchVO.setSopmalCd(authSopmalCd);
|
||||||
|
//사용자 정보 추출 및 적용
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
|
if ("sopmal".equals(boMlgSrchVO.getServerDv())) {
|
||||||
|
boMlgSrchVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
boMlgSrchVO.setMbrInnb(user.getUserInnb());
|
||||||
|
}
|
||||||
|
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
boMlgSrchVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
//마일리지 적립 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_ACCML_DV");
|
||||||
|
List<?> mlgAccmlDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
//마일리지 적용 사유 구분 코드
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_APPLC_DV");
|
||||||
|
List<?> mlgApplcDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
//마일리지 지급/차감 구분
|
||||||
|
bOMaComncdVO.setGroupCd("MLG_DV");
|
||||||
|
List<?> mlgDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
List<?> sopmalList = sopmalService.selectBOSopmalCdNm();
|
||||||
|
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// Map객체에 필요 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgManagePopupForm", vo),
|
DataMap content = new DataMap();
|
||||||
model,
|
content.put("paramVO", boMlgSrchVO);
|
||||||
"resultMap"
|
content.put("mlgAccmlDv", mlgAccmlDv);
|
||||||
);
|
content.put("mlgApplcDv", mlgApplcDv);
|
||||||
|
content.put("mlgDv", mlgDv);
|
||||||
|
content.put("sopmalList", sopmalList);
|
||||||
|
//관리자명
|
||||||
|
content.put("mngrId", user.getMbrId());
|
||||||
|
DataMap mngrInfoParamMap = new DataMap();
|
||||||
|
mngrInfoParamMap.put("mngrId", user.getMbrId());
|
||||||
|
mngrInfoParamMap.put("mngrInnb", user.getUserInnb());
|
||||||
|
content.put("mngrNm", service.selectBOMlgMngrInfoInqire(mngrInfoParamMap));
|
||||||
|
|
||||||
|
//회원명
|
||||||
|
content.put("mbrInfoMap", service.selectBOMlgMbrInfoInqire(boMlgSrchVO));
|
||||||
|
|
||||||
|
//마일리지 기본 유효기간 조회
|
||||||
|
content.put("mlgValidPd", service.selectBOMlgValidPd(boMlgSrchVO));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//잔액 합계
|
||||||
|
BigDecimal blceSum = service.selectBOMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("blceSum", blceSum);
|
||||||
|
//30일이내 소멸예정 합계
|
||||||
|
BigDecimal endInMnthBlceSum = service.selectBOEndInMnthMlgBlceSum(boMlgSrchVO);
|
||||||
|
content.put("endInMnthBlceSum", endInMnthBlceSum);
|
||||||
|
|
||||||
|
// 적립 예정 마일리지
|
||||||
|
String accmlPrearngeSum = service.selectBOAccmlPrearngeSum(boMlgSrchVO);
|
||||||
|
content.put("accmlPrearngeSum", accmlPrearngeSum);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOMlgManagePopupForm", vo),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("cnsltVO", cnsltVO);
|
model.addAttribute("cnsltVO", cnsltVO);
|
||||||
return "crm/mlg/CashDtlsRForm";
|
return "crm/mlg/CashDtlsRForm";
|
||||||
}
|
}
|
||||||
@@ -250,15 +658,54 @@ public class CrmMlgController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/selectCashDtlsInqire")
|
@RequestMapping(value = "/selectCashDtlsInqire")
|
||||||
public String selectCashDtlsInqire(CrmMlgVO vo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
public String selectCashDtlsInqire(BOCashVO cashVo, ModelMap model, @CookieValue(value = "authSopmalCd") String authSopmalCd) {
|
||||||
vo.setSopmalCd(authSopmalCd);
|
cashVo.setSopmalCd(authSopmalCd);
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
cashVo.setSopmalCd(user.getSopmalCd());
|
||||||
|
cashVo.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
cashVo.setMbrInnb(String.valueOf(user.getUserInnb()));
|
||||||
|
}
|
||||||
|
//페이징 처리를 위한 pagination 객체 생성
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(cashVo.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(cashVo.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
cashVo.setPaginationInfo(paginationInfo);
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
//페이징 처리를 위한 값 설정
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOCashList", vo),
|
cashVo.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
model,
|
cashVo.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
"resultMap"
|
cashVo.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
);
|
|
||||||
|
// service 호출
|
||||||
|
//회원정보
|
||||||
|
DataMap mbr = new DataMap();
|
||||||
|
mbr.put("secretKey", boCommonService.selectSecretkey());
|
||||||
|
mbr.put("mbrInnb", cashVo.getMbrInnb());
|
||||||
|
mbr.put("mbrDvCd", cashVo.getMbrDvCd());
|
||||||
|
DataMap mbrInfo = new DataMap();
|
||||||
|
mbrInfo = boMbrService.selectSimpleMbrInfo(mbr);
|
||||||
|
|
||||||
|
// 충전형 마일리지 목록 조회
|
||||||
|
List<DataMap> cashList = service.selectBOCashList(cashVo);
|
||||||
|
|
||||||
|
//충전형 마일리지 잔액 조회
|
||||||
|
BigDecimal blce = service.selectBOCashBlce(cashVo);
|
||||||
|
|
||||||
|
DataMap content = new DataMap();
|
||||||
|
content.put("cashList", cashList);
|
||||||
|
content.put("paginationInfo", paginationInfo);
|
||||||
|
content.put("mbrInfo", mbrInfo);
|
||||||
|
content.put("blce", blce);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mlg/selectBOCashList", vo),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
return "crm/mlg/CashDtlsR";
|
return "crm/mlg/CashDtlsR";
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -56,5 +56,11 @@ public class BOAppMbrDvcVO {
|
|||||||
private String deviceOsVer;
|
private String deviceOsVer;
|
||||||
/** 앱 버전 */
|
/** 앱 버전 */
|
||||||
private String deviceAppVer;
|
private String deviceAppVer;
|
||||||
|
/** 딥링크 타입 */
|
||||||
|
private String linkType;
|
||||||
|
/** 혜택 구분 코드 */
|
||||||
|
private String bnfDvCd;
|
||||||
|
/** 스토어 고유번호 */
|
||||||
|
private String strInnb;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,9 +40,9 @@ public class BOCmVO extends AbstractVO {
|
|||||||
* 작성자ID
|
* 작성자ID
|
||||||
*/
|
*/
|
||||||
private String regusrId;
|
private String regusrId;
|
||||||
/**
|
/** 작성자명 */
|
||||||
* 작성자명
|
@NotBlank(message = "작성자명")
|
||||||
*/
|
@Length(min = 0, max = 25, message = "작성자명")
|
||||||
private String regusrNm;
|
private String regusrNm;
|
||||||
/**
|
/**
|
||||||
* DEPTH
|
* DEPTH
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.wb.domainserver.domain.gcone.bbs.cnslt.vo;
|
|||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
@@ -57,6 +58,8 @@ public class BOCnsltVO extends AbstractVO{
|
|||||||
private String cnsltCl;
|
private String cnsltCl;
|
||||||
/** 관련주문번호 */
|
/** 관련주문번호 */
|
||||||
private String ordrNb;
|
private String ordrNb;
|
||||||
|
/** 관련주문번호 */
|
||||||
|
private String ordrInnb;
|
||||||
/** 출고코드 */
|
/** 출고코드 */
|
||||||
private String dlivyInnb;
|
private String dlivyInnb;
|
||||||
/** 반품코드 */
|
/** 반품코드 */
|
||||||
@@ -72,19 +75,26 @@ public class BOCnsltVO extends AbstractVO{
|
|||||||
/** 처리일시 */
|
/** 처리일시 */
|
||||||
private String procsDt;
|
private String procsDt;
|
||||||
/** 상담내용 */
|
/** 상담내용 */
|
||||||
|
@NotBlank(message="상담내용")
|
||||||
private String cnsltCn;
|
private String cnsltCn;
|
||||||
/** 전화구분코드 */
|
/** 전화구분코드 */
|
||||||
|
@NotBlank(message="인콜/아웃콜")
|
||||||
private String telnbDvCd;
|
private String telnbDvCd;
|
||||||
/** 대분류 */
|
/** 대분류 */
|
||||||
|
@NotBlank(message="대분류")
|
||||||
private String lrgeCl;
|
private String lrgeCl;
|
||||||
/** 중분류 */
|
/** 중분류 */
|
||||||
|
@NotBlank(message="중분류")
|
||||||
private String middlCl;
|
private String middlCl;
|
||||||
/** 소분류 */
|
/** 소분류 */
|
||||||
private String smllCl;
|
private String smllCl;
|
||||||
/** 녹취 key */
|
/** 녹취 key */
|
||||||
private String recrdKy;
|
private String recrdKy;
|
||||||
/** 전화번호 */
|
/** 전화번호 */
|
||||||
|
@NotBlank(message="전화번호")
|
||||||
private String telnb;
|
private String telnb;
|
||||||
|
/** 회원명 이메일*/
|
||||||
|
private String email;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -126,4 +136,8 @@ public class BOCnsltVO extends AbstractVO{
|
|||||||
/*crm인지, 통합게시판인지 판단 => bo join에 씀*/
|
/*crm인지, 통합게시판인지 판단 => bo join에 씀*/
|
||||||
private String crmAt;
|
private String crmAt;
|
||||||
|
|
||||||
|
private String ctiAt;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
package com.wb.domainserver.domain.gcone.bbs.gnrlbbsctt.vo;
|
package com.wb.domainserver.domain.gcone.bbs.gnrlbbsctt.vo;
|
||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
import com.wb.domainserver.domain.sopmal.mpage.act.vo.BbsFormAnswVO;
|
||||||
|
import com.wb.domainserver.domain.sopmal.mpage.act.vo.BbsFormVO;
|
||||||
|
import com.wb.domainserver.domain.sopmal.mpage.act.vo.DelInfoVO;
|
||||||
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
@@ -34,6 +37,14 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
private BigInteger parntsBbscttInnb;
|
private BigInteger parntsBbscttInnb;
|
||||||
/** 게시판ID */
|
/** 게시판ID */
|
||||||
private String bbsId;
|
private String bbsId;
|
||||||
|
/** 게시판 고유번호 */
|
||||||
|
private Integer bbsInnb;
|
||||||
|
/** 판매상품 고유번호 */
|
||||||
|
private Integer sleGoodsInnb;
|
||||||
|
/** 주문상품고유번호 */
|
||||||
|
private Integer ordrGoodsInnb;
|
||||||
|
/** 주문상품옵션구분코드 */
|
||||||
|
private String ordrGoodsOptnDvCd;
|
||||||
|
|
||||||
/** 회원고유번호 */
|
/** 회원고유번호 */
|
||||||
private Integer mbrInnb;
|
private Integer mbrInnb;
|
||||||
@@ -49,6 +60,10 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
private String regusrNm;
|
private String regusrNm;
|
||||||
/*관리자 명*/
|
/*관리자 명*/
|
||||||
private String mngrNm;
|
private String mngrNm;
|
||||||
|
/** (등록아이디) */
|
||||||
|
private String mbrid;
|
||||||
|
/** (등록자명) */
|
||||||
|
private String mbrNm;
|
||||||
/** 비밀번호 */
|
/** 비밀번호 */
|
||||||
@Length(min = 0, max = 20, message = "비밀번호")
|
@Length(min = 0, max = 20, message = "비밀번호")
|
||||||
private String password;
|
private String password;
|
||||||
@@ -62,8 +77,14 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
private String cn;
|
private String cn;
|
||||||
/** 조회건수 */
|
/** 조회건수 */
|
||||||
private Integer inqireCnt;
|
private Integer inqireCnt;
|
||||||
|
/** 댓글건수 */
|
||||||
|
private Integer cmCnt;
|
||||||
/** 댓글사용여부 */
|
/** 댓글사용여부 */
|
||||||
private String cmUseAt;
|
private String cmUseAt;
|
||||||
|
/** 평균점수 */
|
||||||
|
private Integer avrgScore;
|
||||||
|
/** 에디터 사용여부 */
|
||||||
|
private String editrUseAt;
|
||||||
/*추천,비추천 구분*/
|
/*추천,비추천 구분*/
|
||||||
private String recomendDv;
|
private String recomendDv;
|
||||||
/** 추천건수 */
|
/** 추천건수 */
|
||||||
@@ -130,6 +151,8 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
private String useAt;
|
private String useAt;
|
||||||
/** 삭제작업자 */
|
/** 삭제작업자 */
|
||||||
private Integer delusr;
|
private Integer delusr;
|
||||||
|
/** 삭제여부 */
|
||||||
|
private String delAt;
|
||||||
/** 삭제일시 */
|
/** 삭제일시 */
|
||||||
private Date delDt;
|
private Date delDt;
|
||||||
|
|
||||||
@@ -288,6 +311,8 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
private BigInteger ordrInnb;
|
private BigInteger ordrInnb;
|
||||||
/*상품고유번호배열*/
|
/*상품고유번호배열*/
|
||||||
private List<String> goodsInnbArr;
|
private List<String> goodsInnbArr;
|
||||||
|
/*주문고유번호*/
|
||||||
|
private String[] ordrInnbArr;
|
||||||
/*주문상품옵션고유번호*/
|
/*주문상품옵션고유번호*/
|
||||||
private String ordrGoodsOptnInnb;
|
private String ordrGoodsOptnInnb;
|
||||||
/*주문상품옵션고유번호 배열*/
|
/*주문상품옵션고유번호 배열*/
|
||||||
@@ -350,6 +375,9 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
/*sms 관련*/
|
/*sms 관련*/
|
||||||
private String bbscttSndngDvCd;
|
private String bbscttSndngDvCd;
|
||||||
|
|
||||||
|
/** 노출등록자이름 */
|
||||||
|
private Integer expsrRegusrNm;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 리뷰
|
* 리뷰
|
||||||
*/
|
*/
|
||||||
@@ -419,4 +447,73 @@ public class BOGnrlbbscttVO extends AbstractVO {
|
|||||||
private String cnScript;
|
private String cnScript;
|
||||||
/*서브페이지 고객센터 표시 여부*/
|
/*서브페이지 고객센터 표시 여부*/
|
||||||
private String cscAt;
|
private String cscAt;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 추가 답변 내용 (FM_BOARD_ADDITM)
|
||||||
|
private List<BbsFormAnswVO> bbsFormAnswList;
|
||||||
|
|
||||||
|
//게시글 정보 (FM_BOARDMANAGER)
|
||||||
|
/** 비밀글 사용여부 */
|
||||||
|
private Boolean secretBbcttUseAt;
|
||||||
|
|
||||||
|
// 상품정보 (fm_shop_goods)
|
||||||
|
/** 상품 이름 */
|
||||||
|
private String goodsNm;
|
||||||
|
/** 상품 설명 */
|
||||||
|
private String goodsDc;
|
||||||
|
/** 상품 간략설명 */
|
||||||
|
private String srtDc;
|
||||||
|
/** 상품 가격 */
|
||||||
|
private Integer slePric;
|
||||||
|
|
||||||
|
// 상품이미지 정보(fm_goods_image)
|
||||||
|
/** 상품 이미지 위치 */
|
||||||
|
private String img;
|
||||||
|
|
||||||
|
// 리뷰 댓글정보(fm_boardcomment)
|
||||||
|
/** 댓글 고유번호*/
|
||||||
|
private Integer cmInnb;
|
||||||
|
/** 댓글 등록자 구분 */
|
||||||
|
private String commetRegusrDv;
|
||||||
|
/** 댓글 작성자 */
|
||||||
|
private String commetMbrNm;
|
||||||
|
/** 댓글 작성자 아이디*/
|
||||||
|
private String commetmbrId;
|
||||||
|
/** 댓글 ip*/
|
||||||
|
private String commetIp;
|
||||||
|
/** 댓글 내용 */
|
||||||
|
private String commetCn;
|
||||||
|
/** 댓글 등록일 */
|
||||||
|
private String commetRegustDt;
|
||||||
|
|
||||||
|
// 검색조건
|
||||||
|
/** 검색어*/
|
||||||
|
private String searchWord;
|
||||||
|
/** 비밀글 제외 여부*/
|
||||||
|
private String serchSecrtBbscttUseAt;
|
||||||
|
/** 삭제글 제외 여부 */
|
||||||
|
private String serchDelAt;
|
||||||
|
/** 사진포함 여부*/
|
||||||
|
private String serchPhotoRvwAt;
|
||||||
|
/** 검색 시작일*/
|
||||||
|
private String saerchStatrDate;
|
||||||
|
/** 검색 종료일*/
|
||||||
|
private String saerchEndDate;
|
||||||
|
/** 세부항목 검색(내용 고유번호)*/
|
||||||
|
private String[] searchFormItm;
|
||||||
|
/** 베스트 후기 포함 여부*/
|
||||||
|
private String searchBstAt;
|
||||||
|
/** 네이버페이 포함 여부*/
|
||||||
|
private String searchNpayAt;
|
||||||
|
/** 주문번호 검색*/
|
||||||
|
private String searchOrderInnb;
|
||||||
|
/** 댓글 여부*/
|
||||||
|
private String searchCommetAt;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,4 +73,9 @@ public class BOPromVO {
|
|||||||
private int lastIndex; // 마지막 인덱스
|
private int lastIndex; // 마지막 인덱스
|
||||||
private int recordCountPerPage; // 페이지당 레코드 수
|
private int recordCountPerPage; // 페이지당 레코드 수
|
||||||
private PaginationInfo paginationInfo; // 페이징 정보
|
private PaginationInfo paginationInfo; // 페이징 정보
|
||||||
|
|
||||||
|
// 추가 유틸리티 필드
|
||||||
|
private String joinYn; // 참여여부 (Y/N) - 조회용
|
||||||
|
private String winYn; // 당첨여부 (Y/N) - 조회용
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
package com.wb.domainserver.domain.gcone.goods.goods.vo;
|
package com.wb.domainserver.domain.gcone.goods.goods.vo;
|
||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
import com.wb.domainserver.domain.sopmal.goods.vo.GoodsAdditionVO;
|
||||||
|
import com.wb.domainserver.domain.sopmal.goods.vo.GoodsIconVO;
|
||||||
import jakarta.validation.constraints.NotBlank;
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
@@ -534,4 +536,89 @@ public class BOGoodsVO extends AbstractVO {
|
|||||||
/*상품 순서*/
|
/*상품 순서*/
|
||||||
private int goodsOrdr;
|
private int goodsOrdr;
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 상품 GOODS START
|
||||||
|
* **********************************/
|
||||||
|
/** 가격대체문구사용여부 */
|
||||||
|
private String pricRplcWordsUseAt;
|
||||||
|
/** 가격대체문구 */
|
||||||
|
private String pricRplcWords;
|
||||||
|
/** 버튼대체문구사용여부 */
|
||||||
|
private String buttonRplcWordsUseAt;
|
||||||
|
/** 버튼대체문구 */
|
||||||
|
private String buttonRplcWords;
|
||||||
|
/** 버튼대체문구링크URL */
|
||||||
|
private String buttonRplcWordsUrl;
|
||||||
|
/** 버튼대체문구링크구분 */
|
||||||
|
private String buttonRplcWordsDvCd;
|
||||||
|
/** 결제수단설정 */
|
||||||
|
private String setleMnSetupCd;
|
||||||
|
/** 예약상품재고수 */
|
||||||
|
private long resveGoodsInvntryCnt;
|
||||||
|
/*************************************
|
||||||
|
* 상품 GOODS END
|
||||||
|
* **********************************/
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 옵션 GOODS_OPTION START
|
||||||
|
* **********************************/
|
||||||
|
/** 옵션 코드 */
|
||||||
|
private String optnCd;
|
||||||
|
/** 옵션별가격 1 */
|
||||||
|
private double acctoOptnPric1;
|
||||||
|
/** 옵션별가격 2 */
|
||||||
|
private double acctoOptnPric2;
|
||||||
|
/** 옵션별가격 3 */
|
||||||
|
private double acctoOptnPric3;
|
||||||
|
/** 옵션별가격 4 */
|
||||||
|
private double acctoOptnPric4;
|
||||||
|
/** 마일리지적립구분코드 */
|
||||||
|
private double mlgAccmlRt;
|
||||||
|
/** 구매자별 추가혜택여부 */
|
||||||
|
private String purchsrAcctoAditBnefAt;
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 옵션 GOODS_OPTION END
|
||||||
|
* **********************************/
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 배너 SHOP_GOODS_BANNER START
|
||||||
|
* **********************************/
|
||||||
|
|
||||||
|
/** 배너고유번호*/
|
||||||
|
private long bannerInnb;
|
||||||
|
/*************************************
|
||||||
|
* 배너 SHOP_GOODS_BANNER END
|
||||||
|
* **********************************/
|
||||||
|
|
||||||
|
|
||||||
|
private List<GoodsIconVO> goodsIconVOList;
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 카테고리연결 CATEGORY_LINK START
|
||||||
|
* **********************************/
|
||||||
|
/** 카테고리연결상품고유번호 */
|
||||||
|
private long ctgryGoodsEsntlNb;
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 카테고리연결 CATEGORY_LINK END
|
||||||
|
* **********************************/
|
||||||
|
/** 입력옵션 텍스트 */
|
||||||
|
private String inputOptnText;
|
||||||
|
|
||||||
|
/*************************************
|
||||||
|
* 상품수정로그 FM_GOODS_ADMIN_LOG END
|
||||||
|
* **********************************/
|
||||||
|
|
||||||
|
/** 회원ID */
|
||||||
|
private String mbrId;
|
||||||
|
|
||||||
|
/** 세션아이디 */
|
||||||
|
private String sesionId;
|
||||||
|
|
||||||
|
/** 옵션관계번호 배열 */
|
||||||
|
private String[] optnRelateNbs;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.wb.domainserver.domain.gcone.mbr.mbr.vo;
|
package com.wb.domainserver.domain.gcone.mbr.mbr.vo;
|
||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
import com.wb.domainserver.domain.crm.mbr.vo.CrmMbrVO;
|
||||||
import com.wb.domainserver.util.dataaccess.DataMap;
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
@@ -311,4 +312,24 @@ public class BOMbrVO extends AbstractVO{
|
|||||||
private List<String> appnInnbArr;
|
private List<String> appnInnbArr;
|
||||||
/*지정 메모*/
|
/*지정 메모*/
|
||||||
private String appnMemo;
|
private String appnMemo;
|
||||||
|
|
||||||
|
private String phone;
|
||||||
|
private String ctiAt;
|
||||||
|
private String record_key = "";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**유입경로번호*/
|
||||||
|
private String inflowCoursNb;
|
||||||
|
|
||||||
|
/*id 변경 여부*/
|
||||||
|
private String mbrIdChngAt;
|
||||||
|
/** 약정코드 */
|
||||||
|
private String stplatInnb;
|
||||||
|
|
||||||
|
/** 관리자 확인 비밀번호 */
|
||||||
|
private String password;
|
||||||
|
|
||||||
|
/*포스매장고유번호*/
|
||||||
|
private String posStrInnb;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,11 +3,13 @@ package com.wb.domainserver.domain.gcone.mbr.mlg.vo;
|
|||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.math.BigInteger;
|
import java.math.BigInteger;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@@ -66,6 +68,7 @@ public class BOMlgVO extends AbstractVO {
|
|||||||
/** 사용가능시작일시 */
|
/** 사용가능시작일시 */
|
||||||
private Date usePosblBgnDt;
|
private Date usePosblBgnDt;
|
||||||
/** 사용가능종료일시 */
|
/** 사용가능종료일시 */
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX")
|
||||||
private Date usePosblEndDt;
|
private Date usePosblEndDt;
|
||||||
/** 주문정보 */
|
/** 주문정보 */
|
||||||
private String ordrInfo;
|
private String ordrInfo;
|
||||||
@@ -125,5 +128,18 @@ public class BOMlgVO extends AbstractVO {
|
|||||||
|
|
||||||
private String bnfRcvInnb;
|
private String bnfRcvInnb;
|
||||||
|
|
||||||
|
/** 마일리지 유효기간 설정 여부*/
|
||||||
|
private String validAt;
|
||||||
|
|
||||||
|
// 검색
|
||||||
|
/** 검색_마일리지 적립 구분코드 */
|
||||||
|
private String srchMlgAccmlDvCd;
|
||||||
|
/** 검색_브랜드명 */
|
||||||
|
private String srchSopmalCd;
|
||||||
|
/** 검색_시작날짜 */
|
||||||
|
private String srchStartDate;
|
||||||
|
/** 검색_종료날짜 */
|
||||||
|
private String srchEndDate;
|
||||||
|
/** 검색_마일리지 적립 구분 */
|
||||||
|
private List<String> srchMlgAccmlDv;
|
||||||
}
|
}
|
||||||
@@ -4,8 +4,10 @@ import java.util.Date;
|
|||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@EqualsAndHashCode(callSuper = false)
|
@EqualsAndHashCode(callSuper = false)
|
||||||
@@ -21,26 +23,35 @@ public class BOCrmDlvylcVO extends AbstractVO{
|
|||||||
/**회원구분코드*/
|
/**회원구분코드*/
|
||||||
private String mbrDvCd;
|
private String mbrDvCd;
|
||||||
/** 배송지설명내용 */
|
/** 배송지설명내용 */
|
||||||
|
@NotBlank(message = "배송지 설명")
|
||||||
|
@Length(min=1, max=67)
|
||||||
private String dlvylcDcCn;
|
private String dlvylcDcCn;
|
||||||
/** 받는사람명 */
|
/** 받는사람명 */
|
||||||
|
@NotBlank(message = "받으시는 분")
|
||||||
|
@Length(min=1, max=13)
|
||||||
private String recpntNm;
|
private String recpntNm;
|
||||||
|
/** 전화번호 */
|
||||||
|
//private String telnb;
|
||||||
/** 휴대폰번호 */
|
/** 휴대폰번호 */
|
||||||
|
@NotBlank(message = "휴대전화번호")
|
||||||
private String mbtlnb;
|
private String mbtlnb;
|
||||||
private String telnb;
|
private String telnb;
|
||||||
/** 우편번호 */
|
/** 우편번호 */
|
||||||
|
@NotBlank(message = "우편번호")
|
||||||
|
@Length(min=1, max=5)
|
||||||
private String zip;
|
private String zip;
|
||||||
/** 도로명,지번 구분*/
|
/** 도로명,지번 구분*/
|
||||||
private String adresDv;
|
private String adresDv;
|
||||||
/** 도로명 or 지번 주소 */
|
/** 도로명 or 지번 주소 */
|
||||||
private String adres;
|
private String adres;
|
||||||
/** 지번주소 */
|
/** 지번주소 */
|
||||||
private String lnbAdres;
|
private String lnbAdres = "";
|
||||||
/** 도로명주소 */
|
/** 도로명주소 */
|
||||||
private String rnmAdres;
|
private String rnmAdres = "";
|
||||||
/** 상세주소 */
|
/** 상세주소 */
|
||||||
private String dtlAdres;
|
private String dtlAdres;
|
||||||
/** 기본배송지여부 */
|
/** 기본배송지여부 */
|
||||||
private String dftDlvylcAt;
|
private String dftDlvylcAt = "N";
|
||||||
/** 최근배송지여부 */
|
/** 최근배송지여부 */
|
||||||
private String recentDlvylcAt;
|
private String recentDlvylcAt;
|
||||||
/** popUp 여부 확인 */
|
/** popUp 여부 확인 */
|
||||||
@@ -51,4 +62,11 @@ public class BOCrmDlvylcVO extends AbstractVO{
|
|||||||
private String callbackNm;
|
private String callbackNm;
|
||||||
/*서버 구분*/
|
/*서버 구분*/
|
||||||
private String serverDv;
|
private String serverDv;
|
||||||
|
/**쇼핑몰코드 */
|
||||||
|
private String sopmalCd;
|
||||||
|
/*녹취키*/
|
||||||
|
private String customer_record_key;
|
||||||
|
|
||||||
|
/* formId */
|
||||||
|
private String formId;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.wb.domainserver.domain.gcone.ordr.ordr.vo;
|
package com.wb.domainserver.domain.gcone.ordr.ordr.vo;
|
||||||
|
|
||||||
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
import com.wb.domainserver.domain.comm.vo.AbstractVO;
|
||||||
|
import jakarta.validation.constraints.NotBlank;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
@Data
|
@Data
|
||||||
@@ -20,9 +21,11 @@ public class BOOrdrSrchVO extends AbstractVO{
|
|||||||
private String srchDate;
|
private String srchDate;
|
||||||
|
|
||||||
/**검색 시작일*/
|
/**검색 시작일*/
|
||||||
|
@NotBlank(message = "시작일")
|
||||||
private String srchStartDate;
|
private String srchStartDate;
|
||||||
|
|
||||||
/**검색 종료일*/
|
/**검색 종료일*/
|
||||||
|
@NotBlank(message = "종료일")
|
||||||
private String srchEndDate;
|
private String srchEndDate;
|
||||||
|
|
||||||
/** 주문상태코드리스트
|
/** 주문상태코드리스트
|
||||||
@@ -101,4 +104,5 @@ public class BOOrdrSrchVO extends AbstractVO{
|
|||||||
private String reprsntBrand; // 입점사 브랜드
|
private String reprsntBrand; // 입점사 브랜드
|
||||||
|
|
||||||
private String excelCoulms; // 엑셀다운로드 조회 컬럼
|
private String excelCoulms; // 엑셀다운로드 조회 컬럼
|
||||||
|
private String ordrInnb; // 주문고유번호
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -305,6 +305,8 @@ public class BOPayVO extends AbstractVO {
|
|||||||
/** 세션 gcpay token */
|
/** 세션 gcpay token */
|
||||||
private String sessionToken;
|
private String sessionToken;
|
||||||
|
|
||||||
|
private String mbtlnb;
|
||||||
|
|
||||||
/** 토스 배송정보 등록 시 사용하는 택배사 코드 */
|
/** 토스 배송정보 등록 시 사용하는 택배사 코드 */
|
||||||
public enum DLVCOMPCODE {
|
public enum DLVCOMPCODE {
|
||||||
DLVCOMPCODE01("code0", "CJ"), //CJ GLS
|
DLVCOMPCODE01("code0", "CJ"), //CJ GLS
|
||||||
|
|||||||
@@ -249,4 +249,6 @@ public class BODwldCouponVO extends AbstractVO {
|
|||||||
/** 웹 쿠폰 이벤트 광고 수신 예외 플래그 **/
|
/** 웹 쿠폰 이벤트 광고 수신 예외 플래그 **/
|
||||||
private String eventYn;
|
private String eventYn;
|
||||||
|
|
||||||
|
/** 사용처구분 */
|
||||||
|
private String useplcDv;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,12 +59,5 @@ public class BOItrntStrVO extends AbstractVO {
|
|||||||
/*대표브랜드*/
|
/*대표브랜드*/
|
||||||
private String reprsntBrand;
|
private String reprsntBrand;
|
||||||
|
|
||||||
|
private String serverDv;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,14 @@ package com.wb.domainserver.domain.sopmal.app.controller;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import com.wb.domainserver.domain.gcone.app.service.BOAppService;
|
||||||
|
import com.wb.domainserver.domain.gcone.app.service.BOFCMNotificationService;
|
||||||
|
import com.wb.domainserver.domain.gcone.app.vo.BOAppMbrDvcVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.bnft.bnftmngr.vo.BOBnftMngrPushVO;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
|
import com.wb.domainserver.security.authentication.AnonymousUser;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
@@ -55,23 +62,51 @@ public class AppController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private WnbtWebClientResponseHandler responseHandler;
|
private WnbtWebClientResponseHandler responseHandler;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOAppService service;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOFCMNotificationService fcmservice;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 앱 디바이스 정보 입력
|
* 앱 디바이스 정보 입력
|
||||||
* @param vo
|
* @param vo
|
||||||
* @return ResponseEntity
|
* @return ResponseEntity
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/insertAppDeviceInfo", method = RequestMethod.POST)
|
@RequestMapping(value = "/insertAppDeviceInfo", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> insertAppDeviceInfo(HttpServletRequest request, @RequestBody AppMbrDvcVO vo) {
|
public ResponseEntity<WnbtResponse> insertAppDeviceInfo(HttpServletRequest request, @RequestBody BOAppMbrDvcVO vo) {
|
||||||
log.debug("insertAppMbrDvcInfo AppMbrDvcVO ::: {}", vo);
|
log.debug("insertAppMbrDvcInfo AppMbrDvcVO ::: {}", vo);
|
||||||
|
|
||||||
HttpSession session = request.getSession();
|
HttpSession session = request.getSession();
|
||||||
session.setAttribute("appDvcId", vo.getDeviceId());
|
session.setAttribute("appDvcId", vo.getDeviceId());
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/app/insertBOAppDeviceInfo", vo),
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
ReplyFromResrc::getReply
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
//log.debug("@@@@@@@@@@ BOAppMbrDvcVO ::: {}", vo);
|
||||||
|
|
||||||
|
Integer dplct = service.selectBOAppMbrDvcDplct(vo);
|
||||||
|
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
|
||||||
|
if(dplct < 1) {
|
||||||
|
message = service.insertBOAppDeviceInfo(vo);
|
||||||
|
} else {
|
||||||
|
// 중복된 deviceId가 있을 경우, 디바이스정보를 update한다.
|
||||||
|
message = service.updateBOAppDeviceInfo(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/app/insertBOAppDeviceInfo", vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -80,17 +115,44 @@ public class AppController {
|
|||||||
* @return ResponseEntity
|
* @return ResponseEntity
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/insertAppMbrDvcInfo", method = RequestMethod.POST)
|
@RequestMapping(value = "/insertAppMbrDvcInfo", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> insertAppMbrDvcInfo(HttpServletRequest request, @RequestBody AppMbrDvcVO vo) {
|
public ResponseEntity<WnbtResponse> insertAppMbrDvcInfo(HttpServletRequest request, @RequestBody BOAppMbrDvcVO vo) {
|
||||||
log.debug("insertAppMbrDvcInfo AppMbrDvcVO ::: {}", vo);
|
log.debug("insertAppMbrDvcInfo AppMbrDvcVO ::: {}", vo);
|
||||||
|
|
||||||
HttpSession session = request.getSession();
|
HttpSession session = request.getSession();
|
||||||
session.setAttribute("appDvcId", vo.getDeviceId());
|
session.setAttribute("appDvcId", vo.getDeviceId());
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/app/insertBOAppMbrDvcInfo", vo),
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
ReplyFromResrc::getReply
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
if (user.getUserInnb() > 0) {
|
||||||
|
vo.setMbrInnb(Long.valueOf(user.getUserInnb()));
|
||||||
|
vo.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
vo.setMbrId(user.getMbrId());
|
||||||
|
}
|
||||||
|
//log.debug("@@@@@@@@@@ BOAppMbrDvcVO ::: {}", vo);
|
||||||
|
|
||||||
|
Integer dplct = service.selectBOAppMbrDvcDplct(vo);
|
||||||
|
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
|
||||||
|
if(dplct < 1) {
|
||||||
|
message = service.insertBOAppMbrDvcInfo(vo);
|
||||||
|
} else {
|
||||||
|
// 중복된 deviceId가 있을 경우, 디바이스 및 회원정보를 update한다.
|
||||||
|
message = service.updateBOAppMbrDvcInfo(vo);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/app/insertBOAppMbrDvcInfo", vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -125,23 +187,49 @@ public class AppController {
|
|||||||
/**
|
/**
|
||||||
* 푸시알림 테스트 발송
|
* 푸시알림 테스트 발송
|
||||||
*
|
*
|
||||||
* @param BnftPushVO
|
* @param vo
|
||||||
* @param model
|
* @param model
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/procTestPushNotification")
|
@RequestMapping(value = "/procTestPushNotification", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> procTestPushNoti(@RequestBody AppPushVO vo, ModelMap model, HttpSession session){
|
public ResponseEntity<WnbtResponse> procTestPushNoti(@RequestBody BOBnftMngrPushVO vo, ModelMap model, HttpSession session){
|
||||||
|
|
||||||
vo.setSopmalCd(MemberJwtContextHolder.getMemberInfo().getSopmalCd());
|
vo.setSopmalCd(MemberJwtContextHolder.getMemberInfo().getSopmalCd());
|
||||||
|
|
||||||
String pushData = dataToJson(vo.getDataUrl(), vo.getDataKey(), vo.getDataExt());
|
String pushData = dataToJson(vo.getDataUrl(), vo.getDataKey(), vo.getDataExt());
|
||||||
vo.setPushData(pushData);
|
vo.setPushData(pushData);
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/app/procPushNotificationImsi",vo),
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
ReplyFromResrc::getReply
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
//Long[] arrMbrDeviceInnb = vo.getArrMbrDeviceInnb();
|
||||||
|
String[] arrFcmToken = vo.getArrFcmToken();
|
||||||
|
|
||||||
|
log.debug("@@@@@@@@@@ BOBnftMngrPushVO ::: {}", vo);
|
||||||
|
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
for (int i = 0; i < arrFcmToken.length; i++) {
|
||||||
|
//Long mbrDeviceInnb = arrMbrDeviceInnb[i];
|
||||||
|
vo.setFcmToken(arrFcmToken[i]);
|
||||||
|
|
||||||
|
// FCM 전송 로직
|
||||||
|
String resultCode = fcmservice.sendPush(vo);
|
||||||
|
|
||||||
|
//result.put(mbrDeviceInnb.toString(), resultCode);
|
||||||
|
message.put("result", resultCode);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/app/procPushNotificationImsi",vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
public String dataToJson(String str1, String str2, String str3) {
|
public String dataToJson(String str1, String str2, String str3) {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,15 +1,29 @@
|
|||||||
package com.wb.domainserver.domain.sopmal.csc.controller;
|
package com.wb.domainserver.domain.sopmal.csc.controller;
|
||||||
|
|
||||||
|
import com.wb.domainserver.domain.gcone.bbs.prom.service.BOPromService;
|
||||||
|
import com.wb.domainserver.domain.gcone.bbs.prom.vo.BOPromVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mlg.service.BOMlgService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mlg.vo.BOMlgVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.promtn.coupon.service.BOCouponService;
|
||||||
|
import com.wb.domainserver.domain.gcone.promtn.coupon.vo.BODwldCouponVO;
|
||||||
import com.wb.domainserver.domain.sopmal.csc.vo.PromVO;
|
import com.wb.domainserver.domain.sopmal.csc.vo.PromVO;
|
||||||
|
import com.wb.domainserver.response.ApiResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
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.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.RESRC;
|
import com.wb.domainserver.util.communicate.RESRC;
|
||||||
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
import com.wb.domainserver.util.communicate.ReplyFromResrc;
|
||||||
import com.wb.domainserver.util.communicate.SendToResrc;
|
import com.wb.domainserver.util.communicate.SendToResrc;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import jakarta.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
@@ -17,6 +31,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||||||
import org.springframework.web.bind.annotation.RequestMethod;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/sopmal/prom")
|
@RequestMapping("/sopmal/prom")
|
||||||
@@ -27,13 +45,279 @@ public class PromController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private SendToResrc sendToResrc;
|
private SendToResrc sendToResrc;
|
||||||
|
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Autowired
|
||||||
@RequestMapping(value = "/promJoin", method = RequestMethod.POST)
|
private BOPromService promService;
|
||||||
public ResponseEntity<?> promJoin(HttpServletRequest request, @RequestBody PromVO promVO) {
|
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
@Autowired
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/prom/promJoin", promVO),
|
private BOMlgService bomlgService;
|
||||||
ReplyFromResrc::getReply
|
|
||||||
|
@Autowired
|
||||||
|
private BOCouponService couponService;
|
||||||
|
|
||||||
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
|
@RequestMapping(value = "/promJoin", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
|
public ResponseEntity<?> promJoin(HttpServletRequest request, @RequestBody BOPromVO promVO) {
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if (user.getUserInnb() > 0) {
|
||||||
|
|
||||||
|
// 1. 이벤트 정보 조회 및 유효성 체크
|
||||||
|
DataMap promInfo = promService.selectPromInfo(promVO);
|
||||||
|
boolean isActive = promService.isPromActive(promInfo);
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
if (!isActive) {
|
||||||
|
content.put("eventActive", false);
|
||||||
|
content.put("message", "이벤트 기간이 아닙니다.");
|
||||||
|
return ApiResponse.of(content).ifPresentOrElse(HttpStatus.OK, HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 참여 이력 조회
|
||||||
|
// promVO에 mbrInnb 설정
|
||||||
|
promVO.setMbrInnb((long) user.getUserInnb());
|
||||||
|
|
||||||
|
// daily 룰일 때만 오늘 날짜 세팅
|
||||||
|
if ("daily".equals((String)promInfo.get("promRule"))) {
|
||||||
|
promVO.setJoinDt(LocalDate.now());
|
||||||
|
}
|
||||||
|
if(!user.getSopmalCd().equals((String) promInfo.get("sopmalCd"))){
|
||||||
|
content.put("alreadySpun", true);
|
||||||
|
content.put("message", "해당 쇼핑몰 이벤트가 아닙니다.");
|
||||||
|
return ApiResponse.of(content).ifPresentOrElse(HttpStatus.OK, HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
DataMap joinInfo = promService.selectPromJoinInfo(promVO);
|
||||||
|
if (joinInfo != null) {
|
||||||
|
// 이미 참여한 경우
|
||||||
|
content.put("alreadySpun", true);
|
||||||
|
Object sortOrdrObj = joinInfo.get("sortOrdr");
|
||||||
|
if (sortOrdrObj != null) {
|
||||||
|
int selected = (sortOrdrObj instanceof Number) ? ((Number) sortOrdrObj).intValue() : Integer.parseInt(sortOrdrObj.toString());
|
||||||
|
content.put("selected", selected);
|
||||||
|
}
|
||||||
|
content.put("message", "이미 참여하셨습니다.");
|
||||||
|
return ApiResponse.of(content).ifPresentOrElse(HttpStatus.OK, HttpStatus.OK);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 추첨 및 지급 로직 (미참여자)
|
||||||
|
int totalJoinCount = promService.countPromJoin(promVO);
|
||||||
|
List<DataMap> rewardList = promService.selectPromRewardList(promVO);
|
||||||
|
Map<Integer, Integer> rewardWinCount = promService.countRewardWinners(promVO);
|
||||||
|
log.info("rewardWinCount 전체 데이터: {}", rewardWinCount);
|
||||||
|
log.info("totalJoinCount: {}", totalJoinCount);
|
||||||
|
double[] probabilities = new double[rewardList.size()];
|
||||||
|
for (int i = 0; i < rewardList.size(); i++) {
|
||||||
|
double baseProb = ((BigDecimal) rewardList.get(i).get("probability")).doubleValue();
|
||||||
|
Object sortOrdrObj = rewardList.get(i).get("sortOrdr");
|
||||||
|
int sortOrdr = (sortOrdrObj instanceof Number) ? ((Number) sortOrdrObj).intValue() : Integer.parseInt(sortOrdrObj.toString());
|
||||||
|
double actualRate = 0.0;
|
||||||
|
if (totalJoinCount > 0 && rewardWinCount.containsKey(sortOrdr)) {
|
||||||
|
actualRate = (double) rewardWinCount.get(sortOrdr) / totalJoinCount * 100.0;
|
||||||
|
}
|
||||||
|
if (totalJoinCount > 100) {
|
||||||
|
double diff = baseProb - actualRate;
|
||||||
|
probabilities[i] = baseProb + diff * 0.8;
|
||||||
|
if (probabilities[i] < 0) probabilities[i] = 0;
|
||||||
|
log.info("확률 보정 - baseProb: {}, actualRate: {}, diff: {}, 보정 후: {}", baseProb, actualRate, diff, probabilities[i]);
|
||||||
|
} else {
|
||||||
|
probabilities[i] = baseProb;
|
||||||
|
log.info("확률 보정 - baseProb: {}, actualRate: {}, diff: {}, 보정 후: {}", baseProb, actualRate, 0.0, probabilities[i]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
double rand = Math.random() * 100;
|
||||||
|
double acc = 0;
|
||||||
|
int selectedIdx = 0;
|
||||||
|
for (int i = 0; i < probabilities.length; i++) {
|
||||||
|
acc += probabilities[i];
|
||||||
|
if (rand < acc) {
|
||||||
|
selectedIdx = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DataMap selectedReward = rewardList.get(selectedIdx);
|
||||||
|
|
||||||
|
log.info("추첨 결과 - rand: {}, selectedIdx: {}, selectedReward: {}", rand, selectedIdx, selectedReward);
|
||||||
|
|
||||||
|
// 보상 정보 추출
|
||||||
|
|
||||||
|
Object sortOrdrObj = selectedReward.get("sortOrdr");
|
||||||
|
int sortOrdr = (sortOrdrObj instanceof Number) ? ((Number) sortOrdrObj).intValue() : Integer.parseInt(sortOrdrObj.toString());
|
||||||
|
String rewardTy = (String) selectedReward.get("rewardTy");
|
||||||
|
BigDecimal accmlmnyAmt = (BigDecimal) selectedReward.get("accmlmnyAmt");
|
||||||
|
String mlgApplcResn = (String) selectedReward.get("mlgApplcResn");
|
||||||
|
log.info("원본 mlgApplcResn: {}", mlgApplcResn);
|
||||||
|
// 마일리지 소멸일자 세팅
|
||||||
|
String mlgExpireDt = String.valueOf(selectedReward.get("expireDt"));
|
||||||
|
Date exPireDate = new Date();
|
||||||
|
if (!"null".equals(mlgExpireDt)) {
|
||||||
|
int expireDays = Integer.parseInt(mlgExpireDt);
|
||||||
|
Calendar calendar = Calendar.getInstance();
|
||||||
|
calendar.add(Calendar.DATE, expireDays);
|
||||||
|
|
||||||
|
calendar.set(Calendar.HOUR_OF_DAY, 23);
|
||||||
|
calendar.set(Calendar.MINUTE, 59);
|
||||||
|
calendar.set(Calendar.SECOND, 59);
|
||||||
|
|
||||||
|
exPireDate = calendar.getTime();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Long couponInnb = selectedReward.get("couponInnb") != null ? Long.valueOf(selectedReward.get("couponInnb").toString()) : null;
|
||||||
|
Long couponSndngInnb = selectedReward.get("couponSndngInnb") != null ? Long.valueOf(selectedReward.get("couponSndngInnb").toString()) : null;
|
||||||
|
String rewardDc = (String) selectedReward.get("rewardDc");
|
||||||
|
|
||||||
|
boolean rewardSuccess = false;
|
||||||
|
DataMap result = null;
|
||||||
|
if ("coupon".equals(rewardTy)) {
|
||||||
|
// 쿠폰 발급 로직
|
||||||
|
try {
|
||||||
|
BODwldCouponVO dwldCouponVO = new BODwldCouponVO();
|
||||||
|
dwldCouponVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
dwldCouponVO.setMbrInnb(user.getUserInnb());
|
||||||
|
dwldCouponVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
dwldCouponVO.setCouponSndngInnb(couponSndngInnb.intValue()); // Long → Integer 변환 필요
|
||||||
|
dwldCouponVO.setEventYn("Y");
|
||||||
|
dwldCouponVO.setCouponSndngTy("01");
|
||||||
|
// 필요시 추가 필드 세팅
|
||||||
|
log.info("VO: {}", dwldCouponVO);
|
||||||
|
Map<String, Object> couponResult = couponService.insertBOBnfCouponRegist(dwldCouponVO);
|
||||||
|
|
||||||
|
if ("success".equals(couponResult.get("result"))) {
|
||||||
|
rewardSuccess = true;
|
||||||
|
log.info("쿠폰 발급 성공: {}", couponResult);
|
||||||
|
} else {
|
||||||
|
rewardSuccess = false;
|
||||||
|
log.error("쿠폰 발급 실패: {}", couponResult.get("message"));
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
rewardSuccess = false;
|
||||||
|
log.error("쿠폰 발급 예외: {}", e.getMessage(), e);
|
||||||
|
}
|
||||||
|
} else if ("mileage".equals(rewardTy)) {
|
||||||
|
|
||||||
|
// null 체크를 더 엄격하게
|
||||||
|
if (mlgApplcResn == null || mlgApplcResn.trim().isEmpty()) {
|
||||||
|
mlgApplcResn = "이벤트 마일리지 지급";
|
||||||
|
log.info("기본값 사용: {}", mlgApplcResn);
|
||||||
|
} else {
|
||||||
|
log.info("DB 값 사용: {}", mlgApplcResn);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 마일리지 VO 설정
|
||||||
|
BOMlgVO mlgVO = new BOMlgVO();
|
||||||
|
|
||||||
|
// 회원 고유번호 설정
|
||||||
|
mlgVO.setMbrInnb(String.valueOf(user.getUserInnb()));
|
||||||
|
|
||||||
|
// 등록자 설정
|
||||||
|
mlgVO.setRegusr(user.getUserInnb());
|
||||||
|
|
||||||
|
// 회원구분코드 설정
|
||||||
|
mlgVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
|
||||||
|
// 쇼핑몰코드 설정
|
||||||
|
mlgVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
|
||||||
|
// 등록자구분코드 설정 (01: 회원)
|
||||||
|
mlgVO.setRegusrDvCd("01");
|
||||||
|
|
||||||
|
//마일리지 적립 구분 설정
|
||||||
|
mlgVO.setMlgAccmlDvCd("add");
|
||||||
|
|
||||||
|
// 이벤트 보상 마일리지 적용 구분 설정
|
||||||
|
mlgVO.setMlgApplcDvCd("07"); // 이벤트 보상 마일리지
|
||||||
|
|
||||||
|
// 온라인 오프라인 구분 설정
|
||||||
|
mlgVO.setOnlineOflneDvCd("01");
|
||||||
|
|
||||||
|
// 마일리지 적립 처리 구분 설정
|
||||||
|
mlgVO.setMlgApplcDvCd("07");
|
||||||
|
|
||||||
|
// 이벤트 보상 마일리지 적용 사유 설정
|
||||||
|
mlgVO.setMlgApplcResn(mlgApplcResn);
|
||||||
|
|
||||||
|
// 이벤트 보상 마일리지 금액 설정
|
||||||
|
mlgVO.setAccmlmnyAmt(accmlmnyAmt);
|
||||||
|
|
||||||
|
// 마일리지 유효기간 설정
|
||||||
|
if (!"null".equals(mlgExpireDt)) {
|
||||||
|
mlgVO.setUsePosblEndDt(exPireDate);
|
||||||
|
mlgVO.setMlgValidPd(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
mlgVO.setMlgValidPdAt("Y");
|
||||||
|
|
||||||
|
|
||||||
|
// 마일리지 적립 처리 전 로그
|
||||||
|
log.info("마일리지 적립 시작 - mlgVO: {}", mlgVO);
|
||||||
|
|
||||||
|
// 마일리지 적립 처리
|
||||||
|
result = bomlgService.insertBOMlgAdd(mlgVO);
|
||||||
|
|
||||||
|
// 마일리지 적립 처리 후 로그
|
||||||
|
log.info("마일리지 적립 결과: {}", result);
|
||||||
|
|
||||||
|
rewardSuccess = "success".equals(result.get("result")) || "Y".equals(result.get("success"));
|
||||||
|
|
||||||
|
log.debug("mlgVO 확인 {}", mlgVO);
|
||||||
|
log.info("마일리지 지급 결과: {}", result);
|
||||||
|
}
|
||||||
|
if (rewardSuccess) {
|
||||||
|
// 참여 이력 저장 전에 필수 데이터 설정
|
||||||
|
promVO.setMbrInnb((long) user.getUserInnb()); // 회원 고유번호
|
||||||
|
promVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
// 보상 정보 설정
|
||||||
|
promVO.setPromInnb(promVO.getPromInnb());
|
||||||
|
promVO.setSortOrdr(sortOrdr);
|
||||||
|
promVO.setRewardTy(rewardTy);
|
||||||
|
promVO.setAccmlmnyAmt(accmlmnyAmt);
|
||||||
|
promVO.setCouponInnb(couponInnb);
|
||||||
|
promVO.setCouponSndngInnb(couponSndngInnb);
|
||||||
|
promVO.setRewardDc(rewardDc);
|
||||||
|
|
||||||
|
// 참여 이력 저장 전에 로그 추가
|
||||||
|
log.info("참여 이력 저장 시작 - promVO: {}", promVO);
|
||||||
|
|
||||||
|
try {
|
||||||
|
Map<String, String> insertResult = promService.insertPromJoin(promVO);
|
||||||
|
log.info("참여 이력 저장 결과 전체: {}", insertResult);
|
||||||
|
|
||||||
|
if ("Y".equals(insertResult.get("success"))) { // "result" → "success"로 변경
|
||||||
|
log.info("참여 이력 저장 성공");
|
||||||
|
} else {
|
||||||
|
log.error("참여 이력 저장 실패 - success: {}", insertResult.get("success"));
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("참여 이력 저장 예외 발생: {}", e.getMessage(), e);
|
||||||
|
content.put("message", "참여 이력 저장에 실패했습니다.");
|
||||||
|
return ApiResponse.of(content).ifPresentOrElse(HttpStatus.INTERNAL_SERVER_ERROR, HttpStatus.INTERNAL_SERVER_ERROR);
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<String, Object> response = new HashMap<>();
|
||||||
|
response.put("result", "success");
|
||||||
|
//response.put("message", "이벤트에 참여되었습니다!");
|
||||||
|
response.put("selected", sortOrdr);
|
||||||
|
response.put("selectedReward", selectedReward);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(response);
|
||||||
|
} else {
|
||||||
|
content.put("message", "보상 지급에 실패했습니다.");
|
||||||
|
return ApiResponse.of(content).ifPresentOrElse(HttpStatus.INTERNAL_SERVER_ERROR, HttpStatus.INTERNAL_SERVER_ERROR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 여기에 추가 (if 블록 밖으로)
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("message", "로그인이 필요합니다.");
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/bbs/prom/promJoin", promVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -3,9 +3,23 @@ package com.wb.domainserver.domain.sopmal.main.controller;
|
|||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.wb.domainserver.common.msg.GconeMessageSource;
|
import com.wb.domainserver.common.msg.GconeMessageSource;
|
||||||
import com.wb.domainserver.common.mvc.tags.ui.pagination.PaginationInfo;
|
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.store.sopmal.vo.BOMaSopmalVO;
|
||||||
|
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.mbr.mbr.service.BOMbrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.mbr.mbr.vo.BOMbrVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.service.BOOrdrService;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.ordr.vo.BOOrdrDlvyVO;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.service.BORtngudrefndService;
|
||||||
|
import com.wb.domainserver.domain.gcone.ordr.rtngudrefnd.vo.BORtngudrefndVO;
|
||||||
import com.wb.domainserver.domain.gcone.setup.site.service.BOSiteService;
|
import com.wb.domainserver.domain.gcone.setup.site.service.BOSiteService;
|
||||||
import com.wb.domainserver.domain.gcone.setup.site.vo.BOPrevewVO;
|
import com.wb.domainserver.domain.gcone.setup.site.vo.BOPrevewVO;
|
||||||
import com.wb.domainserver.domain.gcone.setup.site.vo.BOSiteVO;
|
import com.wb.domainserver.domain.gcone.setup.site.vo.BOSiteVO;
|
||||||
|
import com.wb.domainserver.domain.itrnt.str.service.BOItrntStrService;
|
||||||
|
import com.wb.domainserver.domain.itrnt.str.vo.BOItrntStrVO;
|
||||||
import com.wb.domainserver.domain.sample.vo.PrevewVO;
|
import com.wb.domainserver.domain.sample.vo.PrevewVO;
|
||||||
import com.wb.domainserver.domain.sopmal.main.vo.BrandVO;
|
import com.wb.domainserver.domain.sopmal.main.vo.BrandVO;
|
||||||
import com.wb.domainserver.domain.sopmal.main.vo.MaSopmalVO;
|
import com.wb.domainserver.domain.sopmal.main.vo.MaSopmalVO;
|
||||||
@@ -13,13 +27,17 @@ import com.wb.domainserver.domain.sopmal.main.vo.MainVO;
|
|||||||
import com.wb.domainserver.domain.sopmal.main.vo.StrVO;
|
import com.wb.domainserver.domain.sopmal.main.vo.StrVO;
|
||||||
import com.wb.domainserver.domain.sopmal.mpage.ordr.vo.MyOrdrDlvyVO;
|
import com.wb.domainserver.domain.sopmal.mpage.ordr.vo.MyOrdrDlvyVO;
|
||||||
import com.wb.domainserver.domain.sopmal.mpage.ordr.vo.MyRefundVO;
|
import com.wb.domainserver.domain.sopmal.mpage.ordr.vo.MyRefundVO;
|
||||||
|
import com.wb.domainserver.exception.WnbtRestException;
|
||||||
|
import com.wb.domainserver.response.ApiResponse;
|
||||||
import com.wb.domainserver.response.WnbtResponse;
|
import com.wb.domainserver.response.WnbtResponse;
|
||||||
|
import com.wb.domainserver.response.WnbtResponseBody;
|
||||||
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
import com.wb.domainserver.response.WnbtWebClientResponseHandler;
|
||||||
import com.wb.domainserver.security.authentication.AnonymousUser;
|
import com.wb.domainserver.security.authentication.AnonymousUser;
|
||||||
import com.wb.domainserver.security.authentication.MemberJwtContextHolder;
|
import com.wb.domainserver.security.authentication.MemberJwtContextHolder;
|
||||||
import com.wb.domainserver.security.authorization.annotation.AuthPolicy;
|
import com.wb.domainserver.security.authorization.annotation.AuthPolicy;
|
||||||
import com.wb.domainserver.security.authorization.annotation.Policy;
|
import com.wb.domainserver.security.authorization.annotation.Policy;
|
||||||
import com.wb.domainserver.util.communicate.*;
|
import com.wb.domainserver.util.communicate.*;
|
||||||
|
import com.wb.domainserver.util.dataaccess.DataMap;
|
||||||
import com.wb.domainserver.util.util.Util;
|
import com.wb.domainserver.util.util.Util;
|
||||||
import jakarta.servlet.http.Cookie;
|
import jakarta.servlet.http.Cookie;
|
||||||
import jakarta.servlet.http.HttpServletRequest;
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
@@ -27,13 +45,17 @@ import jakarta.servlet.http.HttpSession;
|
|||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.http.MediaType;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.util.MultiValueMap;
|
import org.springframework.util.MultiValueMap;
|
||||||
import org.springframework.util.ObjectUtils;
|
import org.springframework.util.ObjectUtils;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
|
||||||
|
import java.math.BigInteger;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -43,9 +65,6 @@ import java.util.Map;
|
|||||||
@Controller
|
@Controller
|
||||||
public class MainController {
|
public class MainController {
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private BOSiteService service;
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
WnbtWebClientResponseHandler responseHandler;
|
WnbtWebClientResponseHandler responseHandler;
|
||||||
|
|
||||||
@@ -61,6 +80,26 @@ public class MainController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private KakaoProperties kakaoProperties;
|
private KakaoProperties kakaoProperties;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PaginationProperties paginationProperties;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private BOOrdrService service;
|
||||||
|
@Autowired
|
||||||
|
private BOCommonService commonService;
|
||||||
|
@Autowired
|
||||||
|
private BOSiteService boSiteService;
|
||||||
|
@Autowired
|
||||||
|
private BOMaComncdService bOMaComncdService;
|
||||||
|
@Autowired
|
||||||
|
private BORtngudrefndService boRtngudrefndService;
|
||||||
|
@Autowired
|
||||||
|
private BOItrntStrService boItrntStrService;
|
||||||
|
@Autowired
|
||||||
|
private BOMaSopmalService boMaSopmalService;
|
||||||
|
@Autowired
|
||||||
|
private BOMbrService boMbrService;
|
||||||
|
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value= {"/","/index", "/sopmal/index"})
|
@RequestMapping(value= {"/","/index", "/sopmal/index"})
|
||||||
public String index(HttpServletRequest request, ModelMap model, BOPrevewVO prevewVO){
|
public String index(HttpServletRequest request, ModelMap model, BOPrevewVO prevewVO){
|
||||||
@@ -133,7 +172,7 @@ public class MainController {
|
|||||||
siteVO.setCookieValArr(prevewVO.getCookieValArr());
|
siteVO.setCookieValArr(prevewVO.getCookieValArr());
|
||||||
siteVO.setEnv(prevewVO.getEnv());
|
siteVO.setEnv(prevewVO.getEnv());
|
||||||
Map<String, Object> message = new HashMap<>();
|
Map<String, Object> message = new HashMap<>();
|
||||||
message = service.selectBOMainSiteDesignListInqire(siteVO);
|
message = boSiteService.selectBOMainSiteDesignListInqire(siteVO);
|
||||||
message.put("loginFlag", user.getMbrId());
|
message.put("loginFlag", user.getMbrId());
|
||||||
model.addAttribute("resultMap", message);
|
model.addAttribute("resultMap", message);
|
||||||
|
|
||||||
@@ -164,19 +203,38 @@ public class MainController {
|
|||||||
* @return OrdrDtlR.jsp
|
* @return OrdrDtlR.jsp
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value="/sopmal/main/selectNMbrMbtlnbInqire")
|
@RequestMapping(value="/sopmal/main/selectNMbrMbtlnbInqire", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectNMbrMbtlnbInqire(HttpServletRequest request, ModelMap model, MyOrdrDlvyVO ordrDlvyVO) throws Exception {
|
public ResponseEntity<WnbtResponse> selectNMbrMbtlnbInqire(HttpServletRequest request, ModelMap model, MyOrdrDlvyVO vo) throws Exception {
|
||||||
// responseHandler.handleResponse(
|
model.addAttribute("paramVO", new ObjectMapper().writeValueAsString(vo));
|
||||||
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBONMbrMbtlnbInqire", ordrDlvyVO),
|
|
||||||
// model,
|
|
||||||
// "data"
|
|
||||||
// );
|
|
||||||
model.addAttribute("paramVO", new ObjectMapper().writeValueAsString(ordrDlvyVO));
|
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
BOOrdrDlvyVO ordrDlvyVO = new BOOrdrDlvyVO();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBONMbrMbtlnbInqire", ordrDlvyVO),
|
ordrDlvyVO.setOrdrInnb(vo.getOrdrInnb());
|
||||||
ReplyFromResrc::getReply
|
ordrDlvyVO.setMbtlnb(vo.getMbtlnb());
|
||||||
|
ordrDlvyVO.setSopmalCd(vo.getSopmalCd());
|
||||||
|
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
ordrDlvyVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
ordrDlvyVO.setMbrInnb(BigInteger.valueOf(user.getUserInnb()));
|
||||||
|
ordrDlvyVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
|
||||||
|
String secretKey = commonService.selectSecretkey();
|
||||||
|
ordrDlvyVO.setSecretKey(secretKey);
|
||||||
|
Map<String, Object> message = service.selectBONMbrMbtlnbInqire(ordrDlvyVO);
|
||||||
|
if ("N".equals(message.get("confirmAt"))) {
|
||||||
|
throw new WnbtRestException("휴대폰번호가 일치하지 않습니다.");
|
||||||
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBONMbrMbtlnbInqire", ordrDlvyVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -186,13 +244,26 @@ public class MainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value="/sopmal/main/selectNMbrOrdrDtlInqire")
|
@RequestMapping(value="/sopmal/main/selectNMbrOrdrDtlInqire")
|
||||||
public String selectNMbrOrdrDtlInqire(HttpServletRequest request, ModelMap model, MyOrdrDlvyVO ordrDlvyVO) throws Exception {
|
public String selectNMbrOrdrDtlInqire(HttpServletRequest request, ModelMap model, BOOrdrDlvyVO ordrDlvyVO) throws Exception {
|
||||||
log.debug("비회원 주문 조회 파라미터 =>{}", ordrDlvyVO);
|
log.debug("비회원 주문 조회 파라미터 =>{}", ordrDlvyVO);
|
||||||
responseHandler.handleResponse(
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOMbrOrdrDtlInqire", ordrDlvyVO),
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
model,
|
ordrDlvyVO.setSopmalCd(user.getSopmalCd());
|
||||||
"data"
|
}
|
||||||
);
|
Map<String, Object> message = service.selectMbrOrdrDtlInqire(ordrDlvyVO);
|
||||||
|
/**발급대상구분코드*/
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("ISSU_TRGET_DV");
|
||||||
|
List<?> issuTrgetDv = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
message.put("issuTrgetDv", issuTrgetDv);
|
||||||
|
|
||||||
|
model.addAttribute("data", message);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOMbrOrdrDtlInqire", ordrDlvyVO),
|
||||||
|
// model,
|
||||||
|
// "data"
|
||||||
|
// );
|
||||||
|
|
||||||
String referer = request.getHeader("referer");
|
String referer = request.getHeader("referer");
|
||||||
//api에서 넘어 올 시
|
//api에서 넘어 올 시
|
||||||
@@ -216,14 +287,69 @@ public class MainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value="/sopmal/main/selectNMbrRtngudCanclRefndDtlInqire")
|
@RequestMapping(value="/sopmal/main/selectNMbrRtngudCanclRefndDtlInqire")
|
||||||
public String selectNMbrRtngudCanclRefndDtlInqire(MyRefundVO refundVO, ModelMap model, HttpServletRequest request){
|
public String selectNMbrRtngudCanclRefndDtlInqire(MyRefundVO refundVO, BORtngudrefndVO boRtngudrefndVO, ModelMap model, HttpServletRequest request){
|
||||||
refundVO.setServerDv("sopmal");
|
refundVO.setServerDv("sopmal");
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
boRtngudrefndVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
}
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// 공통코드 호출
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/Rtngudrefnd/selectBONMbrRtngudRefndDtlInqire", refundVO),
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
model,
|
bOMaComncdVO.setGroupCd("RETURN_DLVY_PYMNT_TY"); // 반품배송비 지불 타입 코드
|
||||||
"resultMap"
|
List<?> returnDlvyPymntTyCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
);
|
bOMaComncdVO.setGroupCd("RETURN_RESN_DTL"); // 반품상세사유
|
||||||
|
List<?> returnResnDtlCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("RETURN_DLVY_RSPNSBL"); // 반품배송비 지불 책임 코드
|
||||||
|
List<?> returnDlvyRspnsbl = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("SETLE_MTH"); // 환불방법
|
||||||
|
List<?> refundMth = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("RETURN_PROCS_STTUS"); // 반품 처리상태 코드
|
||||||
|
List<?> returnProcsSttusCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("REFUND_PROCS_STTUS"); // 환불 처리상태 코드
|
||||||
|
List<?> refundProcsSttusCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("RETURN_MTH"); // 반품 방법 코드 : 회수 방법
|
||||||
|
List<?> returnMthCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
bOMaComncdVO.setGroupCd("KCP_BANK_CD"); // KCP 은행코드
|
||||||
|
List<?> kcpBankCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
bOMaComncdVO.setGroupCd("TOSS_BANK_CD"); // TOSS 은행코드
|
||||||
|
List<?> toosBankCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
|
content.put("result", boRtngudrefndService.selectBORtngudRefndDtlInqire(boRtngudrefndVO));
|
||||||
|
content.put("paramVO", boRtngudrefndVO);
|
||||||
|
content.put("returnDlvyPymntTyCdList", returnDlvyPymntTyCdList);
|
||||||
|
content.put("returnResnList", returnResnDtlCdList);
|
||||||
|
content.put("returnDlvyRspnsbl", returnDlvyRspnsbl);
|
||||||
|
content.put("refundMth", refundMth);
|
||||||
|
content.put("returnProcsSttusCdList", returnProcsSttusCdList);
|
||||||
|
content.put("refundProcsSttusCdList", refundProcsSttusCdList);
|
||||||
|
content.put("returnMthCdList", returnMthCdList);
|
||||||
|
|
||||||
|
Map<String, Object> resultData = (Map<String, Object>) content.get("result"); // TODO : ( 2024-08-22 ) 통장 코드 환불 선택해서 입력 Npay , 에스크로, 페이코 고려되어있지않음 확인시 수정 필요
|
||||||
|
DataMap order = new DataMap();
|
||||||
|
order = (DataMap) resultData.get("refnd");
|
||||||
|
log.debug("order : {} ", order);
|
||||||
|
if ( order != null && ( "gcpay".equals(order.get("pgCmpnyNm")) || "toss".equals(order.get("pgCmpnyNm")) || "tosspay".equals(order.get("pgCmpnyNm")) ) ) {
|
||||||
|
content.put("bankCdList", toosBankCdList);
|
||||||
|
} else if ( order != null && ( "kcp".equals(order.get("pgCmpnyNm")) ) ) {
|
||||||
|
content.put("bankCdList", kcpBankCdList);
|
||||||
|
} else {
|
||||||
|
content.put("bankCdList", toosBankCdList);
|
||||||
|
}
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/Rtngudrefnd/selectBONMbrRtngudRefndDtlInqire", refundVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("paramVO", refundVO);
|
model.addAttribute("paramVO", refundVO);
|
||||||
|
|
||||||
return Util.getDeviceType(request) + "/mpage/ordr/NmbrRtngudCanclRefndDtlR";
|
return Util.getDeviceType(request) + "/mpage/ordr/NmbrRtngudCanclRefndDtlR";
|
||||||
@@ -237,13 +363,38 @@ public class MainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value="/sopmal/main/selectNMbrOrdrListInqireAjax")
|
@RequestMapping(value="/sopmal/main/selectNMbrOrdrListInqireAjax")
|
||||||
public String selectNMbrOrdrListInqireAjax(ModelMap model, MyOrdrDlvyVO ordrDlvyVO) {
|
public String selectNMbrOrdrListInqireAjax(ModelMap model, BOOrdrDlvyVO ordrDlvyVO) {
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
if ("01".equals(user.getSysDvCd())) {
|
||||||
|
ordrDlvyVO.setSopmalCd(user.getSopmalCd());
|
||||||
|
}
|
||||||
|
ordrDlvyVO.setMbrInnb(BigInteger.valueOf(user.getUserInnb()));
|
||||||
|
ordrDlvyVO.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOMbrOrdrListInqireAjax", ordrDlvyVO),
|
paginationInfo.setCurrentPageNo(ordrDlvyVO.getPageIndex());
|
||||||
model,
|
paginationInfo.setRecordCountPerPage(ordrDlvyVO.getPageUnit());
|
||||||
"data"
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
);
|
|
||||||
|
ordrDlvyVO.setPaginationInfo(paginationInfo);
|
||||||
|
ordrDlvyVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
ordrDlvyVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
ordrDlvyVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
ordrDlvyVO.setMbrInnb(BigInteger.valueOf(MemberJwtContextHolder.getMemberInfo().getUserInnb()));
|
||||||
|
|
||||||
|
List<DataMap> resultList = service.selectMbrOrdrListInqireAjax(ordrDlvyVO);
|
||||||
|
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
|
||||||
|
content.put("resultList", resultList);
|
||||||
|
content.put("paginationInfo", ordrDlvyVO.getPaginationInfo());
|
||||||
|
|
||||||
|
model.addAttribute("data", content);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/ordr/ordr/selectBOMbrOrdrListInqireAjax", ordrDlvyVO),
|
||||||
|
// model,
|
||||||
|
// "data"
|
||||||
|
// );
|
||||||
|
|
||||||
return "sopmal/mpage/ordr/OrdrDlvyListRList";
|
return "sopmal/mpage/ordr/OrdrDlvyListRList";
|
||||||
}
|
}
|
||||||
@@ -267,20 +418,28 @@ public class MainController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 매장 안내 조회
|
* 매장 안내 조회
|
||||||
* @param gradVO
|
* @param strVO
|
||||||
* @param model
|
* @param model
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectStrGuidance")
|
@RequestMapping(value = "/sopmal/main/selectStrGuidance")
|
||||||
public String selectStrGuidance(StrVO strVO, ModelMap model, HttpServletRequest request) {
|
public String selectStrGuidance(BOItrntStrVO strVO, ModelMap model, HttpServletRequest request) {
|
||||||
strVO.setServerDv("sopmal");
|
strVO.setServerDv("sopmal");
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
strVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// service 호출
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrGuidance", strVO),
|
Map<String, Object> contents = new HashMap<>();
|
||||||
model,
|
contents = boItrntStrService.selectBOStrGuidance(strVO);
|
||||||
"resultMap"
|
|
||||||
);
|
model.addAttribute("resultMap", contents);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrGuidance", strVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("paramVO", strVO);
|
model.addAttribute("paramVO", strVO);
|
||||||
|
|
||||||
// return "sopmal/main/StrGuidanceR";
|
// return "sopmal/main/StrGuidanceR";
|
||||||
@@ -290,20 +449,32 @@ public class MainController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 매장 검색 목록 폼 이동
|
* 매장 검색 목록 폼 이동
|
||||||
* @param gradVO
|
* @param strVO
|
||||||
* @param model
|
* @param model
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectStrListSrchForm")
|
@RequestMapping(value = "/sopmal/main/selectStrListSrchForm")
|
||||||
public String selectStrListSrchForm(StrVO strVO, ModelMap model, HttpServletRequest request) {
|
public String selectStrListSrchForm(BOItrntStrVO strVO, ModelMap model, HttpServletRequest request) {
|
||||||
strVO.setServerDv("sopmal");
|
strVO.setServerDv("sopmal");
|
||||||
|
Map<String, Object> contents = new HashMap<>();
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
// 공통코드 호출
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrListForm", strVO),
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
model,
|
bOMaComncdVO.setGroupCd("SIDO"); // 시도 코드
|
||||||
"resultMap"
|
List<?> sidoCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
);
|
contents.put("sidoCdList", sidoCdList);
|
||||||
|
bOMaComncdVO.setGroupCd("GUNGU"); // 군구 코드
|
||||||
|
List<?> gunguCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
contents.put("gunguCdList", gunguCdList);
|
||||||
|
contents.put("paramVO", strVO);
|
||||||
|
|
||||||
|
model.addAttribute("resultMap", contents);
|
||||||
|
// responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrListForm", strVO),
|
||||||
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("paramVO", strVO);
|
model.addAttribute("paramVO", strVO);
|
||||||
|
|
||||||
// return "sopmal/main/StrSrchListFormR";
|
// return "sopmal/main/StrSrchListFormR";
|
||||||
@@ -313,20 +484,21 @@ public class MainController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 매장 검색 목록 조회
|
* 매장 검색 목록 조회
|
||||||
* @param gradVO
|
* @param strVO
|
||||||
* @param model
|
* @param model
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectStrListInqire")
|
@RequestMapping(value = "/sopmal/main/selectStrListInqire")
|
||||||
public String selectStrListInqire(StrVO strVO, ModelMap model, HttpServletRequest request) {
|
public String selectStrListInqire(BOItrntStrVO strVO, ModelMap model, HttpServletRequest request) {
|
||||||
strVO.setServerDv("sopmal");
|
strVO.setServerDv("sopmal");
|
||||||
|
Map<String, Object> content = selectBOStrListInqire(strVO);
|
||||||
responseHandler.handleResponse(
|
model.addAttribute("resultMap", content);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrListInqire", strVO),
|
// responseHandler.handleResponse(
|
||||||
model,
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrListInqire", strVO),
|
||||||
"resultMap"
|
// model,
|
||||||
);
|
// "resultMap"
|
||||||
|
// );
|
||||||
model.addAttribute("paramVO", strVO);
|
model.addAttribute("paramVO", strVO);
|
||||||
|
|
||||||
// return "sopmal/main/StrSrchListR";
|
// return "sopmal/main/StrSrchListR";
|
||||||
@@ -337,17 +509,52 @@ public class MainController {
|
|||||||
/**
|
/**
|
||||||
* 마이페이지 > 매장 검색 목록 조회 > 스크롤
|
* 마이페이지 > 매장 검색 목록 조회 > 스크롤
|
||||||
* @param strVO
|
* @param strVO
|
||||||
* @param model
|
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectStrListScrolInqire")
|
@RequestMapping(value = "/sopmal/main/selectStrListScrolInqire", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<?> selectStrListScrolInqire(StrVO strVO) {
|
public ResponseEntity<?> selectStrListScrolInqire(BOItrntStrVO strVO) {
|
||||||
strVO.setServerDv("sopmal");
|
strVO.setServerDv("sopmal");
|
||||||
return responseHandler.handleResponse(
|
Map<String, Object> content = selectBOStrListInqire(strVO);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrListInqire", strVO),
|
return ResponseEntity.ok(
|
||||||
ReplyFromResrc::getReply
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrListInqire", strVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* bo로직 매장 목록 조회
|
||||||
|
*/
|
||||||
|
public Map<String, Object> selectBOStrListInqire (BOItrntStrVO itrntStrVO) {
|
||||||
|
// 작성자 정보 할당
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
itrntStrVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
|
||||||
|
Map<String, Object> contents = new HashMap<>();
|
||||||
|
|
||||||
|
// 페이징 객체 생성 & 페이징정보 할당
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
paginationInfo.setCurrentPageNo(itrntStrVO.getPageIndex());
|
||||||
|
paginationInfo.setRecordCountPerPage(itrntStrVO.getPageUnit());
|
||||||
|
paginationInfo.setPageSize(paginationProperties.getPageSize());
|
||||||
|
|
||||||
|
itrntStrVO.setPaginationInfo(paginationInfo);
|
||||||
|
itrntStrVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
|
||||||
|
itrntStrVO.setLastIndex(paginationInfo.getLastRecordIndex());
|
||||||
|
itrntStrVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
List<DataMap> resultList = boItrntStrService.selectBOStrListInqire(itrntStrVO);
|
||||||
|
|
||||||
|
contents.put("paramVO", itrntStrVO);
|
||||||
|
contents.put("resultList", resultList);
|
||||||
|
contents.put("paginationInfo", itrntStrVO.getPaginationInfo());
|
||||||
|
|
||||||
|
return contents;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -356,36 +563,62 @@ public class MainController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.RESTRICTED)
|
@Policy(AuthPolicy.RESTRICTED)
|
||||||
@RequestMapping(value = "/sopmal/main/selecSidoGunguCmmnCdArray")
|
@RequestMapping(value = "/sopmal/main/selecSidoGunguCmmnCdArray", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selecSidoGunguCmmnCdArray(StrVO strVO) {
|
public ResponseEntity<WnbtResponse> selecSidoGunguCmmnCdArray(BOItrntStrVO itrntStrVO) {
|
||||||
return responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selecBOSidoGunguCmmnCdArray", strVO),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
itrntStrVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
|
||||||
|
// 공통코드 호출
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("SIDO"); // 시도 코드
|
||||||
|
List<?> sidoCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
bOMaComncdVO.setGroupCd("GUNGU"); // 군구 코드
|
||||||
|
List<?> gunguCdList = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
// Map객체에 필요 정보 할당
|
||||||
|
Map<String, Object> content = new HashMap<>();
|
||||||
|
content.put("sidoCdList", sidoCdList);
|
||||||
|
content.put("gunguCdList", gunguCdList);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selecBOSidoGunguCmmnCdArray", strVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 매장 상세 조회
|
* 매장 상세 조회
|
||||||
* @param gradVO
|
* @param itrntStrVO
|
||||||
* @param model
|
* @param model
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectStrDtlInqire")
|
@RequestMapping(value = "/sopmal/main/selectStrDtlInqire")
|
||||||
public String selectStrDtlInqire(StrVO strVO, ModelMap model, HttpServletRequest request) {
|
public String selectStrDtlInqire(BOItrntStrVO itrntStrVO, ModelMap model, HttpServletRequest request) {
|
||||||
strVO.setServerDv("sopmal");
|
itrntStrVO.setServerDv("sopmal");
|
||||||
|
|
||||||
// responseHandler.handleResponse(
|
model.addAttribute("strVO", itrntStrVO);
|
||||||
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrDtlInqire", strVO),
|
|
||||||
// model,
|
// 작성자 정보 할당
|
||||||
// "resultMap"
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
itrntStrVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
|
||||||
|
Map<String, Object> resultMap = new HashMap<>();
|
||||||
|
DataMap result = boItrntStrService.selectBOStrDtlInqire(itrntStrVO);
|
||||||
|
|
||||||
|
resultMap.put("paramVO", itrntStrVO);
|
||||||
|
resultMap.put("result", result);
|
||||||
|
|
||||||
|
// Map<String, Object> resultMap = responseHandler.handleResponseAsMap(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrDtlInqire", strVO)
|
||||||
// );
|
// );
|
||||||
model.addAttribute("strVO", strVO);
|
|
||||||
|
|
||||||
Map<String, Object> resultMap = responseHandler.handleResponseAsMap(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/itrnt/str/selectBOStrDtlInqire", strVO)
|
|
||||||
);
|
|
||||||
|
|
||||||
String kakaoKey = "";
|
String kakaoKey = "";
|
||||||
if(resultMap.containsKey("paramVO")){
|
if(resultMap.containsKey("paramVO")){
|
||||||
@@ -410,12 +643,18 @@ public class MainController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectIndvdlInfoProcsCn")
|
@RequestMapping(value = "/sopmal/main/selectIndvdlInfoProcsCn", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<WnbtResponse> selectIndvdlInfoProcsCn(MaSopmalVO maSopmalVO) {
|
public ResponseEntity<WnbtResponse> selectIndvdlInfoProcsCn(BOMaSopmalVO maSopmalVO) {
|
||||||
return responseHandler.handleResponse(
|
DataMap content = selectBOClauseInformationSopmal(maSopmalVO);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/admin/store/sopmal/selectBOClauseInformationSopmal", maSopmalVO),
|
return ResponseEntity.ok(
|
||||||
ReplyFromResrc::getReply
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(content))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/admin/store/sopmal/selectBOClauseInformationSopmal", maSopmalVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -425,19 +664,43 @@ public class MainController {
|
|||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value = "/sopmal/main/selectClause")
|
@RequestMapping(value = "/sopmal/main/selectClause")
|
||||||
public String selectClause(MaSopmalVO vo, ModelMap model, HttpServletRequest request) {
|
public String selectClause(BOMaSopmalVO vo, ModelMap model, HttpServletRequest request) {
|
||||||
|
|
||||||
responseHandler.handleResponse(
|
DataMap content = selectBOClauseInformationSopmal(vo);
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/admin/store/sopmal/selectBOClauseInformationSopmal", vo),
|
model.addAttribute("resultMap", content);
|
||||||
model,
|
// responseHandler.handleResponse(
|
||||||
"resultMap"
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/admin/store/sopmal/selectBOClauseInformationSopmal", vo),
|
||||||
);
|
// model,
|
||||||
|
// "resultMap"
|
||||||
|
// );
|
||||||
|
|
||||||
model.addAttribute("maSopmalVO",vo);
|
model.addAttribute("maSopmalVO",vo);
|
||||||
|
|
||||||
return Util.getDeviceType(request) + "/main/ClauseDtlR";
|
return Util.getDeviceType(request) + "/main/ClauseDtlR";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* bo로직 사용자 > 약관 내용 조회
|
||||||
|
*/
|
||||||
|
public DataMap selectBOClauseInformationSopmal(BOMaSopmalVO vo) {
|
||||||
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
|
||||||
|
DataMap content = new DataMap();
|
||||||
|
List<DataMap> clauseList = new ArrayList<>();
|
||||||
|
clauseList = boMaSopmalService.selectBOClauseInformation(vo);
|
||||||
|
|
||||||
|
/**약관구분 공통코드*/
|
||||||
|
BOMaComncdVO bOMaComncdVO = new BOMaComncdVO();
|
||||||
|
bOMaComncdVO.setGroupCd("STPLAT_DV");
|
||||||
|
List<?> stplat = bOMaComncdService.selectBOCommcdDetailList(bOMaComncdVO);
|
||||||
|
|
||||||
|
content.put("clauseList", clauseList);
|
||||||
|
content.put("stplat", stplat);
|
||||||
|
|
||||||
|
return content;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 브랜드 스토리
|
* 브랜드 스토리
|
||||||
*
|
*
|
||||||
@@ -622,8 +885,8 @@ public class MainController {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value="/sopmal/main/selectMbrInfo")
|
@RequestMapping(value="/sopmal/main/selectMbrInfo", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<?> selectMbrInfo(HttpServletRequest request, MyOrdrDlvyVO ordrDlvyVO) {
|
public ResponseEntity<?> selectMbrInfo(HttpServletRequest request, BOMbrVO vo) {
|
||||||
|
|
||||||
// 쿠키를 가져옴
|
// 쿠키를 가져옴
|
||||||
Cookie[] cookies = request.getCookies();
|
Cookie[] cookies = request.getCookies();
|
||||||
@@ -648,30 +911,66 @@ public class MainController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
String[] cookieValArr = filterList.toArray(new String[filterList.size()]);
|
String[] cookieValArr = filterList.toArray(new String[filterList.size()]);
|
||||||
ordrDlvyVO.setCookieValArr(cookieValArr);
|
vo.setCookieValArr(cookieValArr);
|
||||||
return responseHandler.handleResponse(
|
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMpageInfoInqire", ordrDlvyVO),
|
// 사용자 정보 추출 및 적용
|
||||||
ReplyFromResrc::getReply
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
);
|
vo.setSopmalCd(user.getSopmalCd());
|
||||||
|
vo.setMbrInnb(String.valueOf(user.getUserInnb()));
|
||||||
|
vo.setMbrDvCd(user.getMbrDvCd());
|
||||||
|
|
||||||
|
// 상품 옵션 조회
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
message = boMbrService.selectBOMpageInfoInqire(vo);
|
||||||
|
|
||||||
|
BOSiteVO siteVO = new BOSiteVO();
|
||||||
|
siteVO.setSopmalCd(vo.getSopmalCd());
|
||||||
|
siteVO.setCookieValArr(vo.getCookieValArr());
|
||||||
|
|
||||||
|
List<DataMap> recentGoods = null;
|
||||||
|
if (vo.getCookieValArr() != null) {
|
||||||
|
recentGoods = boSiteService.selectBOMainRecentGoods(siteVO);
|
||||||
|
message.put("recentGoods", recentGoods);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/gcone/mbr/mbr/selectBOMpageInfoInqire", ordrDlvyVO),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 메인 화면 쇼핑몰 카테고리별 타입
|
* 메인 화면 쇼핑몰 카테고리별 타입
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Policy(AuthPolicy.PUBLIC)
|
@Policy(AuthPolicy.PUBLIC)
|
||||||
@RequestMapping(value="/sopmal/main/selectMainSiteDesignCtgryListInqire")
|
@RequestMapping(value="/sopmal/main/selectMainSiteDesignCtgryListInqire", produces = MediaType.APPLICATION_JSON_VALUE)
|
||||||
public ResponseEntity<?> selectMainSiteDesignCtgryListInqire(HttpServletRequest request, MainVO vo) {
|
public ResponseEntity<?> selectMainSiteDesignCtgryListInqire(HttpServletRequest request, BOSiteVO siteVO) {
|
||||||
|
Map<String, Object> message = new HashMap<>();
|
||||||
|
|
||||||
return responseHandler.handleResponse(
|
// 작성자 정보 할당
|
||||||
sendToResrc.ofPost(RESRC.GCONEBO, "/ajax/gcone/setup/site/selectBOMainSiteDesignCtgryListInqire", vo),
|
AnonymousUser user = MemberJwtContextHolder.getMemberInfo();
|
||||||
ReplyFromResrc::getReply
|
if("01".equals(user.getSysDvCd())){
|
||||||
|
siteVO.setSopmalCd(user.getSopmalCd()); // 쇼핑몰코드
|
||||||
|
}
|
||||||
|
List<DataMap> case03 = boSiteService.selectBOMainSiteDesignCtgryListInqire(siteVO);
|
||||||
|
|
||||||
|
message.put("resultMap", case03);
|
||||||
|
|
||||||
|
return ResponseEntity.ok(
|
||||||
|
WnbtResponse.builder()
|
||||||
|
.resBody(new WnbtResponseBody(message))
|
||||||
|
.build()
|
||||||
);
|
);
|
||||||
|
// return responseHandler.handleResponse(
|
||||||
|
// sendToResrc.ofPost(RESRC.GCONEBO, "/ajax/gcone/setup/site/selectBOMainSiteDesignCtgryListInqire", vo),
|
||||||
|
// ReplyFromResrc::getReply
|
||||||
|
// );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user