package incheon.ags.aip.mapper;

import java.util.List;
import java.util.Map;

import incheon.ags.aip.vo.AipIntprSearchVO;
import incheon.ags.aip.vo.AipIntprVO;

@org.egovframe.rte.psl.dataaccess.mapper.Mapper @incheon.com.config.annotation.MainDB
public interface AipIntprMapper {
	
	/* 판독 Count */
	int getIntprCount(AipIntprSearchVO vo) throws Exception;
	
	/* 판독 List */
	List<Map<String, Object>> getIntprList(AipIntprSearchVO vo) throws Exception;
	
	
	
	/* 판독 요청 상세 */
	Map<String, Object> getRqstMap(Map<String, Object> param) throws Exception;
	
	/* 판독 요청 File List */
	List<Map<String, Object>> getRqstFileList(Map<String, Object> param) throws Exception;
	
	/* 판독 요청 상태 변경 */
	void updateStts(Map<String, Object> param) throws Exception;
	
	/* 판독 결과 상세 */
	Map<String, Object> getRsltMap(Map<String, Object> param) throws Exception;
	
	/* 판독 결과 File List */
	List<Map<String, Object>> getRsltFileList(Map<String, Object> param) throws Exception;
	
	

	/* 판독 요청 등록 */
	int insertRqst(AipIntprVO vo) throws Exception;

	/* 판독 요청 파일 삭제 */
	List<Map<String, Object>> deleteRqstFiles(List<String> uuid) throws Exception;

	/* 판독 요청 파일 업로드 */
	int insertRqstFile(Map<String, Object> file) throws Exception;

	/* 판독 결과 등록 */
	int insertRslt(AipIntprVO vo) throws Exception;

	/* 판독 결과 파일 삭제 */
	List<Map<String, Object>> deleteRsltFiles(List<String> uuid) throws Exception;

	/* 판독 결과 파일 업로드 */
	int insertRsltFile(Map<String, Object> file) throws Exception;

	
	
	/* 의뢰수정 */
	int updateRqst(AipIntprVO vo) throws Exception;

	/* 결과수정 */
	int updateRslt(AipIntprVO vo) throws Exception;
	
	/* 결과 파일 삭제 */
	List<Map<String, Object>> deleteRsltFilesByRqstId(Map<String, Object> param) throws Exception;

	/* 결과 삭제 */
	int deleteRsltInfoByRqstId(Map<String, Object> param) throws Exception;

	/* 요청 파일 삭제) */
	List<Map<String, Object>> deleteRqstFilesByRqstId(Map<String, Object> param) throws Exception;

	/* 요청 삭제 */
	int deleteRqstInfoByRqstId(Map<String, Object> param) throws Exception;
} 