
package nlib.col.service.impl;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Repository;

import nlib.restful.DataApi;
import nlib.restful.service.DataApiReqVO;
import nlib.restful.service.DataApiResVO;

@Repository("rentDAO")
public class RentDAO extends DataApi
{
	private static final Logger log = LoggerFactory.getLogger(RentDAO.class);
	
	
	/**
	 * 주 자원의 URI  
	 */
	public static final String RESOURCE_URI = "/uac/service/col/rent";
	
	
	/**
	 * 대출 목록 조회한다.
	 * 
	 * @param reqVO
	 * @return
	 */
	public DataApiResVO listRentItems(DataApiReqVO reqVO)  {
		reqVO.setReqUrl(RESOURCE_URI + "/list");
		return request(reqVO);
	}

	/**
	 * 반납 연기 목록을 조회한다.
	 * 
	 * @param reqVO
	 * @return
	 */
	public DataApiResVO listPostpones(DataApiReqVO reqVO)  {
		reqVO.setReqUrl(RESOURCE_URI + "/list");
		return request(reqVO);
	}
	
	/**
	 * 대출 취소 목록을 조회한다.
	 * 
	 * @param reqVO
	 * @return
	 */
	public DataApiResVO listCanceledRentItems(DataApiReqVO reqVO)  {
		reqVO.setReqUrl(RESOURCE_URI + "/list");
		return request(reqVO);
	}

	/**
	 * 대출 예약 목록을 조회한다.
	 * 
	 * @param reqVO
	 * @return
	 */
	public DataApiResVO listReservations(DataApiReqVO reqVO)  {
		reqVO.setReqUrl(RESOURCE_URI + "/list");
		return request(reqVO);
	}

	public DataApiResVO cancelReservations(DataApiReqVO reqVO)  {
		return null;
	}

	/**
	 * 열람 요청 목록을 조회한다.
	 * 
	 * @param reqVO
	 * @return
	 */
	public DataApiResVO listRequestsForViewingItem(DataApiReqVO reqVO)  {
		reqVO.setReqUrl(RESOURCE_URI + "/read/list");
		return request(reqVO);
	}

	public DataApiResVO selectRequestInfoForViewingItem(DataApiReqVO reqVO)  {
		reqVO.setReqUrl(RESOURCE_URI + "/read");
		return request(reqVO);
	}


}