ScheduleController.java 2.56 KB
package com.example.demo.control;


import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONUtil;
import com.example.demo.SaticScheduleTask;
import com.example.demo.model.Scheduling;
import com.example.demo.model.SchedulingData;
import com.example.demo.model.StationRoute;
import com.example.demo.model.StationRouteData;
import com.example.demo.service.Contrast;
import com.example.demo.util.IPWhiteUtil;
import com.example.demo.util.IpUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.List;


@RestController
@RequestMapping("schedule")
public class ScheduleController {

    @Autowired
    private Contrast contrast;


    private String ipWhite = "58.40.5.18;61.169.120.202;127.0.0.1;localhost;192.168.20.150;116.224.62.77";

    Logger logger = LoggerFactory.getLogger(this.getClass());

    @RequestMapping("getSchedules")
    public JSONArray getSchedules(@RequestParam String date, HttpServletRequest request){
        JSONArray jsonArray= new JSONArray();
        try {
            String ip=IpUtils.getIpAddr(request);
            if (!IPWhiteUtil.checkRequestIP(ip, ipWhite)) {
                logger.info("拦截的IP为:" + ip);
                return null;
            }
            List<SchedulingData> list= SaticScheduleTask.SchedulingDataMap.get(date);
            jsonArray = JSONUtil.parseArray(list);
        } catch (Exception e) {
            e.printStackTrace();
        }
        logger.info(">>>>>>>>>>>>>>>>路单信息返回:"+jsonArray.size());
        return jsonArray;
    }

    @RequestMapping("getStationRoutes")
    public JSONArray getStationRoutes(HttpServletRequest request){
        JSONArray jsonArray= new JSONArray();
        try {
            String ip=IpUtils.getIpAddr(request);
            if (!IPWhiteUtil.checkRequestIP(ip, ipWhite)) {
                logger.info("拦截的IP为:" + ip);
                return null;
            }
            List<List<StationRouteData>> list= SaticScheduleTask.StationRouteData;
            jsonArray = JSONUtil.parseArray(list);
        } catch (Exception e) {
            e.printStackTrace();
        }
        logger.info(">>>>>>>>>>>>>>>>站点路由信息返回:"+jsonArray.size());
        return jsonArray;
    }


}