웹마스터 팁

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


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


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


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


이걸 해결하려면


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

제목 글쓴이 날짜
웹서버 php에서 한글언어 깨지거나 오류날때 방법@ 뭘봐첨봐 2015.01.19
사이트 종합해서 접속자 아이피 검색 file StyleRoot 2015.01.19
kin 모듈 게시물 -> board로 게시물 옮기기 편법 file 꾸링 2015.01.20
누리고 쇼핑몰 상품취소 혹은 반품시 마일리지 자동회복하기 [6] garnecia 2015.01.21
익명게시판에서 임시저장된 글을 불러와 등록하면 익명처리되지 않고 글쓴이 정보가 기록되는 버그 수정 [1] sejin7940 2015.01.23
사용자 매뉴에 회원정보와 포인트설정 바로가기 기능 삽입 [1] file 간장게장같은남자 2015.01.23
사용자정의 중 전화번호 형식을 쓰는경우 - 사이에 한칸씩 여백이 생기는 걸 없애는방법 [1] sejin7940 2015.01.23
게시판에서 태그 기준으로 검색하면 임시저장글들도 노출되는 버그 수정 sejin7940 2015.01.23
DB LOCK으로 인한 사이트 마비와 사례, 조치 [2] onTrust 2015.01.24
부트스트랩 관련 버튼안에 체크박스 돼지코구뇽 2015.01.25
xe 폰갭 제작시 admob 광고 글쓰기 방해 하지 않으려면 한꼬마 2015.01.26
템플릿등에서 PHP 제어 구조(if, for, foreach)의 대체 문법 적용 [3] 총모아 2015.01.30
누리고 쇼핑몰 - 배송비가 표시 안되는 경우에 [7] garnecia 2015.01.31
회원가입후 24시간 이후 글작성 가능하기 [2] 샵사이드 2015.02.09
카카오 API로 로그인창 만들어 봤어요~~ ^^ [6] file 컴박살 2015.02.12
300기가 Zboard4->XE 이전기 [14] file forest535 2015.02.13
snoop가 안될때 curl 로 가져오기 [3] 한꼬마 2015.02.13
데이타 이전 시 xml 파일 임포트 속도 높이기 ^^ forest535 2015.02.17
xe core 설치 화면 오류 있습니다. 이렇게 바꿔주세요. [2] 한꼬마 2015.02.18
스케치북 최신버전에서 미리 덧글 입력해두기 [5] file LI-NA 2015.02.18