회원 등급별 다른 가격으로 표시 및 구매

회원 등급별 다른 가격으로 표시 및 구매

QA

회원 등급별 다른 가격으로 표시 및 구매

본문

sir에 있는 몇몇 팁들을 보면서 작업을 해보고 있습니다.

관리자 페이지에 테이블 하나를 생성해서 아래와 같은 데이터를 입력해둔 상태입니다.

2943481293_1649918393.7253.png

저기서 가져오는 회원등급은 $member['mb_level'] 값이구요.

그리고 각각의 % 값은 SQL로 가져오도록 되어있습니다.

 

이상황에서 수정해야할 부분들을 파보고 있는데 일단은

 

shop.lib.php 에 있는 get_price() 함수를 고쳐서 상품페이지에 있는 가격이 수정되도록 하였습니다.

 


function get_price($it)
{
    global $member;
    global $pickup_fee;
    global $check_fee;
 
    $sql = " select * from g5_level_ratio where grade='".$member['mb_level']."' ";
    $row = sql_fetch($sql);
 
    if ($it['it_tel_inq']) return '전화문의';
    $pickup_fee = $row['pickup_fee_percent'] * $it['it_price'];
    $check_fee = $row['check_fee_percent'] * $it['it_price'];
 
    // 일반 회원일 경우 픽업비, 검품비 최소금액을 1000원으로 설정, 이외 등급은 200원으로 설정
    if($member['mb_level'] == 2) {
        if($pickup_fee < 1000) {
            $pickup_fee = 1000;
        }
        if($pickup_fee < 1000){
            $pickup_fee = 1000;
        }
    } else {
        if($pickup_fee < 200) {
            $pickup_fee = 200;
        }
        if($pickup_fee < 200){
            $pickup_fee = 200;
        }
    }
 
    if ($it['ca_id'] == 30) {   // 예치금 항목인 30 분류 카테고리일때에는 픽업비 검품비 사용하지 않음
        $price = $it['it_price'];
    } else {
        $price = $it['it_price'] + $pickup_fee + $check_fee;    // 그외 분류에서 계산된 픽업비 검품비 최종 금액
    }
 
    return (int)$price;
}

 

이렇게 하니 상품페이지에서 제대로 등급별 가격이 노출이 되더라구요. 그런데 여기서 문제가 생깁니다.

 

제가 확인해본 바로는 저 shop.lib.php 파일에서 get_price() 함수를 수정을 해도 이것은 표시만 되는 것이지 실제로 카트나 주문에 반영되는것이 안되기때문에 수정을 좀 해야하더군요.

 

제가 알아본 바로는 일단 

cartupdate.php ( 구매 버튼 클릭시 주문한 상품이 g5_shop_cart 테이블에 저장되는 쿼리 )

orderform.sub.php ( 구매 버튼 클릭하고 주문서 페이지에서의 가격 반영 )

 

그리고 아직 이후 단계는 아니지만 최종적으로 주문하기 버튼을 눌렀을때, 작업되는 쿼리와 검증되는 쿼리도 있는것같더라구요.

 

이게 어짜피 SQL로 회원등급을 가져오고 해당되는 %들을 최종 금액에 추가만 해주는 작업이라 어려운게 아닌것같은데 은근 수정해야할 곳들이 많다보니, 그 부분들을 찾아내고 검증하는게 어려운것같습니다.

 

다행이라면 포인트 결제만 지원을 해서 (결제 금액은 미리 충전해놓는 개념) PG사 쪽 관련 코드들은 하나도 수정안하고 (무통장 + 포인트) 결제 방식으로만 되는 부분들을 수정하면 되는데 이방법이 맞게 진행하는것인지 잘 모르겠습니다.

 

영카트 팁게 보니 아예 처음부터 it_price1, it_price2 이런식으로 가격을 지정해주고 등급별로 가격을 치환하시는 방법도 있던데 가격이 변동될 여지 때문에 it_price 에 추가금 비율을 더해주는 방식으로 진행한거였거든요.

 

혹시 관련 작업을 해보신분들 중에서 어떤 부분을 수정해야하는지 알고계신분이 계신지요?

이 작업이 마무리되면 저도 팁게를 한번 작성해볼까합니다. 이 기능 원하시는분이 많은것같은데 상품 표시 쪽 코드이거나 (주문쪽으로는 수정이 안된) 너무 옛날 코드라 적용이 안되는 경우도 있는것같더라구요.

 

이 질문에 댓글 쓰기 :

답변 1

답변을 작성하시기 전에 로그인 해주세요.
전체 1,543
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT