guoshilong
2023-08-30 49f47a7cb0d2db47e0f78a319cf6e550326277ff
渗流请求
8 files modified
71 ■■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/resultpojo/DataResChildrenPo.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java 1 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java 7 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java 27 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/NkyServiceImpl.java 1 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ZtApiServiceImpl.java 22 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml 1 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/resultpojo/DataResChildrenPo.java
@@ -40,4 +40,10 @@
    private String is_main_cd;
    private String main_cd;
    /**
     * 渗流量
     */
    private Double spqn;
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java
@@ -40,4 +40,5 @@
     */
    List<DataResPo> getResWy();
    List<DataResChildrenPo> getSl();
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java
@@ -56,6 +56,11 @@
                });
        }else if (type.equals("2")){
            //渗流
            cdList.forEach(dataResChildrenPo -> {
                ArimaPredictReqPo arimaPredictReqPo = new ArimaPredictReqPo(dataResChildrenPo, type);
                //循环预测请求
                nkyService.arimaPredict(arimaPredictReqPo);
            });
        }else if (type.equals("3") || type.equals("4") || type.equals("5")){
            cdList.forEach(dataResChildrenPo -> {
                //循环预测请求
@@ -108,7 +113,7 @@
            cdList = ztApiService.getSy();
        }else if (type.equals("2")){
            //获取渗流测点
            return null;
            cdList = ztApiService.getSl();
        }else if (type.equals("3") || type.equals("4") || type.equals("5")){
            //获取位移测点
            cdList = ztApiService.getWy();
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java
@@ -83,6 +83,31 @@
            });
        }else if (type.equals("2")){
            //渗流
            collect.forEach(dataResChildrenPo -> {
                //所有水库请求预报数据
                if (!resCd.equals(dataResChildrenPo.getRes_cd())) {
                    //请求预报水位
                    List<List<String>> future = hsybService.getFuture(dataResChildrenPo.getRes_cd());
                    resCd = dataResChildrenPo.getRes_cd();
                    if (future != null && future.size() > 0) {
                        List<PredictWatersPo> po = new ArrayList<>();
                        future.forEach(item -> {
                            PredictWatersPo predictWatersPo = new PredictWatersPo();
                            //设置时间
                            predictWatersPo.setTime(item.get(0));
                            //设置预测水位
                            predictWatersPo.setValue(Double.parseDouble(item.get(2)));
                            po.add(predictWatersPo);
                        });
                        HstPredictReqPo arimaPredictReqPo = new HstPredictReqPo(dataResChildrenPo, type,po);
                        //循环预测请求
                        nkyService.hstPredict(arimaPredictReqPo);
                    }
                }
            });
        }else if (type.equals("3") || type.equals("4") || type.equals("5")){
            collect.forEach(dataResChildrenPo -> {
                //所有水库请求预报数据
@@ -158,7 +183,7 @@
            cdList = ztApiService.getSy();
        } else if (type.equals("2")) {
            //获取渗流测点
            return null;
            cdList = ztApiService.getSl();
        } else if (type.equals("3") || type.equals("4") || type.equals("5")) {
            //获取位移测点
            cdList = ztApiService.getWy();
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/NkyServiceImpl.java
@@ -28,6 +28,7 @@
    private static final String API_PREFIX = "http://10.42.7.146:9503/";
    private static final String LOCAL_API_PREFIX = "https://sk.hubeishuiyi.cn/warnIp/";
    // ARIMA预测接口URL
    private static final String ARIMA_PREDICT = API_PREFIX + "predict/arimaPredict";
    // ARIMA预测结果接口
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ZtApiServiceImpl.java
@@ -28,17 +28,29 @@
@Service
public class ZtApiServiceImpl implements IZtApiService {
    //本地测试
    private static final String LOCAL = "https://sk.hubeishuiyi.cn";
    //线上
    private static final String ONLINE = "http://10.42.6.192";
    private static final String API_KEY = "F1DBECD719108635189480CF60E6553ADB3109616426BD537F25A430DFC613B491A025C4A51E77FD08C6E5B7CBE05917A461286E7B6D69F1AB1B14F946149D2065B0C675F8FEDF4B9B05C1496881BC5A";
    /**
     * 实时渗压监测
     */
    private static final String LASTEST_OSMOTIC_PRESSURE = "http://10.42.6.192/services/1234567890ABCDEFGHIJKLMN/monitor/lastest_osmotic_pressure/api?res_nm=&cd=&city_cd=&county_cd=&pageNo=1&pageSize=9999";
    private static final String LASTEST_OSMOTIC_PRESSURE =ONLINE +  "/services/1234567890ABCDEFGHIJKLMN/monitor/lastest_osmotic_pressure/api?res_nm=&cd=&city_cd=&county_cd=&pageNo=1&pageSize=9999";
    /**
     * 位移监测
     */
    private static final String WY_API = "http://10.42.6.192/services/1234567890ABCDEFGHIJKLMN/monitor/wy/api?res_nm=&cd=&city_cd=&county_cd=&pageNo=1&pageSize=9999";
    private static final String WY_API =ONLINE+ "/services/1234567890ABCDEFGHIJKLMN/monitor/wy/api?res_nm=&cd=&city_cd=&county_cd=&pageNo=1&pageSize=9999";
    /**
     * 渗流监测
     */
    private static final String SL_API =ONLINE +  "/services/1234567890ABCDEFGHIJKLMN/monitor/sl/api?res_nm=&cd=&city_cd=&county_cd=&pageNo=1&pageSize=9999";
    @Override
    public List<DataResChildrenPo> getSy() {
@@ -64,6 +76,12 @@
        return getResData(WY_API, "get", params);
    }
    @Override
    public List<DataResChildrenPo> getSl() {
        Map<String, Object> params = new LinkedHashMap<>();
        return getData(SL_API, "get", params);
    }
    private List<DataResChildrenPo> getData(String url, String type, Map<String, Object> params) {
        HttpMethod method;
        if (type.toLowerCase().equals("get".toLowerCase())) {
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/damSecurity/mapper/DamSecurityMapper.xml
@@ -834,6 +834,7 @@
            AND  (province."ad_code" =#{adCode} or city."ad_code" = #{adCode} or county."ad_code" = #{adCode})
        </if>
    </select>
    <select id="getSlList" resultType="cn.gistack.sm.damSecurity.vo.DamStationStatistics">
        SELECT
skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java
@@ -90,6 +90,8 @@
    public void arimaPredict(){
        XxlJobLogger.log("渗压预测开始");
        nkyClient.arimaPredictData(SY);
        XxlJobLogger.log("渗流预测开始");
        nkyClient.arimaPredictData(SL);
        XxlJobLogger.log("位移预测开始");
        nkyClient.arimaPredictData(X);
@@ -97,6 +99,7 @@
    public void arimaQuery(){
        nkyClient.arimaQueryData(SY);
        nkyClient.arimaQueryData(SL);
        nkyClient.arimaQueryData(X);
        nkyClient.arimaQueryData(Y);
        nkyClient.arimaQueryData(Z);
@@ -108,12 +111,15 @@
    public void hstPredict(){
        XxlJobLogger.log("渗压预测开始");
        nkyClient.hstPredictData(SY);
        XxlJobLogger.log("渗流预测开始");
        nkyClient.hstPredictData(SL);
        XxlJobLogger.log("位移预测开始");
        nkyClient.hstPredictData(X);
    }
    public void hstQuery(){
        nkyClient.hstQueryData(SY);
        nkyClient.hstQueryData(SL);
        nkyClient.hstQueryData(X);
        nkyClient.hstQueryData(Y);
        nkyClient.hstQueryData(Z);