tangzy
2021-09-08 b8bc64fb57ba906eba17f1fc9d87e5c789e39a0c
1.单位
5 files modified
231 ■■■■■ changed files
src/main/java/org/springblade/modules/mountainrain/controller/MountainrainController.java 89 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml 127 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/mountainrain/service/IMountainrainService.java 3 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/mountainrain/service/impl/MountainrainServiceImpl.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/mountainrain/controller/MountainrainController.java
@@ -449,5 +449,94 @@
    }
    /**
     * 查询洪水预警
     */
    @ApiLog("查询洪水预警")
    @GetMapping("/sss")
    public R selectcInfoss(int type,String time,String dateEnds1,String dateEnds3,String dateEnds6,String dateEnds24,int k,String timei) {
        if (type == 0 && k==13) {
            //当前时间
            String times = time;
            String dateEnd1 = dateEnds1;
            String timess=timei;
            //三个小时前的时间
            String dateEnd3 =dateEnds3;
            //六个小时前的时间
            String dateEnd6 =dateEnds6;
            //二十四个小时前的时间
            String dateEnd24 =dateEnds24;
            //对应雨量站
            long startTime=System.currentTimeMillis();
            String s = mountainrainService.selectCode();
            String[] split = s.split(",");
            String strArrays = "";
            for (int i = 0; i < split.length; i++) {
                strArrays += "'" + split[i] + "',";
            }
            String code = strArrays.substring(0, strArrays.length() - 1);
            List<MountainrainsCVO> mountainrainsCVOS = mountainrainService.Mountains(times, dateEnd24, dateEnd1, dateEnd3, dateEnd6,timess,code);
            long endTime=System.currentTimeMillis(); //获取结束时间
            List<Map<String, Object>> lists = new ArrayList<>();
            for (int i = 0; i < mountainrainsCVOS.size(); i++) {
                if (mountainrainsCVOS.get(i).getCenconding()==null){
                    continue;
                }
                Map<String, Object> map = new HashMap<String, Object>();
                int Max =mountainrainService .Max(mountainrainsCVOS.get(i).getDrp1(), mountainrainsCVOS.get(i).getDrp3(),
                    mountainrainsCVOS.get(i).getGohour(), mountainrainsCVOS.get(i).getGthour());
                map.put("List", mountainrainsCVOS.get(i));
                map.put("Max", Max);
                lists.add(map);
            }
            System.out.println("程序运行时间: "+(endTime-startTime)+"ms");
            return R.data(lists);
        }
        else {
            //当前时间
            String times = time;
            String dateEnd1 = dateEnds1;
            String timess=timei;
            //三个小时前的时间
            String dateEnd3 =dateEnds3;
            //六个小时前的时间
            String dateEnd6 =dateEnds6;
            //二十四个小时前的时间
            String dateEnd24 =dateEnds24;
            //对应雨量站
            List<MountainrainsCVO> mountainrainsCVOS = mountainrainService.selectcInfo(times, dateEnd24, dateEnd1, dateEnd3, dateEnd6,timess);
            List<Map<String, Object>> lists = new ArrayList<>();
            for (int i = 0; i < mountainrainsCVOS.size(); i++) {
                Map<String, Object> map = new HashMap<String, Object>();
                int Max = mountainrainService.Max(mountainrainsCVOS.get(i).getDrp1(), mountainrainsCVOS.get(i).getDrp3(),
                    mountainrainsCVOS.get(i).getGohour(), mountainrainsCVOS.get(i).getGthour());
                /*if(Max==0){
                    continue;
                }*/
                map.put("List", mountainrainsCVOS.get(i));
                map.put("Max", Max);
                lists.add(map);
            }
            return R.data(lists);
        }
    }
}
src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.java
@@ -56,6 +56,7 @@
    List<MountainrainsCVO> selectcInfos(String times, String dateEnd24,String dateEnd1,String dateEnd3,String dateEnd6,String timess);
    List<MountainrainsCVO> Mountains(String times, String dateEnd24,String dateEnd1,String dateEnd3,String dateEnd6,String timess,String code);
    List<MountainrainsCVO> selectcInfosdx(String times, String dateEnd24,String dateEnd1,String dateEnd3,String dateEnd6,String addvnm);
    List<MountainrainsCVO> selectaInfos(String times, String dateEnd24,String dateEnd1,String dateEnd3,String dateEnd6,String timess);
    List<MountainrainsCVO> selectaInfosdx(String times, String dateEnd24,String dateEnd1,String dateEnd3,String dateEnd6,String addvnm);
