package kr.co.uplus.ez.api.sendNumMgt;

import kr.co.uplus.ez.api.sendNumMgt.dto.*;

import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
interface SendNumMgtMapper {
	int selectProfileTotalCnt(ProfileListReqDto profileListReqDto);

	List<ProfileInfo> selectProfileList(ProfileListReqDto profileListReqDto);

	int selectSendNumberTotalCnt(SendNumberListReqDto sendNumberListReqDto);

	List<SendNumberInfo> selectSendNumberList(SendNumberListReqDto sendNumberListReqDto);

	int selectAdminTotalCnt(SendAdminListReqDto adminListReqDto);

	List<SendAdminInfo> selectAdminList(SendAdminListReqDto adminlistreqdto);

	String selectUserSeqByAdminId(String adminId);

	int deleteNumber(DeleteNumberReqDto deleteNumberReqDto);

	String selectRegReqNo();

	List<InsertNumber> selectSndrnoList(InsertNumberReqDto insertNumberReqDto);

	void insertNumber(InsertNumberReqDto insertNumberReqDto);

	void insertNumberDoc(InsertNumberFile insertNumberFile);

	void insertNumberList(InsertNumber insertNumber);

	void insertNumbers(InsertNumberReqDto insertNumberReqDto);

	String selectUserSeqByRegNo(DetailNumberReqDto detailNumberReqDto);

	DetailNumber detailNumber(DetailNumberReqDto detailNumberReqDto);

	List<AuthFileInfo> selectAuthFileList(DetailNumberReqDto detailNumberReqDto);

	int selectSvcSndrnoListTotalCnt(SendNumberApprListReqDto sendNumberApprListReqDto);

	List<SendNumberApprInfo> selectSvcSndrnoList(SendNumberApprListReqDto sendNumberApprListReqDto);

	SendNumberApprDetailRes selectSvcSndrnoReqDetail(SendNumberApprDetailReqDto sendNumberApprDetailReqDto);

	List<SendNumberApprNum> selectSvcSndnoList(SendNumberApprDetailReqDto sendNumberApprDetailReqDto);

	List<SendNumberApprDoc> selectSndnoDocList(SendNumberApprDetailReqDto sendNumberApprDetailReqDto);

	int updateSndrno(UpdateApprSendNumber updateApprSendNumber);

	int upddateSndrnoReg(UpdateApprReqDto updateApprReqDto);

	int updateSvcUser(UpdateApprReqDto updateApprReqDto);
	
	InsertNumberFile selectDownload(InsertNumberFile insertNumberFile);

	List<InsertNumber> selectSndrnoListAll(InsertNumberReqDto insertNumberReqDto);
	
	String selectApiAuthToken(String apiApplicationId);
	
	String selectUserEmailByAdminId(String adminId);

	String selectSequence(String wEB_REQ_ID);

	String selectUserPhoneByAdminId(String adminId);

	String selectNotiSeq();

}
