package com.ruoyi.ss.city.service;


import com.ruoyi.ss.city.domain.City;

import java.util.List;

/**
 * 城市Service接口
 *
 * @author ruoyi
 * @date 2024-09-18
 */
public interface ICityService
{
    /**
     * 查询城市
     *
     * @param cityId 城市主键
     * @return 城市
     */
    public City selectRlCityByCityId(Long cityId);

    /**
     * 根据地址编码查询城市
     *
     * @param adcode 地址编码
     * @return 城市
     */
    public City selectRlCityByAdcode(String adcode);

    /**
     * 查询城市列表
     *
     * @param rlCity 城市
     * @return 城市集合
     */
    public List<City> selectRlCityList(City rlCity);

    /**
     * 新增城市
     *
     * @param rlCity 城市
     * @return 结果
     */
    public int insertRlCity(City rlCity);

    /**
     * 修改城市
     *
     * @param rlCity 城市
     * @return 结果
     */
    public int updateRlCity(City rlCity);

    /**
     * 批量删除城市
     *
     * @param cityIds 需要删除的城市主键集合
     * @return 结果
     */
    public int deleteRlCityByCityIds(Long[] cityIds);

    /**
     * 删除城市信息
     *
     * @param cityId 城市主键
     * @return 结果
     */
    public int deleteRlCityByCityId(Long cityId);

    /**
     * 根据定位获取哪个城市
     */
    City getCityByLocation(String lon, String lat);

    /**
     * 根据定位获取城市id
     */
    Long getCityIdByLocation(String lon, String lat);

    /**
     * 根据定位获取地址
     */
    String getAddressByLocation(String lon, String lat);

    /**
     * 查询所有地级市城市列表
     */
    List<City> selectAllCity(String cityName);


}
