GeoDataController.java 1.21 KB
package com.bsth.controller;

import com.bsth.data.geo.GeoCacheData;
import com.bsth.entity.SectionRoute;
import com.bsth.entity.StationRoute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

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

@RestController
@RequestMapping("geo_data")
public class GeoDataController {

    @RequestMapping("{lineCode}")
    public Map<String, Object> find(@PathVariable("lineCode") String lineCode) {
        List<StationRoute>[] stationLists = GeoCacheData.find(lineCode);
        List<SectionRoute>[] sectionLists = GeoCacheData.findSections(lineCode);

        Map<String, Object> rs = new HashMap<>();
        rs.put("stations", stationLists);
        rs.put("section", sectionLists);
        return rs;
    }

    @RequestMapping("/stations/{lineCode}")
    public Map<String, Object> findStations(@PathVariable("lineCode") String lineCode) {
        List<StationRoute>[] stationLists = GeoCacheData.find(lineCode);

        Map<String, Object> rs = new HashMap<>();
        rs.put("stations", stationLists);
        return rs;
    }
}