From 2e33dc43f383c8b4378525bf1087d09f71b36746 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=EB=8C=80=ED=99=98?= Date: Tue, 8 Sep 2026 13:56:17 +0900 Subject: [PATCH] =?UTF-8?q?=EC=87=BC=ED=95=91=EB=AA=B0=20=EC=82=AC?= =?UTF-8?q?=EC=9D=B4=ED=8A=B8=EB=A7=B5=20xml=20=EC=9E=90=EB=8F=99=20?= =?UTF-8?q?=EC=83=9D=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../store/sopmal/mapper/BOMaSopmalMapper.java | 4 + .../sopmal/service/BOMaSopmalService.java | 40 ++++++ .../main/controller/MainController.java | 14 +++ .../admin/store/sopmal/BOSopmalMapper.xml | 119 ++++++++++++++++++ .../mngr/goods/goodsmngr/GoodsListRForm.jsp | 12 ++ 5 files changed, 189 insertions(+) diff --git a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/mapper/BOMaSopmalMapper.java b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/mapper/BOMaSopmalMapper.java index 315b9b9c..762a3ac8 100644 --- a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/mapper/BOMaSopmalMapper.java +++ b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/mapper/BOMaSopmalMapper.java @@ -3,6 +3,7 @@ package com.wb.domainserver.domain.admin.store.sopmal.mapper; import java.util.List; import com.wb.domainserver.domain.admin.store.sopmal.vo.Shop; +import com.wb.domainserver.domain.gcone.goods.goods.vo.BOGoodsVO; import com.wb.domainserver.domain.gcone.promtn.coupon.vo.BOCouponVO; import org.apache.ibatis.annotations.Mapper; import org.springframework.stereotype.Repository; @@ -202,4 +203,7 @@ public interface BOMaSopmalMapper { /*전체 쇼핑몰 목록*/ List selectSopmalList(); + + // XML 수정 임시 + public List selectSitemapXml(String sopmalCd); } diff --git a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java index 87093ec9..5ba0efc5 100644 --- a/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java +++ b/src/main/java/com/wb/domainserver/domain/admin/store/sopmal/service/BOMaSopmalService.java @@ -19,6 +19,7 @@ import com.wb.domainserver.domain.admin.sys.menu.vo.BOMaMenuVO; import com.wb.domainserver.domain.gcone.goods.goodsinfo.mapper.BOGoodsinfoMapper; import com.wb.domainserver.domain.gcone.goods.goodsinfo.vo.BOGoodsInfoVO; import lombok.Data; +import org.apache.commons.text.StringEscapeUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -984,4 +985,43 @@ public class BOMaSopmalService { return mapper.selectSopmalList(); } + /** + * 사이트맵 XML + * @param sopmalCd + * @return + */ + @Transactional + public String selectSitemapXml(String sopmalCd) { + List resultList = new ArrayList<>(); + StringBuilder xml = new StringBuilder(); + + try { + xml.append(""); + xml.append(""); + xml.append("\n"); + + resultList = mapper.selectSitemapXml(sopmalCd); + for (DataMap data : resultList) { + xml.append(" "); + xml.append(" ") + .append(StringEscapeUtils.escapeXml11(String.valueOf(data.get("targetUrl")))) + .append(""); + xml.append(" ") + .append(StringEscapeUtils.escapeXml11(String.valueOf(data.get("lastModified")))) + .append(""); + xml.append(" ") + .append(StringEscapeUtils.escapeXml11(String.valueOf(data.get("priority")))) + .append(""); + xml.append(" "); + } + + xml.append(""); + } catch (WnbtRestException wre){ + throw new WnbtRestException(wre.getMessage()); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + + return xml.toString(); + } } diff --git a/src/main/java/com/wb/domainserver/domain/sopmal/main/controller/MainController.java b/src/main/java/com/wb/domainserver/domain/sopmal/main/controller/MainController.java index aa2022d6..b0b1abc6 100644 --- a/src/main/java/com/wb/domainserver/domain/sopmal/main/controller/MainController.java +++ b/src/main/java/com/wb/domainserver/domain/sopmal/main/controller/MainController.java @@ -198,6 +198,20 @@ public class MainController { } + /** + * 사이트맵 XML + * @return + */ + @Policy(AuthPolicy.PUBLIC) + @RequestMapping(value="/sitemap", produces = MediaType.APPLICATION_XML_VALUE) + public ResponseEntity selectSitemapXml() { + AnonymousUser user = MemberJwtContextHolder.getMemberInfo(); + String xml = boMaSopmalService.selectSitemapXml(user.getSopmalCd()); + + return ResponseEntity.ok().contentType(MediaType.APPLICATION_XML).body(xml); + } + + /** * 비회원 휴대폰번호 확인 * @return OrdrDtlR.jsp diff --git a/src/main/resources/mybatis/xml/mapper/admin/store/sopmal/BOSopmalMapper.xml b/src/main/resources/mybatis/xml/mapper/admin/store/sopmal/BOSopmalMapper.xml index c0f572f4..c8cc042b 100644 --- a/src/main/resources/mybatis/xml/mapper/admin/store/sopmal/BOSopmalMapper.xml +++ b/src/main/resources/mybatis/xml/mapper/admin/store/sopmal/BOSopmalMapper.xml @@ -1569,5 +1569,124 @@ AND GD.USE_AT = 'Y' + + diff --git a/src/main/webapp/WEB-INF/views/mngr/goods/goodsmngr/GoodsListRForm.jsp b/src/main/webapp/WEB-INF/views/mngr/goods/goodsmngr/GoodsListRForm.jsp index 47c6576a..642d651d 100644 --- a/src/main/webapp/WEB-INF/views/mngr/goods/goodsmngr/GoodsListRForm.jsp +++ b/src/main/webapp/WEB-INF/views/mngr/goods/goodsmngr/GoodsListRForm.jsp @@ -133,6 +133,17 @@ }); } + /* ******************************************************** + * xml 임시 + ******************************************************** */ + const fn_update_xml = function () { + const url = ''; + + $('#listForm').attr('action', url); + $('#listForm').attr('method', 'post'); + $('#listForm').submit(); + }; + /* ******************************************************** * 등록폼 이동 ******************************************************** */ @@ -441,6 +452,7 @@

상품 목록

+