添加查询所有市的接口

This commit is contained in:
sh
2026-01-21 17:43:35 +08:00
parent 5e3ec6ddae
commit e4bb4e55e3
5 changed files with 29 additions and 0 deletions

View File

@@ -31,4 +31,14 @@ public class SysAreaController {
public AjaxResult jobCategory(SysArea sysArea){ public AjaxResult jobCategory(SysArea sysArea){
return AjaxResult.success(sysAreaService.getList(sysArea)); return AjaxResult.success(sysAreaService.getList(sysArea));
} }
/**
* 查询所有市
* @param sysArea
* @return
*/
@GetMapping("/listCity")
public AjaxResult listCity(SysArea sysArea){
return AjaxResult.success(sysAreaService.getCityList(sysArea));
}
} }

View File

@@ -14,4 +14,6 @@ import java.util.List;
public interface SysAreaMapper{ public interface SysAreaMapper{
List<SysArea> getList(SysArea sysArea); List<SysArea> getList(SysArea sysArea);
List<SysArea> getCityList(SysArea sysArea);
} }

View File

@@ -14,5 +14,7 @@ import java.util.List;
public interface SysAreaService{ public interface SysAreaService{
List<SysArea> getList(SysArea sysArea); List<SysArea> getList(SysArea sysArea);
List<SysArea> getCityList(SysArea sysArea);
} }

View File

@@ -5,6 +5,7 @@ import com.ruoyi.cms.service.SysAreaService;
import com.ruoyi.common.core.domain.entity.SysArea; import com.ruoyi.common.core.domain.entity.SysArea;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
@Service @Service
@@ -16,4 +17,9 @@ public class SysAreaServiceImpl implements SysAreaService {
public List<SysArea> getList(SysArea sysArea){ public List<SysArea> getList(SysArea sysArea){
return sysAreaMapper.getList(sysArea); return sysAreaMapper.getList(sysArea);
} }
@Override
public List<SysArea> getCityList(SysArea sysArea) {
return sysAreaMapper.getCityList(sysArea);
}
} }

View File

@@ -24,4 +24,13 @@
order by code order by code
</select> </select>
<select id="getCityList" resultType="com.ruoyi.common.core.domain.entity.SysArea" parameterType="com.ruoyi.common.core.domain.entity.SysArea">
WITH top_area AS (
SELECT code, name, (name LIKE '%市%') AS is_municipality FROM sys_area WHERE del_flag='0' and parent_code IS NULL
)
SELECT sa.* FROM sys_area sa INNER JOIN top_area ta ON sa.code = ta.code WHERE ta.is_municipality = TRUE
UNION ALL
SELECT sa.* FROM sys_area sa INNER JOIN top_area ta ON sa.parent_code = ta.code WHERE ta.is_municipality = FALSE
</select>
</mapper> </mapper>