#
Junjie
2025-11-20 4e005e4936039fca16bfd1679942daa416a21986
src/main/webapp/views/watch/console.html
@@ -24,7 +24,9 @@
                  <el-tab-pane label="输送站" name="devp">
                     <devp-card :param="devpParam"></devp-card>
                  </el-tab-pane>
                  <el-tab-pane label="RGV" name="rgv">RGV</el-tab-pane>
                  <el-tab-pane label="RGV" name="rgv">
                     <watch-rgv-card :param="rgvParam"></watch-rgv-card>
                  </el-tab-pane>
                  <el-tab-pane label="地图配置" name="mapSetting">
                     <map-setting-card :param="mapSettingParam"></map-setting-card>
                  </el-tab-pane>
@@ -75,6 +77,7 @@
      <script src="../../components/WatchCrnCard.js"></script>
      <script src="../../components/DevpCard.js"></script>
      <script src="../../components/MapSettingCard.js"></script>
      <script src="../../components/WatchRgvCard.js"></script>
      <script>
         var app = new Vue({
            el: '#app',
@@ -94,6 +97,9 @@
               },
               devpParam: {
                  stationId: 0
               },
               rgvParam: {
                  rgvNo: 0
               }
            },
            created() {
@@ -150,30 +156,8 @@
                  this.activateCard = 'crn';
               },
               openRgv(id) {
                  this.rgvWindow = true; //打开RGV信息弹窗
                  $(".detailed").empty();
                  $('.detailed').append(id + '号RGV');
                  $.ajax({
                     url: baseUrl + "/console/rgv/detail",
                     headers: {
                        'token': localStorage.getItem('token')
                     },
                     data: {
                        rgvNo: id
                     },
                     method: 'post',
                     success: function(res) {
                        for (var val in res.data) {
                           var find = $("#rgvWindow").find(":input[name='" + val + "']");
                           if (find[0].type === 'text') {
                              find.val(res.data[val]);
                           } else if (find[0].type === 'checkbox') {
                              find.attr("checked", res.data[val] === 'Y');
                           }
                        }
                     }
                  })
                  this.rgvParam.rgvNo = id;
                  this.activateCard = 'rgv';
               },
               openSite(id) {
                  this.devpParam.stationId = id;
@@ -303,38 +287,13 @@
                              let trackSiteNo = rgvs[i].trackSiteNo;
                              let trackSiteEl = $("#rgvTrackSiteNo-" + trackSiteNo);
                              let flag = false;
                              that.rgvPosition.forEach((item) => {
                                 if (item.id == rgvs[i].rgvNo) {
                                    if (item.trackSiteNo != trackSiteNo) {
                                       flag = true
                                    }
                                 }
                              })
                              if (flag) {
                                 let finalOffset = 0;
                                 let targetPosition = trackSiteEl.parent().parent().position().left;
                              let parentLeft = rgvEl.offsetParent().offset().left;
                              let targetPosition = trackSiteEl.parent().parent().offset().left - parentLeft;
                                 let rgvPosition = rgvEl.position().left;
                                 let calcResult = targetPosition - rgvPosition
                                 if (calcResult > 0) {
                                    finalOffset = targetPosition + trackSiteEl.width();
                                 }else {
                                    finalOffset = targetPosition;
                                 }
                              let zoomFactor = that.mapSettingParam.zoom ? (that.mapSettingParam.zoom / 100) : 1;
                              if (zoomFactor <= 0) { zoomFactor = 1; }
                              let finalOffset = targetPosition / zoomFactor;
                                 rgvEl.animate({left: finalOffset + "px"}, 500);
                                 let position = []
                                 that.rgvPosition.forEach((item) => {
                                    if (item.id == rgvs[i].rgvNo) {
                                       item.trackSiteNo = trackSiteNo
                                    }
                                    position.push(item)
                                 })
                                 that.rgvPosition = position
                              }
                           }
                        } else if (res.code === 403) {
                           parent.location.href = baseUrl + "/login";