package sgc.portal.cs.cs0103.persistence;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import sgc.portal.base.util.EasyHashMap;
import sgc.portal.cs.cs0102.model.CS01020002U;
import sgc.portal.cs.cs0103.dto.CS01030001USearch;
import sgc.portal.cs.cs0103.model.CS01030001U;
import sgc.portal.cs.cs0103.model.CS01030002U;
import sgc.portal.cs.cs0103.model.CS01030003U;
import sgc.portal.cs.cs0103.model.CS01030004U;
import sgc.portal.cs.cs0103.model.CS01030005U;
import sgc.portal.cs.cs0103.model.CS01030000U;

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

@Mapper
public interface CS01030001UMapper {
	
	//하자관리현장조회
	List<EasyHashMap<String, Object>> selectTcsSiteList(CS01030001USearch search);
	
	//상품분류공통조회
	List<EasyHashMap<String, Object>> selectProbNoList(CS01030001USearch search);
	
	void insertTcsSite(CS01030000U cS01030000U);
	void updateTcsSite(CS01030000U cS01030000U);
	void deleteTcsSite(CS01030000U cS01030000U);
	
	//하자관리현장팝업조회
	List<EasyHashMap<String, Object>> selectZehrComDeptToTcsSiteList(CS01030001USearch search);
	
	void deleteTcsSiteStdLjobtyp2(CS01030000U CS01030000U);
	void deleteTcsSiteStdLoc2(CS01030000U CS01030000U);
	void deleteTcsSiteStdJobtyp2(CS01030000U CS01030000U);
	void deleteTcsSiteStdType2(CS01030000U CS01030000U);
	void deleteTcsSiteStdCaus2(CS01030000U CS01030000U);
	
	
	//하자대공종
	List<EasyHashMap<String, Object>> selectTcsStdLjobtypList(CS01030001USearch search);
	List<EasyHashMap<String, Object>> selectTcsSiteStdLjobtypList(CS01030001USearch search);
	
	void insertTcsSiteStdLjobtyp(CS01030001U cS01030001U);
	void deleteTcsSiteStdLjobtyp(CS01030001U cS01030001U);
	int selectTcsSiteStdLjobtypCount(CS01030001U cS01030001U);
	

	//위치
	List<EasyHashMap<String, Object>> selectTcsStdLocList(CS01030001USearch search);
	List<EasyHashMap<String, Object>> selectTcsSiteStdLocList(CS01030001USearch search);
	
	void insertTcsSiteStdLoc(CS01030002U cS01030002U);
	void deleteTcsSiteStdLoc(CS01030002U cS01030002U);
	int selectTcsSiteStdLocCount(CS01030002U cS01030002U);
	
	
	//하자공종
	List<EasyHashMap<String, Object>> selectTcsStdJobtypList(CS01030001USearch search);
	List<EasyHashMap<String, Object>> selectTcsSiteStdJobtypList(CS01030001USearch search);
	
	void insertTcsSiteStdJobtyp(CS01030003U cS01030003U);
	void deleteTcsSiteStdJobtyp(CS01030003U cS01030003U);
	int selectTcsSiteStdJobtypCount(CS01030003U cS01030003U);

	
	//하자유형
	List<EasyHashMap<String, Object>> selectTcsStdTypeList(CS01030001USearch search);
	List<EasyHashMap<String, Object>> selectTcsSiteStdTypeList(CS01030001USearch search);
	
	void insertTcsSiteStdType(CS01030004U cS01030004U);
	void deleteTcsSiteStdType(CS01030004U cS01030004U);
	int selectTcsSiteStdTypeCount(CS01030004U cS01030004U);
	

	//하자원인
	List<EasyHashMap<String, Object>> selectTcsStdCausList(CS01030001USearch search);
	List<EasyHashMap<String, Object>> selectTcsSiteStdCausList(CS01030001USearch search);
	
	void insertTcsSiteStdCaus(CS01030005U cS01030005U);
	void deleteTcsSiteStdCaus(CS01030005U cS01030005U);
	int selectTcsSiteStdCausCount(CS01030005U cS01030005U);
}