웹마스터 팁

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


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


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


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


이걸 해결하려면


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

제목 글쓴이 날짜
zbXE User Guide - 3차수정 [3] file 캬캬캬캬캬캬 2008.02.16
전에 누군가 찾았던 것인데..새로고침시 현재페이지로 [2] 강영곤 2008.02.14
특정게시판, 비밀글로 작성하기 [19] file 대암지기 2008.02.13
드림위버 등에서 레이아웃 편집시에.. [3] 은진아빠 2008.02.12
제로보드용 플래시시계 위젯 설치방법 file 푸른커튼 2008.02.12
회원가입 생일 필수로 입력받고, 관리자페이지 회원목록에 회원생일 출력하기 [10] 대암지기 2008.02.11
로그인후 보여줄 페이지 설정 [4] 권인해 2008.02.11
이미지 줌 아웃슬라이드 [4] 맨발 2008.02.10
아날로그 플래시 시계 10종류 (홈페이지, 블로그용) file 푸른커튼 2008.02.09
HTTP 406 Error 가 나오면서 업로드 안될때 [16] file plruto 2008.02.08
주소끝에 /zbxe 안적어도 홈페이지에 바로 들어오게 하는법?? [10] 박태훈922 2008.02.07
왼쪽메뉴줄이고 오른쪽에 박스만들어 내용쉽게넣기 [15] file plruto 2008.02.07
BGM 등을 배경을 투명하게 iframe 으로 넣는 팁 [3] 푸른커튼 2008.02.05
본인외 회원정보 제어 [1] edgarkim 2008.02.03
특정 게시판, 업로드된 그림 자동으로 본문에 출력하기 [14] file 대암지기 2008.02.03
flash <=> xe menu 연동 [7] tsana 2008.02.03
포인트 수정없이 원하는 레벨 아이콘이나 원하는 이미지 출력하기(0.29용) [20] 지연아빠 2008.02.02
리눅스 호환 호스팅에서 zbxe 전체 업로드 후 디렉토리 이동시키기... [4] 소마세월 2008.02.02
각 OS별 브라우저별 자신의 웹사이트 보기??? [12] 세바스챤_™ 2008.01.31
file 업로드 않될때, 메뉴생성및수정이 않될때 [2] plruto 2008.01.31