package incheon.res.rdm.oe.perorg.service;

import incheon.res.rdm.oe.perorg.vo.RdmOePerorg;
import incheon.res.rdm.oe.perorg.vo.RdmOePerorgVO;

import java.util.List;



public interface RdmOePerorgService {

	/**
	 * @MethodDESC : 업체 기관 목록 (검색)
	 */
	List selectPerorgList(RdmOePerorgVO vo) throws Exception;

	/**
	 * @MethodDESC : 업체 기관 상세조회
	 */
	RdmOePerorg selectPerorg(RdmOePerorgVO vo) throws Exception;

	/**
	 * @MethodDESC : 업체 count
	 */
	int countPerorg(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 업체명 중복 체크
	 */
	String checkComNam(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 업체검색 팝업
	 */
	List selectPerorgListPopup(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 업체Pop count
	 */
	int countPerorgListPopup(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 신규 업체기관 관리번호
	 */
	String selectComIdn(RdmOePerorgVO vo) throws Exception;

	/**
	 * @MethodDESC : 관할구데이터조회
	 */
	List selectRmtCoguCt(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 관할구데이터입력
	 */
	void insertRmtCoguCt(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 관할구데이터삭제
	 */
	int deleteRmtCoguCt(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 업체정보 등록
	 */
	void insertRmtCoogDt(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 업체정보 수정
	 */
	void updateRmtCoogDt(RdmOePerorgVO vo) throws Exception;

	
	/**
	 * @MethodDESC : 업체정보 상세조회
	 */
	RdmOePerorg selectRmtCoogDt(RdmOePerorgVO vo) throws Exception;

	/**
	 * @MethodDESC : 사용승인
	 */
	void approvePerorg(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 일괄사용승인
	 */
	void approvePerorgList(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 사용취소
	 */
	void cancelPerorg(RdmOePerorgVO vo) throws Exception;
	
	/**
	 * @MethodDESC : 일괄사용취소
	 */
	void cancelPerorgList(RdmOePerorgVO vo) throws Exception;


	List selectCoogListAsGdi(RdmOePerorgVO vo) throws Exception;
	
	
}