From 6bf80ca2970383e07bbca03ca2af72f3a732210c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=EB=8C=80=ED=99=98?= Date: Wed, 29 Apr 2026 13:52:21 +0900 Subject: [PATCH] =?UTF-8?q?fix=20:=20=EC=84=A4=EC=A0=95=20>=20=EB=A7=88?= =?UTF-8?q?=EC=9D=BC=EB=A6=AC=EC=A7=80=20=EC=84=A4=EC=A0=95=20-=20?= =?UTF-8?q?=EB=A7=88=EC=9D=BC=EB=A6=AC=EC=A7=80=20=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=EC=A1=B0=EA=B1=B4=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../setup/ordrmngr/vo/BOSetupOrdrVO.java | 58 +- .../ordr/controller/SetupOrdrController.java | 29 +- .../gcone/setup/ordrmngr/BOOrdrmngrMapper.xml | 19 +- .../views/mngr/setup/ordr/OrdrListR.jsp | 592 +++++++++++------- 4 files changed, 433 insertions(+), 265 deletions(-) diff --git a/src/main/java/com/wb/domainserver/domain/gcone/setup/ordrmngr/vo/BOSetupOrdrVO.java b/src/main/java/com/wb/domainserver/domain/gcone/setup/ordrmngr/vo/BOSetupOrdrVO.java index 15d1aa61..3aced8f0 100644 --- a/src/main/java/com/wb/domainserver/domain/gcone/setup/ordrmngr/vo/BOSetupOrdrVO.java +++ b/src/main/java/com/wb/domainserver/domain/gcone/setup/ordrmngr/vo/BOSetupOrdrVO.java @@ -28,28 +28,48 @@ import lombok.EqualsAndHashCode; public class BOSetupOrdrVO extends AbstractVO { /** 쇼핑몰 코드 */ private String sopmalCd; - /**마일리지 지급 사용여부*/ - private String mlgPymntAt; - /**마일리지 지급 구분코드*/ - private String mlgPymntDvCd; - /**마일리지 지급 비율*/ - private String mlgPymntRt; - /**마일리지 최대 지급 금액*/ - private String mlgMxmmPymntAmt; - /**마일리지 최대 지급 금액 사용여부*/ - private String mlgMxmmPymntAmtAt; - /**마일리지 유효기간*/ - private String mlgValidPd; - /**마일리지 유효기간 사용여부*/ - private String mlgValidPdAt; - /**여러곳배송여부*/ + +// 여러 곳 배송 + /** 여러곳배송여부 */ private String multiDlvyAt; - /**정기배송여부*/ + /** 정기배송여부 */ private String fdrmDlvyAt; - /**선물하기여부*/ + +// 선물하기 + /** 선물하기여부 */ private String giftDlvyAt; - /**선물하기자동취소기간*/ + /** 선물하기자동취소기간 */ private String giftDlvyAtmcCanclPd; - /*충전형마일리지 사용여부*/ + +// GC 머니 + /** 충전형마일리지 사용여부 */ private String cashAt; + +// 마일리지 지급 + /** 마일리지 지급 사용여부 */ + private String mlgPymntAt; + /** 마일리지 지급 구분코드 */ + private String mlgPymntDvCd; + /** 마일리지 지급 비율 */ + private String mlgPymntRt; + /** 마일리지 최대 지급 금액 */ + private String mlgMxmmPymntAmt; + /** 마일리지 최대 지급 금액 사용여부 */ + private String mlgMxmmPymntAmtAt; + /** 마일리지 유효기간 */ + private String mlgValidPd; + /** 마일리지 유효기간 사용여부 */ + private String mlgValidPdAt; + +// 마일리지 사용 조건 + /** 마일리지 보유 사용 금액 */ + private String mlgHoldUseAmt; + /** 마일리지 결제금액 사용 금액 */ + private String mlgSetleAmtUseAmt; + /** 마일리지 최소 사용 금액 */ + private String mlgMummUseAmt; + /** 마일리지 최대 사용 구분(MLG_MXMM_USE_DV) */ + private String mlgMxmmUseDv; + /** 마일리지 최대 사용 금액 */ + private String mlgMxmmUseAmt; } diff --git a/src/main/java/com/wb/domainserver/domain/mngr/setup/ordr/controller/SetupOrdrController.java b/src/main/java/com/wb/domainserver/domain/mngr/setup/ordr/controller/SetupOrdrController.java index c0176ce0..f8b8cc78 100644 --- a/src/main/java/com/wb/domainserver/domain/mngr/setup/ordr/controller/SetupOrdrController.java +++ b/src/main/java/com/wb/domainserver/domain/mngr/setup/ordr/controller/SetupOrdrController.java @@ -1,6 +1,8 @@ package com.wb.domainserver.domain.mngr.setup.ordr.controller; 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.gcone.setup.ordrmngr.service.BOOrdrMngrService; import com.wb.domainserver.domain.gcone.setup.ordrmngr.vo.BOSetupOrdrVO; import com.wb.domainserver.exception.WnbtRestException; @@ -13,6 +15,7 @@ import com.wb.domainserver.security.authorization.annotation.AuthPolicy; import com.wb.domainserver.security.authorization.annotation.Policy; import com.wb.domainserver.util.communicate.SendToResrc; import com.wb.domainserver.util.communicate.ValidateResultConverter; +import com.wb.domainserver.util.dataaccess.DataMap; import com.wb.domainserver.util.string.StringUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -63,6 +66,8 @@ public class SetupOrdrController { @Autowired private BOOrdrMngrService service; + @Autowired + private BOMaSopmalService bOMaSopmalService; /** @@ -73,15 +78,14 @@ public class SetupOrdrController { @Policy(AuthPolicy.RESTRICTED) @RequestMapping(value="/selectOrdrSetupList") public String selectOrdrSetupList(ModelMap model, BOSetupOrdrVO boOrdrVO, @CookieValue(value = "authSopmalCd") String authSopmalCd) { + DataMap content = new DataMap(); boOrdrVO.setSopmalCd(authSopmalCd); + content.put("ordrSetupList", service.selectBOOrdrSetupList(boOrdrVO)); - AnonymousUser user = MemberJwtContextHolder.getMemberInfo(); - if("01".equals(user.getSysDvCd())){ - boOrdrVO.setSopmalCd(user.getSopmalCd()); - } - - Map content = service.selectBOOrdrSetupList(boOrdrVO); + BOMaSopmalVO boMaSopmalVO = new BOMaSopmalVO(); + boMaSopmalVO.setSopmalCd(authSopmalCd); + content.put("sopmalDetailList", bOMaSopmalService.selectBOSopmalUpdtForm(boMaSopmalVO)); model.addAttribute("resultMap", content); // responseHandler.handleResponse( @@ -154,6 +158,19 @@ public class SetupOrdrController { vo.setMlgMxmmPymntAmt(null); } + //마일리지 사용 조건 파라미터 정제 + if(!StringUtil.isEmpty(vo.getMlgHoldUseAmt())) + vo.setMlgHoldUseAmt(StringUtil.removeCommaChar(vo.getMlgHoldUseAmt())); + + if(!StringUtil.isEmpty(vo.getMlgSetleAmtUseAmt())) + vo.setMlgSetleAmtUseAmt(StringUtil.removeCommaChar(vo.getMlgSetleAmtUseAmt())); + + if(!StringUtil.isEmpty(vo.getMlgMummUseAmt())) + vo.setMlgMummUseAmt(StringUtil.removeCommaChar(vo.getMlgMummUseAmt())); + + if(!StringUtil.isEmpty(vo.getMlgMxmmUseAmt())) + vo.setMlgMxmmUseAmt(StringUtil.removeCommaChar(vo.getMlgMxmmUseAmt())); + //등록자 수정자 set AnonymousUser user = MemberJwtContextHolder.getMemberInfo(); if("01".equals(user.getSysDvCd())){ diff --git a/src/main/resources/mybatis/xml/mapper/gcone/setup/ordrmngr/BOOrdrmngrMapper.xml b/src/main/resources/mybatis/xml/mapper/gcone/setup/ordrmngr/BOOrdrmngrMapper.xml index fe37615d..c6669dad 100644 --- a/src/main/resources/mybatis/xml/mapper/gcone/setup/ordrmngr/BOOrdrmngrMapper.xml +++ b/src/main/resources/mybatis/xml/mapper/gcone/setup/ordrmngr/BOOrdrmngrMapper.xml @@ -42,7 +42,12 @@ UPDATE GC_SHOP - SET MLG_PYMNT_AT = #{mlgPymntAt}, + SET CASH_AT = IFNULL(#{cashAt},'N'), + MULTI_DLVY_AT = IFNULL(#{multiDlvyAt},'N'), + FDRM_DLVY_AT = IFNULL(#{fdrmDlvyAt},'N'), + GIFT_DLVY_AT = IFNULL(#{giftDlvyAt},'N'), + GIFT_DLVY_ATMC_CANCL_PD = #{giftDlvyAtmcCanclPd}, + MLG_PYMNT_AT = #{mlgPymntAt}, MLG_PYMNT_DV_CD = #{mlgPymntDvCd}, MLG_PYMNT_RT = REPLACE(#{mlgPymntRt},',',''), MLG_MXMM_PYMNT_AMT = REPLACE(#{mlgMxmmPymntAmt},',',''), @@ -63,11 +68,13 @@ MLG_VALID_PD_AT = 'Y', - CASH_AT = IFNULL(#{cashAt},'N'), - MULTI_DLVY_AT = IFNULL(#{multiDlvyAt},'N'), - FDRM_DLVY_AT = IFNULL(#{fdrmDlvyAt},'N'), - GIFT_DLVY_AT = IFNULL(#{giftDlvyAt},'N'), - GIFT_DLVY_ATMC_CANCL_PD = #{giftDlvyAtmcCanclPd} + MLG_HOLD_USE_AMT = #{mlgHoldUseAmt}, + MLG_SETLE_AMT_USE_AMT = #{mlgSetleAmtUseAmt}, + MLG_MUMM_USE_AMT = #{mlgMummUseAmt}, + MLG_MXMM_USE_DV = #{mlgMxmmUseDv}, + MLG_MXMM_USE_AMT = #{mlgMxmmUseAmt}, + UPDUSR = #{updusr}, + UPDT_DT = SYSDATE() WHERE SOPMAL_CD = #{sopmalCd} diff --git a/src/main/webapp/WEB-INF/views/mngr/setup/ordr/OrdrListR.jsp b/src/main/webapp/WEB-INF/views/mngr/setup/ordr/OrdrListR.jsp index 55c4e00a..372a7d88 100644 --- a/src/main/webapp/WEB-INF/views/mngr/setup/ordr/OrdrListR.jsp +++ b/src/main/webapp/WEB-INF/views/mngr/setup/ordr/OrdrListR.jsp @@ -3,6 +3,7 @@ <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> <%@ taglib prefix="ui" uri="http://www.winbit.kr/ctl/ui" %> <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %> +<%@ taglib prefix="f" uri="/WEB-INF/tlds/f.tld"%> <%-- Class Name : OrdrListR.jsp Description : 주문설정 jsp @@ -21,10 +22,10 @@ $(document).ready(function () { $("#mlgPymntRt").val(function(index, value) { - return Number(value).toLocaleString(); + return Number(value).toLocaleString(); }); $("#mlgMxmmPymntAmt").val(function(index, value) { - return Number(value).toLocaleString(); + return Number(value).toLocaleString(); }); /*선물하기 이벤트*/ @@ -102,6 +103,34 @@ $("#mlgPymntRt").val("0"); }); }); + + /* ******************************************************** + * 마일리지 사용 조건 disabled 처리 + ******************************************************** */ + const fn_set_mlgDisabled = function(_target) { + + if (_target === 'other') { + + $('#maxPct').prop('disabled', true); + $('#maxPct').val('0'); + $('#maxMlg').prop('disabled', true); + $('#maxMlg').val('0'); + + } else if (_target === 'maxPct') { + + $('#maxPct').prop('disabled', false); + $('#maxMlg').prop('disabled', true); + $('#maxMlg').val('0'); + + } else if (_target === 'maxMlg') { + + $('#maxPct').prop('disabled', true); + $('#maxPct').val('0'); + $('#maxMlg').prop('disabled', false); + } + + } + /************************************************************** hidden form 생성 함수 ****************************************************************/ @@ -122,13 +151,12 @@ - + <%-- 상단메뉴 공통화 적용 : 2023-11-30 / 박철민 추가 --%> <%@include file="/WEB-INF/views/comm/mngr/Header.jsp" %>
<%-- 좌측메뉴 공통화 적용 : 2023-11-30 / 박철민 추가 --%> <%@include file="/WEB-INF/views/comm/mngr/Left.jsp" %> -
@@ -139,268 +167,364 @@
-
-
-
- + +
+
+
+ +
+

여러 곳 배송

+
+ + + + + + + + + + + + +
여러 곳 배송 사용 여부 설정
여러 곳 배송 사용 여부 +
+
+
+ checked> + +
+
+ checked> + +
+
+
+
+
+
+
+

선물하기

+
+ + + + + + + + + + + + style = "display: none"> + + + + +
선물하기 설정
선물하기 사용 여부 +
+
+
+ checked> + +
+
+ checked> + +
+
+
+
배송주소 등록기간* +
+
+
+ + + value = "" + + + value = "0" + + + disabled> +  일 이내 배송주소 등록되지 않으면 주문 자동취소 +
+
+
+
+
+
+
+

GC 머니

+
+ + + + + + + + + + + + +
GC 머니 사용 여부 설정
GC 머니 사용 여부 +
+
+
+ checked> + +
+
+ checked> + +
+
+
+
+
+
+
-

여러 곳 배송

+

마일리지 지급

- + - + - - -
여러 곳 배송 사용 여부 설정마일리지 지급 설정
여러 곳 배송 사용 여부지급 설정* -
-
+
+
- checked> - + checked> +
- checked> - + checked> +
-
-
-
-
-
-

선물하기

-
- - - - - - - - - - - - style = "display: none"> - - - - -
선물하기 설정
선물하기 사용 여부 -
-
-
- checked> - -
-
- checked> - +
style="display: none"><%--사용 여부에 따른 이벤트 컨트롤--%> + 구매시 + 총 상품 결제금액의 + + + + maxlength="2" + + + maxlength="12" + + + maxlength="2" + + + + + value ="" + + + value ="0" + + > + +
+
+ 적립
-
-
배송주소 등록기간* -
-
-
- - - value = "" - - - value = "0" - - - disabled> -  일 이내 배송주소 등록되지 않으면 주문 자동취소 -
-
-
-
-
-
-
-

GC 머니

-
- - - - - - - - - - - - -
GC 머니 사용 여부 설정
GC 머니 사용 여부 -
-
-
- checked> - -
-
- checked> - -
-
-
-
-
-
- -
-

마일리지 지급

-
- - - - - - - - - - + + style="display: none"><%--사용 여부에 따른 이벤트 컨트롤--%> + + - - style="display: none"><%--사용 여부에 따른 이벤트 컨트롤--%> - - + + +
마일리지 지급 설정
지급 설정* -
-
-
- checked> - -
-
- checked> - -
-
-
style="display: none"><%--사용 여부에 따른 이벤트 컨트롤--%> - 구매시 - 총 상품 결제금액의 - - - - maxlength="2" - - - maxlength="12" - - - maxlength="2" - +
style="display: none"><%--사용 여부에 따른 이벤트 컨트롤--%> + 최대 + + + value ="${ordrSetupInfo.mlgMxmmPymntAmt}" + + + value ="0" + - - - value ="" - - - value ="0" - - > - -
- + disabled> + 마일리지 까지 적립 +
+ +
- 적립
-
style="display: none"><%--사용 여부에 따른 이벤트 컨트롤--%> - 최대 - - - value ="${ordrSetupInfo.mlgMxmmPymntAmt}" - - - value ="0" - - - disabled> - 마일리지 까지 적립 +
유효기간* +
+ 지급 마일리지의 유효기간은 + + + value="" + + + value="0" + + + disabled> + 개월 + <%-- 유효기간 사용 유무 설정 --%>
-
- -
유효기간* -
- 지급 마일리지의 유효기간은 - - - value="" - - - value="0" - - - disabled> - 개월 - <%-- 유효기간 사용 유무 설정 --%> -
- +
+
+
+
+
+

마일리지 사용 조건

+
+ + + + + + + + + + - - + + + + + + + + + + +
마일리지 사용 조건
보유 마일리지 조건 +
+
+ 보유 마일리지가 + + 원 + 이상이면 마일리지 사용 가능 +
- -
상품 금액 조건 +
+
+ {상품 실 결제금액} + {좌동} + {좌동} ··· + + 원 + 이상이면 마일리지 사용 가능 +
+

상품 실 결제 금액 = {상품 할인가(판매가) x 수량} - 할인(쿠폰, 등급, 좋아요, 모바일, 프로모션 코드)

+
+
마일리지 사용한도 조건 +
+
+ 마일리지는 최소 + + 원 이상 +
+ ~ +
+ 최대 +
+
+ + +
+ + + + + + + + + + + + +
+ + +
+ + %금액까지 사용 가능 +
+
+
+ + +
+ + 원까지 사용 가능 +
+
+
+
+
+
- -
+
+
-