guoshilong
2023-11-16 00165e5d50f47c99d9eb7c2fc784bef4d3f72aca
预测返回测站名称
9 files modified
2 files added
140 ■■■■ changed files
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/vo/ArimaPredictVO.java 9 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/vo/HstPredictVO.java 9 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/controller/ArimaPredictController.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/ArimaPredictMapper.java 7 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/ArimaPredictMapper.xml 38 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/HstPredictMapper.java 7 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/HstPredictMapper.xml 35 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IArimaPredictService.java 3 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IHstPredictService.java 3 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java 12 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java 11 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/vo/ArimaPredictVO.java
New file
@@ -0,0 +1,9 @@
package cn.gistack.nky.vo;
import cn.gistack.nky.entity.ArimaPredict;
import lombok.Data;
@Data
public class ArimaPredictVO extends ArimaPredict {
    private String cdNm;
}
skjcmanager/skjcmanager-service-api/skjcmanager-nky-api/src/main/java/cn/gistack/nky/vo/HstPredictVO.java
New file
@@ -0,0 +1,9 @@
package cn.gistack.nky.vo;
import cn.gistack.nky.entity.HstPredict;
import lombok.Data;
@Data
public class HstPredictVO extends HstPredict {
    private String cdNm;
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/controller/ArimaPredictController.java
@@ -4,6 +4,8 @@
import cn.gistack.nky.entity.HstPredict;
import cn.gistack.nky.service.IArimaPredictService;
import cn.gistack.nky.service.IHstPredictService;
import cn.gistack.nky.vo.ArimaPredictVO;
import cn.gistack.nky.vo.HstPredictVO;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.boot.ctrl.BladeController;
@@ -33,10 +35,10 @@
    @GetMapping("/futureData")
    public R futureData(String resCd,String type,String predictFlag){
        if (predictFlag.equals("Arima")){
            List<ArimaPredict> list =  arimaPredictService.getFutureData(resCd,type);
            List<ArimaPredictVO> list =  arimaPredictService.getFutureData(resCd,type);
            return R.data(list);
        }else if (predictFlag.equals("Hst")){
            List<HstPredict> list = hstPredictService.getFutureData(resCd,type);
            List<HstPredictVO> list = hstPredictService.getFutureData(resCd,type);
            return R.data(list);
        }else {
            return R.fail("无该预测方式");
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/ArimaPredictMapper.java
@@ -1,13 +1,18 @@
package cn.gistack.nky.mapper;
import cn.gistack.nky.entity.ArimaPredict;
import cn.gistack.nky.vo.ArimaPredictVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface ArimaPredictMapper  extends BaseMapper<ArimaPredict>{
    List<ArimaPredict> getFutureData(@Param("resCd") String resCd,@Param("type") String type);
    List<ArimaPredictVO> getFutureData(@Param("resCd") String resCd, @Param("type") String type);
    List<ArimaPredictVO> getFutureDataWy(@Param("resCd") String resCd, @Param("type") String type);
    List<ArimaPredict> selectTodayData(@Param("entity") ArimaPredict entity);
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/ArimaPredictMapper.xml
@@ -3,24 +3,48 @@
<mapper namespace="cn.gistack.nky.mapper.ArimaPredictMapper">
    <select id="getFutureData" resultType="cn.gistack.nky.entity.ArimaPredict">
    <select id="getFutureData" resultType="cn.gistack.nky.vo.ArimaPredictVO">
        SELECT * FROM NKY_ARIMA_PREDICT
        SELECT NAP.*, acb."cd_nm" cdNm FROM NKY_ARIMA_PREDICT NAP
        LEFT JOIN SJZT_MD."att_cd_base" acb ON acb."res_cd" = NAP.DAM_ID AND NAP.POINT_ID = acb."cd"
        WHERE DATE_FORMAT(create_time,'%Y-%m-%d')>= CURDATE()
        <if test="resCd != null and resCd !='' ">
            AND DAM_ID = #{resCd}
            AND NAP.DAM_ID = #{resCd}
        </if>
        <if test="type != null and type !='' and type == 1 ">
            AND type = #{type}
            AND NAP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 2">
            AND type = #{type}
            AND NAP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 3">
            AND (type = '3' or type = '4' or type = '5')
            AND (NAP.type = '3' or NAP.type = '4' or NAP.type = '5')
        </if>
        ORDER BY POINT_ID ASC
        ORDER BY NAP.POINT_ID ASC
    </select>
    <select id="getFutureDataWy" resultType="cn.gistack.nky.vo.ArimaPredictVO">
        SELECT NAP.*, awcb."cd_nm" cdNm FROM NKY_ARIMA_PREDICT NAP
        LEFT JOIN SJZT_MD."att_wy_cd_base" awcb ON awcb."res_cd" = NAP.dam_id and awcb."cd" = NAP.point_id
        WHERE DATE_FORMAT(create_time,'%Y-%m-%d')>= CURDATE()
        <if test="resCd != null and resCd !='' ">
            AND NAP.DAM_ID = #{resCd}
        </if>
        <if test="type != null and type !='' and type == 1 ">
            AND NAP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 2">
            AND NAP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 3">
            AND (NAP.type = '3' or NAP.type = '4' or NAP.type = '5')
        </if>
        ORDER BY NAP.POINT_ID ASC
    </select>
    <select id="selectTodayData" resultType="cn.gistack.nky.entity.ArimaPredict">
        SELECT  id FROM NKY_ARIMA_PREDICT
        WHERE 1=1
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/HstPredictMapper.java
@@ -1,13 +1,18 @@
package cn.gistack.nky.mapper;
import cn.gistack.nky.entity.HstPredict;
import cn.gistack.nky.vo.HstPredictVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface HstPredictMapper extends BaseMapper<HstPredict> {
    List<HstPredict> getFutureData(String resCd, String type);
    List<HstPredictVO> getFutureData(@Param("resCd") String resCd, @Param("type") String type);
    List<HstPredictVO> getFutureDataWy(@Param("resCd") String resCd, @Param("type") String type);
    List<HstPredict> selectTodayData(@Param("entity") HstPredict entity);
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/mapper/HstPredictMapper.xml
@@ -2,24 +2,45 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.gistack.nky.mapper.HstPredictMapper">
    <select id="getFutureData" resultType="cn.gistack.nky.entity.HstPredict">
        SELECT * FROM NKY_HST_PREDICT
    <select id="getFutureData" resultType="cn.gistack.nky.vo.HstPredictVO">
        SELECT NHP.*,acb."cd_nm" cdNm FROM NKY_HST_PREDICT NHP
        LEFT JOIN SJZT_MD."att_cd_base" acb ON acb."res_cd" = NHP.DAM_ID AND NHP.POINT_ID = acb."cd"
        WHERE DATE_FORMAT(create_time,'%Y-%m-%d')>= CURDATE()
        <if test="resCd != null and resCd !='' ">
            AND DAM_ID = #{resCd}
            AND NHP.DAM_ID = #{resCd}
        </if>
        <if test="type != null and type !='' and type == 1 ">
            AND type = #{type}
            AND NHP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 2">
            AND type = #{type}
            AND NHP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 3">
            AND (type = '3' or type = '4' or type = '5')
            AND (NHP.type = '3' or NHP.type = '4' or NHP.type = '5')
        </if>
        ORDER BY POINT_ID ASC
        ORDER BY NHP.POINT_ID ASC
    </select>
    <select id="getFutureDataWy" resultType="cn.gistack.nky.vo.HstPredictVO">
        SELECT NHP.*,awcb."cd_nm" cdNm FROM NKY_HST_PREDICT NHP
        LEFT JOIN SJZT_MD."att_wy_cd_base" awcb ON awcb."res_cd" = NHP.dam_id and awcb."cd" = NHP.point_id
        WHERE DATE_FORMAT(create_time,'%Y-%m-%d')>= CURDATE()
        <if test="resCd != null and resCd !='' ">
            AND NHP.DAM_ID = #{resCd}
        </if>
        <if test="type != null and type !='' and type == 1 ">
            AND NHP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 2">
            AND NHP.type = #{type}
        </if>
        <if test="type != null and type !='' and type == 3">
            AND (NHP.type = '3' or NHP.type = '4' or NHP.type = '5')
        </if>
        ORDER BY NHP.POINT_ID ASC
    </select>
    <select id="selectTodayData" resultType="cn.gistack.nky.entity.HstPredict">
        SELECT  * FROM NKY_HST_PREDICT
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IArimaPredictService.java
@@ -1,6 +1,7 @@
package cn.gistack.nky.service;
import cn.gistack.nky.entity.ArimaPredict;
import cn.gistack.nky.vo.ArimaPredictVO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -24,5 +25,5 @@
     * @param resCd
     * @return
     */
    List<ArimaPredict> getFutureData(String resCd,String type);
    List<ArimaPredictVO> getFutureData(String resCd, String type);
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IHstPredictService.java
@@ -2,6 +2,7 @@
import cn.gistack.nky.entity.ArimaPredict;
import cn.gistack.nky.entity.HstPredict;
import cn.gistack.nky.vo.HstPredictVO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -11,5 +12,5 @@
    void predictData(String type);
    List<HstPredict> getFutureData(String resCd, String type);
    List<HstPredictVO> getFutureData(String resCd, String type);
}
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ArimaPredictServiceImpl.java
@@ -9,6 +9,7 @@
import cn.gistack.nky.service.IArimaPredictService;
import cn.gistack.nky.service.INkyService;
import cn.gistack.nky.service.IZtApiService;
import cn.gistack.nky.vo.ArimaPredictVO;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.AllArgsConstructor;
@@ -79,8 +80,15 @@
    }
    @Override
    public List<ArimaPredict> getFutureData(String resCd,String type) {
        List<ArimaPredict> futureData = baseMapper.getFutureData(resCd, type);
    public List<ArimaPredictVO> getFutureData(String resCd, String type) {
        List<ArimaPredictVO> futureData = new ArrayList<>();
        if (type.equals("3")){
            //位移另一张表
            futureData=baseMapper.getFutureDataWy(resCd,type);
        }else{
             futureData = baseMapper.getFutureData(resCd, type);
        }
        futureData.forEach(arimaPredict -> {
            arimaPredict.setPredicts(JSON.parse(arimaPredict.getPredicts().toString()));
        });
skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java
@@ -11,6 +11,7 @@
import cn.gistack.nky.service.IHsybService;
import cn.gistack.nky.service.INkyService;
import cn.gistack.nky.service.IZtApiService;
import cn.gistack.nky.vo.HstPredictVO;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.mp.support.Condition;
@@ -142,9 +143,15 @@
    }
    @Override
    public List<HstPredict> getFutureData(String resCd, String type) {
    public List<HstPredictVO> getFutureData(String resCd, String type) {
        List<HstPredictVO> list = new ArrayList<>();
        if (type.equals("3")){
            list = baseMapper.getFutureDataWy(resCd,type);
        }else {
             list = baseMapper.getFutureData(resCd,type);
        }
        List<HstPredict> list = baseMapper.getFutureData(resCd,type);
        list.forEach(hstPredict -> {
            if (hstPredict.getPredictList() != null){
                hstPredict.setPredictList(JSON.parse(hstPredict.getPredictList().toString()));