@@ -112,4 +113,5 @@
                                      String fymdh,String s2);
    Integer selectCount(String beginTime,String endTime);
    String selectCode();
}
src/main/java/org/springblade/modules/mountainrain/mapper/MountainrainMapper.xml
@@ -106,7 +106,8 @@
    <select id="selectMountainrainPage" resultMap="mountainrainResultMap">
        select * from blade_mountainrain
        select *
        from blade_mountainrain
    </select>
    <select id="selectNoticePage" resultMap="ResultMap">
        SELECT
@@ -152,8 +153,7 @@
        ORDER BY mr.cenconding
    </select>
    <select id="selectInfo" resultMap="ResultMap">
        SELECT
            mr.id,
        SELECT mr.id,
            mr.cenconding,
            mr.aconding,
            mr.township,
@@ -173,15 +173,13 @@
            isnull(mr.imohour,0) imohour,
            isnull(mr.imthour,0) imthour,
            isnull(mr.imshour,0) imshour
        FROM
            dbo.blade_mountain mr
        FROM dbo.blade_mountain mr
        where mr.id=#{id}
    </select>
    <select id="selectcInfos" resultMap="mountainrainResultMapcInfo">
        SELECT
            cs.id,
        SELECT cs.id,
            cs.cenconding,
            cs.crainfall,
            isnull(cs.gohour,0) gohour,
