package incheon.cmm.g2f.search.service.impl;

import incheon.cmm.g2f.search.mapper.AdmMapper;
import incheon.cmm.g2f.search.service.AdmService;
import incheon.cmm.g2f.search.vo.AddressCoordinateVO;
import incheon.cmm.g2f.search.vo.AdmRequestDTO;
import incheon.cmm.g2f.search.vo.AdmResultVO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
@RequiredArgsConstructor
public class AdmServiceImpl implements AdmService {

    private final AdmMapper admMapper;

    @Override
    public List<AdmResultVO> selectAdmList(AdmRequestDTO admRequestDTO) {
        if (admRequestDTO.getType().equalsIgnoreCase("EMD")) {
            return admMapper.selectEmdList(admRequestDTO);
        } else if (admRequestDTO.getType().equalsIgnoreCase("LI")) {
            return admMapper.selectLiList(admRequestDTO);
        } else if (admRequestDTO.getType().equalsIgnoreCase("SIG")) {
            return admMapper.selectSigList(admRequestDTO);
        } else {
            return admMapper.selectCtpList(admRequestDTO);
        }
    }

    @Override
    public long selectAdmListTotCnt(AdmRequestDTO admRequestDTO) {
        if (admRequestDTO.getType().equalsIgnoreCase("EMD")) {
            return admMapper.selectEmdListTotCnt(admRequestDTO);
        } else if (admRequestDTO.getType().equalsIgnoreCase("LI")) {
            return admMapper.selectLiListTotCnt(admRequestDTO);
        } else if (admRequestDTO.getType().equalsIgnoreCase("SIG")) {
            return admMapper.selectSigListTotCnt(admRequestDTO);
        } else {
            return admMapper.selectCtpListTotCnt(admRequestDTO);
        }
    }
}
