판매점 가격 정보 개선

This commit is contained in:
rjy1537 2026-01-26 17:32:57 +09:00
parent 04d0b618a3
commit 132cfa6d0a
3 changed files with 50 additions and 30 deletions

View File

@ -55,13 +55,13 @@ public interface UserMapper {
int setUserSave(UserRequest userReqList) throws Exception; int setUserSave(UserRequest userReqList) throws Exception;
/** /**
* 판매점 가격 패턴 조회 * 판매점 레벨 조회
* *
* @param storeReq * @param storeReq
* @return * @return
* @throws Exception * @throws Exception
*/ */
String getStorePricePattern(StoreRequest storeReq) throws Exception; String getStoreLevel(StoreRequest storeReq) throws Exception;
/** /**
* 판매점의 정가가격 삭제 * 판매점의 정가가격 삭제

View File

@ -28,20 +28,25 @@ public class UserService {
* @throws Exception * @throws Exception
*/ */
public int setStoreSave(StoreRequest storeReq) throws Exception { public int setStoreSave(StoreRequest storeReq) throws Exception {
String prevPricePattern = userMapper.getStorePricePattern(storeReq); // 등록된 가격 랭크 조회 String prevSaleStoreLevel = userMapper.getStoreLevel(storeReq); // 등록된 판매점 레벨
String pricePattern = String saleStoreLevel =
StringUtils.isEmpty(storeReq.getPricePattern()) ? "" : storeReq.getPricePattern(); StringUtils.isEmpty(storeReq.getSaleStoreLevel()) ? "" : storeReq.getSaleStoreLevel();
int resultCnt = userMapper.setStoreSave(storeReq); int resultCnt = userMapper.setStoreSave(storeReq);
userMapper.setStoreInfoSave(storeReq); userMapper.setStoreInfoSave(storeReq);
userMapper.setStoreSapCdSave(storeReq); userMapper.setStoreSapCdSave(storeReq);
userMapper.setStoreNorthModuleSave(storeReq); userMapper.setStoreNorthModuleSave(storeReq);
// 가격 패턴이 이전에 등록된 가격 패턴과 다른경우 적용 log.info("setStoreSave ==================> ", prevSaleStoreLevel + ", " + saleStoreLevel);
if (storeReq.getPricePattern() != null && !prevPricePattern.equals(pricePattern)) { // 신규 판매점 이거나 1차판매점에서 하위판매점으로 변경된 경우 가격 등록
// 등록된 가격이 없는경우 정가 가격 삭제후 저장 if (prevSaleStoreLevel == null
userMapper.deleteStoreUnitPrice(storeReq); || (!prevSaleStoreLevel.equals(saleStoreLevel) && "1".equals(prevSaleStoreLevel))) {
userMapper.setStoreUnitPrice(storeReq); // 판매점에 등록된 가격 삭제 가격 패턴의 아이템 등록
log.info("setStoreSave prevSaleStoreLevel =================> 시작");
int deleteCnt = userMapper.deleteStoreUnitPrice(storeReq);
int priceCnt = userMapper.setStoreUnitPrice(storeReq);
log.info(
"setStoreSave prevSaleStoreLevel ==================> 종료" + deleteCnt + ", " + priceCnt);
} }
return resultCnt; return resultCnt;
} }
@ -82,22 +87,30 @@ public class UserService {
// 판매점 동기화 // 판매점 동기화
for (StoreRequest storeRequest : storeList) { for (StoreRequest storeRequest : storeList) {
try { try {
String prevPricePattern = userMapper.getStorePricePattern(storeRequest); // 등록된 가격 랭크 조회 String prevSaleStoreLevel = userMapper.getStoreLevel(storeRequest); // 등록된 판매점 레벨
String pricePattern = String saleStoreLevel =
StringUtils.isEmpty(storeRequest.getPricePattern()) StringUtils.isEmpty(storeRequest.getSaleStoreLevel())
? "" ? ""
: storeRequest.getPricePattern(); : storeRequest.getSaleStoreLevel();
userMapper.setStoreSave(storeRequest); userMapper.setStoreSave(storeRequest);
userMapper.setStoreInfoSave(storeRequest); userMapper.setStoreInfoSave(storeRequest);
userMapper.setStoreSapCdSave(storeRequest); userMapper.setStoreSapCdSave(storeRequest);
userMapper.setStoreNorthModuleSave(storeRequest); userMapper.setStoreNorthModuleSave(storeRequest);
// 가격 패턴이 이전에 등록된 가격 패턴과 다른경우 적용 log.info("setStoreSave ==================> ", prevSaleStoreLevel + ", " + saleStoreLevel);
if (storeRequest.getPricePattern() != null && !prevPricePattern.equals(pricePattern)) { // 신규 판매점 이거나 1차판매점에서 하위판매점으로 변경된 경우 가격 등록
// 등록된 가격이 없는경우 정가 가격 삭제후 저장 if (prevSaleStoreLevel == null
userMapper.deleteStoreUnitPrice(storeRequest); || (!prevSaleStoreLevel.equals(saleStoreLevel) && "1".equals(prevSaleStoreLevel))) {
userMapper.setStoreUnitPrice(storeRequest); // 판매점에 등록된 가격 삭제 가격 패턴의 아이템 등록
log.info("setStoreSave prevSaleStoreLevel =================> 시작");
int deleteCnt = userMapper.deleteStoreUnitPrice(storeRequest);
int priceCnt = userMapper.setStoreUnitPrice(storeRequest);
log.info(
"setStoreSave prevSaleStoreLevel ==================> 종료"
+ deleteCnt
+ ", "
+ priceCnt);
} }
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage()); log.error(e.getMessage());
@ -167,20 +180,27 @@ public class UserService {
List<StoreRequest> storeList = storeSyncResponse.getStoreList(); List<StoreRequest> storeList = storeSyncResponse.getStoreList();
for (StoreRequest storeRequest : storeList) { for (StoreRequest storeRequest : storeList) {
String prevPricePattern = userMapper.getStorePricePattern(storeRequest); // 등록된 가격 랭크 조회 String prevSaleStoreLevel = userMapper.getStoreLevel(storeRequest); // 등록된 판매점 레벨
String pricePattern = String saleStoreLevel =
StringUtils.isEmpty(storeRequest.getPricePattern()) ? "" : storeRequest.getPricePattern(); StringUtils.isEmpty(storeRequest.getSaleStoreLevel())
? ""
: storeRequest.getSaleStoreLevel();
userMapper.setStoreSave(storeRequest); userMapper.setStoreSave(storeRequest);
userMapper.setStoreInfoSave(storeRequest); userMapper.setStoreInfoSave(storeRequest);
userMapper.setStoreSapCdSave(storeRequest); userMapper.setStoreSapCdSave(storeRequest);
userMapper.setStoreNorthModuleSave(storeRequest); userMapper.setStoreNorthModuleSave(storeRequest);
// 가격 패턴이 이전에 등록된 가격 패턴과 다른경우 적용 log.info("setStoreSave ==================> ", prevSaleStoreLevel + ", " + saleStoreLevel);
if (storeRequest.getPricePattern() != null && !prevPricePattern.equals(pricePattern)) { // 신규 판매점 이거나 1차판매점에서 하위판매점으로 변경된 경우 가격 등록
// 등록된 가격이 없는경우 정가 가격 삭제후 저장 if (prevSaleStoreLevel == null
userMapper.deleteStoreUnitPrice(storeRequest); || (!prevSaleStoreLevel.equals(saleStoreLevel) && "1".equals(prevSaleStoreLevel))) {
userMapper.setStoreUnitPrice(storeRequest); // 판매점에 등록된 가격 삭제 가격 패턴의 아이템 등록
log.info("setStoreSave prevSaleStoreLevel =================> 시작");
int deleteCnt = userMapper.deleteStoreUnitPrice(storeRequest);
int priceCnt = userMapper.setStoreUnitPrice(storeRequest);
log.info(
"setStoreSave prevSaleStoreLevel ==================> 종료" + deleteCnt + ", " + priceCnt);
} }
} }

View File

@ -257,10 +257,10 @@
); );
</insert> </insert>
<select id="getStorePricePattern" parameterType="com.interplug.qcast.biz.user.dto.StoreRequest" resultType="String"> <select id="getStoreLevel" parameterType="com.interplug.qcast.biz.user.dto.StoreRequest" resultType="String">
/* sqlid : com.interplug.qcast.user.getStorePricePattern */ /* sqlid : com.interplug.qcast.user.getStoreLevel */
SELECT SELECT
PRICE_PATTERN SALE_STORE_LEVEL
FROM M_SALES_STORE FROM M_SALES_STORE
WHERE WHERE
SALE_STORE_ID = #{saleStoreId} SALE_STORE_ID = #{saleStoreId}