웹마스터 팁

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


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


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


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


이걸 해결하려면


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

제목 글쓴이 날짜
썸네일 특정 파일로 불러오기 [18] Lansi 2014.01.21
유챗 팝업창으로 만들기 [1] file oscarmike 2014.04.26
모바일 이미지축소모드 kdp 2015.05.07
모바일 이미지 제거모드 kdp 2015.05.07
게시판의 MP3파일 갯수 표시하기 file kdp 2015.05.07
[서버운영] 웹 재요청 방지 및 트래픽 감소를 위한 방법 마루디자인 2015.05.06
member 모듈 업데이트가 계속 나오는 경우 고니고니 2015.05.06
속도관련 나노팁. [5] 1052 2015.05.04
익명게시판에서 임시저장된 글을 불러와 등록하면 익명처리되지 않고 글쓴이 정보가 기록되는 버그 수정 [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