웹마스터 팁

누리고 쇼핑몰에서 물건을 주문하면서 마일리지를 사용하면 주문즉시 마일리지가 차감됩니다.


그런데, 상품을 취소하거나 반품시에는 사용한 마일리지가 다시 돌아가야 하는데


이게 안되어서 일일이 마일리지를 수동으로 조정해야 합니다.


이게 은근 귀찮아요.. ㅎㅎ


이걸 해결하려면


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);
				}
			}
		}

제목 글쓴이 날짜
익명게시판에서 임시저장된 글을 불러와 등록하면 익명처리되지 않고 글쓴이 정보가 기록되는 버그 수정 [1] sejin7940 2015.01.23
팝업모듈에서 jQuery 충돌 해결 - 팝업창이 안뜰때. [5] file 똑디 2013.03.22
xe설치시 퍼미션 문제나 DB엑세스 문제 해결하기 길가던분 2015.05.01
[애매모호]스케치북 게시판을 뭔가 큼직큼직하게 눈에 잘들어오게 바꾸기 [10] socialskyo 2014.01.03
PC에서 모바일화면 보는방법 [2] 빅스타 2015.04.29
스케치북 게시판 추천+등록 버튼 만들기 (수정) [8] file 숭숭군 2012.09.22
양력을 음력으로... [7] pupstar 2001.08.14
[초간단 자바스크립트!] 이미지 드래그하기..~~ [8] ∑Ztxy 2003.11.02
간편 css 압축 Ansi™ 2015.04.21
XE 1.5 이상으로 DB 이전시 일부 DB가 빠질 경우 - 내용추가(0203) [7] sejin7940 2012.02.02
정렬을 사용자정의값으로 한 경우 저장이 안 되는 현상 수정 [1] sejin7940 2015.01.06
프리 반응형 템플릿(html/css/js) 다운받을 수 있는 곳 [1] jhsongsh 2014.10.28
즐겨찾기 소스 - 파비콘등록 soroweb 2015.04.16
누리고 쇼핑몰 상품취소 혹은 반품시 마일리지 자동회복하기 [6] garnecia 2015.01.21
확장변수에 시분초 추가하기 [1] file 해떨 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