웹마스터 팁
누리고 쇼핑몰 상품취소 혹은 반품시 마일리지 자동회복하기
2015.01.21 10:37
누리고 쇼핑몰에서 물건을 주문하면서 마일리지를 사용하면 주문즉시 마일리지가 차감됩니다.
그런데, 상품을 취소하거나 반품시에는 사용한 마일리지가 다시 돌아가야 하는데
이게 안되어서 일일이 마일리지를 수동으로 조정해야 합니다.
이게 은근 귀찮아요.. ㅎㅎ
이걸 해결하려면
nstore - nstore.controller.php
에서
updateorderstatus() 부분을 수정해주시면 됩니다
// if the order is completed, give mileage to the member. if ($in_args->order_status==nstore::ORDER_STATE_COMPLETE) { $order_info = $oNstoreModel->getOrderInfo($order_srl); //debugprint($order_info); if ($order_info->member_srl && $order_info->mileage && $order_info->mileage_save=='N') { $oNmileageController = &getController('nmileage'); $oNmileageController->plusMileage($order_info->member_srl, $order_info->mileage, $order_info->title, $order_srl); $args->mileage_save = 'Y'; } if ($order_info->item_list) { foreach ($order_info->item_list as $key=>$item) { $item_srl = $item->item_srl; $quantity = $item->quantity; $this->updateSalesCount($item_srl, $quantity); } } }
이 코드가 주문완료시에 마일리지를 적립하는 코드인데요
여기 바로 아래 취소 혹은 반품 할 코드를 넣어줍니다.
여기서 중요한것은
-취소: 물건을 배송하지 않았을 경우라고 보는것이고
-반품: 물건을 배송후에 취소하는 것이라고 보는것입니다.
그래서 취소는 사용한 마일리지만 돌려주고, 반품은 사용한 마일리지를 돌려주고, 적립된 마일리지를 차감하는 코드로 넣었습니다.
if ($in_args->order_status=="A") { //취소 $order_info = $oNstoreModel->getOrderInfo($order_srl); if ($order_info->member_srl && $order_info->use_mileage && $order_info->mileage_save=='N') { $oNmileageController = &getController('nmileage'); $oNmileageController->plusMileage($order_info->member_srl, $order_info->use_mileage, $order_info->title, $order_srl); $args->mileage_save = 'Y'; } if ($order_info->item_list) { foreach ($order_info->item_list as $key=>$item) { $item_srl = $item->item_srl; $quantity = $item->quantity; $this->updateSalesCount($item_srl, $quantity); } } } if ($in_args->order_status=="B") { //반품을 할경우 $order_info = $oNstoreModel->getOrderInfo($order_srl); if ($order_info->member_srl && $order_info->use_mileage && $order_info->mileage_save=='N') { $oNmileageController = &getController('nmileage'); $oNmileageController->plusMileage($order_info->member_srl, $order_info->use_mileage, $order_info->title, $order_srl); $args->mileage_save = 'Y'; } if ($order_info->member_srl && $order_info->mileage && $order_info->mileage_save=='N') { $oNmileageController = &getController('nmileage'); $oNmileageController->minusMileage($order_info->member_srl, $order_info->mileage, $order_info->title, $order_srl); $args->mileage_save = 'Y'; } if ($order_info->item_list) { foreach ($order_info->item_list as $key=>$item) { $item_srl = $item->item_srl; $quantity = $item->quantity; $this->updateSalesCount($item_srl, $quantity); } } }
댓글 6
-
민기
2015.02.02 17:32
-
garnecia
2015.02.03 10:14
제가 소스를 많이 손대서 코드를 올려드리진 못하고요..
라인도 틀려져서 어딘지 모르겠는데
updateorderstatus 라는 function이 있습니다. 거기중에서 첫번째 코드 가 기본기재되어있는 코드인데
그 아래에 반품,취소 코드를 입력하라는 거예요
-
민기
2015.02.02 17:37
garnecia님 올려논 배송비가 표시 안되는 팁도
팁은 팁인데 이용 몬하고 있습니다^^
해당파일 어떤부분 어떤소스로 바꾸라는건지 ㅡㅡ
무식타 노여워 마시고 좀 디테일하고 알려주시믄 감사하겠습니다
-
garnecia
2015.02.03 10:15
어 그니깐 해당파일에 찾으라는 코드를 찾아서 변경해주면 되는건데요... 더 이상 뭐라고 해야할지..
-
민기
2015.02.03 19:01
네... 감사합니다
좀 덤벙됐나 봅니다
마일리지 회복 팁은
금방 찾아서 잘 적용 했어요
-
SOFTA
2015.04.15 16:53
유용합니다요! ㄱㅅ^^
제목 | 글쓴이 | 날짜 |
---|---|---|
즐겨찾기 소스 - 파비콘등록 | soroweb | 2015.04.16 |
누리고 쇼핑몰 상품취소 혹은 반품시 마일리지 자동회복하기 [6] | garnecia | 2015.01.21 |
확장변수에 시분초 추가하기 [1] | 해떨 | 2015.04.15 |
JS로 IE 6,7,8 구분하기 [4] | 키스투엑스이 | 2015.04.14 |
|웹폰트(네이버 맑은 고딕, 나눔고딕) 적용하기 [1] | 다큰왕자 | 2014.03.18 |
나눔고딕 웹 폰트 적용하기. [10] | 정찬명 | 2011.12.15 |
에디터에서 URL 클릭시 "http://" 삭제하는 방법 [2] | 콜롬보. | 2015.03.13 |
통합검색 사용 가부 설정 및 특정 그룹만 사용가능하게 제한 설정 기능 추가 - 보안이슈가 될 수 있는 부분 [1] | sejin7940 | 2015.04.10 |
요청한 기능을 실행할 수 있는 권한이 없습니다. - 오류해결 | I-JEX | 2015.04.10 |
댓글 새로고침 수정 [22] | Lansi | 2013.09.06 |
메인 로고 및 메인 이미지 변경 방법 [1] | okcashbag042 | 2015.04.08 |
웹 재요청 방지 및 트래픽 감소를 위한 방법 | 마루디자인 | 2015.04.06 |
setModule() 오류 발생시 | qkrcjfgus33 | 2015.04.04 |
ie11에서 통합검색시 page가 바뀌면 검색키워드가 없어지거나 이상한 글자로 바뀌는 것에 대한 팁 | garnecia | 2015.04.03 |
[고급] 내 XE 모듈에 editor 삽입하기 [8] | 개발해보쟈 | 2013.01.22 |
스케치북게시판 최신버전에 네이트온 /마이피플/플립보드 추가하는 방법 [4] | 가을풍경 | 2015.03.09 |
로고 만들기 귀찮을때^^* [1] | 수백 | 2015.03.06 |
[스케치북5] 댓글 수정 간략화하기.. (새로고침 없이 하는 방법 추가) [16] | XE만세 | 2014.01.05 |
php 5.6에서 인증메일 SMTP 연결에 실패할때.. | 루비스코 | 2015.03.31 |
한국 ip list 범위 체크 및 데이터 갱신 | 마루디자인 | 2015.03.30 |
안녕하세요
찾던 팁인데
팁을 줘도 몬먹는군요^^
해당파일
$output = $this->updateOrderStatus($obj->order_srl, $args);
위 빨간 부분인가요
어떤 부분 어떤 소스를 바꿔야 하는지
좀 쉽게 알려주시믄 감사하겠습니다