赣州市洪水风险预警系统三维版本
xiebin
2023-02-14 bdf4007f1934a8a2743026f257e1eaee4b925bf4
洪水淹没功能优化
2 files modified
82 ■■■■■ changed files
widgets/FloodAnalysis/Widget.html 4 ●●●● patch | view | raw | blame | history
widgets/FloodAnalysis/Widget.js 78 ●●●●● patch | view | raw | blame | history
widgets/FloodAnalysis/Widget.html
@@ -25,8 +25,8 @@
                    <div class="sw">
                        <label for="sw-input">水位:</label>
                        <div style="display: flex;flex-direction: column">
                            <input id="sw-input" class="sw-input" type="text" name="word" autocomplete="off"
                                   maxlength="256" value="0" disabled/>
                            <input id="sw-input" class="sw-input" type="number" name="word" autocomplete="off"
                                   maxlength="256" value="0" disabled />
                            <span class="tip">正数为水位上涨,负数为水位下降</span>
                        </div>
                    </div>
widgets/FloodAnalysis/Widget.js
@@ -92,6 +92,8 @@
                } else {
                    $("#sw-input").prop('disabled', false);
                }
                if ($('#smx-select').val())
                    self.getPointData($('#smx-select').val())
            })
            //开始分析按钮点击事件
@@ -140,6 +142,7 @@
                },100)
            })
            // 河道输入事件
            $('#hd-input').on("input", function () {
                var searchString = $('#hd-input').val()
                var filterArray = self.hdDataList.filter(e => {
@@ -151,12 +154,16 @@
                })
            })
            //水位输入事件
            $('#sw-input').on("input", function () {
                self.getYcSub()
            })
            //河段选择框改变事件
            this.hdSelect.change(function () {
                $("#hd-input").val($(this).find("option:selected").text());
                var selected = JSON.parse($(this).val())
                self.currentHd = selected
                $('#sw-input').val("")
                self.getSmxData(selected.river_code, selected.default_smx)
                //地图定位
@@ -177,7 +184,6 @@
            //水位输入框按下回车事件
            $('#sw-input').keypress(function (event) {
                if (event.which == 13) {
                    let sw = $('#sw-input').val()
                    self.analysisTableList.forEach(e => {
                        e.sw = self.calculateSw(e.water, sw)
                    })
@@ -514,37 +520,55 @@
            let sw = this.floatAdd(Number(waterline), Number(sub))
            return sw
        },
        //预测水位计算
        getYcSub() {
            const self = this
            self.analysisTableList.forEach(e => {
                e.lng = Number(e.lng).toFixed(4)
                e.lat = Number(e.lat).toFixed(4)
                e.sw = self.calculateSw(e.water, $('#sw-input').val())
        //获取差值
                e.water = Number(e.water).toFixed(4)
                e.sw = Number(e.sw).toFixed(4)
            })
            self.loadPagination(self.analysisTableList, "analysis-pagination")
        },
        //实时水位计算
        getSub(hdid, smxcode) {
            const self = this
            $.ajax({
                url: self.url.getCzByGlCodeByGlQdj,
                type: 'get',
                dataType: 'json',
                jsonp: 'callback',
                jsonpCallback: 'data',
                data: {
                    hdId: hdid,
                    smxcode: smxcode
                },
                success: function (res) {
                    if (res.code == 200) {
                        let sub = res.data
                        $('#sw-input').val(sub)
                        self.analysisTableList.forEach(e => {
                            e.lng = Number(e.lng).toFixed(4)
                            e.lat = Number(e.lat).toFixed(4)
                            e.sw = self.calculateSw(e.water, sub)
            if ($('input[name=middleRadio]:checked').val() == 'realtime') {
                $.ajax({
                    url: self.url.getCzByGlCodeByGlQdj,
                    type: 'get',
                    dataType: 'json',
                    jsonp: 'callback',
                    jsonpCallback: 'data',
                    data: {
                        hdId: hdid,
                        smxcode: smxcode
                    },
                    success: function (res) {
                        if (res.code == 200) {
                            let sub = res.data
                            $('#sw-input').val(sub)
                            self.analysisTableList.forEach(e => {
                                e.lng = Number(e.lng).toFixed(4)
                                e.lat = Number(e.lat).toFixed(4)
                                e.sw = self.calculateSw(e.water, sub)
                            e.water = Number(e.water).toFixed(4)
                            e.sw = Number(e.sw).toFixed(4)
                        })
                                e.water = Number(e.water).toFixed(4)
                                e.sw = Number(e.sw).toFixed(4)
                            })
                        self.loadPagination(self.analysisTableList, "analysis-pagination")
                            self.loadPagination(self.analysisTableList, "analysis-pagination")
                        }
                    }
                }
            });
                });
            } else {
                self.getYcSub()
            }
        },
        //保存历史风险图