package sgc.portal.cs.cs0102.persistence;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import sgc.portal.base.util.EasyHashMap;
import sgc.portal.cs.cs0102.dto.CS01020001USearch;
import sgc.portal.cs.cs0102.model.CS01020001U;
import sgc.portal.cs.cs0102.model.CS01020002U;
import sgc.portal.cs.cs0102.model.CS01020003U;
import sgc.portal.cs.cs0102.model.CS01020004U;
import sgc.portal.cs.cs0102.model.CS01020005U;
import sgc.portal.cs.cs0102.model.CS01020006U;

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

@Mapper
public interface CS01020001UMapper {
	
	
	//하자대공종
	//하자대공종 조회
	List<EasyHashMap<String, Object>> selectTcsStdLjobtypList(CS01020001USearch search);
	
	//하자대공종 추가 삭제 수정
	int selectTcsStdLjobtypCount(CS01020001U cS01020001U);
	void insertTcsStdLjobtyp(CS01020001U cS01020001U);
	void updateTcsStdLjobtyp(CS01020001U cS01020001U);
	void deleteTcsStdLjobtyp(CS01020001U cS01020001U);
	
	
	//하자위치
	//하자위치 조회
	List<EasyHashMap<String, Object>> selectTcsStdLocList(CS01020001USearch search);
	
	//하자위치 추가 삭제 수정
	void insertTcsStdLoc(CS01020002U cS01020002U);
	void updateTcsStdLoc(CS01020002U cS01020002U);
	void deleteTcsStdLoc(CS01020002U cS01020002U);
	
	
	//하자공종
	//하자공종 조회
	List<EasyHashMap<String, Object>> selectTcsStdJobtypList(CS01020001USearch search);
	List<EasyHashMap<String, Object>> selectTcsStdJobtypTreeList(CS01020001USearch search);
	List<EasyHashMap<String, Object>> selectTcsStdJobtypCommList(CS01020001USearch search);
	
	//하자공종 추가 삭제 수정
	int selectTcsStdJobtypCount(CS01020003U cS01020003U);
	void insertTcsStdJobtyp(CS01020003U cS01020003U);
	void updateTcsStdJobtyp1(CS01020003U cS01020003U);
	void updateTcsStdJobtyp2(CS01020003U cS01020003U);
	void deleteTcsStdJobtyp(CS01020003U cS01020003U);
	
	
	//하자유형
	//하자유형 조회
	List<EasyHashMap<String, Object>> selectTcsStdTypeList(CS01020001USearch search);
	
	//하자유형 추가 삭제 수정
	void insertTcsStdType(CS01020004U cS01020004U);
	void updateTcsStdType(CS01020004U cS01020004U);
	void deleteTcsStdType(CS01020004U cS01020004U);
	
	
	//하자원인
	//하자원인 조회
	List<EasyHashMap<String, Object>> selectTcsStdCausList(CS01020001USearch search);
	
	//하자원인 추가 삭제 수정
	void insertTcsStdCaus(CS01020005U cS01020005U);
	void updateTcsStdCaus(CS01020005U cS01020005U);
	void deleteTcsStdCaus(CS01020005U cS01020005U);
	
	//상품분류
	//상품분류 조회
	List<EasyHashMap<String, Object>> selectTcsProdList(CS01020001USearch search);
	
	//상품분류 추가 삭제 수정
	void insertTcsProd(CS01020006U cS01020006U);
	void updateTcsProd(CS01020006U cS01020006U);
	void deleteTcsProd(CS01020006U cS01020006U);
}
