|
@@ -362,9 +362,6 @@ public class TsfOrderService {
|
|
|
param.setOrdNo(param.getOrgOrdNo());
|
|
param.setOrdNo(param.getOrgOrdNo());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- log.info("CHECK INFO :::: {}", param.getPgOrdNo());
|
|
|
|
|
- log.info("CHECK INFO :::: {}", param.getOrdNo());
|
|
|
|
|
-
|
|
|
|
|
// 일반 KCP 결제
|
|
// 일반 KCP 결제
|
|
|
result = coreKcpService.kcpPayRequest(param, request, response);
|
|
result = coreKcpService.kcpPayRequest(param, request, response);
|
|
|
}
|
|
}
|
|
@@ -1016,8 +1013,6 @@ public class TsfOrderService {
|
|
|
// 장바구니 등록된 주문 정보 조회
|
|
// 장바구니 등록된 주문 정보 조회
|
|
|
Collection<Order> cartList = coreOrderService.getCartGoodsList(param);
|
|
Collection<Order> cartList = coreOrderService.getCartGoodsList(param);
|
|
|
|
|
|
|
|
- log.info("CHECK DELV_FEE 1 ::::: {}", cartList.stream().iterator().next().getDelvFee());
|
|
|
|
|
-
|
|
|
|
|
// 주문 상세 정보 세팅
|
|
// 주문 상세 정보 세팅
|
|
|
for(Order item : cartList) {
|
|
for(Order item : cartList) {
|
|
|
item.setSavePntAmt(0);
|
|
item.setSavePntAmt(0);
|
|
@@ -1030,18 +1025,14 @@ public class TsfOrderService {
|
|
|
}
|
|
}
|
|
|
param.setOrderDetailList(cartList);
|
|
param.setOrderDetailList(cartList);
|
|
|
|
|
|
|
|
- log.info("CHECK DELV_FEE 2 ::::: {}", cartList.stream().iterator().next().getDelvFee());
|
|
|
|
|
-
|
|
|
|
|
// 배송비 정보 조회
|
|
// 배송비 정보 조회
|
|
|
GagaMap delvMap = coreOrderService.getCartDelvGoodsCntList(cartList, param);
|
|
GagaMap delvMap = coreOrderService.getCartDelvGoodsCntList(cartList, param);
|
|
|
param.setDelvFeeCdList((Collection<Order>) delvMap.get("delvFeeCdList"));
|
|
param.setDelvFeeCdList((Collection<Order>) delvMap.get("delvFeeCdList"));
|
|
|
|
|
|
|
|
- log.info("CHECK DELV_FEE 3 ::::: {}", param.getOrderDetailList().stream().iterator().next().getDelvFee());
|
|
|
|
|
-
|
|
|
|
|
// 주문 정보 등록
|
|
// 주문 정보 등록
|
|
|
coreOrderService.createPreOrder(param);
|
|
coreOrderService.createPreOrder(param);
|
|
|
-
|
|
|
|
|
- log.info("CHECK DELV_FEE 4 ::::: {}", param.getOrderDetailList().stream().iterator().next().getDelvFee());
|
|
|
|
|
|
|
+ int ordNo = param.getOrdNo();
|
|
|
|
|
+ int custNo = param.getCustNo();
|
|
|
|
|
|
|
|
// 네이버페이 기본정보
|
|
// 네이버페이 기본정보
|
|
|
String shopId = env.getProperty("naverPay.shop.id"); // shopId
|
|
String shopId = env.getProperty("naverPay.shop.id"); // shopId
|
|
@@ -1054,8 +1045,6 @@ public class TsfOrderService {
|
|
|
String goodsImgUrl = env.getProperty("upload.goods.view"); // 상품 이미지 경로
|
|
String goodsImgUrl = env.getProperty("upload.goods.view"); // 상품 이미지 경로
|
|
|
int totPrice = 0; // 전체 주문 금액
|
|
int totPrice = 0; // 전체 주문 금액
|
|
|
|
|
|
|
|
- log.info("CHECK PARAM ::::: {} / {}", param.getBackUrl(), param.getGoodsUrl());
|
|
|
|
|
-
|
|
|
|
|
// 네이버페이 송부용 xml 작성
|
|
// 네이버페이 송부용 xml 작성
|
|
|
StringBuffer sb = new StringBuffer();
|
|
StringBuffer sb = new StringBuffer();
|
|
|
sb.append("<order>\n");
|
|
sb.append("<order>\n");
|
|
@@ -1070,9 +1059,6 @@ public class TsfOrderService {
|
|
|
sb.append("\t</interface>\n");
|
|
sb.append("\t</interface>\n");
|
|
|
|
|
|
|
|
for(Order item : param.getOrderDetailList()) {
|
|
for(Order item : param.getOrderDetailList()) {
|
|
|
-
|
|
|
|
|
- log.info("CHECK DELV_FEE 5 ::::: {}", item.getDelvFee());
|
|
|
|
|
-
|
|
|
|
|
//<!-- 상품정보 -->
|
|
//<!-- 상품정보 -->
|
|
|
sb.append("\t<product>\n");
|
|
sb.append("\t<product>\n");
|
|
|
sb.append("\t\t<id>").append(item.getGoodsCd()).append("</id>\n"); //<!-- 상품코드 -->
|
|
sb.append("\t\t<id>").append(item.getGoodsCd()).append("</id>\n"); //<!-- 상품코드 -->
|
|
@@ -1080,37 +1066,87 @@ public class TsfOrderService {
|
|
|
sb.append("\t\t<name>").append(item.getGoodsNm()).append("</name>\n"); //<!-- 상품명 -->
|
|
sb.append("\t\t<name>").append(item.getGoodsNm()).append("</name>\n"); //<!-- 상품명 -->
|
|
|
sb.append("\t\t<basePrice>").append(item.getCurrPrice() + item.getOptAddPrice()).append("</basePrice>\n"); //<!-- 상품금액 -->
|
|
sb.append("\t\t<basePrice>").append(item.getCurrPrice() + item.getOptAddPrice()).append("</basePrice>\n"); //<!-- 상품금액 -->
|
|
|
// TODO http: 부분 운영 프로토콜 확인 후 수정 필요(운영 상품상세가 HTTPS일 경우 분기처리 필요(개발서버, 운영 구분))
|
|
// TODO http: 부분 운영 프로토콜 확인 후 수정 필요(운영 상품상세가 HTTPS일 경우 분기처리 필요(개발서버, 운영 구분))
|
|
|
- sb.append("\t\t<infoUrl>").append("http:" + param.getGoodsUrl() + item.getGoodsCd()).append("</infoUrl>\n"); //<!-- 상품상세페이지 URL -->
|
|
|
|
|
|
|
+ sb.append("\t\t<infoUrl>").append("http:" + (param.getGoodsUrl() + item.getGoodsCd())).append("</infoUrl>\n"); //<!-- 상품상세페이지 URL -->
|
|
|
sb.append("\t\t<imageUrl>").append("http:" + goodsImgUrl + "/" + item.getSysImgNm()).append("</imageUrl>\n"); //<!-- 상품원본이미지 URL -->
|
|
sb.append("\t\t<imageUrl>").append("http:" + goodsImgUrl + "/" + item.getSysImgNm()).append("</imageUrl>\n"); //<!-- 상품원본이미지 URL -->
|
|
|
|
|
+ if(TscConstants.GoodsType.SET.value().equals(item.getGoodsType())) { // 세트상품
|
|
|
|
|
+ // 구성상품 옵션정보 split
|
|
|
|
|
+ String[] itemNms = item.getItemNm().split("!@!"); // 구성상품명
|
|
|
|
|
+ String[] optCds = item.getOptCd().split(","); // 옵션코드
|
|
|
|
|
+ String[] colorNms = item.getColorNm().split(","); // 컬러명
|
|
|
|
|
+ String[] optCd2s = item.getOptCd2().split(","); // 사이즈
|
|
|
|
|
+ String[] itemCds = item.getItemCd().split(","); // 상품코드
|
|
|
|
|
+
|
|
|
|
|
+ // 상품명, 컬러, 사이즈 확인 ==> 20200517 정지혜과장님 확인 :: 상품명=25,OPT1=13,OPT2=12 글자. 넘어갈경우 뒤에 ".." 붙여서 글자수 맞출것.
|
|
|
|
|
+ // 상품명/컬러/사이즈 이므로 가운데 / 를 위해 24, 12, 12로 진행
|
|
|
|
|
+ for(int i = 0 ; i < itemNms.length ; i++) {
|
|
|
|
|
+ if(itemNms[i].length() > 24) {itemNms[i] = itemNms[i].substring(0, 21) + "..";}
|
|
|
|
|
+ if(optCd2s[i].length() > 12) {optCd2s[i] = optCd2s[i].substring(0, 9) + "..";}
|
|
|
|
|
+ if(colorNms[i].length() > 12) {colorNms[i] = colorNms[i].substring(0, 9) + "..";}
|
|
|
|
|
+
|
|
|
|
|
+ // 옵션 정보
|
|
|
|
|
+ sb.append("\t\t<option>\n");
|
|
|
|
|
+ sb.append("\t\t\t<quantity>").append(item.getGoodsQty()).append("</quantity>\n"); //<!-- 옵션수량-->
|
|
|
|
|
+ sb.append("\t\t\t<price>").append(item.getOptAddPrice()).append("</price>\n"); //<!-- 옵션금액 -->
|
|
|
|
|
+ sb.append("\t\t\t<manageCode>").append(item.getOptCd()).append("</manageCode>\n"); //<!-- 옵션관리코드 -->
|
|
|
|
|
+
|
|
|
|
|
+ // 칼라코드
|
|
|
|
|
+ sb.append("\t\t\t<selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<name>상품</name>\n");//<!-- 옵션명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(itemCds[i]).append("/").append(optCds[i]).append("</id>\n");//<!-- 옵션 -->
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(itemNms[i]).append("/").append(colorNms[i]).append("/").append(optCd2s[i]).append("</text>\n");//<!-- 옵션명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ sb.append("\t\t\t</selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t</option>\n");
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- // 옵션 정보
|
|
|
|
|
- sb.append("\t\t<option>\n");
|
|
|
|
|
- sb.append("\t\t\t<quantity>").append(item.getGoodsQty()).append("</quantity>\n"); //<!-- 옵션수량-->
|
|
|
|
|
- sb.append("\t\t\t<price>").append(item.getOptAddPrice()).append("</price>\n"); //<!-- 옵션금액 -->
|
|
|
|
|
- sb.append("\t\t\t<manageCode>").append(item.getOptCd()).append("</manageCode>\n"); //<!-- 옵션관리코드 -->
|
|
|
|
|
-
|
|
|
|
|
- // 칼라코드
|
|
|
|
|
- sb.append("\t\t\t<selectedItem>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
|
|
|
|
|
- sb.append("\t\t\t\t<name>색상</name>\n");//<!-- 옵션명 -->
|
|
|
|
|
- sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<id>").append(item.getOptCd1()).append("</id>\n");//<!-- 칼라코드 -->
|
|
|
|
|
- sb.append("\t\t\t\t\t<text>").append(item.getColorNm()).append("</text>\n");//<!-- 칼라명 -->
|
|
|
|
|
- sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
- sb.append("\t\t\t</selectedItem>\n");
|
|
|
|
|
-
|
|
|
|
|
- // 사이즈코드
|
|
|
|
|
- sb.append("\t\t\t<selectedItem>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
|
|
|
|
|
- sb.append("\t\t\t\t<name>사이즈</name>\n");//<!-- 옵션명 -->
|
|
|
|
|
- sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<id>").append(item.getOptCd2()).append("</id>\n");//<!-- 사이즈코드 -->
|
|
|
|
|
- sb.append("\t\t\t\t\t<text>").append(item.getOptCd2()).append("</text>\n");//<!-- 사이즈명 -->
|
|
|
|
|
- sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
- sb.append("\t\t\t</selectedItem>\n");
|
|
|
|
|
- sb.append("\t\t</option>\n");
|
|
|
|
|
|
|
+ } else if("Y".equals(item.getSelfGoodsYn())) { // 세트상품 제외 자사상품
|
|
|
|
|
+ // 옵션 정보
|
|
|
|
|
+ sb.append("\t\t<option>\n");
|
|
|
|
|
+ sb.append("\t\t\t<quantity>").append(item.getGoodsQty()).append("</quantity>\n"); //<!-- 옵션수량-->
|
|
|
|
|
+ sb.append("\t\t\t<price>").append(item.getOptAddPrice()).append("</price>\n"); //<!-- 옵션금액 -->
|
|
|
|
|
+ sb.append("\t\t\t<manageCode>").append(item.getOptCd()).append("</manageCode>\n"); //<!-- 옵션관리코드 -->
|
|
|
|
|
+
|
|
|
|
|
+ // 칼라코드
|
|
|
|
|
+ sb.append("\t\t\t<selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<name>색상</name>\n");//<!-- 옵션명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(item.getOptCd1()).append("</id>\n");//<!-- 칼라코드 -->
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(item.getColorNm()).append("</text>\n");//<!-- 칼라명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ sb.append("\t\t\t</selectedItem>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 사이즈코드
|
|
|
|
|
+ sb.append("\t\t\t<selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<name>사이즈</name>\n");//<!-- 옵션명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(item.getOptCd2()).append("</id>\n");//<!-- 사이즈코드 -->
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(item.getOptCd2()).append("</text>\n");//<!-- 사이즈명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ sb.append("\t\t\t</selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t</option>\n");
|
|
|
|
|
+ } else { // 세트상품 제외 입점업체 상품
|
|
|
|
|
+ // 옵션 정보
|
|
|
|
|
+ sb.append("\t\t<option>\n");
|
|
|
|
|
+ sb.append("\t\t\t<quantity>").append(item.getGoodsQty()).append("</quantity>\n"); //<!-- 옵션수량-->
|
|
|
|
|
+ sb.append("\t\t\t<price>").append(item.getOptAddPrice()).append("</price>\n"); //<!-- 옵션금액 -->
|
|
|
|
|
+ sb.append("\t\t\t<manageCode>").append(item.getOptCd()).append("</manageCode>\n"); //<!-- 옵션관리코드 -->
|
|
|
|
|
+
|
|
|
|
|
+ // 칼라코드
|
|
|
|
|
+ sb.append("\t\t\t<selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");//<!-- 옵션유형 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<name>옵션</name>\n");//<!-- 옵션명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(item.getOptCd()).append("</id>\n");//<!-- 칼라코드 -->
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(item.getOptCd1()).append("/").append(item.getOptCd2()).append("</text>\n");//<!-- 칼라명 -->
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ sb.append("\t\t\t</selectedItem>\n");
|
|
|
|
|
+ sb.append("\t\t</option>\n");
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- log.info("CHECK DELV_FEE 6 ::::: {}", item.getDelvFee());
|
|
|
|
|
|
|
|
|
|
// 배송비 판단 후 배송비유형 선택 (추가 기본배송비, 무료배송비 기준 조회후 등록)
|
|
// 배송비 판단 후 배송비유형 선택 (추가 기본배송비, 무료배송비 기준 조회후 등록)
|
|
|
//<!-- 배송정보 -->
|
|
//<!-- 배송정보 -->
|
|
@@ -1126,15 +1162,12 @@ public class TsfOrderService {
|
|
|
delvFee = 0;
|
|
delvFee = 0;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- log.info("CHECK DELV_FEE 7 ::::: {}", item.getDelvFee());
|
|
|
|
|
-
|
|
|
|
|
sb.append("\t\t<shippingPolicy>\n");
|
|
sb.append("\t\t<shippingPolicy>\n");
|
|
|
sb.append("\t\t\t<groupId>").append(item.getDelvFeeCd()).append("</groupId>\n"); //<!-- 배송비묶음그룹ID -->
|
|
sb.append("\t\t\t<groupId>").append(item.getDelvFeeCd()).append("</groupId>\n"); //<!-- 배송비묶음그룹ID -->
|
|
|
sb.append("\t\t\t<method>DELIVERY</method>\n"); //<!-- 배송방법 : 택배,소포,등기 -->
|
|
sb.append("\t\t\t<method>DELIVERY</method>\n"); //<!-- 배송방법 : 택배,소포,등기 -->
|
|
|
- sb.append("\t\t\t<feeType>").append("CONDITIONAL_FREE").append("</feeType>\n"); //<!-- 배송비유형 : 유료 -->
|
|
|
|
|
- sb.append("\t\t\t<feePayType>").append("PREPAYED").append("</feePayType>\n"); //<!-- 배송비결제방법 : 선불 -->
|
|
|
|
|
- //sb.append("\t\t\t<feePrice>").append(item.getDelvFee()).append("</feePrice>\n"); //<!-- 기본배송비 -->
|
|
|
|
|
- sb.append("\t\t\t<feePrice>").append(delvFee).append("</feePrice>\n"); //<!-- 기본배송비 -->
|
|
|
|
|
|
|
+ sb.append("\t\t\t<feeType>").append(delvFeeCrite).append("</feeType>\n"); //<!-- 배송비유형 : 유료 -->
|
|
|
|
|
+ sb.append("\t\t\t<feePayType>").append(feePayType).append("</feePayType>\n"); //<!-- 배송비결제방법 : 선불 -->
|
|
|
|
|
+ sb.append("\t\t\t<feePrice>").append(delvFee).append("</feePrice>\n"); //<!-- 기본배송비 -->
|
|
|
|
|
|
|
|
// 조건부 무료일경우에만 송부
|
|
// 조건부 무료일경우에만 송부
|
|
|
if(TscConstants.DelvFeeCrite.NORMAL.value().equals(item.getDelvFeeCrite())) {
|
|
if(TscConstants.DelvFeeCrite.NORMAL.value().equals(item.getDelvFeeCrite())) {
|
|
@@ -1155,16 +1188,12 @@ public class TsfOrderService {
|
|
|
|
|
|
|
|
result = sendOrderInfoToNC(sb);
|
|
result = sendOrderInfoToNC(sb);
|
|
|
|
|
|
|
|
- log.info("CHECK state ::::: {}", result.get("state").toString());
|
|
|
|
|
- log.info("CHECK orderKey ::::: {}",result.get("orderKey").toString());
|
|
|
|
|
- log.info("CHECK resultNo ::::: {}", result.get("resultNo").toString());
|
|
|
|
|
-
|
|
|
|
|
// 네이버 페이 주문번호 저장
|
|
// 네이버 페이 주문번호 저장
|
|
|
param.setNpayOrdNo(Integer.parseInt(result.get("resultNo").toString()));
|
|
param.setNpayOrdNo(Integer.parseInt(result.get("resultNo").toString()));
|
|
|
|
|
|
|
|
- log.info("CHECK NAVER PAY ORD NO ::::: {}", param.getNpayOrdNo());
|
|
|
|
|
-
|
|
|
|
|
// 3.주문정보 저장
|
|
// 3.주문정보 저장
|
|
|
|
|
+ param.setOrdNo(ordNo);
|
|
|
|
|
+ param.setUpdNo(custNo);
|
|
|
coreOrderDao.updateNaverPayOrderNo(param);
|
|
coreOrderDao.updateNaverPayOrderNo(param);
|
|
|
result.put("npayOrderUrl", env.getProperty("naverPay.order.url"));
|
|
result.put("npayOrderUrl", env.getProperty("naverPay.order.url"));
|
|
|
result.put("orderkey", param.getNpayOrdNo());
|
|
result.put("orderkey", param.getNpayOrdNo());
|
|
@@ -1196,8 +1225,6 @@ public class TsfOrderService {
|
|
|
|
|
|
|
|
HttpsURLConnection conn = (HttpsURLConnection)_url.openConnection();
|
|
HttpsURLConnection conn = (HttpsURLConnection)_url.openConnection();
|
|
|
|
|
|
|
|
- log.info("CHECK URL ::::: {}", env.getProperty("naverPay.order.api.url"));
|
|
|
|
|
-
|
|
|
|
|
conn.setDoInput(true);
|
|
conn.setDoInput(true);
|
|
|
conn.setDoOutput(true);
|
|
conn.setDoOutput(true);
|
|
|
conn.setUseCaches(false);
|
|
conn.setUseCaches(false);
|
|
@@ -1220,7 +1247,7 @@ public class TsfOrderService {
|
|
|
|
|
|
|
|
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
|
|
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
|
|
|
|
|
|
|
|
- String[] arr = reader.readLine().toString().split(":");
|
|
|
|
|
|
|
+ String[] arr = reader.readLine().split(":");
|
|
|
|
|
|
|
|
log.info("CHECK RESULT ARR ::::: {} / {} / {}", arr[0], arr[1], arr[2]);
|
|
log.info("CHECK RESULT ARR ::::: {} / {} / {}", arr[0], arr[1], arr[2]);
|
|
|
if ("SUCCESS".equals(arr[0])) {
|
|
if ("SUCCESS".equals(arr[0])) {
|
|
@@ -1406,52 +1433,83 @@ public class TsfOrderService {
|
|
|
// 옵션 정보
|
|
// 옵션 정보
|
|
|
sb.append("\t\t<option>\n");
|
|
sb.append("\t\t<option>\n");
|
|
|
|
|
|
|
|
- // 9.1 옵션 아이템정보 색상
|
|
|
|
|
- sb.append("\t\t\t<optionItem>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<type>SELECT</type>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<name>색상</name>\n");
|
|
|
|
|
- for(int j = 0 ; j < colorList.length ; j++) {
|
|
|
|
|
- sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<id>").append(colorList[j]).append("</id>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<text>").append(colorNmList[j]).append("</text>\n");
|
|
|
|
|
- sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
- }
|
|
|
|
|
- sb.append("\t\t\t</optionItem>\n");
|
|
|
|
|
-
|
|
|
|
|
- // 9.1 옵션 아이템정보 사이즈
|
|
|
|
|
- sb.append("\t\t\t<optionItem>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<type>SELECT</type>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<name>사이즈</name>\n");
|
|
|
|
|
- for(int j = 0 ; j < sizeList.length ; j++) {
|
|
|
|
|
- sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<id>").append(sizeList[j]).append("</id>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<text>").append(sizeList[j]).append("</text>\n");
|
|
|
|
|
- sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
|
|
+ if("Y".equals(goods.getSelfGoodsYn())) {
|
|
|
|
|
+ // 9.1 옵션 아이템정보 색상
|
|
|
|
|
+ sb.append("\t\t\t<optionItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<name>색상</name>\n");
|
|
|
|
|
+ for (String color : colorList) {
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(color).append("</id>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(color).append("</text>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ }
|
|
|
|
|
+ sb.append("\t\t\t</optionItem>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 9.1 옵션 아이템정보 사이즈
|
|
|
|
|
+ sb.append("\t\t\t<optionItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<name>사이즈</name>\n");
|
|
|
|
|
+ for (String size : sizeList) {
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(size).append("</id>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(size).append("</text>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ }
|
|
|
|
|
+ sb.append("\t\t\t</optionItem>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 9.3 옵션 옵션조합정보
|
|
|
|
|
+ for(GoodsStock optInfo : optList) {
|
|
|
|
|
+ sb.append("\t\t\t<combination>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<manageCode>").append(optInfo.getOptCd()).append("</manageCode>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<price>").append(optInfo.getAddPrice()).append("</price>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<stockQuantity>").append(optInfo.getStockQty()).append("</stockQuantity>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<status>true</status>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 9.3.1 옵션 옵션조합정보 색상
|
|
|
|
|
+ sb.append("\t\t\t\t<options>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<name>색상</name>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(optInfo.getOptCd1()).append("</id>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t</options>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 9.3.2 옵션 옵션조합정보 사이즈
|
|
|
|
|
+ sb.append("\t\t\t\t<options>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<name>사이즈</name>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(optInfo.getOptCd2()).append("</id>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t</options>\n");
|
|
|
|
|
+
|
|
|
|
|
+ sb.append("\t\t\t</combination>\n");
|
|
|
|
|
+ }
|
|
|
|
|
+ } else {
|
|
|
|
|
+ // 9.1 옵션 아이템정보 색상
|
|
|
|
|
+ sb.append("\t\t\t<optionItem>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<type>SELECT</type>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<name>옵션</name>\n");
|
|
|
|
|
+ for(GoodsStock optInfo : optList) {
|
|
|
|
|
+ sb.append("\t\t\t\t<value>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(optInfo.getOptCd()).append("</id>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<text>").append(optInfo.getOptCd1()).append("/").append(optInfo.getOptCd2()).append("</text>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t</value>\n");
|
|
|
|
|
+ }
|
|
|
|
|
+ sb.append("\t\t\t</optionItem>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 9.3 옵션 옵션조합정보
|
|
|
|
|
+ for(GoodsStock optInfo : optList) {
|
|
|
|
|
+ sb.append("\t\t\t<combination>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<manageCode>").append(optInfo.getOptCd()).append("</manageCode>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<price>").append(optInfo.getAddPrice()).append("</price>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<stockQuantity>").append(optInfo.getStockQty()).append("</stockQuantity>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t<status>true</status>\n");
|
|
|
|
|
+
|
|
|
|
|
+ // 9.3.1 옵션 옵션조합정보 색상
|
|
|
|
|
+ sb.append("\t\t\t\t<options>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<name>옵션</name>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t\t<id>").append(optInfo.getOptCd()).append("</id>\n");
|
|
|
|
|
+ sb.append("\t\t\t\t</options>\n");
|
|
|
|
|
+ sb.append("\t\t\t</combination>\n");
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
- sb.append("\t\t\t</optionItem>\n");
|
|
|
|
|
|
|
|
|
|
- // 9.3 옵션 옵션조합정보
|
|
|
|
|
- for(GoodsStock optInfo : optList) {
|
|
|
|
|
- sb.append("\t\t\t<combination>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<manageCode>").append(optInfo.getOptCd()).append("</manageCode>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<price>").append(optInfo.getAddPrice()).append("</price>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<stockQuantity>").append(optInfo.getStockQty()).append("</stockQuantity>\n");
|
|
|
|
|
- sb.append("\t\t\t\t<status>true</status>\n");
|
|
|
|
|
-
|
|
|
|
|
- // 9.3.1 옵션 옵션조합정보 색상
|
|
|
|
|
- sb.append("\t\t\t\t<options>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<name>색상</name>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<id>").append(optInfo.getOptCd1()).append("</id>\n");
|
|
|
|
|
- sb.append("\t\t\t\t</options>\n");
|
|
|
|
|
-
|
|
|
|
|
- // 9.3.2 옵션 옵션조합정보 사이즈
|
|
|
|
|
- sb.append("\t\t\t\t<options>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<name>사이즈</name>\n");
|
|
|
|
|
- sb.append("\t\t\t\t\t<id>").append(optInfo.getOptCd2()).append("</id>\n");
|
|
|
|
|
- sb.append("\t\t\t\t</options>\n");
|
|
|
|
|
-
|
|
|
|
|
- sb.append("\t\t\t</combination>\n");
|
|
|
|
|
- }
|
|
|
|
|
sb.append("\t\t</option>\n");
|
|
sb.append("\t\t</option>\n");
|
|
|
|
|
|
|
|
// 10. 배송정보조회
|
|
// 10. 배송정보조회
|