@@ -203,9 +201,79 @@
            isnull(cs.fyear,0) as fyear ,
            isnull(cs.tyear,0) as tyear,
            isnull(cs.oyear,0) as oyear
        FROM
            ( SELECT id,cenconding,crainfall,township, village, village_group, dj, bw,county,fyear,tyear,oyear,gohour,gthour,gshour,imohour,imthour,imshour FROM blade_mountain ) cs
        FROM (SELECT id,
                     cenconding,
                     crainfall,
                     township,
                     village,
                     village_group,
                     dj,
                     bw,
                     county,
                     fyear,
                     tyear,
                     oyear,
                     gohour,
                     gthour,
                     gshour,
                     imohour,
                     imthour,
                     imshour
              FROM blade_mountain) cs
                INNER JOIN (
            SELECT ISNULL(SUM(str.DRP), 0) AS drp1,
                   STCD
            FROM dbo.ST_PPTN_R str
            WHERE str.TM &gt; #{dateEnd1}
              AND str.TM &lt;= #{times}
            GROUP BY STCD
        ) css ON css.STCD = cs.cenconding
                 FULL JOIN (
            SELECT ISNULL(SUM(s.DRP), 0) AS drp3,
                   STCD
            FROM dbo.ST_PPTN_R s
            WHERE s.TM &gt; #{dateEnd3}
              AND s.TM &lt;= #{times}
            GROUP BY STCD
        ) cs2 ON cs2.STCD = cs.cenconding
                 FULL JOIN (
            SELECT ISNULL(SUM(strs.DRP), 0) AS drp6,
                   STCD
            FROM dbo.ST_PPTN_R strs
            WHERE strs.TM &gt; #{dateEnd6}
              AND strs.TM &lt;= #{times}
            GROUP BY STCD
        ) cs6 ON cs6.STCD = cs.cenconding
                 FULL JOIN (
            SELECT SUM(strd.DRP) AS dyp,
                   STCD
            FROM dbo.ST_PPTN_R strd
            WHERE strd.TM &gt; #{timess}
              AND strd.TM &lt;= #{times}
            GROUP BY STCD
        ) csd on csd.STCD = cs.cenconding
    </select>
    <select id="selectCode" resultType="java.lang.String">
        SELECT stuff((
            SELECT ',' + CONVERT(VARCHAR (25), cenconding)
            FROM dbo.blade_mountain FOR XML PATH ('')),
        1,
        1,
    ''
    ) AS siteids
    </select>
    <select id="Mountains">
        SELECT
        a.drp1,
        b.drp3,
        c.drp6,
        d.dyp,
        cs.*
        FROM
        (
                SELECT
                    ISNULL( SUM ( str.DRP ), 0 ) AS drp1,
                    STCD
@@ -214,9 +282,10 @@
                WHERE
                    str.TM &gt;#{dateEnd1}
                  AND str.TM &lt;=#{times}
        AND str.STCD IN (${code})
                GROUP BY
                    STCD
            ) css ON css.STCD = cs.cenconding
        str.STCD
        ) a
                FULL JOIN (
                SELECT
                    ISNULL( SUM ( s.DRP ), 0 ) AS drp3,
@@ -226,9 +295,10 @@
                WHERE
                    s.TM &gt;#{dateEnd3}
                  AND s.TM &lt;=#{times}
        AND s.STCD IN (${code})
                GROUP BY
                    STCD
            ) cs2 ON cs2.STCD = cs.cenconding
        s.STCD
        ) b ON a.STCD= b.STCD
                FULL JOIN (
                SELECT
                    ISNULL( SUM ( strs.DRP ), 0 ) AS drp6,
@@ -237,10 +307,10 @@
                    dbo.ST_PPTN_R strs
                WHERE
                    strs.TM &gt;#{dateEnd6}
                  AND strs.TM &lt;=#{times}
        AND strs.TM&lt;= #{times} AND strs.STCD IN (${code})
                GROUP BY
                    STCD
            ) cs6 ON cs6.STCD = cs.cenconding
        ) c ON a.STCD= c.STCD
                FULL JOIN (
                SELECT
                    SUM( strd.DRP ) AS dyp,STCD
@@ -248,8 +318,31 @@
                    dbo.ST_PPTN_R strd
                WHERE
                    strd.TM &gt;#{timess}
                  AND strd.TM &lt;=#{times}
        AND strd.TM&lt;= #{times} AND strd.STCD IN (${code})
                GROUP BY STCD
            ) csd on csd.STCD=cs.cenconding
        ) d on d.STCD=a.STCD
        LEFT JOIN (
        SELECT
        id,
        cenconding,
        crainfall,
        township,
        village,
        village_group,
        dj,
        bw,
        county,
        fyear,
        tyear,
        oyear,
        gohour,
        gthour,
        gshour,
        imohour,
        imthour,
        imshour
        FROM
        blade_mountain
        ) cs ON cs.cenconding= a.STCD
    </select>
</mapper>
src/main/java/org/springblade/modules/mountainrain/service/IMountainrainService.java
@@ -122,7 +122,7 @@
     * @return
     */
    int rainOne(int number,Integer gohour);
    List<MountainrainsCVO> Mountains(String times, String dateEnd24,String dateEnd1,String dateEnd3,String dateEnd6,String timess,String code);
    /**
     *三小时
@@ -130,4 +130,5 @@
     * @return
     */
    int rainthree(int number,Integer gthour);
    String selectCode();
}
src/main/java/org/springblade/modules/mountainrain/service/impl/MountainrainServiceImpl.java
@@ -378,6 +378,11 @@
    }
    @Override
    public List<MountainrainsCVO> Mountains(String times, String dateEnd24, String dateEnd1, String dateEnd3, String dateEnd6, String timess, String code) {
        return baseMapper.Mountains(times, dateEnd24, dateEnd1, dateEnd3, dateEnd6, timess, code);
    }
    @Override
    public int rainthree(int number, Integer gthour) {
        if (number<=gthour){
            return 0;//正常
@@ -389,6 +394,11 @@
        }
    }
    @Override
    public String selectCode() {
        return baseMapper.selectCode();
    }
    /*
     * 计算最大值